const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["js/index.B0uR7iRX.js","js/index.dJKw6Moj.js","js/vue-vendor.s4NvH6ch.js","js/index.BoYZhlcH.js","js/el-popover.VykW6IJe.js","js/isUndefined.CJxI7Flq.js","js/constants.Dnj8X3EN.js","css/el-popover.B4a1Qcxe.css","js/utils-vendor.C2wZAbxU.js","js/icon_chat_more@2x.DLAg9NXu.js","css/index.B08YuGoj.css","js/el-input.CP6sv7Ft.js","js/el-button.CyaH0Xyl.js","js/icons.CcUPhgcy.js","css/el-button.DITZ5HsB.css","js/numbers.DrV_xewr.js","css/el-input.Dq3cbatN.css","js/index.CPGBjwv0.js","js/i18n.U5tKjnU-.js","css/index.DC5aYtXw.css","js/index.CIZwGBa-.js","css/index.BbgIIcGp.css","js/index.CsA9XPTy.js","js/app_arrow-left-line@2x.beiviEFj.js","css/index.CT60DKGU.css","js/index.DhjMidMq.js","css/index.ogNKiUl7.css","js/client.Cz_cgWiK.js","js/createDialogManager.CDqNCv_4.js","js/index.Cxkp46cb.js","css/index.DU-No32i.css","js/index.U2MkQZxE.js","js/vipGuideBenefits.DmZJNdZ3.js","css/index.BMH6Zlj1.css","js/other-vendor.D6xlRujx.js","css/index.C1mXUnmk.css","js/index.wRZ0H7BA.js","css/index.bt4DFcp3.css","js/index.BGoa5rFj.js","js/legalDocumentDetail.D2M33aPA.js","css/legalDocumentDetail.QcPsG1Zl.css","js/ipAccess.s9jfLqum.js","css/ipAccess.DAfg2qNg.css","js/google-callback.C90XJTs-.js","js/index.C7bRYUhq.js","css/index.Di1vVM0_.css","css/google-callback.t9WO90JX.css","js/email-callback._gxeDlRe.js","css/email-callback.CHJjKkaQ.css","js/index.CapQ_WRo.js","js/el-collapse-item.DZv_xavO.js","css/el-collapse-item.DT75cDFC.css","js/el-tab-pane.DNzANQyL.js","js/useInfiniteList.2OyEaROl.js","js/index.C6HSwFLK.js","css/index.Be4hh0Uo.css","js/mediaType.j5hG8s2f.js","css/mediaType.CQ15mpki.css","js/useCharacterNavigation.C4zaUSny.js","js/useHlsVideo.BSKq29GK.js","css/el-tab-pane.B4yTTSyA.css","js/CharacterTabsEnum.BviP97eY.js","css/CharacterTabsEnum.CGgQHZYz.css","js/bot.Bla0kO8X.js","css/index.BYc0wSoN.css","js/index.CJUf2tx_.js","js/index.DagTAXeF.js","js/throttle.UuAJQODk.js","js/index.CDUmyjII.js","css/index.DP2iy6rw.css","js/index.q2BtXuYk.js","css/index.BK8X_xDm.css","css/index.C-Kc80c-.css","js/index.xkKCpbS0.js","css/index.CaDaDbV3.css","js/index.GcClUw8a.js","js/useBotInteract.BIRc6HVW.js","css/useBotInteract.CgwTuLM6.css","css/index.C7hUcxeF.css","js/index.usRs3Wiz.js","js/useChatPolling.Bo47U6h5.js","css/useChatPolling.DxLEYu_o.css","js/userVip.XWi_Pswl.js","css/index.oQ57ecg9.css","js/index.BSvPJon1.js","js/debugLogger.BMwpNQb1.js","css/index.BnxWIEkG.css","js/index.8yl-fN5u.js","css/index.DZE5tNQ6.css","js/index.C-dzUsea.js","js/index.Dj5LMMW2.js","css/index.Dzv6toyH.css","css/index.bejxSBrt.css","js/index.2Golr5nk.js","css/index.C8n3B4Xj.css","js/index.Hs8EEkxs.js","css/index.BdwFCFUb.css","js/index.B2V-H67G.js","css/index.Co3vr1BC.css","js/index.BHB_DWXB.js","css/index.GsHI7AYC.css","js/index.NhIPTc8z.js","css/index.COgbrf45.css","js/index.xZL7hYno.js","css/index.DGkOm7Tj.css","js/legalInformation.Dt9vJZDJ.js","css/legalInformation.Db_eqFdH.css","js/m3u8-player.C7cz-O-O.js","css/m3u8-player.BXYYR2xS.css","js/401.Brmuwkq6.js","css/401.6TNHvRTq.css","js/404.w7Ia3UKv.js","css/404.CX60vo37.css"])))=>i.map(i=>d[i]);
var e=Object.defineProperty,t=(t,a,r)=>((t,a,r)=>a in t?e(t,a,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[a]=r)(t,"symbol"!=typeof a?a+"":a,r);import{M as a,H as r,J as n,D as i,ax as o,ay as s,y as l,a1 as c,az as u,a7 as d,ag as p,af as m,al as h,a0 as g,R as f,x as v,B as y,G as b,a8 as w,L as C,a6 as k,an as A,g as x,d as P,Z as S,I as _,N as I,u as T,a4 as z,l as E,ab as D,Q as R,a5 as M,r as j,aA as q,V as L,S as O,q as N,ah as U,k as F,b as B,A as W,i as V,j as H,ad as G,ar as Y,aB as $,o as K,aw as Z,T as J,ae as Q,F as X,aD as ee,O as te,a9 as ae,v as re,n as ne,s as ie,m as oe,a2 as se,aa as le,au as ce,av as ue,ac as de,h as pe}from"./vue-vendor.s4NvH6ch.js";import{i as me,g as he,c as ge,e as fe,a as ve,b as ye,d as be}from"./utils-vendor.C2wZAbxU.js";import{c as we,u as Ce}from"./i18n.U5tKjnU-.js";import{t as ke,s as Ae,a6 as xe,v as Pe,a2 as Se,u as _e,ay as Ie,an as Te,ag as ze,ax as Ee,am as De,a8 as Re,ad as Me,al as je,K as qe,y as Le,au as Oe,r as Ne,l as Ue,i as Fe,z as Be,ap as We,N as Ve,Z as He,F as Ge,w as Ye,B as $e,H as Ke,n as Ze,af as Je,a as Qe,L as Xe,c as et,D as tt,b as at,A as rt,q as nt,x as it,S as ot,aa as st,ao as lt,a1 as ct,ac as ut,_ as dt,av as pt,M as mt,f as ht,U as gt,I as ft,at as vt,aD as yt,m as bt,R as wt,X as Ct,C as kt,aC as At,a3 as xt,aq as Pt,aG as St,as as _t,a7 as It,aA as Tt,a4 as zt,a9 as Et,T as Dt,a5 as Rt,az as Mt,J as jt,ae as qt,ar as Lt,P as Ot,aj as Nt,ab as Ut,Q as Ft,h as Bt,Y as Wt,g as Vt,aB as Ht,V as Gt,e as Yt,d as $t,p as Kt,G as Zt,E as Jt,O as Qt,$ as Xt,o as ea}from"./icons.CcUPhgcy.js";import{N as ta}from"./other-vendor.D6xlRujx.js";!function(){const e=document.createElement("link").relList;if(!(e&&e.supports&&e.supports("modulepreload"))){for(const e of document.querySelectorAll('link[rel="modulepreload"]'))t(e);new MutationObserver(e=>{for(const a of e)if("childList"===a.type)for(const e of a.addedNodes)"LINK"===e.tagName&&"modulepreload"===e.rel&&t(e)}).observe(document,{childList:!0,subtree:!0})}function t(e){if(e.ep)return;e.ep=!0;const t=function(e){const t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),"use-credentials"===e.crossOrigin?t.credentials="include":"anonymous"===e.crossOrigin?t.credentials="omit":t.credentials="same-origin",t}(e);fetch(e.href,t)}}();const aa={tab:"Tab",enter:"Enter",space:"Space",left:"ArrowLeft",up:"ArrowUp",right:"ArrowRight",down:"ArrowDown",esc:"Escape",delete:"Delete",backspace:"Backspace",numpadEnter:"NumpadEnter",pageUp:"PageUp",pageDown:"PageDown",home:"Home",end:"End"},ra="update:modelValue",na="change",ia="input",oa=["","default","small","large"];var sa="object"==typeof global&&global&&global.Object===Object&&global,la="object"==typeof self&&self&&self.Object===Object&&self,ca=sa||la||Function("return this")(),ua=ca.Symbol,da=Object.prototype,pa=da.hasOwnProperty,ma=da.toString,ha=ua?ua.toStringTag:void 0;var ga=Object.prototype.toString;var fa=ua?ua.toStringTag:void 0;function va(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":fa&&fa in Object(e)?function(e){var t=pa.call(e,ha),a=e[ha];try{e[ha]=void 0;var r=!0}catch(i){}var n=ma.call(e);return r&&(t?e[ha]=a:delete e[ha]),n}(e):function(e){return ga.call(e)}(e)}function ya(e){return null!=e&&"object"==typeof e}function ba(e){return"symbol"==typeof e||ya(e)&&"[object Symbol]"==va(e)}function wa(e,t){for(var a=-1,r=null==e?0:e.length,n=Array(r);++a<r;)n[a]=t(e[a],a,e);return n}var Ca=Array.isArray,ka=ua?ua.prototype:void 0,Aa=ka?ka.toString:void 0;function xa(e){if("string"==typeof e)return e;if(Ca(e))return wa(e,xa)+"";if(ba(e))return Aa?Aa.call(e):"";var t=e+"";return"0"==t&&1/e==-Infinity?"-0":t}var Pa=/\s/;var Sa=/^\s+/;function _a(e){return e?e.slice(0,function(e){for(var t=e.length;t--&&Pa.test(e.charAt(t)););return t}(e)+1).replace(Sa,""):e}function Ia(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}var Ta=/^[-+]0x[0-9a-f]+$/i,za=/^0b[01]+$/i,Ea=/^0o[0-7]+$/i,Da=parseInt;function Ra(e){if("number"==typeof e)return e;if(ba(e))return NaN;if(Ia(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=Ia(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=_a(e);var a=za.test(e);return a||Ea.test(e)?Da(e.slice(2),a?2:8):Ta.test(e)?NaN:+e}function Ma(e){if(!Ia(e))return!1;var t=va(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t}var ja,qa=ca["__core-js_shared__"],La=(ja=/[^.]+$/.exec(qa&&qa.keys&&qa.keys.IE_PROTO||""))?"Symbol(src)_1."+ja:"";var Oa=Function.prototype.toString;function Na(e){if(null!=e){try{return Oa.call(e)}catch(t){}try{return e+""}catch(t){}}return""}var Ua=/^\[object .+?Constructor\]$/,Fa=Function.prototype,Ba=Object.prototype,Wa=Fa.toString,Va=Ba.hasOwnProperty,Ha=RegExp("^"+Wa.call(Va).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Ga(e){return!(!Ia(e)||(t=e,La&&La in t))&&(Ma(e)?Ha:Ua).test(Na(e));var t}function Ya(e,t){var a=function(e,t){return null==e?void 0:e[t]}(e,t);return Ga(a)?a:void 0}var $a=Ya(ca,"WeakMap"),Ka=function(){try{var e=Ya(Object,"defineProperty");return e({},"",{}),e}catch(t){}}(),Za=/^(?:0|[1-9]\d*)$/;function Ja(e,t){var a=typeof e;return!!(t=null==t?9007199254740991:t)&&("number"==a||"symbol"!=a&&Za.test(e))&&e>-1&&e%1==0&&e<t}function Qa(e,t,a){"__proto__"==t&&Ka?Ka(e,t,{configurable:!0,enumerable:!0,value:a,writable:!0}):e[t]=a}function Xa(e,t){return e===t||e!=e&&t!=t}var er=Object.prototype.hasOwnProperty;function tr(e,t,a){var r=e[t];er.call(e,t)&&Xa(r,a)&&(void 0!==a||t in e)||Qa(e,t,a)}function ar(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=9007199254740991}function rr(e){return null!=e&&ar(e.length)&&!Ma(e)}var nr=Object.prototype;function ir(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||nr)}function or(e){return ya(e)&&"[object Arguments]"==va(e)}var sr=Object.prototype,lr=sr.hasOwnProperty,cr=sr.propertyIsEnumerable,ur=or(function(){return arguments}())?or:function(e){return ya(e)&&lr.call(e,"callee")&&!cr.call(e,"callee")};var dr="object"==typeof exports&&exports&&!exports.nodeType&&exports,pr=dr&&"object"==typeof module&&module&&!module.nodeType&&module,mr=pr&&pr.exports===dr?ca.Buffer:void 0,hr=(mr?mr.isBuffer:void 0)||function(){return!1},gr={};function fr(e){return function(t){return e(t)}}gr["[object Float32Array]"]=gr["[object Float64Array]"]=gr["[object Int8Array]"]=gr["[object Int16Array]"]=gr["[object Int32Array]"]=gr["[object Uint8Array]"]=gr["[object Uint8ClampedArray]"]=gr["[object Uint16Array]"]=gr["[object Uint32Array]"]=!0,gr["[object Arguments]"]=gr["[object Array]"]=gr["[object ArrayBuffer]"]=gr["[object Boolean]"]=gr["[object DataView]"]=gr["[object Date]"]=gr["[object Error]"]=gr["[object Function]"]=gr["[object Map]"]=gr["[object Number]"]=gr["[object Object]"]=gr["[object RegExp]"]=gr["[object Set]"]=gr["[object String]"]=gr["[object WeakMap]"]=!1;var vr="object"==typeof exports&&exports&&!exports.nodeType&&exports,yr=vr&&"object"==typeof module&&module&&!module.nodeType&&module,br=yr&&yr.exports===vr&&sa.process,wr=function(){try{var e=yr&&yr.require&&yr.require("util").types;return e||br&&br.binding&&br.binding("util")}catch(t){}}(),Cr=wr&&wr.isTypedArray,kr=Cr?fr(Cr):function(e){return ya(e)&&ar(e.length)&&!!gr[va(e)]},Ar=Object.prototype.hasOwnProperty;function xr(e,t){var a=Ca(e),r=!a&&ur(e),n=!a&&!r&&hr(e),i=!a&&!r&&!n&&kr(e),o=a||r||n||i,s=o?function(e,t){for(var a=-1,r=Array(e);++a<e;)r[a]=t(a);return r}(e.length,String):[],l=s.length;for(var c in e)!t&&!Ar.call(e,c)||o&&("length"==c||n&&("offset"==c||"parent"==c)||i&&("buffer"==c||"byteLength"==c||"byteOffset"==c)||Ja(c,l))||s.push(c);return s}function Pr(e,t){return function(a){return e(t(a))}}var Sr=Pr(Object.keys,Object),_r=Object.prototype.hasOwnProperty;function Ir(e){return rr(e)?xr(e):function(e){if(!ir(e))return Sr(e);var t=[];for(var a in Object(e))_r.call(e,a)&&"constructor"!=a&&t.push(a);return t}(e)}var Tr=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,zr=/^\w*$/;var Er=Ya(Object,"create");var Dr=Object.prototype.hasOwnProperty;var Rr=Object.prototype.hasOwnProperty;function Mr(e){var t=-1,a=null==e?0:e.length;for(this.clear();++t<a;){var r=e[t];this.set(r[0],r[1])}}function jr(e,t){for(var a=e.length;a--;)if(Xa(e[a][0],t))return a;return-1}Mr.prototype.clear=function(){this.__data__=Er?Er(null):{},this.size=0},Mr.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},Mr.prototype.get=function(e){var t=this.__data__;if(Er){var a=t[e];return"__lodash_hash_undefined__"===a?void 0:a}return Dr.call(t,e)?t[e]:void 0},Mr.prototype.has=function(e){var t=this.__data__;return Er?void 0!==t[e]:Rr.call(t,e)},Mr.prototype.set=function(e,t){var a=this.__data__;return this.size+=this.has(e)?0:1,a[e]=Er&&void 0===t?"__lodash_hash_undefined__":t,this};var qr=Array.prototype.splice;function Lr(e){var t=-1,a=null==e?0:e.length;for(this.clear();++t<a;){var r=e[t];this.set(r[0],r[1])}}Lr.prototype.clear=function(){this.__data__=[],this.size=0},Lr.prototype.delete=function(e){var t=this.__data__,a=jr(t,e);return!(a<0)&&(a==t.length-1?t.pop():qr.call(t,a,1),--this.size,!0)},Lr.prototype.get=function(e){var t=this.__data__,a=jr(t,e);return a<0?void 0:t[a][1]},Lr.prototype.has=function(e){return jr(this.__data__,e)>-1},Lr.prototype.set=function(e,t){var a=this.__data__,r=jr(a,e);return r<0?(++this.size,a.push([e,t])):a[r][1]=t,this};var Or=Ya(ca,"Map");function Nr(e,t){var a,r,n=e.__data__;return("string"==(r=typeof(a=t))||"number"==r||"symbol"==r||"boolean"==r?"__proto__"!==a:null===a)?n["string"==typeof t?"string":"hash"]:n.map}function Ur(e){var t=-1,a=null==e?0:e.length;for(this.clear();++t<a;){var r=e[t];this.set(r[0],r[1])}}Ur.prototype.clear=function(){this.size=0,this.__data__={hash:new Mr,map:new(Or||Lr),string:new Mr}},Ur.prototype.delete=function(e){var t=Nr(this,e).delete(e);return this.size-=t?1:0,t},Ur.prototype.get=function(e){return Nr(this,e).get(e)},Ur.prototype.has=function(e){return Nr(this,e).has(e)},Ur.prototype.set=function(e,t){var a=Nr(this,e),r=a.size;return a.set(e,t),this.size+=a.size==r?0:1,this};function Fr(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new TypeError("Expected a function");var a=function(){var r=arguments,n=t?t.apply(this,r):r[0],i=a.cache;if(i.has(n))return i.get(n);var o=e.apply(this,r);return a.cache=i.set(n,o)||i,o};return a.cache=new(Fr.Cache||Ur),a}Fr.Cache=Ur;var Br,Wr,Vr,Hr=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Gr=/\\(\\)?/g,Yr=(Br=function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(Hr,function(e,a,r,n){t.push(r?n.replace(Gr,"$1"):a||e)}),t},Wr=Fr(Br,function(e){return 500===Vr.size&&Vr.clear(),e}),Vr=Wr.cache,Wr);function $r(e,t){return Ca(e)?e:function(e,t){if(Ca(e))return!1;var a=typeof e;return!("number"!=a&&"symbol"!=a&&"boolean"!=a&&null!=e&&!ba(e))||zr.test(e)||!Tr.test(e)||null!=t&&e in Object(t)}(e,t)?[e]:Yr(function(e){return null==e?"":xa(e)}(e))}function Kr(e){if("string"==typeof e||ba(e))return e;var t=e+"";return"0"==t&&1/e==-Infinity?"-0":t}function Zr(e,t){for(var a=0,r=(t=$r(t,e)).length;null!=e&&a<r;)e=e[Kr(t[a++])];return a&&a==r?e:void 0}function Jr(e,t,a){var r=null==e?void 0:Zr(e,t);return void 0===r?a:r}function Qr(e,t){for(var a=-1,r=t.length,n=e.length;++a<r;)e[n+a]=t[a];return e}var Xr=Pr(Object.getPrototypeOf,Object),en=Function.prototype,tn=Object.prototype,an=en.toString,rn=tn.hasOwnProperty,nn=an.call(Object);function on(e){if(!ya(e)||"[object Object]"!=va(e))return!1;var t=Xr(e);if(null===t)return!0;var a=rn.call(t,"constructor")&&t.constructor;return"function"==typeof a&&a instanceof a&&an.call(a)==nn}function sn(e,t,a){return void 0===a&&(a=t,t=void 0),void 0!==a&&(a=(a=Ra(a))==a?a:0),void 0!==t&&(t=(t=Ra(t))==t?t:0),function(e,t,a){return e==e&&(void 0!==a&&(e=e<=a?e:a),void 0!==t&&(e=e>=t?e:t)),e}(Ra(e),t,a)}function ln(e){var t=this.__data__=new Lr(e);this.size=t.size}function cn(){return[]}ln.prototype.clear=function(){this.__data__=new Lr,this.size=0},ln.prototype.delete=function(e){var t=this.__data__,a=t.delete(e);return this.size=t.size,a},ln.prototype.get=function(e){return this.__data__.get(e)},ln.prototype.has=function(e){return this.__data__.has(e)},ln.prototype.set=function(e,t){var a=this.__data__;if(a instanceof Lr){var r=a.__data__;if(!Or||r.length<199)return r.push([e,t]),this.size=++a.size,this;a=this.__data__=new Ur(r)}return a.set(e,t),this.size=a.size,this};var un=Object.prototype.propertyIsEnumerable,dn=Object.getOwnPropertySymbols,pn=dn?function(e){return null==e?[]:(e=Object(e),function(e,t){for(var a=-1,r=null==e?0:e.length,n=0,i=[];++a<r;){var o=e[a];t(o,a,e)&&(i[n++]=o)}return i}(dn(e),function(t){return un.call(e,t)}))}:cn;function mn(e,t,a){var r=t(e);return Ca(e)?r:Qr(r,a(e))}function hn(e){return mn(e,Ir,pn)}var gn=Ya(ca,"DataView"),fn=Ya(ca,"Promise"),vn=Ya(ca,"Set"),yn="[object Map]",bn="[object Promise]",wn="[object Set]",Cn="[object WeakMap]",kn="[object DataView]",An=Na(gn),xn=Na(Or),Pn=Na(fn),Sn=Na(vn),_n=Na($a),In=va;(gn&&In(new gn(new ArrayBuffer(1)))!=kn||Or&&In(new Or)!=yn||fn&&In(fn.resolve())!=bn||vn&&In(new vn)!=wn||$a&&In(new $a)!=Cn)&&(In=function(e){var t=va(e),a="[object Object]"==t?e.constructor:void 0,r=a?Na(a):"";if(r)switch(r){case An:return kn;case xn:return yn;case Pn:return bn;case Sn:return wn;case _n:return Cn}return t});var Tn=ca.Uint8Array;function zn(e){var t=-1,a=null==e?0:e.length;for(this.__data__=new Ur;++t<a;)this.add(e[t])}zn.prototype.add=zn.prototype.push=function(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this},zn.prototype.has=function(e){return this.__data__.has(e)};var En=ua?ua.prototype:void 0;En&&En.valueOf;Object.prototype.hasOwnProperty;Object.prototype.hasOwnProperty;function Dn(e){for(var t=-1,a=null==e?0:e.length,r={};++t<a;){var n=e[t];Qa(r,n[0],n[1])}return r}function Rn(e){return null==e}function Mn(e,t,a,r){if(!Ia(e))return e;for(var n=-1,i=(t=$r(t,e)).length,o=i-1,s=e;null!=s&&++n<i;){var l=Kr(t[n]),c=a;if("__proto__"===l||"constructor"===l||"prototype"===l)return e;if(n!=o){var u=s[l];void 0===(c=void 0)&&(c=Ia(u)?u:Ja(t[n+1])?[]:{})}tr(s,l,c),s=s[l]}return e}const jn=e=>void 0===e,qn=e=>"boolean"==typeof e,Ln=e=>"number"==typeof e,On=e=>"undefined"!=typeof Element&&e instanceof Element,Nn=e=>Object.keys(e),Un="__epPropKey",Fn=e=>e,Bn=(e,t)=>{if(!n(e)||n(a=e)&&a.__epPropKey)return e;var a;const{values:r,required:s,default:l,type:c,validator:u}=e,d={type:c,required:!!s,validator:r||u?a=>{let n=!1,s=[];if(r&&(s=Array.from(r),i(e,"default")&&s.push(l),n||(n=s.includes(a))),u&&(n||(n=u(a))),!n&&s.length>0){const e=[...new Set(s)].map(e=>JSON.stringify(e)).join(", ");o(`Invalid prop: validation failed${t?` for prop "${t}"`:""}. Expected one of [${e}], got value ${JSON.stringify(a)}.`)}return n}:void 0,[Un]:!0};return i(e,"default")&&(d.default=l),d},Wn=e=>Dn(Object.entries(e).map(([e,t])=>[e,Bn(t,e)]));var Vn=class extends Error{constructor(e){super(e),this.name="ElementPlusError"}};function Hn(e,t){throw new Vn(`[${e}] ${t}`)}function Gn(e,t){a(e)&&new Vn(`[${e}] ${t}`)}function Yn(e,t){var a;const r=p();return u(()=>{r.value=e()},{...t,flush:null!==(a=null==t?void 0:t.flush)&&void 0!==a?a:"sync"}),d(r)}function $n(e,t){return!!l()&&(c(e,t),!0)}const Kn="undefined"!=typeof window&&"undefined"!=typeof document;"undefined"!=typeof WorkerGlobalScope&&(globalThis,WorkerGlobalScope);const Zn=Object.prototype.toString,Jn=(e,t,a)=>Math.min(a,Math.max(t,e)),Qn=()=>{},Xn=ei();function ei(){var e,t,a;return Kn&&!!(null===(e=window)||void 0===e||null===(e=e.navigator)||void 0===e?void 0:e.userAgent)&&(/iP(?:ad|hone|od)/.test(window.navigator.userAgent)||(null===(t=window)||void 0===t||null===(t=t.navigator)||void 0===t?void 0:t.maxTouchPoints)>2&&/iPad|Macintosh/.test(null===(a=window)||void 0===a?void 0:a.navigator.userAgent))}function ti(e){return Array.isArray(e)?e:[e]}function ai(e,t=!0,a){v()?g(e,a):t?e():f(e)}function ri(e,t,a={}){const{immediate:r=!0,immediateCallback:n=!1}=a,i=p(!1);let o;function s(){o&&(clearTimeout(o),o=void 0)}function l(){i.value=!1,s()}function c(...a){n&&e(),s(),i.value=!0,o=setTimeout(()=>{i.value=!1,o=void 0,e(...a)},h(t))}return r&&(i.value=!0,Kn&&c()),$n(l),{isPending:m(i),start:c,stop:l}}const ni=Kn?window:void 0,ii=Kn?window.document:void 0;function oi(e){var t;const a=h(e);return null!==(t=null==a?void 0:a.$el)&&void 0!==t?t:a}function si(...e){const t=x(()=>{const t=ti(h(e[0])).filter(e=>null!=e);return t.every(e=>"string"!=typeof e)?t:void 0});return a=([e,t,a,r],n,i)=>{if(!(null==e?void 0:e.length)||!(null==t?void 0:t.length)||!(null==a?void 0:a.length))return;const o=(s=r,"[object Object]"===Zn.call(s)?{...r}:r);var s;const l=e.flatMap(e=>t.flatMap(t=>a.map(a=>((e,t,a,r)=>(e.addEventListener(t,a,r),()=>e.removeEventListener(t,a,r)))(e,t,a,o))));i(()=>{l.forEach(e=>e())})},r={flush:"post"},s(()=>{var a,r;return[null!==(a=null===(r=t.value)||void 0===r?void 0:r.map(e=>oi(e)))&&void 0!==a?a:[ni].filter(e=>null!=e),ti(h(t.value?e[1]:e[0])),ti(A(t.value?e[2]:e[1])),h(t.value?e[3]:e[2])]},a,{...r,immediate:!0});var a,r}let li=!1;function ci(e,t,a={}){const{window:r=ni,ignore:n=[],capture:i=!0,detectIframe:o=!1,controls:s=!1}=a;if(!r)return s?{stop:Qn,cancel:Qn,trigger:Qn}:Qn;if(Xn&&!li){li=!0;const e={passive:!0};Array.from(r.document.body.children).forEach(t=>t.addEventListener("click",Qn,e)),r.document.documentElement.addEventListener("click",Qn,e)}let l=!0;const c=e=>h(n).some(t=>{if("string"==typeof t)return Array.from(r.document.querySelectorAll(t)).some(t=>t===e.target||e.composedPath().includes(t));{const a=oi(t);return a&&(e.target===a||e.composedPath().includes(a))}});const u=a=>{const r=oi(e);null!=a.target&&(r instanceof Element||!function(e){const t=h(e);return t&&16===t.$.subTree.shapeFlag}(e)||!function(e,t){const a=h(e),r=a.$.subTree&&a.$.subTree.children;return!(null==r||!Array.isArray(r))&&r.some(e=>e.el===t.target||t.composedPath().includes(e.el))}(e,a))&&r&&r!==a.target&&!a.composedPath().includes(r)&&("detail"in a&&0===a.detail&&(l=!c(a)),l?t(a):l=!0)};let d=!1;const p=[si(r,"click",e=>{d||(d=!0,setTimeout(()=>{d=!1},0),u(e))},{passive:!0,capture:i}),si(r,"pointerdown",t=>{const a=oi(e);l=!c(t)&&!(!a||t.composedPath().includes(a))},{passive:!0}),o&&si(r,"blur",a=>{setTimeout(()=>{const n=oi(e);let i=r.document.activeElement;for(;null==i?void 0:i.shadowRoot;)i=i.shadowRoot.activeElement;"IFRAME"!==(null==i?void 0:i.tagName)||(null==n?void 0:n.contains(r.document.activeElement))||t(a)},0)},{passive:!0})].filter(Boolean),m=()=>p.forEach(e=>e());return s?{stop:m,cancel:()=>{l=!1},trigger:e=>{l=!0,u(e),l=!1}}:m}function ui(){const e=p(!1),t=v();return t&&g(()=>{e.value=!0},t),e}function di(e){const t=ui();return x(()=>(t.value,Boolean(e())))}Symbol("vueuse-ssr-width");function pi(e={}){const{document:t=ii}=e;if(!t)return p("visible");const a=p(t.visibilityState);return si(t,"visibilitychange",()=>{a.value=t.visibilityState},{passive:!0}),a}function mi(e,t,a={}){const{window:r=ni,...n}=a;let i;const o=di(()=>r&&"ResizeObserver"in r),l=()=>{i&&(i.disconnect(),i=void 0)},c=s(x(()=>{const t=h(e);return Array.isArray(t)?t.map(e=>oi(e)):[oi(t)]}),e=>{if(l(),o.value&&r){i=new ResizeObserver(t);for(const t of e)t&&i.observe(t,n)}},{immediate:!0,flush:"post"}),u=()=>{l(),c()};return $n(u),{isSupported:o,stop:u}}function hi(e,t={width:0,height:0},a={}){const{window:r=ni,box:n="content-box"}=a,i=x(()=>{var t;return null===(t=oi(e))||void 0===t||null===(t=t.namespaceURI)||void 0===t?void 0:t.includes("svg")}),o=p(t.width),l=p(t.height),{stop:c}=mi(e,([t])=>{const a="border-box"===n?t.borderBoxSize:"content-box"===n?t.contentBoxSize:t.devicePixelContentBoxSize;if(r&&i.value){const t=oi(e);if(t){const e=t.getBoundingClientRect();o.value=e.width,l.value=e.height}}else if(a){const e=ti(a);o.value=e.reduce((e,{inlineSize:t})=>e+t,0),l.value=e.reduce((e,{blockSize:t})=>e+t,0)}else o.value=t.contentRect.width,l.value=t.contentRect.height},a);ai(()=>{const a=oi(e);a&&(o.value="offsetWidth"in a?a.offsetWidth:t.width,l.value="offsetHeight"in a?a.offsetHeight:t.height)});const u=s(()=>oi(e),e=>{o.value=e?t.width:0,l.value=e?t.height:0});return{width:o,height:l,stop:function(){c(),u()}}}function gi(e={}){const{window:t=ni}=e;if(!t)return p(!1);const a=p(t.document.hasFocus()),r={passive:!0};return si(t,"blur",()=>{a.value=!1},r),si(t,"focus",()=>{a.value=!0},r),a}const fi=({from:e,replacement:t,scope:a,version:r,ref:n,type:i="API"},o)=>{s(()=>A(o),o=>{o&&Gn(a,`[${i}] ${e} is about to be deprecated in version ${r}, please use ${t} instead.\nFor more detail, please visit: ${n}\n`)},{immediate:!0})},vi=e=>"undefined"!=typeof ShadowRoot&&e instanceof ShadowRoot,yi=e=>"undefined"!=typeof Element&&e instanceof Element,bi=e=>{if(e.tabIndex>0||0===e.tabIndex&&null!==e.getAttribute("tabIndex"))return!0;if(e.tabIndex<0||e.hasAttribute("disabled")||"true"===e.getAttribute("aria-disabled"))return!1;switch(e.nodeName){case"A":return!!e.href&&"ignore"!==e.rel;case"INPUT":return!("hidden"===e.type||"file"===e.type);case"BUTTON":case"SELECT":case"TEXTAREA":return!0;default:return!1}},wi=(e,t)=>{if(!e||!e.focus)return;let a=!1;!yi(e)||bi(e)||e.getAttribute("tabindex")||(e.setAttribute("tabindex","-1"),a=!0),e.focus(t),yi(e)&&a&&e.removeAttribute("tabindex")},Ci=()=>Kn&&/firefox/i.test(window.navigator.userAgent),ki=(e="")=>e.split(" ").filter(e=>!!e.trim()),Ai=(e,t)=>{e&&t.trim()&&e.classList.add(...ki(t))},xi=(e,t)=>{e&&t.trim()&&e.classList.remove(...ki(t))},Pi=(e,t)=>{var a;if(!Kn||!e||!t||vi(e))return"";let r=P(t);"float"===r&&(r="cssFloat");try{const t=e.style[r];if(t)return t;const n=null==(a=document.defaultView)?void 0:a.getComputedStyle(e,"");return n?n[r]:""}catch{return e.style[r]}};function Si(e,t="px"){return e||0===e?Ln(e)||a(r=e)&&!Number.isNaN(Number(r))?`${e}${t}`:a(e)?e:void Gn("utils/dom/style","binding value must be a string or number"):"";var r}const _i=(e,t,a,r)=>{const n={offsetX:0,offsetY:0},i=w(!1),o=(t,a)=>{if(e.value){const{offsetX:i,offsetY:o}=n,s=e.value.getBoundingClientRect(),l=Math.max(s.left,0),c=Math.max(s.top,0),u=s.width,d=s.height,p=document.documentElement.clientWidth,m=document.documentElement.clientHeight,h=-l+i,g=-c+o,f=p-l-u+i,v=m-c-(d<m?d:0)+o;(null==r?void 0:r.value)||(t=sn(t,h,f),a=sn(a,g,v)),n.offsetX=t,n.offsetY=a,e.value.style.transform=`translate(${Si(t)}, ${Si(a)})`}},s=e=>{const t=e.clientX,a=e.clientY,{offsetX:r,offsetY:s}=n,l=e=>{i.value||(i.value=!0),o(r+e.clientX-t,s+e.clientY-a)},c=()=>{i.value=!1,document.removeEventListener("mousemove",l),document.removeEventListener("mouseup",c)};document.addEventListener("mousemove",l),document.addEventListener("mouseup",c)},l=()=>{t.value&&e.value&&(t.value.removeEventListener("mousedown",s),window.removeEventListener("resize",c))},c=()=>{const{offsetX:e,offsetY:t}=n;o(e,t)};return g(()=>{u(()=>{a.value?t.value&&e.value&&(t.value.addEventListener("mousedown",s),window.addEventListener("resize",c)):l()})}),S(()=>{l()}),{isDragging:i,resetPosition:()=>{n.offsetX=0,n.offsetY=0,e.value&&(e.value.style.transform="")},updatePosition:c}};var Ii={name:"en",el:{breadcrumb:{label:"Breadcrumb"},colorpicker:{confirm:"OK",clear:"Clear",defaultLabel:"color picker",description:"current color is {color}. press enter to select a new color.",alphaLabel:"pick alpha value",alphaDescription:"alpha {alpha}, current color is {color}",hueLabel:"pick hue value",hueDescription:"hue {hue}, current color is {color}",svLabel:"pick saturation and brightness value",svDescription:"saturation {saturation}, brightness {brightness}, current color is {color}",predefineDescription:"select {value} as the color"},datepicker:{now:"Now",today:"Today",cancel:"Cancel",clear:"Clear",confirm:"OK",dateTablePrompt:"Use the arrow keys and enter to select the day of the month",monthTablePrompt:"Use the arrow keys and enter to select the month",yearTablePrompt:"Use the arrow keys and enter to select the year",selectedDate:"Selected date",selectDate:"Select date",selectTime:"Select time",startDate:"Start Date",startTime:"Start Time",endDate:"End Date",endTime:"End Time",prevYear:"Previous Year",nextYear:"Next Year",prevMonth:"Previous Month",nextMonth:"Next Month",year:"",month1:"January",month2:"February",month3:"March",month4:"April",month5:"May",month6:"June",month7:"July",month8:"August",month9:"September",month10:"October",month11:"November",month12:"December",weeks:{sun:"Sun",mon:"Mon",tue:"Tue",wed:"Wed",thu:"Thu",fri:"Fri",sat:"Sat"},weeksFull:{sun:"Sunday",mon:"Monday",tue:"Tuesday",wed:"Wednesday",thu:"Thursday",fri:"Friday",sat:"Saturday"},months:{jan:"Jan",feb:"Feb",mar:"Mar",apr:"Apr",may:"May",jun:"Jun",jul:"Jul",aug:"Aug",sep:"Sep",oct:"Oct",nov:"Nov",dec:"Dec"}},inputNumber:{decrease:"decrease number",increase:"increase number"},select:{loading:"Loading",noMatch:"No matching data",noData:"No data",placeholder:"Select"},mention:{loading:"Loading"},dropdown:{toggleDropdown:"Toggle Dropdown"},cascader:{noMatch:"No matching data",loading:"Loading",placeholder:"Select",noData:"No data"},pagination:{goto:"Go to",pagesize:"/page",total:"Total {total}",pageClassifier:"",page:"Page",prev:"Go to previous page",next:"Go to next page",currentPage:"page {pager}",prevPages:"Previous {pager} pages",nextPages:"Next {pager} pages",deprecationWarning:"Deprecated usages detected, please refer to the el-pagination documentation for more details"},dialog:{close:"Close this dialog"},drawer:{close:"Close this dialog"},messagebox:{title:"Message",confirm:"OK",cancel:"Cancel",error:"Illegal input",close:"Close this dialog"},upload:{deleteTip:"press delete to remove",delete:"Delete",preview:"Preview",continue:"Continue"},slider:{defaultLabel:"slider between {min} and {max}",defaultRangeStartLabel:"pick start value",defaultRangeEndLabel:"pick end value"},table:{emptyText:"No Data",confirmFilter:"Confirm",resetFilter:"Reset",clearFilter:"All",sumText:"Sum",selectAllLabel:"Select all rows",selectRowLabel:"Select this row",expandRowLabel:"Expand this row",collapseRowLabel:"Collapse this row",sortLabel:"Sort by {column}",filterLabel:"Filter by {column}"},tag:{close:"Close this tag"},tour:{next:"Next",previous:"Previous",finish:"Finish",close:"Close this dialog"},tree:{emptyText:"No Data"},transfer:{noMatch:"No matching data",noData:"No data",titles:["List 1","List 2"],filterPlaceholder:"Enter keyword",noCheckedFormat:"{total} items",hasCheckedFormat:"{checked}/{total} checked"},image:{error:"FAILED"},pageHeader:{title:"Back"},popconfirm:{confirmButtonText:"Yes",cancelButtonText:"No"},carousel:{leftArrow:"Carousel arrow left",rightArrow:"Carousel arrow right",indicator:"Carousel switch to index {index}"},inputOTP:{groupLabel:"OTP Input",defaultLabel:"Please enter OTP character {index}"}}};const Ti=e=>(t,a)=>zi(t,a,A(e)),zi=(e,t,a)=>Jr(a,e,e).replace(/\{(\w+)\}/g,(e,a)=>`${(null==t?void 0:t[a])??`{${a}}`}`),Ei=Symbol("localeContextKey"),Di=e=>{const t=e||b(Ei,w());return(e=>({lang:x(()=>A(e).name),locale:C(e)?e:w(e),t:Ti(e)}))(x(()=>t.value||Ii))},Ri=(e,t,a,r,n)=>{let i=`${e}-${t}`;return a&&(i+=`-${a}`),r&&(i+=`__${r}`),n&&(i+=`--${n}`),i},Mi=Symbol("namespaceContextKey"),ji=e=>{const t=e||(v()?b(Mi,w("el")):w("el"));return x(()=>A(t)||"el")},qi=(e,t)=>{const a=ji(t);return{namespace:a,b:(t="")=>Ri(a.value,e,t,"",""),e:t=>t?Ri(a.value,e,"",t,""):"",m:t=>t?Ri(a.value,e,"","",t):"",be:(t,r)=>t&&r?Ri(a.value,e,t,r,""):"",em:(t,r)=>t&&r?Ri(a.value,e,"",t,r):"",bm:(t,r)=>t&&r?Ri(a.value,e,t,"",r):"",bem:(t,r,n)=>t&&r&&n?Ri(a.value,e,t,r,n):"",is:(e,...t)=>{const a=!(t.length>=1)||t[0];return e&&a?`is-${e}`:""},cssVar:e=>{const t={};for(const r in e)e[r]&&(t[`--${a.value}-${r}`]=e[r]);return t},cssVarName:e=>`--${a.value}-${e}`,cssVarBlock:t=>{const r={};for(const n in t)t[n]&&(r[`--${a.value}-${e}-${n}`]=t[n]);return r},cssVarBlockName:t=>`--${a.value}-${e}-${t}`}};const Li=e=>Kn?window.requestAnimationFrame(e):setTimeout(e,16),Oi=e=>Kn?window.cancelAnimationFrame(e):clearTimeout(e),Ni=(e,t)=>{if(!Kn)return!1;const a={undefined:"overflow",true:"overflow-y",false:"overflow-x"}[String(t)],r=Pi(e,a);return["scroll","auto","overlay"].some(e=>r.includes(e))},Ui=(e,t)=>{if(!Kn)return;let a=e;for(;a;){if([window,document,document.documentElement].includes(a))return window;if(Ni(a,t))return a;a=vi(a)?a.host:a.parentNode}return a};let Fi;const Bi=(e,t={})=>{C(e)||Hn("[useLockscreen]","You need to pass a ref param to this function");const a=t.ns||qi("popup"),r=x(()=>a.bm("parent","hidden"));let n=0,i=!1,o="0",l=!1;const u=()=>{l||(l=!0,setTimeout(()=>{"undefined"!=typeof document&&i&&document&&(document.body.style.width=o,xi(document.body,r.value))},200))};s(e,e=>{if(!e)return void u();l=!1,i=!((e,t)=>{if(!e||!t)return!1;if(t.includes(" "))throw new Error("className should not contain space.");return e.classList.contains(t)})(document.body,r.value),i&&(o=document.body.style.width,Ai(document.body,r.value)),n=(e=>{var t;if(!Kn)return 0;if(void 0!==Fi)return Fi;const a=document.createElement("div");a.className=`${e}-scrollbar__wrap`,a.style.visibility="hidden",a.style.width="100px",a.style.position="absolute",a.style.top="-9999px",document.body.appendChild(a);const r=a.offsetWidth;a.style.overflow="scroll";const n=document.createElement("div");n.style.width="100%",a.appendChild(n);const i=n.offsetWidth;return null==(t=a.parentNode)||t.removeChild(a),Fi=r-i,Fi})(a.namespace.value);const t=document.documentElement.clientHeight<document.body.scrollHeight,s=Pi(document.body,"overflowY");n>0&&(t||"scroll"===s)&&i&&(document.body.style.width=`calc(100% - ${n}px)`)}),c(()=>u())},Wi=(e,t,{checkForDefaultPrevented:a=!0}={})=>r=>{const n=null==e?void 0:e(r);if(!1===a||!n)return null==t?void 0:t(r)},Vi=e=>{if(e.code&&"Unidentified"!==e.code)return e.code;const t=Hi(e);return t?Object.values(aa).includes(t)?t:" "===t?aa.space:"":""},Hi=e=>{let t=e.key&&"Unidentified"!==e.key?e.key:"";if(!t&&"keyup"===e.type&&Kn&&/android/i.test(window.navigator.userAgent)){const a=e.target;t=a.value.charAt(a.selectionStart-1)}return t},Gi=e=>{if(!e)return{onClick:I,onMousedown:I,onMouseup:I};let t=!1,a=!1;return{onClick:r=>{t&&a&&e(r),t=a=!1},onMousedown:e=>{t=e.target===e.currentTarget},onMouseup:e=>{a=e.target===e.currentTarget}}},Yi={prefix:Math.floor(1e4*Math.random()),current:0},$i=Symbol("elIdInjection"),Ki=()=>v()?b($i,Yi):Yi,Zi=e=>{const t=Ki();Kn||t!==Yi||Gn("IdInjection","Looks like you are using server rendering, you must provide a id provider to ensure the hydration process to be succeed\nusage: app.provide(ID_INJECTION_KEY, {\n  prefix: number,\n  current: number,\n})");const a=ji();return Yn(()=>A(e)||`${a.value}-id-${t.prefix}-${t.current++}`)};let Ji=[];const Qi=e=>{Vi(e)===aa.esc&&Ji.forEach(t=>t(e))},Xi={current:0},eo=w(0),to=Symbol("elZIndexContextKey"),ao=Symbol("zIndexContextKey"),ro=e=>{const t=v()?b(to,Xi):Xi,a=e||(v()?b(ao,void 0):void 0),r=x(()=>{const e=A(a);return Ln(e)?e:2e3}),n=x(()=>r.value+eo.value);return Kn||b(to)||Gn("ZIndexInjection","Looks like you are using server rendering, you must provide a z-index provider to ensure the hydration process to be succeed\nusage: app.provide(ZINDEX_INJECTION_KEY, { current: 0 })"),{initialZIndex:r,currentZIndex:n,nextZIndex:()=>(t.current++,eo.value=t.current,n.value)}},no=Bn({type:String,values:oa,required:!1}),io=Symbol("size"),oo=()=>{const e=b(io,{});return x(()=>A(e.size)||"")},so=Symbol("emptyValuesContextKey"),lo=Wn({emptyValues:Array,valueOnClear:{type:[String,Number,Boolean,Function],default:void 0,validator:e=>(e=_(e)?e():e,r(e)?e.every(e=>!e):!e)}}),co=e=>{const t=e.props,a=r(t)?Dn(t.map(e=>[e,{}])):t;e.setPropsDefaults=t=>{if(a){for(const[e,r]of Object.entries(t)){const t=a[e];i(a,e)&&(on(t)?a[e]={...t,default:r}:a[e]={type:t,default:r})}e.props=a}}},uo=(e,t)=>{if(e.install=a=>{for(const r of[e,...Object.values(t??{})])a.component(r.name,r)},t)for(const[a,r]of Object.entries(t))e[a]=r;return co(e),e},po=(e,t)=>(e.install=a=>{e._context=a._context,a.config.globalProperties[t]=e},e),mo=(e,t)=>(e.install=a=>{a.directive(t,e)},e),ho=e=>(e.install=I,co(e),e),go=[String,Object,Function],fo={Close:Pe},vo={Close:Pe,SuccessFilled:Te,InfoFilled:Se,WarningFilled:Ie,CircleCloseFilled:_e},yo={primary:Se,success:Te,warning:Ie,error:_e,info:Se},bo={validating:xe,success:Ae,error:ke};const wo=uo(T({name:"ElIcon",inheritAttrs:!1,__name:"icon",props:Wn({size:{type:[Number,String]},color:{type:String}}),setup(e){const t=e,a=qi("icon"),r=x(()=>{const{size:e,color:a}=t,r=Si(e);return r||a?{fontSize:r,"--color":a}:{}});return(e,t)=>(z(),E("i",R({class:A(a).b(),style:r.value},e.$attrs),[D(e.$slots,"default")],16))}})),Co="focus-trap.focus-after-trapped",ko="focus-trap.focus-after-released",Ao={cancelable:!0,bubbles:!1},xo={cancelable:!0,bubbles:!1},Po="focusAfterTrapped",So="focusAfterReleased",_o=Symbol("elFocusTrap"),Io=w(),To=w(0),zo=w(0);let Eo=0;const Do=e=>{const t=[],a=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:e=>{const t="INPUT"===e.tagName&&"hidden"===e.type;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0||e===document.activeElement?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;a.nextNode();)t.push(a.currentNode);return t},Ro=(e,t)=>{for(const a of e)if(!Mo(a,t))return a},Mo=(e,t)=>{if("hidden"===getComputedStyle(e).visibility)return!0;for(;e;){if(t&&e===t)return!1;if("none"===getComputedStyle(e).display)return!0;e=e.parentElement}return!1},jo=(e,t)=>{if(e){const a=document.activeElement;wi(e,{preventScroll:!0}),zo.value=window.performance.now(),e!==a&&(e=>e instanceof HTMLInputElement&&"select"in e)(e)&&t&&e.select()}};function qo(e,t){const a=[...e],r=e.indexOf(t);return-1!==r&&a.splice(r,1),a}const Lo=(()=>{let e=[];return{push:t=>{const a=e[0];a&&t!==a&&a.pause(),e=qo(e,t),e.unshift(t)},remove:t=>{var a,r;e=qo(e,t),null==(r=null==(a=e[0])?void 0:a.resume)||r.call(a)}}})(),Oo=()=>{Io.value="pointer",To.value=window.performance.now()},No=()=>{Io.value="keyboard",To.value=window.performance.now()},Uo=e=>new CustomEvent("focus-trap.focusout-prevented",{...xo,detail:e});var Fo=((e,t)=>{const a=e.__vccOpts||e;for(const[r,n]of t)a[r]=n;return a})(T({name:"ElFocusTrap",inheritAttrs:!1,props:{loop:Boolean,trapped:Boolean,focusTrapEl:Object,focusStartEl:{type:[Object,String],default:"first"}},emits:[Po,So,"focusin","focusout","focusout-prevented","release-requested"],setup(e,{emit:t}){const r=w();let n,i;const{focusReason:o}=(g(()=>{0===Eo&&(document.addEventListener("mousedown",Oo),document.addEventListener("touchstart",Oo),document.addEventListener("keydown",No)),Eo++}),S(()=>{Eo--,Eo<=0&&(document.removeEventListener("mousedown",Oo),document.removeEventListener("touchstart",Oo),document.removeEventListener("keydown",No))}),{focusReason:Io,lastUserFocusTimestamp:To,lastAutomatedFocusTimestamp:zo});var l;l=a=>{e.trapped&&!c.paused&&t("release-requested",a)},g(()=>{0===Ji.length&&document.addEventListener("keydown",Qi),Kn&&Ji.push(l)}),S(()=>{Ji=Ji.filter(e=>e!==l),0===Ji.length&&Kn&&document.removeEventListener("keydown",Qi)});const c={paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}},u=a=>{if(!e.loop&&!e.trapped)return;if(c.paused)return;const{altKey:r,ctrlKey:n,metaKey:i,currentTarget:s,shiftKey:l}=a,{loop:u}=e,d=Vi(a)===aa.tab&&!r&&!n&&!i,p=document.activeElement;if(d&&p){const e=s,[r,n]=(e=>{const t=Do(e);return[Ro(t,e),Ro(t.reverse(),e)]})(e);if(r&&n)if(l||p!==n){if(l&&[r,e].includes(p)){const e=Uo({focusReason:o.value});t("focusout-prevented",e),e.defaultPrevented||(a.preventDefault(),u&&jo(n,!0))}}else{const e=Uo({focusReason:o.value});t("focusout-prevented",e),e.defaultPrevented||(a.preventDefault(),u&&jo(r,!0))}else if(p===e){const e=Uo({focusReason:o.value});t("focusout-prevented",e),e.defaultPrevented||a.preventDefault()}}};M(_o,{focusTrapRef:r,onKeydown:u}),s(()=>e.focusTrapEl,e=>{e&&(r.value=e)},{immediate:!0}),s([r],([e],[t])=>{e&&(e.addEventListener("keydown",u),e.addEventListener("focusin",m),e.addEventListener("focusout",h)),t&&(t.removeEventListener("keydown",u),t.removeEventListener("focusin",m),t.removeEventListener("focusout",h))});const d=e=>{t(Po,e)},p=e=>t(So,e),m=a=>{const o=A(r);if(!o)return;const s=a.target,l=a.relatedTarget,u=s&&o.contains(s);e.trapped||l&&o.contains(l)||(n=l),u&&t("focusin",a),c.paused||e.trapped&&(u?i=s:jo(i,!0))},h=a=>{const n=A(r);if(!c.paused&&n)if(e.trapped){const r=a.relatedTarget;Rn(r)||n.contains(r)||setTimeout(()=>{if(!c.paused&&e.trapped){const e=Uo({focusReason:o.value});t("focusout-prevented",e),e.defaultPrevented||jo(i,!0)}},0)}else{const e=a.target;e&&n.contains(e)||t("focusout",a)}};async function v(){await f();const t=A(r);if(t){Lo.push(c);const r=t.contains(document.activeElement)?n:document.activeElement;if(n=r,!t.contains(r)){const n=new Event(Co,Ao);t.addEventListener(Co,d),t.dispatchEvent(n),n.defaultPrevented||f(()=>{let n=e.focusStartEl;a(n)||(jo(n),document.activeElement!==n&&(n="first")),"first"===n&&((e,t=!1)=>{const a=document.activeElement;for(const r of e)if(jo(r,t),document.activeElement!==a)return})(Do(t),!0),document.activeElement!==r&&"container"!==n||jo(t)})}}}function y(){const e=A(r);if(e){e.removeEventListener(Co,d);const t=new CustomEvent(ko,{...Ao,detail:{focusReason:o.value}});e.addEventListener(ko,p),e.dispatchEvent(t),t.defaultPrevented||"keyboard"!=o.value&&To.value>zo.value&&!e.contains(document.activeElement)||jo(n??document.body),e.removeEventListener(ko,p),Lo.remove(c),n=null,i=null}}return g(()=>{e.trapped&&v(),s(()=>e.trapped,e=>{e?v():y()})}),S(()=>{e.trapped&&y(),r.value&&(r.value.removeEventListener("keydown",u),r.value.removeEventListener("focusin",m),r.value.removeEventListener("focusout",h),r.value=void 0),n=null,i=null}),{onKeydown:u}}}),[["render",function(e,t,a,r,n,i){return D(e.$slots,"default",{handleKeydown:e.onKeydown})}]]);const Bo=e=>e;const Wo=uo(T({name:"ElBadge",__name:"badge",props:Wn({value:{type:[String,Number],default:""},max:{type:Number,default:99},isDot:Boolean,hidden:Boolean,type:{type:String,values:["primary","success","warning","info","danger"],default:"danger"},showZero:{type:Boolean,default:!0},color:String,badgeStyle:{type:[String,Object,Array,Boolean],default:void 0},offset:{type:Array,default:()=>[0,0]},badgeClass:{type:String}}),setup(e,{expose:t}){const a=e,r=qi("badge"),n=x(()=>a.isDot?"":Ln(a.value)&&Ln(a.max)&&a.max<a.value?`${a.max}+`:`${a.value}`),i=x(()=>[{backgroundColor:a.color,marginRight:Si(-a.offset[0]),marginTop:Si(a.offset[1])},a.badgeStyle??{}]);return t({content:n}),(t,a)=>(z(),E("div",{class:O(A(r).b())},[D(t.$slots,"default"),j(B,{name:`${A(r).namespace.value}-zoom-in-center`},{default:q(()=>[!e.hidden&&(n.value||e.isDot||t.$slots.content)?(z(),E("sup",{key:0,class:O([A(r).e("content"),A(r).em("content",e.type),A(r).is("fixed",!!t.$slots.default),A(r).is("dot",e.isDot),A(r).is("hide-zero",!e.showZero&&0===e.value),e.badgeClass]),style:L(i.value)},[D(t.$slots,"content",{value:n.value},()=>[N(U(n.value),1)])],6)):F("v-if",!0)]),_:3},8,["name"])],2))}})),Vo=Symbol(),Ho=w();function Go(e,t=void 0){const a=v()?b(Vo,Ho):Ho;return e?x(()=>{var r;return(null==(r=a.value)?void 0:r[e])??t}):a}function Yo(e,t){const a=Go(),r=qi(e,x(()=>{var e;return(null==(e=a.value)?void 0:e.namespace)||"el"})),n=Di(x(()=>{var e;return null==(e=a.value)?void 0:e.locale})),i=ro(x(()=>{var e;const t=null==(e=a.value)?void 0:e.zIndex;return Rn(t)||Number.isNaN(t)?2e3:t})),o=x(()=>{var e;return A(t)||(null==(e=a.value)?void 0:e.size)||""});return $o(x(()=>A(a)||{})),{ns:r,locale:n,zIndex:i,size:o}}const $o=(e,t,a=!1)=>{const r=!!v(),n=r?Go():void 0,i=r?M:void 0;if(!i)return void Gn("provideGlobalConfig","provideGlobalConfig() can only be used inside setup().");const o=x(()=>{const t=A(e);return(null==n?void 0:n.value)?Ko(n.value,t):t});return i(Vo,o),i(Ei,x(()=>o.value.locale)),i(Mi,x(()=>o.value.namespace)),i(ao,x(()=>o.value.zIndex)),i(io,{size:x(()=>o.value.size||"")}),i(so,x(()=>({emptyValues:o.value.emptyValues,valueOnClear:o.value.valueOnClear}))),!a&&Ho.value||(Ho.value=o.value),o},Ko=(e,t)=>{const a=[...new Set([...Nn(e),...Nn(t)])],r={};for(const n of a)r[n]=void 0!==t[n]?t[n]:e[n];return r},Zo=Wn({a11y:{type:Boolean,default:!0},locale:{type:Object},size:no,button:{type:Object},card:{type:Object},dialog:{type:Object},link:{type:Object},experimentalFeatures:{type:Object},keyboardNavigation:{type:Boolean,default:!0},message:{type:Object},zIndex:Number,namespace:{type:String,default:"el"},table:{type:Object},...lo}),Jo={placement:"top"},Qo=uo(T({name:"ElConfigProvider",props:Zo,setup(e,{slots:t}){const a=$o(e);return s(()=>e.message,e=>{var t;Object.assign(Jo,(null==(t=null==a?void 0:a.value)?void 0:t.message)??{},e??{})},{immediate:!0,deep:!0}),()=>D(t,"default",{config:null==a?void 0:a.value})}})),Xo=Wn({center:Boolean,alignCenter:{type:Boolean,default:void 0},closeIcon:{type:go},draggable:{type:Boolean,default:void 0},overflow:{type:Boolean,default:void 0},fullscreen:Boolean,headerClass:String,bodyClass:String,footerClass:String,showClose:{type:Boolean,default:!0},title:{type:String,default:""},ariaLevel:{type:String,default:"2"}}),es=Wn({...Xo,appendToBody:Boolean,appendTo:{type:[String,Object],default:"body"},beforeClose:{type:Function},destroyOnClose:Boolean,closeOnClickModal:{type:Boolean,default:!0},closeOnPressEscape:{type:Boolean,default:!0},lockScroll:{type:Boolean,default:!0},modal:{type:Boolean,default:!0},modalPenetrable:Boolean,openDelay:{type:Number,default:0},closeDelay:{type:Number,default:0},top:{type:String},modelValue:Boolean,modalClass:String,headerClass:String,bodyClass:String,footerClass:String,width:{type:[String,Number]},zIndex:{type:Number},trapFocus:Boolean,headerAriaLevel:{type:String,default:"2"},transition:{type:[String,Object],default:void 0}}),ts={open:()=>!0,opened:()=>!0,close:()=>!0,closed:()=>!0,[ra]:e=>qn(e),openAutoFocus:()=>!0,closeAutoFocus:()=>!0},as=Wn({mask:{type:Boolean,default:!0},customMaskEvent:Boolean,overlayClass:{type:[String,Array,Object]},zIndex:{type:[String,Number]}});const rs=T({name:"ElOverlay",props:as,emits:{click:e=>e instanceof MouseEvent},setup(e,{slots:t,emit:a}){const r=qi("overlay"),{onClick:n,onMousedown:i,onMouseup:o}=Gi(e.customMaskEvent?void 0:e=>{a("click",e)});return()=>e.mask?j("div",{class:[r.b(),e.overlayClass],style:{zIndex:e.zIndex},onClick:n,onMousedown:i,onMouseup:o},[D(t,"default")],14,["onClick","onMouseup","onMousedown"]):W("div",{class:e.overlayClass,style:{zIndex:e.zIndex,position:"fixed",top:"0px",right:"0px",bottom:"0px",left:"0px"}},[D(t,"default")])}}),ns=Symbol("dialogInjectionKey"),is="dialog-fade",os=["aria-level"],ss=["aria-label"],ls=["id"];var cs=T({name:"ElDialogContent",__name:"dialog-content",props:Xo,emits:{close:()=>!0},setup(e,{expose:t}){const{t:a}=Di(),{Close:r}=fo,n=e,{dialogRef:i,headerRef:o,bodyId:s,ns:l,style:c}=b(ns),{focusTrapRef:u}=b(_o),d=((...e)=>t=>{e.forEach(e=>{e.value=t})})(u,i),p=x(()=>!!n.draggable),{resetPosition:m,updatePosition:h,isDragging:g}=_i(i,o,p,x(()=>!!n.overflow)),f=x(()=>[l.b(),l.is("fullscreen",n.fullscreen),l.is("draggable",p.value),l.is("dragging",g.value),l.is("align-center",!!n.alignCenter),{[l.m("center")]:n.center}]);return t({resetPosition:m,updatePosition:h}),(t,n)=>(z(),E("div",{ref:A(d),class:O(f.value),style:L(A(c)),tabindex:"-1"},[V("header",{ref_key:"headerRef",ref:o,class:O([A(l).e("header"),e.headerClass,{"show-close":e.showClose}])},[D(t.$slots,"header",{},()=>[V("span",{role:"heading","aria-level":e.ariaLevel,class:O(A(l).e("title"))},U(e.title),11,os)]),e.showClose?(z(),E("button",{key:0,"aria-label":A(a)("el.dialog.close"),class:O(A(l).e("headerbtn")),type:"button",onClick:n[0]||(n[0]=e=>t.$emit("close"))},[j(A(wo),{class:O(A(l).e("close"))},{default:q(()=>[(z(),H(G(e.closeIcon||A(r))))]),_:1},8,["class"])],10,ss)):F("v-if",!0)],2),V("div",{id:A(s),class:O([A(l).e("body"),e.bodyClass])},[D(t.$slots,"default")],10,ls),t.$slots.footer?(z(),E("footer",{key:0,class:O([A(l).e("footer"),e.footerClass])},[D(t.$slots,"footer")],2)):F("v-if",!0)],6))}});const us=["aria-label","aria-labelledby","aria-describedby"];const ds=uo(T({name:"ElDialog",inheritAttrs:!1,__name:"dialog",props:es,emits:ts,setup(e,{expose:t}){const a=e,i=Y();fi({scope:"el-dialog",from:"the title slot",replacement:"the header slot",version:"3.0.0",ref:"https://element-plus.org/en-US/component/dialog.html#slots"},x(()=>!!i.title));const o=qi("dialog"),l=w(),c=w(),u=w(),{visible:d,titleId:p,bodyId:m,style:h,overlayDialogStyle:y,rendered:b,transitionConfig:C,zIndex:k,_draggable:P,_alignCenter:S,_overflow:I,penetrable:T,handleClose:E,onModalClick:N,onOpenAutoFocus:U,onCloseAutoFocus:W,onCloseRequested:G,onFocusoutPrevented:Q,bringToFront:X,closing:ee}=((e,t)=>{const a=v().emit,{nextZIndex:i}=ro();let o="";const l=Zi(),c=Zi(),u=w(!1),d=w(!1),p=w(!1),m=w(e.zIndex??i()),h=w(!1);let y,b;const C=Go(),k=x(()=>{var e;return(null==(e=C.value)?void 0:e.namespace)??"el"}),A=x(()=>{var e;return null==(e=C.value)?void 0:e.dialog}),P=x(()=>{const t={},a=`--${k.value}-dialog`;if(!e.fullscreen){e.top&&(t[`${a}-margin-top`]=e.top);const r=Si(e.width);r&&(t[`${a}-width`]=r)}return t}),S=x(()=>{var t;return(e.draggable??(null==(t=A.value)?void 0:t.draggable)??!1)&&!e.fullscreen}),I=x(()=>{var t;return e.alignCenter??(null==(t=A.value)?void 0:t.alignCenter)??!1}),T=x(()=>{var t;return e.overflow??(null==(t=A.value)?void 0:t.overflow)??!1}),z=x(()=>e.modalPenetrable&&!e.modal&&!e.fullscreen),E=x(()=>I.value?{display:"flex"}:{}),D=x(()=>{var t;const a=e.transition??(null==(t=A.value)?void 0:t.transition)??"dialog-fade",i={name:a,onAfterEnter:R,onBeforeLeave:j,onAfterLeave:M};if(n(a)){const e={...a},t=(e,t)=>a=>{r(e)?e.forEach(e=>{_(e)&&e(a)}):_(e)&&e(a),t()};return e.onAfterEnter=t(e.onAfterEnter,R),e.onBeforeLeave=t(e.onBeforeLeave,j),e.onAfterLeave=t(e.onAfterLeave,M),e.name||(e.name=is,Gn("ElDialog",`transition.name is missing when using object syntax, fallback to '${is}'`)),e}return i});function R(){a("opened")}function M(){a("closed"),a(ra,!1),e.destroyOnClose&&(p.value=!1),h.value=!1}function j(){h.value=!0,a("close")}function q(){null==b||b(),null==y||y(),e.openDelay&&e.openDelay>0?({stop:y}=ri(()=>N(),e.openDelay)):N()}function L(){null==y||y(),null==b||b(),e.closeDelay&&e.closeDelay>0?({stop:b}=ri(()=>U(),e.closeDelay)):U()}function O(){e.beforeClose?e.beforeClose(function(e){e||(d.value=!0,u.value=!1)}):L()}function N(){Kn&&(u.value=!0)}function U(){u.value=!1}return e.lockScroll&&Bi(u),s(()=>e.zIndex,()=>{m.value=e.zIndex??i()}),s(()=>e.modelValue,r=>{r?(d.value=!1,h.value=!1,q(),p.value=!0,m.value=e.zIndex??i(),f(()=>{a("open"),t.value&&(t.value.parentElement.scrollTop=0,t.value.parentElement.scrollLeft=0,t.value.scrollTop=0)})):u.value&&L()}),s(()=>e.fullscreen,e=>{t.value&&(e?(o=t.value.style.transform,t.value.style.transform=""):t.value.style.transform=o)}),g(()=>{e.modelValue&&(u.value=!0,p.value=!0,q())}),{afterEnter:R,afterLeave:M,beforeLeave:j,handleClose:O,onModalClick:function(){e.closeOnClickModal&&O()},close:L,doClose:U,onOpenAutoFocus:function(){a("openAutoFocus")},onCloseAutoFocus:function(){a("closeAutoFocus")},onCloseRequested:function(){e.closeOnPressEscape&&O()},onFocusoutPrevented:function(e){var t;"pointer"===(null==(t=e.detail)?void 0:t.focusReason)&&e.preventDefault()},bringToFront:function(){u.value&&z.value&&void 0===e.zIndex&&(m.value=i())},titleId:l,bodyId:c,closed:d,style:P,overlayDialogStyle:E,rendered:p,visible:u,zIndex:m,transitionConfig:D,_draggable:S,_alignCenter:I,_overflow:T,closing:h,penetrable:z}})(a,l);M(ns,{dialogRef:l,headerRef:c,bodyId:m,ns:o,rendered:b,style:h});const te=Gi(N);return t({visible:d,dialogContentRef:u,resetPosition:()=>{var e;null==(e=u.value)||e.resetPosition()},handleClose:E}),(t,a)=>(z(),H(J,{to:e.appendTo,disabled:"body"===e.appendTo&&!e.appendToBody},[j(B,R(A(C),{persisted:""}),{default:q(()=>[$(j(A(rs),{"custom-mask-event":"",mask:e.modal,"overlay-class":[e.modalClass??"",`${A(o).namespace.value}-modal-dialog`,A(o).is("penetrable",A(T))],"z-index":A(k)},{default:q(()=>[V("div",{role:"dialog","aria-modal":"true","aria-label":e.title||void 0,"aria-labelledby":e.title?void 0:A(p),"aria-describedby":A(m),class:O([`${A(o).namespace.value}-overlay-dialog`,A(o).is("closing",A(ee))]),style:L(A(y)),onClick:a[0]||(a[0]=(...e)=>A(te).onClick&&A(te).onClick(...e)),onMousedown:a[1]||(a[1]=(...e)=>A(te).onMousedown&&A(te).onMousedown(...e)),onMouseup:a[2]||(a[2]=(...e)=>A(te).onMouseup&&A(te).onMouseup(...e))},[j(A(Fo),{loop:"",trapped:A(d),"focus-start-el":"container",onFocusAfterTrapped:A(U),onFocusAfterReleased:A(W),onFocusoutPrevented:A(Q),onReleaseRequested:A(G)},{default:q(()=>[A(b)?(z(),H(cs,R({key:0,ref_key:"dialogContentRef",ref:u},t.$attrs,{center:e.center,"align-center":A(S),"close-icon":e.closeIcon,draggable:A(P),overflow:A(I),fullscreen:e.fullscreen,"header-class":e.headerClass,"body-class":e.bodyClass,"footer-class":e.footerClass,"show-close":e.showClose,title:e.title,"aria-level":e.headerAriaLevel,onClose:A(E),onMousedown:A(X)}),K({header:q(()=>[t.$slots.title?D(t.$slots,"title",{key:1}):D(t.$slots,"header",{key:0,close:A(E),titleId:A(p),titleClass:A(o).e("title")})]),default:q(()=>[D(t.$slots,"default")]),_:2},[t.$slots.footer?{name:"footer",fn:q(()=>[D(t.$slots,"footer")]),key:"0"}:void 0]),1040,["center","align-center","close-icon","draggable","overflow","fullscreen","header-class","body-class","footer-class","show-close","title","aria-level","onClose","onMousedown"])):F("v-if",!0)]),_:3},8,["trapped","onFocusAfterTrapped","onFocusAfterReleased","onFocusoutPrevented","onReleaseRequested"])],46,us)]),_:3},8,["mask","overlay-class","z-index"]),[[Z,A(d)]])]),_:3},16)],8,["to","disabled"]))}})),ps=["primary","success","info","warning","error"],ms=["top","top-left","top-right","bottom","bottom-left","bottom-right"],hs={customClass:"",dangerouslyUseHTMLString:!1,duration:3e3,icon:void 0,id:"",message:"",onClose:void 0,showClose:!1,type:"info",plain:!1,offset:16,placement:void 0,zIndex:0,grouping:!1,repeatNum:1,appendTo:Kn?document.body:void 0},gs=Wn({customClass:{type:String,default:hs.customClass},dangerouslyUseHTMLString:{type:Boolean,default:hs.dangerouslyUseHTMLString},duration:{type:Number,default:hs.duration},icon:{type:go,default:hs.icon},id:{type:String,default:hs.id},message:{type:[String,Object,Function],default:hs.message},onClose:{type:Function,default:hs.onClose},showClose:{type:Boolean,default:hs.showClose},type:{type:String,values:ps,default:hs.type},plain:{type:Boolean,default:hs.plain},offset:{type:Number,default:hs.offset},placement:{type:String,values:ms,default:hs.placement},zIndex:{type:Number,default:hs.zIndex},grouping:{type:Boolean,default:hs.grouping},repeatNum:{type:Number,default:hs.repeatNum}}),fs=Q({}),vs=(e,t)=>{const{prev:a}=((e,t)=>{const a=fs[t]||[],r=a.findIndex(t=>t.id===e),n=a[r];let i;return r>0&&(i=a[r-1]),{current:n,prev:i}})(e,t);return a?a.vm.exposed.bottom.value:0},ys=["id"],bs=["innerHTML"];var ws=T({name:"ElMessage",__name:"message",props:gs,emits:{destroy:()=>!0},setup(e,{expose:t,emit:a}){const{Close:r}=vo,n=e,i=a,o=w(!1),{ns:l,zIndex:c}=Yo("message"),{currentZIndex:u,nextZIndex:d}=c,p=w(),m=w(!1),h=w(0);let v;const y=x(()=>n.type?"error"===n.type?"danger":n.type:"info"),b=x(()=>{const e=n.type;return{[l.bm("icon",e)]:e&&yo[e]}}),C=x(()=>n.icon||yo[n.type]||""),k=x(()=>n.placement||"top"),P=x(()=>vs(n.id,k.value)),S=x(()=>Math.max(((e,t,a)=>(fs[a]||[]).findIndex(t=>t.id===e)>0?16:t)(n.id,n.offset,k.value)+P.value,n.offset)),_=x(()=>h.value+S.value),I=x(()=>k.value.includes("left")?l.is("left"):k.value.includes("right")?l.is("right"):l.is("center")),T=x(()=>k.value.startsWith("top")?"top":"bottom"),R=x(()=>({[T.value]:`${S.value}px`,zIndex:u.value}));function M(){0!==n.duration&&({stop:v}=ri(()=>{Y()},n.duration))}function W(){null==v||v()}function Y(){m.value=!1,f(()=>{var e;o.value||(null==(e=n.onClose)||e.call(n),i("destroy"))})}return g(()=>{M(),d(),m.value=!0}),s(()=>n.repeatNum,()=>{W(),M()}),si(document,"keydown",function(e){Vi(e)===aa.esc&&Y()}),mi(p,()=>{h.value=p.value.getBoundingClientRect().height}),t({visible:m,bottom:_,close:Y}),(t,a)=>(z(),H(B,{name:A(l).b("fade"),onBeforeEnter:a[0]||(a[0]=e=>o.value=!0),onBeforeLeave:e.onClose,onAfterLeave:a[1]||(a[1]=e=>t.$emit("destroy")),persisted:""},{default:q(()=>[$(V("div",{id:e.id,ref_key:"messageRef",ref:p,class:O([A(l).b(),{[A(l).m(e.type)]:e.type},A(l).is("closable",e.showClose),A(l).is("plain",e.plain),A(l).is("bottom","bottom"===T.value),I.value,e.customClass]),style:L(R.value),role:"alert",onMouseenter:W,onMouseleave:M},[e.repeatNum>1?(z(),H(A(Wo),{key:0,value:e.repeatNum,type:y.value,class:O(A(l).e("badge"))},null,8,["value","type","class"])):F("v-if",!0),C.value?(z(),H(A(wo),{key:1,class:O([A(l).e("icon"),b.value])},{default:q(()=>[(z(),H(G(C.value)))]),_:1},8,["class"])):F("v-if",!0),!e.dangerouslyUseHTMLString||t.$slots.default?(z(),E("p",{key:2,class:O(A(l).e("content"))},[D(t.$slots,"default",{},()=>[N(U(e.message),1)])],2)):(z(),E(X,{key:3},[F(" Caution here, message could've been compromised, never use user's input as message "),V("p",{class:O(A(l).e("content")),innerHTML:e.message},null,10,bs)],2112)),e.showClose?(z(),H(A(wo),{key:4,class:O(A(l).e("closeBtn")),onClick:ee(Y,["stop"])},{default:q(()=>[j(A(r))]),_:1},8,["class"])):F("v-if",!0)],46,ys),[[Z,m.value]])]),_:3},8,["name","onBeforeLeave"]))}});let Cs=1;const ks=e=>{const t=!e||a(e)||te(e)||_(e)?{message:e}:e,r={...hs,...t};return(e=>{if(e.appendTo){if(a(e.appendTo)){let t=document.querySelector(e.appendTo);On(t)||(Gn("ElMessage","the appendTo option is not an HTMLElement. Falling back to document.body."),t=document.body),e.appendTo=t}}else e.appendTo=document.body})(r),(e=>{!e.placement&&a(Jo.placement)&&Jo.placement&&(e.placement=Jo.placement),e.placement||(e.placement="top"),ms.includes(e.placement)||(Gn("ElMessage",`Invalid placement: ${e.placement}. Falling back to 'top'.`),e.placement="top")})(r),qn(Jo.grouping)&&!r.grouping&&(r.grouping=Jo.grouping),Ln(Jo.duration)&&3e3===r.duration&&(r.duration=Jo.duration),Ln(Jo.offset)&&16===r.offset&&(r.offset=Jo.offset),qn(Jo.showClose)&&!r.showClose&&(r.showClose=Jo.showClose),qn(Jo.plain)&&!r.plain&&(r.plain=Jo.plain),r},As=({appendTo:e,...t},a)=>{const r="message_"+Cs++,n=t.onClose,i=document.createElement("div"),o={...t,id:r,onClose:()=>{null==n||n(),(e=>{const t=fs[e.props.placement||"top"],a=t.indexOf(e);if(-1===a)return;t.splice(a,1);const{handler:r}=e;r.close()})(c)},onDestroy:()=>{ae(null,i)}},s=j(ws,o,_(o.message)||te(o.message)?{default:_(o.message)?o.message:()=>o.message}:null);s.appContext=a||xs._context,ae(s,i),e.appendChild(i.firstElementChild);const l=s.component,c={id:r,vnode:s,vm:l,handler:{close:()=>{l.exposed.close()}},props:s.component.props};return c},xs=(e={},t)=>{if(!Kn)return{close:()=>{}};const a=ks(e),r=(n=a.placement||"top",fs[n]||(fs[n]=Q([])),fs[n]);var n;if(a.grouping&&r.length){const e=r.find(({vnode:e})=>{var t;return(null==(t=e.props)?void 0:t.message)===a.message});if(e)return e.props.repeatNum+=1,e.props.type=a.type,e.handler}if(Ln(Jo.max)&&r.length>=Jo.max)return{close:()=>{}};const i=As(a,t);return r.push(i),i.handler};ps.forEach(e=>{xs[e]=(t={},a)=>xs({...ks(t),type:e},a)}),xs.closeAll=function(e){for(const t in fs)if(i(fs,t)){const a=[...fs[t]];for(const t of a)e&&e!==t.props.type||t.handler.close()}},xs.closeAllByPlacement=function(e){fs[e]&&[...fs[e]].forEach(e=>e.handler.close())},xs._context=null;const Ps=po(xs,"$message");var Ss=(e=>(e.LIGHT="light",e.DARK="dark",e.AUTO="auto",e))(Ss||{}),_s=(e=>(e.EN="en",e.ES="es",e.PL="pl",e.IT="it",e.RO="ro",e.ID="id",e.FR="fr",e.HI="hi",e.RU="ru",e.JA="ja",e.ZH="zh_TW",e))(_s||{});const Is=[{value:"en",label:"EN",name:"English"},{value:"es",label:"ES",name:"Español"},{value:"pl",label:"PL",name:"Polski"},{value:"it",label:"IT",name:"Italiano"},{value:"ro",label:"RO",name:"Română"},{value:"fr",label:"FR",name:"Français"},{value:"hi",label:"HI",name:"हिंदी"},{value:"ru",label:"RU",name:"Русский язык"},{value:"ja",label:"JP",name:"日本語"},{value:"zh_TW",label:"ZH",name:"繁體中文"}],Ts={tagsView:!0,sidebarLogo:!0,theme:Ss.DARK,language:_s.EN,themeColor:"#409EFF"};var zs={name:"zh-cn",el:{breadcrumb:{label:"面包屑"},colorpicker:{confirm:"确定",clear:"清空",defaultLabel:"颜色选择器",description:"当前颜色 {color},按 Enter 键选择新颜色",alphaLabel:"选择透明度的值",alphaDescription:"透明度 {alpha}, 当前颜色 {color}",hueLabel:"选择色相值",hueDescription:"色相 {hue}, 当前颜色 {color}",svLabel:"选择饱和度与明度的值",svDescription:"饱和度 {saturation}, 明度 {brightness}, 当前颜色 {color}",predefineDescription:"选择 {value} 作为颜色"},datepicker:{now:"此刻",today:"今天",cancel:"取消",clear:"清空",confirm:"确定",dateTablePrompt:"使用方向键与 Enter 键可选择日期",monthTablePrompt:"使用方向键与 Enter 键可选择月份",yearTablePrompt:"使用方向键与 Enter 键可选择年份",selectedDate:"已选日期",selectDate:"选择日期",selectTime:"选择时间",startDate:"开始日期",startTime:"开始时间",endDate:"结束日期",endTime:"结束时间",prevYear:"前一年",nextYear:"后一年",prevMonth:"上个月",nextMonth:"下个月",year:"年",month1:"1 月",month2:"2 月",month3:"3 月",month4:"4 月",month5:"5 月",month6:"6 月",month7:"7 月",month8:"8 月",month9:"9 月",month10:"10 月",month11:"11 月",month12:"12 月",weeks:{sun:"日",mon:"一",tue:"二",wed:"三",thu:"四",fri:"五",sat:"六"},weeksFull:{sun:"星期日",mon:"星期一",tue:"星期二",wed:"星期三",thu:"星期四",fri:"星期五",sat:"星期六"},months:{jan:"一月",feb:"二月",mar:"三月",apr:"四月",may:"五月",jun:"六月",jul:"七月",aug:"八月",sep:"九月",oct:"十月",nov:"十一月",dec:"十二月"}},inputNumber:{decrease:"减少数值",increase:"增加数值"},select:{loading:"加载中",noMatch:"无匹配数据",noData:"无数据",placeholder:"请选择"},mention:{loading:"加载中"},dropdown:{toggleDropdown:"切换下拉选项"},cascader:{noMatch:"无匹配数据",loading:"加载中",placeholder:"请选择",noData:"暂无数据"},pagination:{goto:"前往",pagesize:"条/页",total:"共 {total} 条",pageClassifier:"页",page:"页",prev:"上一页",next:"下一页",currentPage:"第 {pager} 页",prevPages:"向前 {pager} 页",nextPages:"向后 {pager} 页",deprecationWarning:"你使用了一些已被废弃的用法,请参考 el-pagination 的官方文档"},dialog:{close:"关闭此对话框"},drawer:{close:"关闭此对话框"},messagebox:{title:"提示",confirm:"确定",cancel:"取消",error:"输入的数据不合法!",close:"关闭此对话框"},upload:{deleteTip:"按 Delete 键可删除",delete:"删除",preview:"查看图片",continue:"继续上传"},slider:{defaultLabel:"滑块介于 {min} 至 {max}",defaultRangeStartLabel:"选择起始值",defaultRangeEndLabel:"选择结束值"},table:{emptyText:"暂无数据",confirmFilter:"筛选",resetFilter:"重置",clearFilter:"全部",sumText:"合计",selectAllLabel:"选择所有行",selectRowLabel:"选择当前行",expandRowLabel:"展开当前行",collapseRowLabel:"收起当前行",sortLabel:"按 {column} 排序",filterLabel:"按 {column} 过滤"},tag:{close:"关闭此标签"},tour:{next:"下一步",previous:"上一步",finish:"结束导览",close:"关闭此对话框"},tree:{emptyText:"暂无数据"},transfer:{noMatch:"无匹配数据",noData:"无数据",titles:["列表 1","列表 2"],filterPlaceholder:"请输入搜索内容",noCheckedFormat:"共 {total} 项",hasCheckedFormat:"已选 {checked}/{total} 项"},image:{error:"加载失败"},pageHeader:{title:"返回"},popconfirm:{confirmButtonText:"确定",cancelButtonText:"取消"},carousel:{leftArrow:"上一张幻灯片",rightArrow:"下一张幻灯片",indicator:"幻灯片切换至索引 {index}"},inputOTP:{groupLabel:"一次性密码输入框",defaultLabel:"请输入第 {index} 位 OTP 字符"}}},Es=(e=>(e.DESKTOP="desktop",e.MOBILE="mobile",e))(Es||{}),Ds=(e=>(e.OPENED="opened",e.CLOSED="closed",e))(Ds||{});const Rs="token",Ms="refreshToken",js="userInfo",qs="guestUserName",Ls="chatListWithUnread",Os="chatsList",Ns="authRouterRedirect",Us="pendingOrder",Fs="languageManualSet",Bs="isTempGuest",Ws="tempGuestToken",Vs=(e,t)=>{if(e)return"string"!=typeof t&&(t=JSON.stringify(t)),window.localStorage.setItem(e,t)},Hs=e=>{if(e)try{return JSON.parse(window.localStorage.getItem(e))}catch(t){return window.localStorage.getItem(e)}},Gs=e=>{if(e)return window.localStorage.removeItem(e)},Ys=re("app",()=>{const e=w({}),t=me("device",Es.DESKTOP),a=me("size",Ts.size),r=me("language",Ts.language),n=me("sidebarStatus",Ds.CLOSED),i=k({opened:n.value===Ds.OPENED,withoutAnimation:!1}),o=w(!1),s=()=>{const e=(()=>{try{return window.top||window.parent||window}catch(e){return window}})();return{width:e.innerWidth,height:e.innerHeight}},{width:l,height:c}=s(),u=w(l),d=w(c),p=()=>{const{width:e,height:t}=s();u.value=e,d.value=t};"undefined"!=typeof window&&window.addEventListener("resize",p);const m=x(()=>"zh"==(null==r?void 0:r.value)?zs:Ii);return{appConfig:e,device:t,sidebar:i,language:r,locale:m,size:a,windowWidth:u,windowHeight:d,isIpAccess:o,updateWindowSize:p,toggleDevice:function(e){t.value=e},changeSize:function(e){a.value=e},changeLanguage:function(e){r.value=e,Vs(Fs,"true"),window.location.reload()},autoSwitchLanguageByIp:function(t){var a,n;if(Hs(Fs))return;if(r.value===t)return;(null==(n=((null==(a=e.value)?void 0:a.languages)||{})[t])?void 0:n.open)&&(r.value=t,window.location.reload())},applyUserLanguage:function(t){var a,n;if(Hs(Fs))return;if(!t)return;(null==(n=((null==(a=e.value)?void 0:a.languages)||{})[t])?void 0:n.open)&&r.value!==t&&(r.value=t,Vs(Fs,"true"),window.location.reload())},toggleSidebar:function(){i.opened=!i.opened,n.value=i.opened?Ds.OPENED:Ds.CLOSED},closeSideBar:function(){i.opened=!1,n.value=Ds.CLOSED},openSideBar:function(){i.opened=!0,n.value=Ds.OPENED}}}),$s=()=>Ys(jh);function Ks(e){return"auto"===e&&(e=window.matchMedia("(prefers-color-scheme: dark)").matches?Ss.DARK:Ss.LIGHT),e}const Zs=re("setting",()=>{const e=w(!1),t=me("tagsView",Ts.tagsView),a=me("sidebarLogo",Ts.sidebarLogo),r=me("layout",Ts.layout),n=me("themeColor",Ts.themeColor),i=me("theme",Ts.theme);s(i,(e,t)=>{if(e!==t){Ks(e)===Ss.DARK?document.documentElement.classList.add("dark"):document.documentElement.classList.remove("dark")}},{immediate:!0});const o={tagsView:t,sidebarLogo:a,layout:r};return{settingsVisible:e,tagsView:t,sidebarLogo:a,layout:r,themeColor:n,theme:i,changeSetting:function({key:e,value:t}){const a=o[e];a&&(a.value=t)},changeTheme:function(e){i.value=e},changeThemeColor:function(e){n.value=e},changeLayout:function(e){r.value=e}}}),Js={},Qs=function(e,t,a){let r=Promise.resolve();if(t&&t.length>0){document.getElementsByTagName("link");const e=document.querySelector("meta[property=csp-nonce]"),a=(null==e?void 0:e.nonce)||(null==e?void 0:e.getAttribute("nonce"));r=Promise.allSettled(t.map(e=>{if((e=function(e){return"/"+e}(e))in Js)return;Js[e]=!0;const t=e.endsWith(".css"),r=t?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${e}"]${r}`))return;const n=document.createElement("link");return n.rel=t?"stylesheet":"modulepreload",t||(n.as="script"),n.crossOrigin="",n.href=e,a&&n.setAttribute("nonce",a),document.head.appendChild(n),t?new Promise((t,a)=>{n.addEventListener("load",t),n.addEventListener("error",()=>a(new Error(`Unable to preload CSS for ${e}`)))}):void 0}))}function n(e){const t=new Event("vite:preloadError",{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(const e of t||[])"rejected"===e.status&&n(e.reason);return e().catch(n)})};function Xs(e){return!1!==(null==e?void 0:e.vipFeatureEnabled)}const el=re("dialog",()=>{const e=w(!1),t=w(!1),a=w(!1),r=w(""),n=w(""),i=w(!1),o=w(!1),s=w({}),l=w(!1),c=w({}),u=w(!1),d=w(!1),p=w(!1),m=w(!1),h=w(!1),g=w(!1),f=w(null),v=w(!1),y=w(null),b=w(!1),C=w(null),k=w(!1),A=w("");return{showLoginDialog:e,showCoinDialog:t,showDownloadDialog:a,reportUserId:r,reportChat:n,showReportDialog:i,showVipDialog:o,vipDialogOptions:s,showVipGuideDialog:l,vipGuideDialogOptions:c,showVipPaymentPendingDialog:u,showShareDialog:d,showLanguageDialog:p,showCheckinDialog:m,showProfileCompleteDialog:h,showWebViewGuide:g,webViewAppName:f,openWebViewGuide:(e=null)=>{f.value=e,g.value=!0},closeWebViewGuide:()=>{g.value=!1,f.value=null},showPhotoUnlockDialog:v,photoUnlockData:y,setPhotoUnlockData:e=>{y.value=e,v.value=!0},closePhotoUnlockDialog:()=>{v.value=!1,y.value=null},showVideoUnlockDialog:b,videoUnlockData:C,setVideoUnlockData:e=>{C.value=e,b.value=!0},closeVideoUnlockDialog:()=>{b.value=!1,C.value=null},showVideoPlayer:k,currentVideoUrl:A,openVideoPlayer:e=>{A.value=e,k.value=!0},closeVideoPlayer:()=>{k.value=!1,A.value=""},openVipDialog:(e={})=>{s.value={...e},o.value=!0},closeVipDialog:()=>{o.value=!1,s.value={}},openVipGuideDialog:(e={})=>{Xs(window.__APP_CONFIG__)&&(c.value={...e},l.value=!0)},closeVipGuideDialog:()=>{l.value=!1,c.value={}},openVipPaymentPendingDialog:()=>{u.value=!0},closeVipPaymentPendingDialog:()=>{u.value=!1}}});function tl(){return el(jh)}const al=Object.freeze(Object.defineProperty({__proto__:null,useDialogStore:el,useDialogStoreHook:tl},Symbol.toStringTag,{value:"Module"}));var rl=(e=>(e[e.SUCCESS=200]="SUCCESS",e[e.ERROR=500]="ERROR",e[e.TOKEN_EXPIRED=888]="TOKEN_EXPIRED",e[e.REFRESH_TOKEN_EXPIRED=887]="REFRESH_TOKEN_EXPIRED",e[e.TOKEN_INVALID=887]="TOKEN_INVALID",e[e.NOT_LOGIN=888]="NOT_LOGIN",e[e.NOT_VIP=10043]="NOT_VIP",e[e.COIN_INSUFFICIENT=10065]="COIN_INSUFFICIENT",e[e.ACCESS_DENIED=403]="ACCESS_DENIED",e[e.EMAIL_LINK_EXPIRED=10105]="EMAIL_LINK_EXPIRED",e[e.EMAIL_LINK_INVALID=10106]="EMAIL_LINK_INVALID",e[e.EMAIL_LINK_USED=10107]="EMAIL_LINK_USED",e[e.EMAIL_LINK_USER_NOT_FOUND=10108]="EMAIL_LINK_USER_NOT_FOUND",e))(rl||{});function nl(e){if(/Windows NT/i.test(e)){const t={"10.0":"10",6.3:"8.1",6.2:"8",6.1:"7","6.0":"Vista",5.1:"XP"},a=e.match(/Windows NT ([\d.]+)/i),r=a?a[1]:"";return{name:"Windows",version:t[r]||r}}if(/Android/i.test(e)){const t=e.match(/Android\s([\d.]+)/i);return{name:"Android",version:t?t[1]:""}}if(/CrOS/i.test(e)){const t=e.match(/CrOS\s+\S+\s+([\d.]+)/i);return{name:"ChromeOS",version:t?t[1]:""}}if(/iPhone|iPad|iPod/i.test(e)){const t=e.match(/OS\s([\d_]+)/i);return{name:"IOS",version:t?t[1].replace(/_/g,"."):""}}if(/Mac OS X/i.test(e)){const t=e.match(/Mac OS X ([\d_]+)/i);return{name:"macOS",version:t?t[1].replace(/_/g,"."):""}}return/Linux/i.test(e)?{name:"Linux",version:""}:{name:"Unknown",version:""}}function il(){if("undefined"==typeof navigator||"undefined"==typeof window)return{category:1,model:"Unknown"};const e=navigator.userAgent||"",t=function(e){if(/iPhone|iPad|iPod|Android|webOS|BlackBerry|IEMobile|Opera Mini|Mobile|Tablet/i.test(e))return!0;if(/Macintosh/i.test(e)&&"undefined"!=typeof navigator&&("ontouchstart"in window||navigator.maxTouchPoints>0||(navigator.msMaxTouchPoints??0)>0))return!0;return!1}(e);let a;if(t)a=/iPhone/i.test(e)?"iPhone":/iPad/i.test(e)?"iPad":/iPod/i.test(e)?"iPod":/Macintosh/i.test(e)&&t?"iPad Pro":/Android/i.test(e)?function(e){const t=e.match(/\(Linux;[^)]*Android[^;]*;\s*([^;)]+)/i);if(t&&t[1]){let e=t[1].trim();return e=e.replace(/\s*Build\/.*$/i,"").trim(),e=e.replace(/\s*MIUI\/.*$/i,"").trim(),e||"Android Device"}return"Android Device"}(e):"Mobile Device";else{const t=nl(e),r=function(e){if(/Edg\//i.test(e)){const t=e.match(/Edg\/([\d.]+)/i);return{name:"Edge",version:t?t[1].split(".")[0]:""}}if(/Chrome/i.test(e)&&!/Chromium/i.test(e)){const t=e.match(/Chrome\/([\d.]+)/i);return{name:"Chrome",version:t?t[1].split(".")[0]:""}}if(/Firefox/i.test(e)){const t=e.match(/Firefox\/([\d.]+)/i);return{name:"Firefox",version:t?t[1].split(".")[0]:""}}if(/Safari/i.test(e)&&!/Chrome/i.test(e)){const t=e.match(/Version\/([\d.]+)/i);return{name:"Safari",version:t?t[1].split(".")[0]:""}}if(/Trident/i.test(e)||/MSIE/i.test(e)){const t=e.match(/(?:MSIE |rv:)([\d.]+)/i);return{name:"IE",version:t?t[1]:""}}return{name:"Unknown",version:""}}(e);a=`${t.version?`${t.name} ${t.version}`:t.name} / ${r.version?`${r.name} ${r.version}`:r.name}`}return{category:t?2:1,model:a}}const ol={channelPrefix:"001",statisticsType:"0",promoter:"00",channelSubName:"000"},sl=(e,t,a)=>{const r=String(a),n=String(e??r).trim()||r;return n.length>=t?n.slice(0,t):n.padStart(t,"0")},ll=(e,t,a)=>{const{browserName:r,browserVersion:n,osName:i,osVersion:o,deviceModel:s}=(()=>{const e="undefined"!=typeof navigator&&navigator.userAgent||"";let t="",a="",r="",n="",i="",o="";const s=(e,t,a="1.0.0")=>{const r=e.match(t);return r&&r[1]?r[1]:a};/Edg\//i.test(e)?(t="Edge",a=s(e,/Edg\/([\d.]+)/i)):/Chrome/i.test(e)?(t="Chrome",a=s(e,/Chrome\/([\d.]+)/i)):/Safari/i.test(e)&&!/Chrome/i.test(e)?(t="Safari",a=s(e,/Version\/([\d.]+)/i)):/Firefox/i.test(e)?(t="Firefox",a=s(e,/Firefox\/([\d.]+)/i)):/Trident/i.test(e)?(t="IE",a=s(e,/rv:([\d.]+)/i)):(t="Chrome",a="1.0.0");const l=nl(e);if(r=l.name,n=l.version,/Android/i.test(e))try{const t=e.match(/\((.*?)\)/);if(t&&t[1]){const e=t[1].split(";");o=e[1]?e[1].trim():"Unknown",i=e[2]?e[2].trim():"Unknown"}else o="Unknown",i="Unknown"}catch{o="Unknown",i="Unknown"}else/iPhone/i.test(e)?(i="iPhone",o="Apple"):/iPad/i.test(e)?(i="iPad",o="Apple"):"Unknown"===r?(i="Unknown",o="1.0.0"):(i=n?`${r} ${n}`:r,o="1.0.0");return{browserName:t,browserVersion:a,osName:r,osVersion:n,deviceModel:i,brand:o}})(),l=(e=>"Android"===e||"IOS"===e?e:"WEB")(i),c=((e,t)=>{const a={...ol,...t};return`${sl(e,2,"01")}${sl(a.channelPrefix,3,ol.channelPrefix)}${sl(a.statisticsType,1,ol.statisticsType)}@${sl(a.promoter,2,ol.promoter)}${sl(a.channelSubName,3,ol.channelSubName)}`})(t,a);return`${r}/${n} (${l}; OS/${o}; B/${t||1}; V/1.0.0/1.0.0; C/${c}; 0/${e}; BD ${s})`};var cl={exports:{}};var ul={exports:{}};const dl=he(Object.freeze(Object.defineProperty({__proto__:null,default:{}},Symbol.toStringTag,{value:"Module"})));var pl;function ml(){return pl||(pl=1,ul.exports=(e=e||function(e,t){var a;if("undefined"!=typeof window&&window.crypto&&(a=window.crypto),"undefined"!=typeof self&&self.crypto&&(a=self.crypto),"undefined"!=typeof globalThis&&globalThis.crypto&&(a=globalThis.crypto),!a&&"undefined"!=typeof window&&window.msCrypto&&(a=window.msCrypto),!a&&void 0!==ge&&ge.crypto&&(a=ge.crypto),!a)try{a=dl}catch(g){}var r=function(){if(a){if("function"==typeof a.getRandomValues)try{return a.getRandomValues(new Uint32Array(1))[0]}catch(g){}if("function"==typeof a.randomBytes)try{return a.randomBytes(4).readInt32LE()}catch(g){}}throw new Error("Native crypto module could not be used to get secure random number.")},n=Object.create||function(){function e(){}return function(t){var a;return e.prototype=t,a=new e,e.prototype=null,a}}(),i={},o=i.lib={},s=o.Base=function(){return{extend:function(e){var t=n(this);return e&&t.mixIn(e),t.hasOwnProperty("init")&&this.init!==t.init||(t.init=function(){t.$super.init.apply(this,arguments)}),t.init.prototype=t,t.$super=this,t},create:function(){var e=this.extend();return e.init.apply(e,arguments),e},init:function(){},mixIn:function(e){for(var t in e)e.hasOwnProperty(t)&&(this[t]=e[t]);e.hasOwnProperty("toString")&&(this.toString=e.toString)},clone:function(){return this.init.prototype.extend(this)}}}(),l=o.WordArray=s.extend({init:function(e,a){e=this.words=e||[],this.sigBytes=a!=t?a:4*e.length},toString:function(e){return(e||u).stringify(this)},concat:function(e){var t=this.words,a=e.words,r=this.sigBytes,n=e.sigBytes;if(this.clamp(),r%4)for(var i=0;i<n;i++){var o=a[i>>>2]>>>24-i%4*8&255;t[r+i>>>2]|=o<<24-(r+i)%4*8}else for(var s=0;s<n;s+=4)t[r+s>>>2]=a[s>>>2];return this.sigBytes+=n,this},clamp:function(){var t=this.words,a=this.sigBytes;t[a>>>2]&=4294967295<<32-a%4*8,t.length=e.ceil(a/4)},clone:function(){var e=s.clone.call(this);return e.words=this.words.slice(0),e},random:function(e){for(var t=[],a=0;a<e;a+=4)t.push(r());return new l.init(t,e)}}),c=i.enc={},u=c.Hex={stringify:function(e){for(var t=e.words,a=e.sigBytes,r=[],n=0;n<a;n++){var i=t[n>>>2]>>>24-n%4*8&255;r.push((i>>>4).toString(16)),r.push((15&i).toString(16))}return r.join("")},parse:function(e){for(var t=e.length,a=[],r=0;r<t;r+=2)a[r>>>3]|=parseInt(e.substr(r,2),16)<<24-r%8*4;return new l.init(a,t/2)}},d=c.Latin1={stringify:function(e){for(var t=e.words,a=e.sigBytes,r=[],n=0;n<a;n++){var i=t[n>>>2]>>>24-n%4*8&255;r.push(String.fromCharCode(i))}return r.join("")},parse:function(e){for(var t=e.length,a=[],r=0;r<t;r++)a[r>>>2]|=(255&e.charCodeAt(r))<<24-r%4*8;return new l.init(a,t)}},p=c.Utf8={stringify:function(e){try{return decodeURIComponent(escape(d.stringify(e)))}catch(t){throw new Error("Malformed UTF-8 data")}},parse:function(e){return d.parse(unescape(encodeURIComponent(e)))}},m=o.BufferedBlockAlgorithm=s.extend({reset:function(){this._data=new l.init,this._nDataBytes=0},_append:function(e){"string"==typeof e&&(e=p.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes},_process:function(t){var a,r=this._data,n=r.words,i=r.sigBytes,o=this.blockSize,s=i/(4*o),c=(s=t?e.ceil(s):e.max((0|s)-this._minBufferSize,0))*o,u=e.min(4*c,i);if(c){for(var d=0;d<c;d+=o)this._doProcessBlock(n,d);a=n.splice(0,c),r.sigBytes-=u}return new l.init(a,u)},clone:function(){var e=s.clone.call(this);return e._data=this._data.clone(),e},_minBufferSize:0});o.Hasher=m.extend({cfg:s.extend(),init:function(e){this.cfg=this.cfg.extend(e),this.reset()},reset:function(){m.reset.call(this),this._doReset()},update:function(e){return this._append(e),this._process(),this},finalize:function(e){return e&&this._append(e),this._doFinalize()},blockSize:16,_createHelper:function(e){return function(t,a){return new e.init(a).finalize(t)}},_createHmacHelper:function(e){return function(t,a){return new h.HMAC.init(e,a).finalize(t)}}});var h=i.algo={};return i}(Math),e)),ul.exports;var e}var hl,gl={exports:{}};function fl(){return hl?gl.exports:(hl=1,gl.exports=(o=ml(),a=(t=o).lib,r=a.Base,n=a.WordArray,(i=t.x64={}).Word=r.extend({init:function(e,t){this.high=e,this.low=t}}),i.WordArray=r.extend({init:function(t,a){t=this.words=t||[],this.sigBytes=a!=e?a:8*t.length},toX32:function(){for(var e=this.words,t=e.length,a=[],r=0;r<t;r++){var i=e[r];a.push(i.high),a.push(i.low)}return n.create(a,this.sigBytes)},clone:function(){for(var e=r.clone.call(this),t=e.words=this.words.slice(0),a=t.length,n=0;n<a;n++)t[n]=t[n].clone();return e}}),o));var e,t,a,r,n,i,o}var vl,yl={exports:{}};function bl(){return vl||(vl=1,yl.exports=(e=ml(),function(){if("function"==typeof ArrayBuffer){var t=e.lib.WordArray,a=t.init,r=t.init=function(e){if(e instanceof ArrayBuffer&&(e=new Uint8Array(e)),(e instanceof Int8Array||"undefined"!=typeof Uint8ClampedArray&&e instanceof Uint8ClampedArray||e instanceof Int16Array||e instanceof Uint16Array||e instanceof Int32Array||e instanceof Uint32Array||e instanceof Float32Array||e instanceof Float64Array)&&(e=new Uint8Array(e.buffer,e.byteOffset,e.byteLength)),e instanceof Uint8Array){for(var t=e.byteLength,r=[],n=0;n<t;n++)r[n>>>2]|=e[n]<<24-n%4*8;a.call(this,r,t)}else a.apply(this,arguments)};r.prototype=t}}(),e.lib.WordArray)),yl.exports;var e}var wl,Cl={exports:{}};function kl(){return wl?Cl.exports:(wl=1,Cl.exports=(e=ml(),function(){var t=e,a=t.lib.WordArray,r=t.enc;function n(e){return e<<8&4278255360|e>>>8&16711935}r.Utf16=r.Utf16BE={stringify:function(e){for(var t=e.words,a=e.sigBytes,r=[],n=0;n<a;n+=2){var i=t[n>>>2]>>>16-n%4*8&65535;r.push(String.fromCharCode(i))}return r.join("")},parse:function(e){for(var t=e.length,r=[],n=0;n<t;n++)r[n>>>1]|=e.charCodeAt(n)<<16-n%2*16;return a.create(r,2*t)}},r.Utf16LE={stringify:function(e){for(var t=e.words,a=e.sigBytes,r=[],i=0;i<a;i+=2){var o=n(t[i>>>2]>>>16-i%4*8&65535);r.push(String.fromCharCode(o))}return r.join("")},parse:function(e){for(var t=e.length,r=[],i=0;i<t;i++)r[i>>>1]|=n(e.charCodeAt(i)<<16-i%2*16);return a.create(r,2*t)}}}(),e.enc.Utf16));var e}var Al,xl={exports:{}};function Pl(){return Al?xl.exports:(Al=1,xl.exports=(e=ml(),function(){var t=e,a=t.lib.WordArray;function r(e,t,r){for(var n=[],i=0,o=0;o<t;o++)if(o%4){var s=r[e.charCodeAt(o-1)]<<o%4*2|r[e.charCodeAt(o)]>>>6-o%4*2;n[i>>>2]|=s<<24-i%4*8,i++}return a.create(n,i)}t.enc.Base64={stringify:function(e){var t=e.words,a=e.sigBytes,r=this._map;e.clamp();for(var n=[],i=0;i<a;i+=3)for(var o=(t[i>>>2]>>>24-i%4*8&255)<<16|(t[i+1>>>2]>>>24-(i+1)%4*8&255)<<8|t[i+2>>>2]>>>24-(i+2)%4*8&255,s=0;s<4&&i+.75*s<a;s++)n.push(r.charAt(o>>>6*(3-s)&63));var l=r.charAt(64);if(l)for(;n.length%4;)n.push(l);return n.join("")},parse:function(e){var t=e.length,a=this._map,n=this._reverseMap;if(!n){n=this._reverseMap=[];for(var i=0;i<a.length;i++)n[a.charCodeAt(i)]=i}var o=a.charAt(64);if(o){var s=e.indexOf(o);-1!==s&&(t=s)}return r(e,t,n)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="}}(),e.enc.Base64));var e}var Sl,_l={exports:{}};function Il(){return Sl?_l.exports:(Sl=1,_l.exports=(e=ml(),function(){var t=e,a=t.lib.WordArray;function r(e,t,r){for(var n=[],i=0,o=0;o<t;o++)if(o%4){var s=r[e.charCodeAt(o-1)]<<o%4*2|r[e.charCodeAt(o)]>>>6-o%4*2;n[i>>>2]|=s<<24-i%4*8,i++}return a.create(n,i)}t.enc.Base64url={stringify:function(e,t){void 0===t&&(t=!0);var a=e.words,r=e.sigBytes,n=t?this._safe_map:this._map;e.clamp();for(var i=[],o=0;o<r;o+=3)for(var s=(a[o>>>2]>>>24-o%4*8&255)<<16|(a[o+1>>>2]>>>24-(o+1)%4*8&255)<<8|a[o+2>>>2]>>>24-(o+2)%4*8&255,l=0;l<4&&o+.75*l<r;l++)i.push(n.charAt(s>>>6*(3-l)&63));var c=n.charAt(64);if(c)for(;i.length%4;)i.push(c);return i.join("")},parse:function(e,t){void 0===t&&(t=!0);var a=e.length,n=t?this._safe_map:this._map,i=this._reverseMap;if(!i){i=this._reverseMap=[];for(var o=0;o<n.length;o++)i[n.charCodeAt(o)]=o}var s=n.charAt(64);if(s){var l=e.indexOf(s);-1!==l&&(a=l)}return r(e,a,i)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",_safe_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"}}(),e.enc.Base64url));var e}var Tl,zl={exports:{}};function El(){return Tl?zl.exports:(Tl=1,zl.exports=(e=ml(),function(t){var a=e,r=a.lib,n=r.WordArray,i=r.Hasher,o=a.algo,s=[];!function(){for(var e=0;e<64;e++)s[e]=4294967296*t.abs(t.sin(e+1))|0}();var l=o.MD5=i.extend({_doReset:function(){this._hash=new n.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(e,t){for(var a=0;a<16;a++){var r=t+a,n=e[r];e[r]=16711935&(n<<8|n>>>24)|4278255360&(n<<24|n>>>8)}var i=this._hash.words,o=e[t+0],l=e[t+1],m=e[t+2],h=e[t+3],g=e[t+4],f=e[t+5],v=e[t+6],y=e[t+7],b=e[t+8],w=e[t+9],C=e[t+10],k=e[t+11],A=e[t+12],x=e[t+13],P=e[t+14],S=e[t+15],_=i[0],I=i[1],T=i[2],z=i[3];_=c(_,I,T,z,o,7,s[0]),z=c(z,_,I,T,l,12,s[1]),T=c(T,z,_,I,m,17,s[2]),I=c(I,T,z,_,h,22,s[3]),_=c(_,I,T,z,g,7,s[4]),z=c(z,_,I,T,f,12,s[5]),T=c(T,z,_,I,v,17,s[6]),I=c(I,T,z,_,y,22,s[7]),_=c(_,I,T,z,b,7,s[8]),z=c(z,_,I,T,w,12,s[9]),T=c(T,z,_,I,C,17,s[10]),I=c(I,T,z,_,k,22,s[11]),_=c(_,I,T,z,A,7,s[12]),z=c(z,_,I,T,x,12,s[13]),T=c(T,z,_,I,P,17,s[14]),_=u(_,I=c(I,T,z,_,S,22,s[15]),T,z,l,5,s[16]),z=u(z,_,I,T,v,9,s[17]),T=u(T,z,_,I,k,14,s[18]),I=u(I,T,z,_,o,20,s[19]),_=u(_,I,T,z,f,5,s[20]),z=u(z,_,I,T,C,9,s[21]),T=u(T,z,_,I,S,14,s[22]),I=u(I,T,z,_,g,20,s[23]),_=u(_,I,T,z,w,5,s[24]),z=u(z,_,I,T,P,9,s[25]),T=u(T,z,_,I,h,14,s[26]),I=u(I,T,z,_,b,20,s[27]),_=u(_,I,T,z,x,5,s[28]),z=u(z,_,I,T,m,9,s[29]),T=u(T,z,_,I,y,14,s[30]),_=d(_,I=u(I,T,z,_,A,20,s[31]),T,z,f,4,s[32]),z=d(z,_,I,T,b,11,s[33]),T=d(T,z,_,I,k,16,s[34]),I=d(I,T,z,_,P,23,s[35]),_=d(_,I,T,z,l,4,s[36]),z=d(z,_,I,T,g,11,s[37]),T=d(T,z,_,I,y,16,s[38]),I=d(I,T,z,_,C,23,s[39]),_=d(_,I,T,z,x,4,s[40]),z=d(z,_,I,T,o,11,s[41]),T=d(T,z,_,I,h,16,s[42]),I=d(I,T,z,_,v,23,s[43]),_=d(_,I,T,z,w,4,s[44]),z=d(z,_,I,T,A,11,s[45]),T=d(T,z,_,I,S,16,s[46]),_=p(_,I=d(I,T,z,_,m,23,s[47]),T,z,o,6,s[48]),z=p(z,_,I,T,y,10,s[49]),T=p(T,z,_,I,P,15,s[50]),I=p(I,T,z,_,f,21,s[51]),_=p(_,I,T,z,A,6,s[52]),z=p(z,_,I,T,h,10,s[53]),T=p(T,z,_,I,C,15,s[54]),I=p(I,T,z,_,l,21,s[55]),_=p(_,I,T,z,b,6,s[56]),z=p(z,_,I,T,S,10,s[57]),T=p(T,z,_,I,v,15,s[58]),I=p(I,T,z,_,x,21,s[59]),_=p(_,I,T,z,g,6,s[60]),z=p(z,_,I,T,k,10,s[61]),T=p(T,z,_,I,m,15,s[62]),I=p(I,T,z,_,w,21,s[63]),i[0]=i[0]+_|0,i[1]=i[1]+I|0,i[2]=i[2]+T|0,i[3]=i[3]+z|0},_doFinalize:function(){var e=this._data,a=e.words,r=8*this._nDataBytes,n=8*e.sigBytes;a[n>>>5]|=128<<24-n%32;var i=t.floor(r/4294967296),o=r;a[15+(n+64>>>9<<4)]=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8),a[14+(n+64>>>9<<4)]=16711935&(o<<8|o>>>24)|4278255360&(o<<24|o>>>8),e.sigBytes=4*(a.length+1),this._process();for(var s=this._hash,l=s.words,c=0;c<4;c++){var u=l[c];l[c]=16711935&(u<<8|u>>>24)|4278255360&(u<<24|u>>>8)}return s},clone:function(){var e=i.clone.call(this);return e._hash=this._hash.clone(),e}});function c(e,t,a,r,n,i,o){var s=e+(t&a|~t&r)+n+o;return(s<<i|s>>>32-i)+t}function u(e,t,a,r,n,i,o){var s=e+(t&r|a&~r)+n+o;return(s<<i|s>>>32-i)+t}function d(e,t,a,r,n,i,o){var s=e+(t^a^r)+n+o;return(s<<i|s>>>32-i)+t}function p(e,t,a,r,n,i,o){var s=e+(a^(t|~r))+n+o;return(s<<i|s>>>32-i)+t}a.MD5=i._createHelper(l),a.HmacMD5=i._createHmacHelper(l)}(Math),e.MD5));var e}var Dl,Rl={exports:{}};function Ml(){return Dl?Rl.exports:(Dl=1,Rl.exports=(s=ml(),t=(e=s).lib,a=t.WordArray,r=t.Hasher,n=e.algo,i=[],o=n.SHA1=r.extend({_doReset:function(){this._hash=new a.init([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(e,t){for(var a=this._hash.words,r=a[0],n=a[1],o=a[2],s=a[3],l=a[4],c=0;c<80;c++){if(c<16)i[c]=0|e[t+c];else{var u=i[c-3]^i[c-8]^i[c-14]^i[c-16];i[c]=u<<1|u>>>31}var d=(r<<5|r>>>27)+l+i[c];d+=c<20?1518500249+(n&o|~n&s):c<40?1859775393+(n^o^s):c<60?(n&o|n&s|o&s)-1894007588:(n^o^s)-899497514,l=s,s=o,o=n<<30|n>>>2,n=r,r=d}a[0]=a[0]+r|0,a[1]=a[1]+n|0,a[2]=a[2]+o|0,a[3]=a[3]+s|0,a[4]=a[4]+l|0},_doFinalize:function(){var e=this._data,t=e.words,a=8*this._nDataBytes,r=8*e.sigBytes;return t[r>>>5]|=128<<24-r%32,t[14+(r+64>>>9<<4)]=Math.floor(a/4294967296),t[15+(r+64>>>9<<4)]=a,e.sigBytes=4*t.length,this._process(),this._hash},clone:function(){var e=r.clone.call(this);return e._hash=this._hash.clone(),e}}),e.SHA1=r._createHelper(o),e.HmacSHA1=r._createHmacHelper(o),s.SHA1));var e,t,a,r,n,i,o,s}var jl,ql={exports:{}};function Ll(){return jl?ql.exports:(jl=1,ql.exports=(e=ml(),function(t){var a=e,r=a.lib,n=r.WordArray,i=r.Hasher,o=a.algo,s=[],l=[];!function(){function e(e){for(var a=t.sqrt(e),r=2;r<=a;r++)if(!(e%r))return!1;return!0}function a(e){return 4294967296*(e-(0|e))|0}for(var r=2,n=0;n<64;)e(r)&&(n<8&&(s[n]=a(t.pow(r,.5))),l[n]=a(t.pow(r,1/3)),n++),r++}();var c=[],u=o.SHA256=i.extend({_doReset:function(){this._hash=new n.init(s.slice(0))},_doProcessBlock:function(e,t){for(var a=this._hash.words,r=a[0],n=a[1],i=a[2],o=a[3],s=a[4],u=a[5],d=a[6],p=a[7],m=0;m<64;m++){if(m<16)c[m]=0|e[t+m];else{var h=c[m-15],g=(h<<25|h>>>7)^(h<<14|h>>>18)^h>>>3,f=c[m-2],v=(f<<15|f>>>17)^(f<<13|f>>>19)^f>>>10;c[m]=g+c[m-7]+v+c[m-16]}var y=r&n^r&i^n&i,b=(r<<30|r>>>2)^(r<<19|r>>>13)^(r<<10|r>>>22),w=p+((s<<26|s>>>6)^(s<<21|s>>>11)^(s<<7|s>>>25))+(s&u^~s&d)+l[m]+c[m];p=d,d=u,u=s,s=o+w|0,o=i,i=n,n=r,r=w+(b+y)|0}a[0]=a[0]+r|0,a[1]=a[1]+n|0,a[2]=a[2]+i|0,a[3]=a[3]+o|0,a[4]=a[4]+s|0,a[5]=a[5]+u|0,a[6]=a[6]+d|0,a[7]=a[7]+p|0},_doFinalize:function(){var e=this._data,a=e.words,r=8*this._nDataBytes,n=8*e.sigBytes;return a[n>>>5]|=128<<24-n%32,a[14+(n+64>>>9<<4)]=t.floor(r/4294967296),a[15+(n+64>>>9<<4)]=r,e.sigBytes=4*a.length,this._process(),this._hash},clone:function(){var e=i.clone.call(this);return e._hash=this._hash.clone(),e}});a.SHA256=i._createHelper(u),a.HmacSHA256=i._createHmacHelper(u)}(Math),e.SHA256));var e}var Ol,Nl={exports:{}};var Ul,Fl={exports:{}};function Bl(){return Ul||(Ul=1,Fl.exports=(e=ml(),fl(),function(){var t=e,a=t.lib.Hasher,r=t.x64,n=r.Word,i=r.WordArray,o=t.algo;function s(){return n.create.apply(n,arguments)}var l=[s(1116352408,3609767458),s(1899447441,602891725),s(3049323471,3964484399),s(3921009573,2173295548),s(961987163,4081628472),s(1508970993,3053834265),s(2453635748,2937671579),s(2870763221,3664609560),s(3624381080,2734883394),s(310598401,1164996542),s(607225278,1323610764),s(1426881987,3590304994),s(1925078388,4068182383),s(2162078206,991336113),s(2614888103,633803317),s(3248222580,3479774868),s(3835390401,2666613458),s(4022224774,944711139),s(264347078,2341262773),s(604807628,2007800933),s(770255983,1495990901),s(1249150122,1856431235),s(1555081692,3175218132),s(1996064986,2198950837),s(2554220882,3999719339),s(2821834349,766784016),s(2952996808,2566594879),s(3210313671,3203337956),s(3336571891,1034457026),s(3584528711,2466948901),s(113926993,3758326383),s(338241895,168717936),s(666307205,1188179964),s(773529912,1546045734),s(1294757372,1522805485),s(1396182291,2643833823),s(1695183700,2343527390),s(1986661051,1014477480),s(2177026350,1206759142),s(2456956037,344077627),s(2730485921,1290863460),s(2820302411,3158454273),s(3259730800,3505952657),s(3345764771,106217008),s(3516065817,3606008344),s(3600352804,1432725776),s(4094571909,1467031594),s(275423344,851169720),s(430227734,3100823752),s(506948616,1363258195),s(659060556,3750685593),s(883997877,3785050280),s(958139571,3318307427),s(1322822218,3812723403),s(1537002063,2003034995),s(1747873779,3602036899),s(1955562222,1575990012),s(2024104815,1125592928),s(2227730452,2716904306),s(2361852424,442776044),s(2428436474,593698344),s(2756734187,3733110249),s(3204031479,2999351573),s(3329325298,3815920427),s(3391569614,3928383900),s(3515267271,566280711),s(3940187606,3454069534),s(4118630271,4000239992),s(116418474,1914138554),s(174292421,2731055270),s(289380356,3203993006),s(460393269,320620315),s(685471733,587496836),s(852142971,1086792851),s(1017036298,365543100),s(1126000580,2618297676),s(1288033470,3409855158),s(1501505948,4234509866),s(1607167915,987167468),s(1816402316,1246189591)],c=[];!function(){for(var e=0;e<80;e++)c[e]=s()}();var u=o.SHA512=a.extend({_doReset:function(){this._hash=new i.init([new n.init(1779033703,4089235720),new n.init(3144134277,2227873595),new n.init(1013904242,4271175723),new n.init(2773480762,1595750129),new n.init(1359893119,2917565137),new n.init(2600822924,725511199),new n.init(528734635,4215389547),new n.init(1541459225,327033209)])},_doProcessBlock:function(e,t){for(var a=this._hash.words,r=a[0],n=a[1],i=a[2],o=a[3],s=a[4],u=a[5],d=a[6],p=a[7],m=r.high,h=r.low,g=n.high,f=n.low,v=i.high,y=i.low,b=o.high,w=o.low,C=s.high,k=s.low,A=u.high,x=u.low,P=d.high,S=d.low,_=p.high,I=p.low,T=m,z=h,E=g,D=f,R=v,M=y,j=b,q=w,L=C,O=k,N=A,U=x,F=P,B=S,W=_,V=I,H=0;H<80;H++){var G,Y,$=c[H];if(H<16)Y=$.high=0|e[t+2*H],G=$.low=0|e[t+2*H+1];else{var K=c[H-15],Z=K.high,J=K.low,Q=(Z>>>1|J<<31)^(Z>>>8|J<<24)^Z>>>7,X=(J>>>1|Z<<31)^(J>>>8|Z<<24)^(J>>>7|Z<<25),ee=c[H-2],te=ee.high,ae=ee.low,re=(te>>>19|ae<<13)^(te<<3|ae>>>29)^te>>>6,ne=(ae>>>19|te<<13)^(ae<<3|te>>>29)^(ae>>>6|te<<26),ie=c[H-7],oe=ie.high,se=ie.low,le=c[H-16],ce=le.high,ue=le.low;Y=(Y=(Y=Q+oe+((G=X+se)>>>0<X>>>0?1:0))+re+((G+=ne)>>>0<ne>>>0?1:0))+ce+((G+=ue)>>>0<ue>>>0?1:0),$.high=Y,$.low=G}var de,pe=L&N^~L&F,me=O&U^~O&B,he=T&E^T&R^E&R,ge=z&D^z&M^D&M,fe=(T>>>28|z<<4)^(T<<30|z>>>2)^(T<<25|z>>>7),ve=(z>>>28|T<<4)^(z<<30|T>>>2)^(z<<25|T>>>7),ye=(L>>>14|O<<18)^(L>>>18|O<<14)^(L<<23|O>>>9),be=(O>>>14|L<<18)^(O>>>18|L<<14)^(O<<23|L>>>9),we=l[H],Ce=we.high,ke=we.low,Ae=W+ye+((de=V+be)>>>0<V>>>0?1:0),xe=ve+ge;W=F,V=B,F=N,B=U,N=L,U=O,L=j+(Ae=(Ae=(Ae=Ae+pe+((de+=me)>>>0<me>>>0?1:0))+Ce+((de+=ke)>>>0<ke>>>0?1:0))+Y+((de+=G)>>>0<G>>>0?1:0))+((O=q+de|0)>>>0<q>>>0?1:0)|0,j=R,q=M,R=E,M=D,E=T,D=z,T=Ae+(fe+he+(xe>>>0<ve>>>0?1:0))+((z=de+xe|0)>>>0<de>>>0?1:0)|0}h=r.low=h+z,r.high=m+T+(h>>>0<z>>>0?1:0),f=n.low=f+D,n.high=g+E+(f>>>0<D>>>0?1:0),y=i.low=y+M,i.high=v+R+(y>>>0<M>>>0?1:0),w=o.low=w+q,o.high=b+j+(w>>>0<q>>>0?1:0),k=s.low=k+O,s.high=C+L+(k>>>0<O>>>0?1:0),x=u.low=x+U,u.high=A+N+(x>>>0<U>>>0?1:0),S=d.low=S+B,d.high=P+F+(S>>>0<B>>>0?1:0),I=p.low=I+V,p.high=_+W+(I>>>0<V>>>0?1:0)},_doFinalize:function(){var e=this._data,t=e.words,a=8*this._nDataBytes,r=8*e.sigBytes;return t[r>>>5]|=128<<24-r%32,t[30+(r+128>>>10<<5)]=Math.floor(a/4294967296),t[31+(r+128>>>10<<5)]=a,e.sigBytes=4*t.length,this._process(),this._hash.toX32()},clone:function(){var e=a.clone.call(this);return e._hash=this._hash.clone(),e},blockSize:32});t.SHA512=a._createHelper(u),t.HmacSHA512=a._createHmacHelper(u)}(),e.SHA512)),Fl.exports;var e}var Wl,Vl={exports:{}};var Hl,Gl={exports:{}};function Yl(){return Hl?Gl.exports:(Hl=1,Gl.exports=(e=ml(),fl(),function(t){var a=e,r=a.lib,n=r.WordArray,i=r.Hasher,o=a.x64.Word,s=a.algo,l=[],c=[],u=[];!function(){for(var e=1,t=0,a=0;a<24;a++){l[e+5*t]=(a+1)*(a+2)/2%64;var r=(2*e+3*t)%5;e=t%5,t=r}for(e=0;e<5;e++)for(t=0;t<5;t++)c[e+5*t]=t+(2*e+3*t)%5*5;for(var n=1,i=0;i<24;i++){for(var s=0,d=0,p=0;p<7;p++){if(1&n){var m=(1<<p)-1;m<32?d^=1<<m:s^=1<<m-32}128&n?n=n<<1^113:n<<=1}u[i]=o.create(s,d)}}();var d=[];!function(){for(var e=0;e<25;e++)d[e]=o.create()}();var p=s.SHA3=i.extend({cfg:i.cfg.extend({outputLength:512}),_doReset:function(){for(var e=this._state=[],t=0;t<25;t++)e[t]=new o.init;this.blockSize=(1600-2*this.cfg.outputLength)/32},_doProcessBlock:function(e,t){for(var a=this._state,r=this.blockSize/2,n=0;n<r;n++){var i=e[t+2*n],o=e[t+2*n+1];i=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8),o=16711935&(o<<8|o>>>24)|4278255360&(o<<24|o>>>8),(I=a[n]).high^=o,I.low^=i}for(var s=0;s<24;s++){for(var p=0;p<5;p++){for(var m=0,h=0,g=0;g<5;g++)m^=(I=a[p+5*g]).high,h^=I.low;var f=d[p];f.high=m,f.low=h}for(p=0;p<5;p++){var v=d[(p+4)%5],y=d[(p+1)%5],b=y.high,w=y.low;for(m=v.high^(b<<1|w>>>31),h=v.low^(w<<1|b>>>31),g=0;g<5;g++)(I=a[p+5*g]).high^=m,I.low^=h}for(var C=1;C<25;C++){var k=(I=a[C]).high,A=I.low,x=l[C];x<32?(m=k<<x|A>>>32-x,h=A<<x|k>>>32-x):(m=A<<x-32|k>>>64-x,h=k<<x-32|A>>>64-x);var P=d[c[C]];P.high=m,P.low=h}var S=d[0],_=a[0];for(S.high=_.high,S.low=_.low,p=0;p<5;p++)for(g=0;g<5;g++){var I=a[C=p+5*g],T=d[C],z=d[(p+1)%5+5*g],E=d[(p+2)%5+5*g];I.high=T.high^~z.high&E.high,I.low=T.low^~z.low&E.low}I=a[0];var D=u[s];I.high^=D.high,I.low^=D.low}},_doFinalize:function(){var e=this._data,a=e.words;this._nDataBytes;var r=8*e.sigBytes,i=32*this.blockSize;a[r>>>5]|=1<<24-r%32,a[(t.ceil((r+1)/i)*i>>>5)-1]|=128,e.sigBytes=4*a.length,this._process();for(var o=this._state,s=this.cfg.outputLength/8,l=s/8,c=[],u=0;u<l;u++){var d=o[u],p=d.high,m=d.low;p=16711935&(p<<8|p>>>24)|4278255360&(p<<24|p>>>8),m=16711935&(m<<8|m>>>24)|4278255360&(m<<24|m>>>8),c.push(m),c.push(p)}return new n.init(c,s)},clone:function(){for(var e=i.clone.call(this),t=e._state=this._state.slice(0),a=0;a<25;a++)t[a]=t[a].clone();return e}});a.SHA3=i._createHelper(p),a.HmacSHA3=i._createHmacHelper(p)}(Math),e.SHA3));var e}var $l,Kl={exports:{}};var Zl,Jl={exports:{}};function Ql(){return Zl?Jl.exports:(Zl=1,Jl.exports=(e=ml(),a=(t=e).lib.Base,r=t.enc.Utf8,void(t.algo.HMAC=a.extend({init:function(e,t){e=this._hasher=new e.init,"string"==typeof t&&(t=r.parse(t));var a=e.blockSize,n=4*a;t.sigBytes>n&&(t=e.finalize(t)),t.clamp();for(var i=this._oKey=t.clone(),o=this._iKey=t.clone(),s=i.words,l=o.words,c=0;c<a;c++)s[c]^=1549556828,l[c]^=909522486;i.sigBytes=o.sigBytes=n,this.reset()},reset:function(){var e=this._hasher;e.reset(),e.update(this._iKey)},update:function(e){return this._hasher.update(e),this},finalize:function(e){var t=this._hasher,a=t.finalize(e);return t.reset(),t.finalize(this._oKey.clone().concat(a))}}))));var e,t,a,r}var Xl,ec={exports:{}};var tc,ac={exports:{}};function rc(){return tc?ac.exports:(tc=1,ac.exports=(s=ml(),Ml(),Ql(),t=(e=s).lib,a=t.Base,r=t.WordArray,n=e.algo,i=n.MD5,o=n.EvpKDF=a.extend({cfg:a.extend({keySize:4,hasher:i,iterations:1}),init:function(e){this.cfg=this.cfg.extend(e)},compute:function(e,t){for(var a,n=this.cfg,i=n.hasher.create(),o=r.create(),s=o.words,l=n.keySize,c=n.iterations;s.length<l;){a&&i.update(a),a=i.update(e).finalize(t),i.reset();for(var u=1;u<c;u++)a=i.finalize(a),i.reset();o.concat(a)}return o.sigBytes=4*l,o}}),e.EvpKDF=function(e,t,a){return o.create(a).compute(e,t)},s.EvpKDF));var e,t,a,r,n,i,o,s}var nc,ic={exports:{}};function oc(){return nc?ic.exports:(nc=1,ic.exports=(e=ml(),rc(),void(e.lib.Cipher||function(t){var a=e,r=a.lib,n=r.Base,i=r.WordArray,o=r.BufferedBlockAlgorithm,s=a.enc;s.Utf8;var l=s.Base64,c=a.algo.EvpKDF,u=r.Cipher=o.extend({cfg:n.extend(),createEncryptor:function(e,t){return this.create(this._ENC_XFORM_MODE,e,t)},createDecryptor:function(e,t){return this.create(this._DEC_XFORM_MODE,e,t)},init:function(e,t,a){this.cfg=this.cfg.extend(a),this._xformMode=e,this._key=t,this.reset()},reset:function(){o.reset.call(this),this._doReset()},process:function(e){return this._append(e),this._process()},finalize:function(e){return e&&this._append(e),this._doFinalize()},keySize:4,ivSize:4,_ENC_XFORM_MODE:1,_DEC_XFORM_MODE:2,_createHelper:function(){function e(e){return"string"==typeof e?b:v}return function(t){return{encrypt:function(a,r,n){return e(r).encrypt(t,a,r,n)},decrypt:function(a,r,n){return e(r).decrypt(t,a,r,n)}}}}()});r.StreamCipher=u.extend({_doFinalize:function(){return this._process(!0)},blockSize:1});var d=a.mode={},p=r.BlockCipherMode=n.extend({createEncryptor:function(e,t){return this.Encryptor.create(e,t)},createDecryptor:function(e,t){return this.Decryptor.create(e,t)},init:function(e,t){this._cipher=e,this._iv=t}}),m=d.CBC=function(){var e=p.extend();function a(e,a,r){var n,i=this._iv;i?(n=i,this._iv=t):n=this._prevBlock;for(var o=0;o<r;o++)e[a+o]^=n[o]}return e.Encryptor=e.extend({processBlock:function(e,t){var r=this._cipher,n=r.blockSize;a.call(this,e,t,n),r.encryptBlock(e,t),this._prevBlock=e.slice(t,t+n)}}),e.Decryptor=e.extend({processBlock:function(e,t){var r=this._cipher,n=r.blockSize,i=e.slice(t,t+n);r.decryptBlock(e,t),a.call(this,e,t,n),this._prevBlock=i}}),e}(),h=(a.pad={}).Pkcs7={pad:function(e,t){for(var a=4*t,r=a-e.sigBytes%a,n=r<<24|r<<16|r<<8|r,o=[],s=0;s<r;s+=4)o.push(n);var l=i.create(o,r);e.concat(l)},unpad:function(e){var t=255&e.words[e.sigBytes-1>>>2];e.sigBytes-=t}};r.BlockCipher=u.extend({cfg:u.cfg.extend({mode:m,padding:h}),reset:function(){var e;u.reset.call(this);var t=this.cfg,a=t.iv,r=t.mode;this._xformMode==this._ENC_XFORM_MODE?e=r.createEncryptor:(e=r.createDecryptor,this._minBufferSize=1),this._mode&&this._mode.__creator==e?this._mode.init(this,a&&a.words):(this._mode=e.call(r,this,a&&a.words),this._mode.__creator=e)},_doProcessBlock:function(e,t){this._mode.processBlock(e,t)},_doFinalize:function(){var e,t=this.cfg.padding;return this._xformMode==this._ENC_XFORM_MODE?(t.pad(this._data,this.blockSize),e=this._process(!0)):(e=this._process(!0),t.unpad(e)),e},blockSize:4});var g=r.CipherParams=n.extend({init:function(e){this.mixIn(e)},toString:function(e){return(e||this.formatter).stringify(this)}}),f=(a.format={}).OpenSSL={stringify:function(e){var t=e.ciphertext,a=e.salt;return(a?i.create([1398893684,1701076831]).concat(a).concat(t):t).toString(l)},parse:function(e){var t,a=l.parse(e),r=a.words;return 1398893684==r[0]&&1701076831==r[1]&&(t=i.create(r.slice(2,4)),r.splice(0,4),a.sigBytes-=16),g.create({ciphertext:a,salt:t})}},v=r.SerializableCipher=n.extend({cfg:n.extend({format:f}),encrypt:function(e,t,a,r){r=this.cfg.extend(r);var n=e.createEncryptor(a,r),i=n.finalize(t),o=n.cfg;return g.create({ciphertext:i,key:a,iv:o.iv,algorithm:e,mode:o.mode,padding:o.padding,blockSize:e.blockSize,formatter:r.format})},decrypt:function(e,t,a,r){return r=this.cfg.extend(r),t=this._parse(t,r.format),e.createDecryptor(a,r).finalize(t.ciphertext)},_parse:function(e,t){return"string"==typeof e?t.parse(e,this):e}}),y=(a.kdf={}).OpenSSL={execute:function(e,t,a,r,n){if(r||(r=i.random(8)),n)o=c.create({keySize:t+a,hasher:n}).compute(e,r);else var o=c.create({keySize:t+a}).compute(e,r);var s=i.create(o.words.slice(t),4*a);return o.sigBytes=4*t,g.create({key:o,iv:s,salt:r})}},b=r.PasswordBasedCipher=v.extend({cfg:v.cfg.extend({kdf:y}),encrypt:function(e,t,a,r){var n=(r=this.cfg.extend(r)).kdf.execute(a,e.keySize,e.ivSize,r.salt,r.hasher);r.iv=n.iv;var i=v.encrypt.call(this,e,t,n.key,r);return i.mixIn(n),i},decrypt:function(e,t,a,r){r=this.cfg.extend(r),t=this._parse(t,r.format);var n=r.kdf.execute(a,e.keySize,e.ivSize,t.salt,r.hasher);return r.iv=n.iv,v.decrypt.call(this,e,t,n.key,r)}})}())));var e}var sc,lc={exports:{}};var cc,uc={exports:{}};var dc,pc={exports:{}};function mc(){return dc?pc.exports:(dc=1,pc.exports=(e=ml(),oc(),e.mode.CTRGladman=function(){var t=e.lib.BlockCipherMode.extend();function a(e){if(255&~(e>>24))e+=1<<24;else{var t=e>>16&255,a=e>>8&255,r=255&e;255===t?(t=0,255===a?(a=0,255===r?r=0:++r):++a):++t,e=0,e+=t<<16,e+=a<<8,e+=r}return e}function r(e){return 0===(e[0]=a(e[0]))&&(e[1]=a(e[1])),e}var n=t.Encryptor=t.extend({processBlock:function(e,t){var a=this._cipher,n=a.blockSize,i=this._iv,o=this._counter;i&&(o=this._counter=i.slice(0),this._iv=void 0),r(o);var s=o.slice(0);a.encryptBlock(s,0);for(var l=0;l<n;l++)e[t+l]^=s[l]}});return t.Decryptor=n,t}(),e.mode.CTRGladman));var e}var hc,gc={exports:{}};var fc,vc={exports:{}};var yc,bc={exports:{}};var wc,Cc={exports:{}};var kc,Ac={exports:{}};var xc,Pc={exports:{}};var Sc,_c={exports:{}};var Ic,Tc={exports:{}};var zc,Ec={exports:{}};var Dc,Rc={exports:{}};function Mc(){return Dc?Rc.exports:(Dc=1,Rc.exports=(e=ml(),Pl(),El(),rc(),oc(),function(){var t=e,a=t.lib,r=a.WordArray,n=a.BlockCipher,i=t.algo,o=[57,49,41,33,25,17,9,1,58,50,42,34,26,18,10,2,59,51,43,35,27,19,11,3,60,52,44,36,63,55,47,39,31,23,15,7,62,54,46,38,30,22,14,6,61,53,45,37,29,21,13,5,28,20,12,4],s=[14,17,11,24,1,5,3,28,15,6,21,10,23,19,12,4,26,8,16,7,27,20,13,2,41,52,31,37,47,55,30,40,51,45,33,48,44,49,39,56,34,53,46,42,50,36,29,32],l=[1,2,4,6,8,10,12,14,15,17,19,21,23,25,27,28],c=[{0:8421888,268435456:32768,536870912:8421378,805306368:2,1073741824:512,1342177280:8421890,1610612736:8389122,1879048192:8388608,2147483648:514,2415919104:8389120,2684354560:33280,2952790016:8421376,3221225472:32770,3489660928:8388610,3758096384:0,4026531840:33282,134217728:0,402653184:8421890,671088640:33282,939524096:32768,1207959552:8421888,1476395008:512,1744830464:8421378,2013265920:2,2281701376:8389120,2550136832:33280,2818572288:8421376,3087007744:8389122,3355443200:8388610,3623878656:32770,3892314112:514,4160749568:8388608,1:32768,268435457:2,536870913:8421888,805306369:8388608,1073741825:8421378,1342177281:33280,1610612737:512,1879048193:8389122,2147483649:8421890,2415919105:8421376,2684354561:8388610,2952790017:33282,3221225473:514,3489660929:8389120,3758096385:32770,4026531841:0,134217729:8421890,402653185:8421376,671088641:8388608,939524097:512,1207959553:32768,1476395009:8388610,1744830465:2,2013265921:33282,2281701377:32770,2550136833:8389122,2818572289:514,3087007745:8421888,3355443201:8389120,3623878657:0,3892314113:33280,4160749569:8421378},{0:1074282512,16777216:16384,33554432:524288,50331648:1074266128,67108864:1073741840,83886080:1074282496,100663296:1073758208,117440512:16,134217728:540672,150994944:1073758224,167772160:1073741824,184549376:540688,201326592:524304,218103808:0,234881024:16400,251658240:1074266112,8388608:1073758208,25165824:540688,41943040:16,58720256:1073758224,75497472:1074282512,92274688:1073741824,109051904:524288,125829120:1074266128,142606336:524304,159383552:0,176160768:16384,192937984:1074266112,209715200:1073741840,226492416:540672,243269632:1074282496,260046848:16400,268435456:0,285212672:1074266128,301989888:1073758224,318767104:1074282496,335544320:1074266112,352321536:16,369098752:540688,385875968:16384,402653184:16400,419430400:524288,436207616:524304,452984832:1073741840,469762048:540672,486539264:1073758208,503316480:1073741824,520093696:1074282512,276824064:540688,293601280:524288,310378496:1074266112,327155712:16384,343932928:1073758208,360710144:1074282512,377487360:16,394264576:1073741824,411041792:1074282496,427819008:1073741840,444596224:1073758224,461373440:524304,478150656:0,494927872:16400,511705088:1074266128,528482304:540672},{0:260,1048576:0,2097152:67109120,3145728:65796,4194304:65540,5242880:67108868,6291456:67174660,7340032:67174400,8388608:67108864,9437184:67174656,10485760:65792,11534336:67174404,12582912:67109124,13631488:65536,14680064:4,15728640:256,524288:67174656,1572864:67174404,2621440:0,3670016:67109120,4718592:67108868,5767168:65536,6815744:65540,7864320:260,8912896:4,9961472:256,11010048:67174400,12058624:65796,13107200:65792,14155776:67109124,15204352:67174660,16252928:67108864,16777216:67174656,17825792:65540,18874368:65536,19922944:67109120,20971520:256,22020096:67174660,23068672:67108868,24117248:0,25165824:67109124,26214400:67108864,27262976:4,28311552:65792,29360128:67174400,30408704:260,31457280:65796,32505856:67174404,17301504:67108864,18350080:260,19398656:67174656,20447232:0,21495808:65540,22544384:67109120,23592960:256,24641536:67174404,25690112:65536,26738688:67174660,27787264:65796,28835840:67108868,29884416:67109124,30932992:67174400,31981568:4,33030144:65792},{0:2151682048,65536:2147487808,131072:4198464,196608:2151677952,262144:0,327680:4198400,393216:2147483712,458752:4194368,524288:2147483648,589824:4194304,655360:64,720896:2147487744,786432:2151678016,851968:4160,917504:4096,983040:2151682112,32768:2147487808,98304:64,163840:2151678016,229376:2147487744,294912:4198400,360448:2151682112,425984:0,491520:2151677952,557056:4096,622592:2151682048,688128:4194304,753664:4160,819200:2147483648,884736:4194368,950272:4198464,1015808:2147483712,1048576:4194368,1114112:4198400,1179648:2147483712,1245184:0,1310720:4160,1376256:2151678016,1441792:2151682048,1507328:2147487808,1572864:2151682112,1638400:2147483648,1703936:2151677952,1769472:4198464,1835008:2147487744,1900544:4194304,1966080:64,2031616:4096,1081344:2151677952,1146880:2151682112,1212416:0,1277952:4198400,1343488:4194368,1409024:2147483648,1474560:2147487808,1540096:64,1605632:2147483712,1671168:4096,1736704:2147487744,1802240:2151678016,1867776:4160,1933312:2151682048,1998848:4194304,2064384:4198464},{0:128,4096:17039360,8192:262144,12288:536870912,16384:537133184,20480:16777344,24576:553648256,28672:262272,32768:16777216,36864:537133056,40960:536871040,45056:553910400,49152:553910272,53248:0,57344:17039488,61440:553648128,2048:17039488,6144:553648256,10240:128,14336:17039360,18432:262144,22528:537133184,26624:553910272,30720:536870912,34816:537133056,38912:0,43008:553910400,47104:16777344,51200:536871040,55296:553648128,59392:16777216,63488:262272,65536:262144,69632:128,73728:536870912,77824:553648256,81920:16777344,86016:553910272,90112:537133184,94208:16777216,98304:553910400,102400:553648128,106496:17039360,110592:537133056,114688:262272,118784:536871040,122880:0,126976:17039488,67584:553648256,71680:16777216,75776:17039360,79872:537133184,83968:536870912,88064:17039488,92160:128,96256:553910272,100352:262272,104448:553910400,108544:0,112640:553648128,116736:16777344,120832:262144,124928:537133056,129024:536871040},{0:268435464,256:8192,512:270532608,768:270540808,1024:268443648,1280:2097152,1536:2097160,1792:268435456,2048:0,2304:268443656,2560:2105344,2816:8,3072:270532616,3328:2105352,3584:8200,3840:270540800,128:270532608,384:270540808,640:8,896:2097152,1152:2105352,1408:268435464,1664:268443648,1920:8200,2176:2097160,2432:8192,2688:268443656,2944:270532616,3200:0,3456:270540800,3712:2105344,3968:268435456,4096:268443648,4352:270532616,4608:270540808,4864:8200,5120:2097152,5376:268435456,5632:268435464,5888:2105344,6144:2105352,6400:0,6656:8,6912:270532608,7168:8192,7424:268443656,7680:270540800,7936:2097160,4224:8,4480:2105344,4736:2097152,4992:268435464,5248:268443648,5504:8200,5760:270540808,6016:270532608,6272:270540800,6528:270532616,6784:8192,7040:2105352,7296:2097160,7552:0,7808:268435456,8064:268443656},{0:1048576,16:33555457,32:1024,48:1049601,64:34604033,80:0,96:1,112:34603009,128:33555456,144:1048577,160:33554433,176:34604032,192:34603008,208:1025,224:1049600,240:33554432,8:34603009,24:0,40:33555457,56:34604032,72:1048576,88:33554433,104:33554432,120:1025,136:1049601,152:33555456,168:34603008,184:1048577,200:1024,216:34604033,232:1,248:1049600,256:33554432,272:1048576,288:33555457,304:34603009,320:1048577,336:33555456,352:34604032,368:1049601,384:1025,400:34604033,416:1049600,432:1,448:0,464:34603008,480:33554433,496:1024,264:1049600,280:33555457,296:34603009,312:1,328:33554432,344:1048576,360:1025,376:34604032,392:33554433,408:34603008,424:0,440:34604033,456:1049601,472:1024,488:33555456,504:1048577},{0:134219808,1:131072,2:134217728,3:32,4:131104,5:134350880,6:134350848,7:2048,8:134348800,9:134219776,10:133120,11:134348832,12:2080,13:0,14:134217760,15:133152,2147483648:2048,2147483649:134350880,2147483650:134219808,2147483651:134217728,2147483652:134348800,2147483653:133120,2147483654:133152,2147483655:32,2147483656:134217760,2147483657:2080,2147483658:131104,2147483659:134350848,2147483660:0,2147483661:134348832,2147483662:134219776,2147483663:131072,16:133152,17:134350848,18:32,19:2048,20:134219776,21:134217760,22:134348832,23:131072,24:0,25:131104,26:134348800,27:134219808,28:134350880,29:133120,30:2080,31:134217728,2147483664:131072,2147483665:2048,2147483666:134348832,2147483667:133152,2147483668:32,2147483669:134348800,2147483670:134217728,2147483671:134219808,2147483672:134350880,2147483673:134217760,2147483674:134219776,2147483675:0,2147483676:133120,2147483677:2080,2147483678:131104,2147483679:134350848}],u=[4160749569,528482304,33030144,2064384,129024,8064,504,2147483679],d=i.DES=n.extend({_doReset:function(){for(var e=this._key.words,t=[],a=0;a<56;a++){var r=o[a]-1;t[a]=e[r>>>5]>>>31-r%32&1}for(var n=this._subKeys=[],i=0;i<16;i++){var c=n[i]=[],u=l[i];for(a=0;a<24;a++)c[a/6|0]|=t[(s[a]-1+u)%28]<<31-a%6,c[4+(a/6|0)]|=t[28+(s[a+24]-1+u)%28]<<31-a%6;for(c[0]=c[0]<<1|c[0]>>>31,a=1;a<7;a++)c[a]=c[a]>>>4*(a-1)+3;c[7]=c[7]<<5|c[7]>>>27}var d=this._invSubKeys=[];for(a=0;a<16;a++)d[a]=n[15-a]},encryptBlock:function(e,t){this._doCryptBlock(e,t,this._subKeys)},decryptBlock:function(e,t){this._doCryptBlock(e,t,this._invSubKeys)},_doCryptBlock:function(e,t,a){this._lBlock=e[t],this._rBlock=e[t+1],p.call(this,4,252645135),p.call(this,16,65535),m.call(this,2,858993459),m.call(this,8,16711935),p.call(this,1,1431655765);for(var r=0;r<16;r++){for(var n=a[r],i=this._lBlock,o=this._rBlock,s=0,l=0;l<8;l++)s|=c[l][((o^n[l])&u[l])>>>0];this._lBlock=o,this._rBlock=i^s}var d=this._lBlock;this._lBlock=this._rBlock,this._rBlock=d,p.call(this,1,1431655765),m.call(this,8,16711935),m.call(this,2,858993459),p.call(this,16,65535),p.call(this,4,252645135),e[t]=this._lBlock,e[t+1]=this._rBlock},keySize:2,ivSize:2,blockSize:2});function p(e,t){var a=(this._lBlock>>>e^this._rBlock)&t;this._rBlock^=a,this._lBlock^=a<<e}function m(e,t){var a=(this._rBlock>>>e^this._lBlock)&t;this._lBlock^=a,this._rBlock^=a<<e}t.DES=n._createHelper(d);var h=i.TripleDES=n.extend({_doReset:function(){var e=this._key.words;if(2!==e.length&&4!==e.length&&e.length<6)throw new Error("Invalid key length - 3DES requires the key length to be 64, 128, 192 or >192.");var t=e.slice(0,2),a=e.length<4?e.slice(0,2):e.slice(2,4),n=e.length<6?e.slice(0,2):e.slice(4,6);this._des1=d.createEncryptor(r.create(t)),this._des2=d.createEncryptor(r.create(a)),this._des3=d.createEncryptor(r.create(n))},encryptBlock:function(e,t){this._des1.encryptBlock(e,t),this._des2.decryptBlock(e,t),this._des3.encryptBlock(e,t)},decryptBlock:function(e,t){this._des3.decryptBlock(e,t),this._des2.encryptBlock(e,t),this._des1.decryptBlock(e,t)},keySize:6,ivSize:2,blockSize:2});t.TripleDES=n._createHelper(h)}(),e.TripleDES));var e}var jc,qc={exports:{}};var Lc,Oc={exports:{}};var Nc,Uc={exports:{}};var Fc,Bc,Wc,Vc,Hc,Gc,Yc,$c={exports:{}};function Kc(){return Fc?$c.exports:(Fc=1,$c.exports=(e=ml(),Pl(),El(),rc(),oc(),function(){var t=e,a=t.lib.BlockCipher,r=t.algo;const n=16,i=[608135816,2242054355,320440878,57701188,2752067618,698298832,137296536,3964562569,1160258022,953160567,3193202383,887688300,3232508343,3380367581,1065670069,3041331479,2450970073,2306472731],o=[[3509652390,2564797868,805139163,3491422135,3101798381,1780907670,3128725573,4046225305,614570311,3012652279,134345442,2240740374,1667834072,1901547113,2757295779,4103290238,227898511,1921955416,1904987480,2182433518,2069144605,3260701109,2620446009,720527379,3318853667,677414384,3393288472,3101374703,2390351024,1614419982,1822297739,2954791486,3608508353,3174124327,2024746970,1432378464,3864339955,2857741204,1464375394,1676153920,1439316330,715854006,3033291828,289532110,2706671279,2087905683,3018724369,1668267050,732546397,1947742710,3462151702,2609353502,2950085171,1814351708,2050118529,680887927,999245976,1800124847,3300911131,1713906067,1641548236,4213287313,1216130144,1575780402,4018429277,3917837745,3693486850,3949271944,596196993,3549867205,258830323,2213823033,772490370,2760122372,1774776394,2652871518,566650946,4142492826,1728879713,2882767088,1783734482,3629395816,2517608232,2874225571,1861159788,326777828,3124490320,2130389656,2716951837,967770486,1724537150,2185432712,2364442137,1164943284,2105845187,998989502,3765401048,2244026483,1075463327,1455516326,1322494562,910128902,469688178,1117454909,936433444,3490320968,3675253459,1240580251,122909385,2157517691,634681816,4142456567,3825094682,3061402683,2540495037,79693498,3249098678,1084186820,1583128258,426386531,1761308591,1047286709,322548459,995290223,1845252383,2603652396,3431023940,2942221577,3202600964,3727903485,1712269319,422464435,3234572375,1170764815,3523960633,3117677531,1434042557,442511882,3600875718,1076654713,1738483198,4213154764,2393238008,3677496056,1014306527,4251020053,793779912,2902807211,842905082,4246964064,1395751752,1040244610,2656851899,3396308128,445077038,3742853595,3577915638,679411651,2892444358,2354009459,1767581616,3150600392,3791627101,3102740896,284835224,4246832056,1258075500,768725851,2589189241,3069724005,3532540348,1274779536,3789419226,2764799539,1660621633,3471099624,4011903706,913787905,3497959166,737222580,2514213453,2928710040,3937242737,1804850592,3499020752,2949064160,2386320175,2390070455,2415321851,4061277028,2290661394,2416832540,1336762016,1754252060,3520065937,3014181293,791618072,3188594551,3933548030,2332172193,3852520463,3043980520,413987798,3465142937,3030929376,4245938359,2093235073,3534596313,375366246,2157278981,2479649556,555357303,3870105701,2008414854,3344188149,4221384143,3956125452,2067696032,3594591187,2921233993,2428461,544322398,577241275,1471733935,610547355,4027169054,1432588573,1507829418,2025931657,3646575487,545086370,48609733,2200306550,1653985193,298326376,1316178497,3007786442,2064951626,458293330,2589141269,3591329599,3164325604,727753846,2179363840,146436021,1461446943,4069977195,705550613,3059967265,3887724982,4281599278,3313849956,1404054877,2845806497,146425753,1854211946],[1266315497,3048417604,3681880366,3289982499,290971e4,1235738493,2632868024,2414719590,3970600049,1771706367,1449415276,3266420449,422970021,1963543593,2690192192,3826793022,1062508698,1531092325,1804592342,2583117782,2714934279,4024971509,1294809318,4028980673,1289560198,2221992742,1669523910,35572830,157838143,1052438473,1016535060,1802137761,1753167236,1386275462,3080475397,2857371447,1040679964,2145300060,2390574316,1461121720,2956646967,4031777805,4028374788,33600511,2920084762,1018524850,629373528,3691585981,3515945977,2091462646,2486323059,586499841,988145025,935516892,3367335476,2599673255,2839830854,265290510,3972581182,2759138881,3795373465,1005194799,847297441,406762289,1314163512,1332590856,1866599683,4127851711,750260880,613907577,1450815602,3165620655,3734664991,3650291728,3012275730,3704569646,1427272223,778793252,1343938022,2676280711,2052605720,1946737175,3164576444,3914038668,3967478842,3682934266,1661551462,3294938066,4011595847,840292616,3712170807,616741398,312560963,711312465,1351876610,322626781,1910503582,271666773,2175563734,1594956187,70604529,3617834859,1007753275,1495573769,4069517037,2549218298,2663038764,504708206,2263041392,3941167025,2249088522,1514023603,1998579484,1312622330,694541497,2582060303,2151582166,1382467621,776784248,2618340202,3323268794,2497899128,2784771155,503983604,4076293799,907881277,423175695,432175456,1378068232,4145222326,3954048622,3938656102,3820766613,2793130115,2977904593,26017576,3274890735,3194772133,1700274565,1756076034,4006520079,3677328699,720338349,1533947780,354530856,688349552,3973924725,1637815568,332179504,3949051286,53804574,2852348879,3044236432,1282449977,3583942155,3416972820,4006381244,1617046695,2628476075,3002303598,1686838959,431878346,2686675385,1700445008,1080580658,1009431731,832498133,3223435511,2605976345,2271191193,2516031870,1648197032,4164389018,2548247927,300782431,375919233,238389289,3353747414,2531188641,2019080857,1475708069,455242339,2609103871,448939670,3451063019,1395535956,2413381860,1841049896,1491858159,885456874,4264095073,4001119347,1565136089,3898914787,1108368660,540939232,1173283510,2745871338,3681308437,4207628240,3343053890,4016749493,1699691293,1103962373,3625875870,2256883143,3830138730,1031889488,3479347698,1535977030,4236805024,3251091107,2132092099,1774941330,1199868427,1452454533,157007616,2904115357,342012276,595725824,1480756522,206960106,497939518,591360097,863170706,2375253569,3596610801,1814182875,2094937945,3421402208,1082520231,3463918190,2785509508,435703966,3908032597,1641649973,2842273706,3305899714,1510255612,2148256476,2655287854,3276092548,4258621189,236887753,3681803219,274041037,1734335097,3815195456,3317970021,1899903192,1026095262,4050517792,356393447,2410691914,3873677099,3682840055],[3913112168,2491498743,4132185628,2489919796,1091903735,1979897079,3170134830,3567386728,3557303409,857797738,1136121015,1342202287,507115054,2535736646,337727348,3213592640,1301675037,2528481711,1895095763,1721773893,3216771564,62756741,2142006736,835421444,2531993523,1442658625,3659876326,2882144922,676362277,1392781812,170690266,3921047035,1759253602,3611846912,1745797284,664899054,1329594018,3901205900,3045908486,2062866102,2865634940,3543621612,3464012697,1080764994,553557557,3656615353,3996768171,991055499,499776247,1265440854,648242737,3940784050,980351604,3713745714,1749149687,3396870395,4211799374,3640570775,1161844396,3125318951,1431517754,545492359,4268468663,3499529547,1437099964,2702547544,3433638243,2581715763,2787789398,1060185593,1593081372,2418618748,4260947970,69676912,2159744348,86519011,2512459080,3838209314,1220612927,3339683548,133810670,1090789135,1078426020,1569222167,845107691,3583754449,4072456591,1091646820,628848692,1613405280,3757631651,526609435,236106946,48312990,2942717905,3402727701,1797494240,859738849,992217954,4005476642,2243076622,3870952857,3732016268,765654824,3490871365,2511836413,1685915746,3888969200,1414112111,2273134842,3281911079,4080962846,172450625,2569994100,980381355,4109958455,2819808352,2716589560,2568741196,3681446669,3329971472,1835478071,660984891,3704678404,4045999559,3422617507,3040415634,1762651403,1719377915,3470491036,2693910283,3642056355,3138596744,1364962596,2073328063,1983633131,926494387,3423689081,2150032023,4096667949,1749200295,3328846651,309677260,2016342300,1779581495,3079819751,111262694,1274766160,443224088,298511866,1025883608,3806446537,1145181785,168956806,3641502830,3584813610,1689216846,3666258015,3200248200,1692713982,2646376535,4042768518,1618508792,1610833997,3523052358,4130873264,2001055236,3610705100,2202168115,4028541809,2961195399,1006657119,2006996926,3186142756,1430667929,3210227297,1314452623,4074634658,4101304120,2273951170,1399257539,3367210612,3027628629,1190975929,2062231137,2333990788,2221543033,2438960610,1181637006,548689776,2362791313,3372408396,3104550113,3145860560,296247880,1970579870,3078560182,3769228297,1714227617,3291629107,3898220290,166772364,1251581989,493813264,448347421,195405023,2709975567,677966185,3703036547,1463355134,2715995803,1338867538,1343315457,2802222074,2684532164,233230375,2599980071,2000651841,3277868038,1638401717,4028070440,3237316320,6314154,819756386,300326615,590932579,1405279636,3267499572,3150704214,2428286686,3959192993,3461946742,1862657033,1266418056,963775037,2089974820,2263052895,1917689273,448879540,3550394620,3981727096,150775221,3627908307,1303187396,508620638,2975983352,2726630617,1817252668,1876281319,1457606340,908771278,3720792119,3617206836,2455994898,1729034894,1080033504],[976866871,3556439503,2881648439,1522871579,1555064734,1336096578,3548522304,2579274686,3574697629,3205460757,3593280638,3338716283,3079412587,564236357,2993598910,1781952180,1464380207,3163844217,3332601554,1699332808,1393555694,1183702653,3581086237,1288719814,691649499,2847557200,2895455976,3193889540,2717570544,1781354906,1676643554,2592534050,3230253752,1126444790,2770207658,2633158820,2210423226,2615765581,2414155088,3127139286,673620729,2805611233,1269405062,4015350505,3341807571,4149409754,1057255273,2012875353,2162469141,2276492801,2601117357,993977747,3918593370,2654263191,753973209,36408145,2530585658,25011837,3520020182,2088578344,530523599,2918365339,1524020338,1518925132,3760827505,3759777254,1202760957,3985898139,3906192525,674977740,4174734889,2031300136,2019492241,3983892565,4153806404,3822280332,352677332,2297720250,60907813,90501309,3286998549,1016092578,2535922412,2839152426,457141659,509813237,4120667899,652014361,1966332200,2975202805,55981186,2327461051,676427537,3255491064,2882294119,3433927263,1307055953,942726286,933058658,2468411793,3933900994,4215176142,1361170020,2001714738,2830558078,3274259782,1222529897,1679025792,2729314320,3714953764,1770335741,151462246,3013232138,1682292957,1483529935,471910574,1539241949,458788160,3436315007,1807016891,3718408830,978976581,1043663428,3165965781,1927990952,4200891579,2372276910,3208408903,3533431907,1412390302,2931980059,4132332400,1947078029,3881505623,4168226417,2941484381,1077988104,1320477388,886195818,18198404,3786409e3,2509781533,112762804,3463356488,1866414978,891333506,18488651,661792760,1628790961,3885187036,3141171499,876946877,2693282273,1372485963,791857591,2686433993,3759982718,3167212022,3472953795,2716379847,445679433,3561995674,3504004811,3574258232,54117162,3331405415,2381918588,3769707343,4154350007,1140177722,4074052095,668550556,3214352940,367459370,261225585,2610173221,4209349473,3468074219,3265815641,314222801,3066103646,3808782860,282218597,3406013506,3773591054,379116347,1285071038,846784868,2669647154,3771962079,3550491691,2305946142,453669953,1268987020,3317592352,3279303384,3744833421,2610507566,3859509063,266596637,3847019092,517658769,3462560207,3443424879,370717030,4247526661,2224018117,4143653529,4112773975,2788324899,2477274417,1456262402,2901442914,1517677493,1846949527,2295493580,3734397586,2176403920,1280348187,1908823572,3871786941,846861322,1172426758,3287448474,3383383037,1655181056,3139813346,901632758,1897031941,2986607138,3066810236,3447102507,1393639104,373351379,950779232,625454576,3124240540,4148612726,2007998917,544563296,2244738638,2330496472,2058025392,1291430526,424198748,50039436,29584100,3605783033,2429876329,2791104160,1057563949,3255363231,3075367218,3463963227,1469046755,985887462]];var s={pbox:[],sbox:[]};function l(e,t){let a=t>>24&255,r=t>>16&255,n=t>>8&255,i=255&t,o=e.sbox[0][a]+e.sbox[1][r];return o^=e.sbox[2][n],o+=e.sbox[3][i],o}function c(e,t,a){let r,i=t,o=a;for(let s=0;s<n;++s)i^=e.pbox[s],o=l(e,i)^o,r=i,i=o,o=r;return r=i,i=o,o=r,o^=e.pbox[n],i^=e.pbox[n+1],{left:i,right:o}}function u(e,t,a){let r,i=t,o=a;for(let s=n+1;s>1;--s)i^=e.pbox[s],o=l(e,i)^o,r=i,i=o,o=r;return r=i,i=o,o=r,o^=e.pbox[1],i^=e.pbox[0],{left:i,right:o}}function d(e,t,a){for(let n=0;n<4;n++){e.sbox[n]=[];for(let t=0;t<256;t++)e.sbox[n][t]=o[n][t]}let r=0;for(let o=0;o<n+2;o++)e.pbox[o]=i[o]^t[r],r++,r>=a&&(r=0);let s=0,l=0,u=0;for(let i=0;i<n+2;i+=2)u=c(e,s,l),s=u.left,l=u.right,e.pbox[i]=s,e.pbox[i+1]=l;for(let n=0;n<4;n++)for(let t=0;t<256;t+=2)u=c(e,s,l),s=u.left,l=u.right,e.sbox[n][t]=s,e.sbox[n][t+1]=l;return!0}var p=r.Blowfish=a.extend({_doReset:function(){if(this._keyPriorReset!==this._key){var e=this._keyPriorReset=this._key,t=e.words,a=e.sigBytes/4;d(s,t,a)}},encryptBlock:function(e,t){var a=c(s,e[t],e[t+1]);e[t]=a.left,e[t+1]=a.right},decryptBlock:function(e,t){var a=u(s,e[t],e[t+1]);e[t]=a.left,e[t+1]=a.right},blockSize:2,keySize:4,ivSize:2});t.Blowfish=a._createHelper(p)}(),e.Blowfish));var e}const Zc=fe(cl.exports=function(e){return e}(ml(),fl(),bl(),kl(),Pl(),Il(),El(),Ml(),Ll(),Ol||(Ol=1,Nl.exports=(Yc=ml(),Ll(),Wc=(Bc=Yc).lib.WordArray,Vc=Bc.algo,Hc=Vc.SHA256,Gc=Vc.SHA224=Hc.extend({_doReset:function(){this._hash=new Wc.init([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428])},_doFinalize:function(){var e=Hc._doFinalize.call(this);return e.sigBytes-=4,e}}),Bc.SHA224=Hc._createHelper(Gc),Bc.HmacSHA224=Hc._createHmacHelper(Gc),Yc.SHA224)),Bl(),function(){return Wl?Vl.exports:(Wl=1,Vl.exports=(s=ml(),fl(),Bl(),t=(e=s).x64,a=t.Word,r=t.WordArray,n=e.algo,i=n.SHA512,o=n.SHA384=i.extend({_doReset:function(){this._hash=new r.init([new a.init(3418070365,3238371032),new a.init(1654270250,914150663),new a.init(2438529370,812702999),new a.init(355462360,4144912697),new a.init(1731405415,4290775857),new a.init(2394180231,1750603025),new a.init(3675008525,1694076839),new a.init(1203062813,3204075428)])},_doFinalize:function(){var e=i._doFinalize.call(this);return e.sigBytes-=16,e}}),e.SHA384=i._createHelper(o),e.HmacSHA384=i._createHmacHelper(o),s.SHA384));var e,t,a,r,n,i,o,s}(),Yl(),function(){return $l?Kl.exports:($l=1,Kl.exports=(e=ml(),function(){var t=e,a=t.lib,r=a.WordArray,n=a.Hasher,i=t.algo,o=r.create([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13]),s=r.create([5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11]),l=r.create([11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6]),c=r.create([8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11]),u=r.create([0,1518500249,1859775393,2400959708,2840853838]),d=r.create([1352829926,1548603684,1836072691,2053994217,0]),p=i.RIPEMD160=n.extend({_doReset:function(){this._hash=r.create([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(e,t){for(var a=0;a<16;a++){var r=t+a,n=e[r];e[r]=16711935&(n<<8|n>>>24)|4278255360&(n<<24|n>>>8)}var i,p,b,w,C,k,A,x,P,S,_,I=this._hash.words,T=u.words,z=d.words,E=o.words,D=s.words,R=l.words,M=c.words;for(k=i=I[0],A=p=I[1],x=b=I[2],P=w=I[3],S=C=I[4],a=0;a<80;a+=1)_=i+e[t+E[a]]|0,_+=a<16?m(p,b,w)+T[0]:a<32?h(p,b,w)+T[1]:a<48?g(p,b,w)+T[2]:a<64?f(p,b,w)+T[3]:v(p,b,w)+T[4],_=(_=y(_|=0,R[a]))+C|0,i=C,C=w,w=y(b,10),b=p,p=_,_=k+e[t+D[a]]|0,_+=a<16?v(A,x,P)+z[0]:a<32?f(A,x,P)+z[1]:a<48?g(A,x,P)+z[2]:a<64?h(A,x,P)+z[3]:m(A,x,P)+z[4],_=(_=y(_|=0,M[a]))+S|0,k=S,S=P,P=y(x,10),x=A,A=_;_=I[1]+b+P|0,I[1]=I[2]+w+S|0,I[2]=I[3]+C+k|0,I[3]=I[4]+i+A|0,I[4]=I[0]+p+x|0,I[0]=_},_doFinalize:function(){var e=this._data,t=e.words,a=8*this._nDataBytes,r=8*e.sigBytes;t[r>>>5]|=128<<24-r%32,t[14+(r+64>>>9<<4)]=16711935&(a<<8|a>>>24)|4278255360&(a<<24|a>>>8),e.sigBytes=4*(t.length+1),this._process();for(var n=this._hash,i=n.words,o=0;o<5;o++){var s=i[o];i[o]=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8)}return n},clone:function(){var e=n.clone.call(this);return e._hash=this._hash.clone(),e}});function m(e,t,a){return e^t^a}function h(e,t,a){return e&t|~e&a}function g(e,t,a){return(e|~t)^a}function f(e,t,a){return e&a|t&~a}function v(e,t,a){return e^(t|~a)}function y(e,t){return e<<t|e>>>32-t}t.RIPEMD160=n._createHelper(p),t.HmacRIPEMD160=n._createHmacHelper(p)}(),e.RIPEMD160));var e}(),Ql(),function(){return Xl?ec.exports:(Xl=1,ec.exports=(l=ml(),Ll(),Ql(),t=(e=l).lib,a=t.Base,r=t.WordArray,n=e.algo,i=n.SHA256,o=n.HMAC,s=n.PBKDF2=a.extend({cfg:a.extend({keySize:4,hasher:i,iterations:25e4}),init:function(e){this.cfg=this.cfg.extend(e)},compute:function(e,t){for(var a=this.cfg,n=o.create(a.hasher,e),i=r.create(),s=r.create([1]),l=i.words,c=s.words,u=a.keySize,d=a.iterations;l.length<u;){var p=n.update(t).finalize(s);n.reset();for(var m=p.words,h=m.length,g=p,f=1;f<d;f++){g=n.finalize(g),n.reset();for(var v=g.words,y=0;y<h;y++)m[y]^=v[y]}i.concat(p),c[0]++}return i.sigBytes=4*u,i}}),e.PBKDF2=function(e,t,a){return s.create(a).compute(e,t)},l.PBKDF2));var e,t,a,r,n,i,o,s,l}(),rc(),oc(),function(){return sc?lc.exports:(sc=1,lc.exports=(e=ml(),oc(),e.mode.CFB=function(){var t=e.lib.BlockCipherMode.extend();function a(e,t,a,r){var n,i=this._iv;i?(n=i.slice(0),this._iv=void 0):n=this._prevBlock,r.encryptBlock(n,0);for(var o=0;o<a;o++)e[t+o]^=n[o]}return t.Encryptor=t.extend({processBlock:function(e,t){var r=this._cipher,n=r.blockSize;a.call(this,e,t,n,r),this._prevBlock=e.slice(t,t+n)}}),t.Decryptor=t.extend({processBlock:function(e,t){var r=this._cipher,n=r.blockSize,i=e.slice(t,t+n);a.call(this,e,t,n,r),this._prevBlock=i}}),t}(),e.mode.CFB));var e}(),function(){return cc?uc.exports:(cc=1,uc.exports=(a=ml(),oc(),a.mode.CTR=(e=a.lib.BlockCipherMode.extend(),t=e.Encryptor=e.extend({processBlock:function(e,t){var a=this._cipher,r=a.blockSize,n=this._iv,i=this._counter;n&&(i=this._counter=n.slice(0),this._iv=void 0);var o=i.slice(0);a.encryptBlock(o,0),i[r-1]=i[r-1]+1|0;for(var s=0;s<r;s++)e[t+s]^=o[s]}}),e.Decryptor=t,e),a.mode.CTR));var e,t,a}(),mc(),function(){return hc?gc.exports:(hc=1,gc.exports=(a=ml(),oc(),a.mode.OFB=(e=a.lib.BlockCipherMode.extend(),t=e.Encryptor=e.extend({processBlock:function(e,t){var a=this._cipher,r=a.blockSize,n=this._iv,i=this._keystream;n&&(i=this._keystream=n.slice(0),this._iv=void 0),a.encryptBlock(i,0);for(var o=0;o<r;o++)e[t+o]^=i[o]}}),e.Decryptor=t,e),a.mode.OFB));var e,t,a}(),function(){return fc?vc.exports:(fc=1,vc.exports=(t=ml(),oc(),t.mode.ECB=((e=t.lib.BlockCipherMode.extend()).Encryptor=e.extend({processBlock:function(e,t){this._cipher.encryptBlock(e,t)}}),e.Decryptor=e.extend({processBlock:function(e,t){this._cipher.decryptBlock(e,t)}}),e),t.mode.ECB));var e,t}(),function(){return yc?bc.exports:(yc=1,bc.exports=(e=ml(),oc(),e.pad.AnsiX923={pad:function(e,t){var a=e.sigBytes,r=4*t,n=r-a%r,i=a+n-1;e.clamp(),e.words[i>>>2]|=n<<24-i%4*8,e.sigBytes+=n},unpad:function(e){var t=255&e.words[e.sigBytes-1>>>2];e.sigBytes-=t}},e.pad.Ansix923));var e}(),function(){return wc?Cc.exports:(wc=1,Cc.exports=(e=ml(),oc(),e.pad.Iso10126={pad:function(t,a){var r=4*a,n=r-t.sigBytes%r;t.concat(e.lib.WordArray.random(n-1)).concat(e.lib.WordArray.create([n<<24],1))},unpad:function(e){var t=255&e.words[e.sigBytes-1>>>2];e.sigBytes-=t}},e.pad.Iso10126));var e}(),function(){return kc?Ac.exports:(kc=1,Ac.exports=(e=ml(),oc(),e.pad.Iso97971={pad:function(t,a){t.concat(e.lib.WordArray.create([2147483648],1)),e.pad.ZeroPadding.pad(t,a)},unpad:function(t){e.pad.ZeroPadding.unpad(t),t.sigBytes--}},e.pad.Iso97971));var e}(),function(){return xc?Pc.exports:(xc=1,Pc.exports=(e=ml(),oc(),e.pad.ZeroPadding={pad:function(e,t){var a=4*t;e.clamp(),e.sigBytes+=a-(e.sigBytes%a||a)},unpad:function(e){var t=e.words,a=e.sigBytes-1;for(a=e.sigBytes-1;a>=0;a--)if(t[a>>>2]>>>24-a%4*8&255){e.sigBytes=a+1;break}}},e.pad.ZeroPadding));var e}(),function(){return Sc?_c.exports:(Sc=1,_c.exports=(e=ml(),oc(),e.pad.NoPadding={pad:function(){},unpad:function(){}},e.pad.NoPadding));var e}(),function(){return Ic?Tc.exports:(Ic=1,Tc.exports=(r=ml(),oc(),t=(e=r).lib.CipherParams,a=e.enc.Hex,e.format.Hex={stringify:function(e){return e.ciphertext.toString(a)},parse:function(e){var r=a.parse(e);return t.create({ciphertext:r})}},r.format.Hex));var e,t,a,r}(),function(){return zc?Ec.exports:(zc=1,Ec.exports=(e=ml(),Pl(),El(),rc(),oc(),function(){var t=e,a=t.lib.BlockCipher,r=t.algo,n=[],i=[],o=[],s=[],l=[],c=[],u=[],d=[],p=[],m=[];!function(){for(var e=[],t=0;t<256;t++)e[t]=t<128?t<<1:t<<1^283;var a=0,r=0;for(t=0;t<256;t++){var h=r^r<<1^r<<2^r<<3^r<<4;h=h>>>8^255&h^99,n[a]=h,i[h]=a;var g=e[a],f=e[g],v=e[f],y=257*e[h]^16843008*h;o[a]=y<<24|y>>>8,s[a]=y<<16|y>>>16,l[a]=y<<8|y>>>24,c[a]=y,y=16843009*v^65537*f^257*g^16843008*a,u[h]=y<<24|y>>>8,d[h]=y<<16|y>>>16,p[h]=y<<8|y>>>24,m[h]=y,a?(a=g^e[e[e[v^g]]],r^=e[e[r]]):a=r=1}}();var h=[0,1,2,4,8,16,32,64,128,27,54],g=r.AES=a.extend({_doReset:function(){if(!this._nRounds||this._keyPriorReset!==this._key){for(var e=this._keyPriorReset=this._key,t=e.words,a=e.sigBytes/4,r=4*((this._nRounds=a+6)+1),i=this._keySchedule=[],o=0;o<r;o++)o<a?i[o]=t[o]:(c=i[o-1],o%a?a>6&&o%a==4&&(c=n[c>>>24]<<24|n[c>>>16&255]<<16|n[c>>>8&255]<<8|n[255&c]):(c=n[(c=c<<8|c>>>24)>>>24]<<24|n[c>>>16&255]<<16|n[c>>>8&255]<<8|n[255&c],c^=h[o/a|0]<<24),i[o]=i[o-a]^c);for(var s=this._invKeySchedule=[],l=0;l<r;l++){if(o=r-l,l%4)var c=i[o];else c=i[o-4];s[l]=l<4||o<=4?c:u[n[c>>>24]]^d[n[c>>>16&255]]^p[n[c>>>8&255]]^m[n[255&c]]}}},encryptBlock:function(e,t){this._doCryptBlock(e,t,this._keySchedule,o,s,l,c,n)},decryptBlock:function(e,t){var a=e[t+1];e[t+1]=e[t+3],e[t+3]=a,this._doCryptBlock(e,t,this._invKeySchedule,u,d,p,m,i),a=e[t+1],e[t+1]=e[t+3],e[t+3]=a},_doCryptBlock:function(e,t,a,r,n,i,o,s){for(var l=this._nRounds,c=e[t]^a[0],u=e[t+1]^a[1],d=e[t+2]^a[2],p=e[t+3]^a[3],m=4,h=1;h<l;h++){var g=r[c>>>24]^n[u>>>16&255]^i[d>>>8&255]^o[255&p]^a[m++],f=r[u>>>24]^n[d>>>16&255]^i[p>>>8&255]^o[255&c]^a[m++],v=r[d>>>24]^n[p>>>16&255]^i[c>>>8&255]^o[255&u]^a[m++],y=r[p>>>24]^n[c>>>16&255]^i[u>>>8&255]^o[255&d]^a[m++];c=g,u=f,d=v,p=y}g=(s[c>>>24]<<24|s[u>>>16&255]<<16|s[d>>>8&255]<<8|s[255&p])^a[m++],f=(s[u>>>24]<<24|s[d>>>16&255]<<16|s[p>>>8&255]<<8|s[255&c])^a[m++],v=(s[d>>>24]<<24|s[p>>>16&255]<<16|s[c>>>8&255]<<8|s[255&u])^a[m++],y=(s[p>>>24]<<24|s[c>>>16&255]<<16|s[u>>>8&255]<<8|s[255&d])^a[m++],e[t]=g,e[t+1]=f,e[t+2]=v,e[t+3]=y},keySize:8});t.AES=a._createHelper(g)}(),e.AES));var e}(),Mc(),function(){return jc?qc.exports:(jc=1,qc.exports=(e=ml(),Pl(),El(),rc(),oc(),function(){var t=e,a=t.lib.StreamCipher,r=t.algo,n=r.RC4=a.extend({_doReset:function(){for(var e=this._key,t=e.words,a=e.sigBytes,r=this._S=[],n=0;n<256;n++)r[n]=n;n=0;for(var i=0;n<256;n++){var o=n%a,s=t[o>>>2]>>>24-o%4*8&255;i=(i+r[n]+s)%256;var l=r[n];r[n]=r[i],r[i]=l}this._i=this._j=0},_doProcessBlock:function(e,t){e[t]^=i.call(this)},keySize:8,ivSize:0});function i(){for(var e=this._S,t=this._i,a=this._j,r=0,n=0;n<4;n++){a=(a+e[t=(t+1)%256])%256;var i=e[t];e[t]=e[a],e[a]=i,r|=e[(e[t]+e[a])%256]<<24-8*n}return this._i=t,this._j=a,r}t.RC4=a._createHelper(n);var o=r.RC4Drop=n.extend({cfg:n.cfg.extend({drop:192}),_doReset:function(){n._doReset.call(this);for(var e=this.cfg.drop;e>0;e--)i.call(this)}});t.RC4Drop=a._createHelper(o)}(),e.RC4));var e}(),function(){return Lc?Oc.exports:(Lc=1,Oc.exports=(e=ml(),Pl(),El(),rc(),oc(),function(){var t=e,a=t.lib.StreamCipher,r=t.algo,n=[],i=[],o=[],s=r.Rabbit=a.extend({_doReset:function(){for(var e=this._key.words,t=this.cfg.iv,a=0;a<4;a++)e[a]=16711935&(e[a]<<8|e[a]>>>24)|4278255360&(e[a]<<24|e[a]>>>8);var r=this._X=[e[0],e[3]<<16|e[2]>>>16,e[1],e[0]<<16|e[3]>>>16,e[2],e[1]<<16|e[0]>>>16,e[3],e[2]<<16|e[1]>>>16],n=this._C=[e[2]<<16|e[2]>>>16,4294901760&e[0]|65535&e[1],e[3]<<16|e[3]>>>16,4294901760&e[1]|65535&e[2],e[0]<<16|e[0]>>>16,4294901760&e[2]|65535&e[3],e[1]<<16|e[1]>>>16,4294901760&e[3]|65535&e[0]];for(this._b=0,a=0;a<4;a++)l.call(this);for(a=0;a<8;a++)n[a]^=r[a+4&7];if(t){var i=t.words,o=i[0],s=i[1],c=16711935&(o<<8|o>>>24)|4278255360&(o<<24|o>>>8),u=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8),d=c>>>16|4294901760&u,p=u<<16|65535&c;for(n[0]^=c,n[1]^=d,n[2]^=u,n[3]^=p,n[4]^=c,n[5]^=d,n[6]^=u,n[7]^=p,a=0;a<4;a++)l.call(this)}},_doProcessBlock:function(e,t){var a=this._X;l.call(this),n[0]=a[0]^a[5]>>>16^a[3]<<16,n[1]=a[2]^a[7]>>>16^a[5]<<16,n[2]=a[4]^a[1]>>>16^a[7]<<16,n[3]=a[6]^a[3]>>>16^a[1]<<16;for(var r=0;r<4;r++)n[r]=16711935&(n[r]<<8|n[r]>>>24)|4278255360&(n[r]<<24|n[r]>>>8),e[t+r]^=n[r]},blockSize:4,ivSize:2});function l(){for(var e=this._X,t=this._C,a=0;a<8;a++)i[a]=t[a];for(t[0]=t[0]+1295307597+this._b|0,t[1]=t[1]+3545052371+(t[0]>>>0<i[0]>>>0?1:0)|0,t[2]=t[2]+886263092+(t[1]>>>0<i[1]>>>0?1:0)|0,t[3]=t[3]+1295307597+(t[2]>>>0<i[2]>>>0?1:0)|0,t[4]=t[4]+3545052371+(t[3]>>>0<i[3]>>>0?1:0)|0,t[5]=t[5]+886263092+(t[4]>>>0<i[4]>>>0?1:0)|0,t[6]=t[6]+1295307597+(t[5]>>>0<i[5]>>>0?1:0)|0,t[7]=t[7]+3545052371+(t[6]>>>0<i[6]>>>0?1:0)|0,this._b=t[7]>>>0<i[7]>>>0?1:0,a=0;a<8;a++){var r=e[a]+t[a],n=65535&r,s=r>>>16,l=((n*n>>>17)+n*s>>>15)+s*s,c=((4294901760&r)*r|0)+((65535&r)*r|0);o[a]=l^c}e[0]=o[0]+(o[7]<<16|o[7]>>>16)+(o[6]<<16|o[6]>>>16)|0,e[1]=o[1]+(o[0]<<8|o[0]>>>24)+o[7]|0,e[2]=o[2]+(o[1]<<16|o[1]>>>16)+(o[0]<<16|o[0]>>>16)|0,e[3]=o[3]+(o[2]<<8|o[2]>>>24)+o[1]|0,e[4]=o[4]+(o[3]<<16|o[3]>>>16)+(o[2]<<16|o[2]>>>16)|0,e[5]=o[5]+(o[4]<<8|o[4]>>>24)+o[3]|0,e[6]=o[6]+(o[5]<<16|o[5]>>>16)+(o[4]<<16|o[4]>>>16)|0,e[7]=o[7]+(o[6]<<8|o[6]>>>24)+o[5]|0}t.Rabbit=a._createHelper(s)}(),e.Rabbit));var e}(),function(){return Nc?Uc.exports:(Nc=1,Uc.exports=(e=ml(),Pl(),El(),rc(),oc(),function(){var t=e,a=t.lib.StreamCipher,r=t.algo,n=[],i=[],o=[],s=r.RabbitLegacy=a.extend({_doReset:function(){var e=this._key.words,t=this.cfg.iv,a=this._X=[e[0],e[3]<<16|e[2]>>>16,e[1],e[0]<<16|e[3]>>>16,e[2],e[1]<<16|e[0]>>>16,e[3],e[2]<<16|e[1]>>>16],r=this._C=[e[2]<<16|e[2]>>>16,4294901760&e[0]|65535&e[1],e[3]<<16|e[3]>>>16,4294901760&e[1]|65535&e[2],e[0]<<16|e[0]>>>16,4294901760&e[2]|65535&e[3],e[1]<<16|e[1]>>>16,4294901760&e[3]|65535&e[0]];this._b=0;for(var n=0;n<4;n++)l.call(this);for(n=0;n<8;n++)r[n]^=a[n+4&7];if(t){var i=t.words,o=i[0],s=i[1],c=16711935&(o<<8|o>>>24)|4278255360&(o<<24|o>>>8),u=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8),d=c>>>16|4294901760&u,p=u<<16|65535&c;for(r[0]^=c,r[1]^=d,r[2]^=u,r[3]^=p,r[4]^=c,r[5]^=d,r[6]^=u,r[7]^=p,n=0;n<4;n++)l.call(this)}},_doProcessBlock:function(e,t){var a=this._X;l.call(this),n[0]=a[0]^a[5]>>>16^a[3]<<16,n[1]=a[2]^a[7]>>>16^a[5]<<16,n[2]=a[4]^a[1]>>>16^a[7]<<16,n[3]=a[6]^a[3]>>>16^a[1]<<16;for(var r=0;r<4;r++)n[r]=16711935&(n[r]<<8|n[r]>>>24)|4278255360&(n[r]<<24|n[r]>>>8),e[t+r]^=n[r]},blockSize:4,ivSize:2});function l(){for(var e=this._X,t=this._C,a=0;a<8;a++)i[a]=t[a];for(t[0]=t[0]+1295307597+this._b|0,t[1]=t[1]+3545052371+(t[0]>>>0<i[0]>>>0?1:0)|0,t[2]=t[2]+886263092+(t[1]>>>0<i[1]>>>0?1:0)|0,t[3]=t[3]+1295307597+(t[2]>>>0<i[2]>>>0?1:0)|0,t[4]=t[4]+3545052371+(t[3]>>>0<i[3]>>>0?1:0)|0,t[5]=t[5]+886263092+(t[4]>>>0<i[4]>>>0?1:0)|0,t[6]=t[6]+1295307597+(t[5]>>>0<i[5]>>>0?1:0)|0,t[7]=t[7]+3545052371+(t[6]>>>0<i[6]>>>0?1:0)|0,this._b=t[7]>>>0<i[7]>>>0?1:0,a=0;a<8;a++){var r=e[a]+t[a],n=65535&r,s=r>>>16,l=((n*n>>>17)+n*s>>>15)+s*s,c=((4294901760&r)*r|0)+((65535&r)*r|0);o[a]=l^c}e[0]=o[0]+(o[7]<<16|o[7]>>>16)+(o[6]<<16|o[6]>>>16)|0,e[1]=o[1]+(o[0]<<8|o[0]>>>24)+o[7]|0,e[2]=o[2]+(o[1]<<16|o[1]>>>16)+(o[0]<<16|o[0]>>>16)|0,e[3]=o[3]+(o[2]<<8|o[2]>>>24)+o[1]|0,e[4]=o[4]+(o[3]<<16|o[3]>>>16)+(o[2]<<16|o[2]>>>16)|0,e[5]=o[5]+(o[4]<<8|o[4]>>>24)+o[3]|0,e[6]=o[6]+(o[5]<<16|o[5]>>>16)+(o[4]<<16|o[4]>>>16)|0,e[7]=o[7]+(o[6]<<8|o[6]>>>24)+o[5]|0}t.RabbitLegacy=a._createHelper(s)}(),e.RabbitLegacy));var e}(),Kc()));function Jc(e,t){try{const a=Zc.enc.Utf8.parse(t),r=Zc.AES.decrypt(e,a,{mode:Zc.mode.ECB,padding:Zc.pad.Pkcs7}).toString(Zc.enc.Utf8);if(!r)throw new Error("null");return r}catch(a){throw new Error("error")}}const Qc=new class{constructor(){t(this,"sdkLoaded",!1),t(this,"loadPromise",null),t(this,"deferredInitBound",!1),t(this,"deferredInitTimer",null)}async loadSDK(){if(!this.sdkLoaded)return this.loadPromise||(this.loadPromise=new Promise(e=>{try{this.loadSDKByScript().then(async()=>{try{const t=window.YYSStatistics;if(t&&"function"==typeof t.init){return localStorage.getItem("YYS_DEVICE_ID")?(this.sdkLoaded=!0,void e()):(this.generateFallbackDeviceId(),this.sdkLoaded=!0,this.scheduleDeferredSDKInit(),void e())}this.generateFallbackDeviceId(),e()}catch(t){this.generateFallbackDeviceId(),e()}}).catch(t=>{this.generateFallbackDeviceId(),e()})}catch(t){this.generateFallbackDeviceId(),e()}})),this.loadPromise}scheduleDeferredSDKInit(){if(this.deferredInitBound)return;this.deferredInitBound=!0;const e=["pointerdown","touchstart","mousedown","keydown"],t=()=>{e.forEach(e=>{window.removeEventListener(e,r,!0)}),null!==this.deferredInitTimer&&(window.clearTimeout(this.deferredInitTimer),this.deferredInitTimer=null),this.deferredInitBound=!1},a=async()=>{try{const e=window.YYSStatistics;if(!e||"function"!=typeof e.init)return;const t=localStorage.getItem("YYS_DEVICE_ID")||"";await e.init({appId:"web-fingerprint"}),await this.waitForDeviceId(t),this.sdkLoaded=!0}catch(e){}},r=()=>{t(),this.deferredInitTimer=window.setTimeout(()=>{this.deferredInitTimer=null,a()},0)};e.forEach(e=>{window.addEventListener(e,r,!0)})}loadSDKByScript(){return new Promise((e,t)=>{try{if(window.YYSStatistics)return void e();const a=document.createElement("script");a.src=new URL("/js/yys-statistics-sdk.min.B7DrhTz1.js",import.meta.url).href,a.async=!0,a.onload=()=>{e()},a.onerror=e=>{t(new Error("Failed to load YYS SDK script"))},document.head.appendChild(a)}catch(a){t(a)}})}generateFallbackDeviceId(){try{if(localStorage.getItem("YYS_DEVICE_ID"))return;const e=Date.now().toString(36),t="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789",a=e+Array.from({length:32-e.length},()=>t.charAt(Math.floor(Math.random()*t.length))).join("");localStorage.setItem("YYS_DEVICE_ID",a),this.sdkLoaded=!0}catch{}}waitForDeviceId(e=""){return new Promise((t,a)=>{let r=0;const n=()=>{const i=localStorage.getItem("YYS_DEVICE_ID")||"";i&&i!==e?t():(r++,r>=30?a(new Error("Timeout waiting for device ID")):setTimeout(n,100))};n()})}getDeviceId(){try{return localStorage.getItem("YYS_DEVICE_ID")||""}catch{return""}}},Xc=()=>Qc.getDeviceId();var eu={};const tu=function(e){const t=[];let a=0;for(let r=0;r<e.length;r++){let n=e.charCodeAt(r);n<128?t[a++]=n:n<2048?(t[a++]=n>>6|192,t[a++]=63&n|128):55296==(64512&n)&&r+1<e.length&&56320==(64512&e.charCodeAt(r+1))?(n=65536+((1023&n)<<10)+(1023&e.charCodeAt(++r)),t[a++]=n>>18|240,t[a++]=n>>12&63|128,t[a++]=n>>6&63|128,t[a++]=63&n|128):(t[a++]=n>>12|224,t[a++]=n>>6&63|128,t[a++]=63&n|128)}return t},au={byteToCharMap_:null,charToByteMap_:null,byteToCharMapWebSafe_:null,charToByteMapWebSafe_:null,ENCODED_VALS_BASE:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",get ENCODED_VALS(){return this.ENCODED_VALS_BASE+"+/="},get ENCODED_VALS_WEBSAFE(){return this.ENCODED_VALS_BASE+"-_."},HAS_NATIVE_SUPPORT:"function"==typeof atob,encodeByteArray(e,t){if(!Array.isArray(e))throw Error("encodeByteArray takes an array as a parameter");this.init_();const a=t?this.byteToCharMapWebSafe_:this.byteToCharMap_,r=[];for(let n=0;n<e.length;n+=3){const t=e[n],i=n+1<e.length,o=i?e[n+1]:0,s=n+2<e.length,l=s?e[n+2]:0,c=t>>2,u=(3&t)<<4|o>>4;let d=(15&o)<<2|l>>6,p=63&l;s||(p=64,i||(d=64)),r.push(a[c],a[u],a[d],a[p])}return r.join("")},encodeString(e,t){return this.HAS_NATIVE_SUPPORT&&!t?btoa(e):this.encodeByteArray(tu(e),t)},decodeString(e,t){return this.HAS_NATIVE_SUPPORT&&!t?atob(e):function(e){const t=[];let a=0,r=0;for(;a<e.length;){const n=e[a++];if(n<128)t[r++]=String.fromCharCode(n);else if(n>191&&n<224){const i=e[a++];t[r++]=String.fromCharCode((31&n)<<6|63&i)}else if(n>239&&n<365){const i=((7&n)<<18|(63&e[a++])<<12|(63&e[a++])<<6|63&e[a++])-65536;t[r++]=String.fromCharCode(55296+(i>>10)),t[r++]=String.fromCharCode(56320+(1023&i))}else{const i=e[a++],o=e[a++];t[r++]=String.fromCharCode((15&n)<<12|(63&i)<<6|63&o)}}return t.join("")}(this.decodeStringToByteArray(e,t))},decodeStringToByteArray(e,t){this.init_();const a=t?this.charToByteMapWebSafe_:this.charToByteMap_,r=[];for(let n=0;n<e.length;){const t=a[e.charAt(n++)],i=n<e.length?a[e.charAt(n)]:0;++n;const o=n<e.length?a[e.charAt(n)]:64;++n;const s=n<e.length?a[e.charAt(n)]:64;if(++n,null==t||null==i||null==o||null==s)throw new ru;const l=t<<2|i>>4;if(r.push(l),64!==o){const e=i<<4&240|o>>2;if(r.push(e),64!==s){const e=o<<6&192|s;r.push(e)}}}return r},init_(){if(!this.byteToCharMap_){this.byteToCharMap_={},this.charToByteMap_={},this.byteToCharMapWebSafe_={},this.charToByteMapWebSafe_={};for(let e=0;e<this.ENCODED_VALS.length;e++)this.byteToCharMap_[e]=this.ENCODED_VALS.charAt(e),this.charToByteMap_[this.byteToCharMap_[e]]=e,this.byteToCharMapWebSafe_[e]=this.ENCODED_VALS_WEBSAFE.charAt(e),this.charToByteMapWebSafe_[this.byteToCharMapWebSafe_[e]]=e,e>=this.ENCODED_VALS_BASE.length&&(this.charToByteMap_[this.ENCODED_VALS_WEBSAFE.charAt(e)]=e,this.charToByteMapWebSafe_[this.ENCODED_VALS.charAt(e)]=e)}}};class ru extends Error{constructor(){super(...arguments),this.name="DecodeBase64StringError"}}const nu=function(e){return function(e){const t=tu(e);return au.encodeByteArray(t,!0)}(e).replace(/\./g,"")};const iu=()=>function(){if("undefined"!=typeof self)return self;if("undefined"!=typeof window)return window;if("undefined"!=typeof global)return global;throw new Error("Unable to locate global object.")}().__FIREBASE_DEFAULTS__,ou=()=>{if("undefined"==typeof document)return;let e;try{e=document.cookie.match(/__FIREBASE_DEFAULTS__=([^;]+)/)}catch(a){return}const t=e&&function(e){try{return au.decodeString(e,!0)}catch(a){}return null}(e[1]);return t&&JSON.parse(t)},su=()=>{try{return iu()||(()=>{if("undefined"==typeof process)return;const e=eu.__FIREBASE_DEFAULTS__;return e?JSON.parse(e):void 0})()||ou()}catch(e){return}},lu=()=>{var e;return null==(e=su())?void 0:e.config};class cu{constructor(){this.reject=()=>{},this.resolve=()=>{},this.promise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}wrapCallback(e){return(t,a)=>{t?this.reject(t):this.resolve(a),"function"==typeof e&&(this.promise.catch(()=>{}),1===e.length?e(t):e(t,a))}}}function uu(){try{return"object"==typeof indexedDB}catch(e){return!1}}function du(){return new Promise((e,t)=>{try{let a=!0;const r="validate-browser-context-for-indexeddb-analytics-module",n=self.indexedDB.open(r);n.onsuccess=()=>{n.result.close(),a||self.indexedDB.deleteDatabase(r),e(!0)},n.onupgradeneeded=()=>{a=!1},n.onerror=()=>{var e;t((null==(e=n.error)?void 0:e.message)||"")}}catch(a){t(a)}})}class pu extends Error{constructor(e,t,a){super(t),this.code=e,this.customData=a,this.name="FirebaseError",Object.setPrototypeOf(this,pu.prototype),Error.captureStackTrace&&Error.captureStackTrace(this,mu.prototype.create)}}class mu{constructor(e,t,a){this.service=e,this.serviceName=t,this.errors=a}create(e,...t){const a=t[0]||{},r=`${this.service}/${e}`,n=this.errors[e],i=n?function(e,t){return e.replace(hu,(e,a)=>{const r=t[a];return null!=r?String(r):`<${a}?>`})}(n,a):"Error",o=`${this.serviceName}: ${i} (${r}).`;return new pu(r,o,a)}}const hu=/\{\$([^}]+)}/g;function gu(e,t){if(e===t)return!0;const a=Object.keys(e),r=Object.keys(t);for(const n of a){if(!r.includes(n))return!1;const a=e[n],i=t[n];if(fu(a)&&fu(i)){if(!gu(a,i))return!1}else if(a!==i)return!1}for(const n of r)if(!a.includes(n))return!1;return!0}function fu(e){return null!==e&&"object"==typeof e}function vu(e,t=1e3,a=2){const r=t*Math.pow(a,e),n=Math.round(.5*r*(Math.random()-.5)*2);return Math.min(144e5,r+n)}function yu(e){return e&&e._delegate?e._delegate:e}class bu{constructor(e,t,a){this.name=e,this.instanceFactory=t,this.type=a,this.multipleInstances=!1,this.serviceProps={},this.instantiationMode="LAZY",this.onInstanceCreated=null}setInstantiationMode(e){return this.instantiationMode=e,this}setMultipleInstances(e){return this.multipleInstances=e,this}setServiceProps(e){return this.serviceProps=e,this}setInstanceCreatedCallback(e){return this.onInstanceCreated=e,this}}const wu="[DEFAULT]";class Cu{constructor(e,t){this.name=e,this.container=t,this.component=null,this.instances=new Map,this.instancesDeferred=new Map,this.instancesOptions=new Map,this.onInitCallbacks=new Map}get(e){const t=this.normalizeInstanceIdentifier(e);if(!this.instancesDeferred.has(t)){const e=new cu;if(this.instancesDeferred.set(t,e),this.isInitialized(t)||this.shouldAutoInitialize())try{const a=this.getOrInitializeService({instanceIdentifier:t});a&&e.resolve(a)}catch(a){}}return this.instancesDeferred.get(t).promise}getImmediate(e){const t=this.normalizeInstanceIdentifier(null==e?void 0:e.identifier),a=(null==e?void 0:e.optional)??!1;if(!this.isInitialized(t)&&!this.shouldAutoInitialize()){if(a)return null;throw Error(`Service ${this.name} is not available`)}try{return this.getOrInitializeService({instanceIdentifier:t})}catch(r){if(a)return null;throw r}}getComponent(){return this.component}setComponent(e){if(e.name!==this.name)throw Error(`Mismatching Component ${e.name} for Provider ${this.name}.`);if(this.component)throw Error(`Component for ${this.name} has already been provided`);if(this.component=e,this.shouldAutoInitialize()){if(function(e){return"EAGER"===e.instantiationMode}(e))try{this.getOrInitializeService({instanceIdentifier:wu})}catch(t){}for(const[e,a]of this.instancesDeferred.entries()){const r=this.normalizeInstanceIdentifier(e);try{const e=this.getOrInitializeService({instanceIdentifier:r});a.resolve(e)}catch(t){}}}}clearInstance(e=wu){this.instancesDeferred.delete(e),this.instancesOptions.delete(e),this.instances.delete(e)}async delete(){const e=Array.from(this.instances.values());await Promise.all([...e.filter(e=>"INTERNAL"in e).map(e=>e.INTERNAL.delete()),...e.filter(e=>"_delete"in e).map(e=>e._delete())])}isComponentSet(){return null!=this.component}isInitialized(e=wu){return this.instances.has(e)}getOptions(e=wu){return this.instancesOptions.get(e)||{}}initialize(e={}){const{options:t={}}=e,a=this.normalizeInstanceIdentifier(e.instanceIdentifier);if(this.isInitialized(a))throw Error(`${this.name}(${a}) has already been initialized`);if(!this.isComponentSet())throw Error(`Component ${this.name} has not been registered yet`);const r=this.getOrInitializeService({instanceIdentifier:a,options:t});for(const[n,i]of this.instancesDeferred.entries()){a===this.normalizeInstanceIdentifier(n)&&i.resolve(r)}return r}onInit(e,t){const a=this.normalizeInstanceIdentifier(t),r=this.onInitCallbacks.get(a)??new Set;r.add(e),this.onInitCallbacks.set(a,r);const n=this.instances.get(a);return n&&e(n,a),()=>{r.delete(e)}}invokeOnInitCallbacks(e,t){const a=this.onInitCallbacks.get(t);if(a)for(const r of a)try{r(e,t)}catch{}}getOrInitializeService({instanceIdentifier:e,options:t={}}){let a=this.instances.get(e);if(!a&&this.component&&(a=this.component.instanceFactory(this.container,{instanceIdentifier:(r=e,r===wu?void 0:r),options:t}),this.instances.set(e,a),this.instancesOptions.set(e,t),this.invokeOnInitCallbacks(a,e),this.component.onInstanceCreated))try{this.component.onInstanceCreated(this.container,e,a)}catch{}var r;return a||null}normalizeInstanceIdentifier(e=wu){return this.component?this.component.multipleInstances?e:wu:e}shouldAutoInitialize(){return!!this.component&&"EXPLICIT"!==this.component.instantiationMode}}class ku{constructor(e){this.name=e,this.providers=new Map}addComponent(e){const t=this.getProvider(e.name);if(t.isComponentSet())throw new Error(`Component ${e.name} has already been registered with ${this.name}`);t.setComponent(e)}addOrOverwriteComponent(e){this.getProvider(e.name).isComponentSet()&&this.providers.delete(e.name),this.addComponent(e)}getProvider(e){if(this.providers.has(e))return this.providers.get(e);const t=new Cu(e,this);return this.providers.set(e,t),t}getProviders(){return Array.from(this.providers.values())}}var Au,xu;(xu=Au||(Au={}))[xu.DEBUG=0]="DEBUG",xu[xu.VERBOSE=1]="VERBOSE",xu[xu.INFO=2]="INFO",xu[xu.WARN=3]="WARN",xu[xu.ERROR=4]="ERROR",xu[xu.SILENT=5]="SILENT";const Pu={debug:Au.DEBUG,verbose:Au.VERBOSE,info:Au.INFO,warn:Au.WARN,error:Au.ERROR,silent:Au.SILENT},Su=Au.INFO,_u={[Au.DEBUG]:"log",[Au.VERBOSE]:"log",[Au.INFO]:"info",[Au.WARN]:"warn",[Au.ERROR]:"error"},Iu=(e,t,...a)=>{if(t<e.logLevel)return;(new Date).toISOString();if(!_u[t])throw new Error(`Attempted to log a message with an invalid logType (value: ${t})`)};class Tu{constructor(e){this.name=e,this._logLevel=Su,this._logHandler=Iu,this._userLogHandler=null}get logLevel(){return this._logLevel}set logLevel(e){if(!(e in Au))throw new TypeError(`Invalid value "${e}" assigned to \`logLevel\``);this._logLevel=e}setLogLevel(e){this._logLevel="string"==typeof e?Pu[e]:e}get logHandler(){return this._logHandler}set logHandler(e){if("function"!=typeof e)throw new TypeError("Value assigned to `logHandler` must be a function");this._logHandler=e}get userLogHandler(){return this._userLogHandler}set userLogHandler(e){this._userLogHandler=e}debug(...e){this._userLogHandler&&this._userLogHandler(this,Au.DEBUG,...e),this._logHandler(this,Au.DEBUG,...e)}log(...e){this._userLogHandler&&this._userLogHandler(this,Au.VERBOSE,...e),this._logHandler(this,Au.VERBOSE,...e)}info(...e){this._userLogHandler&&this._userLogHandler(this,Au.INFO,...e),this._logHandler(this,Au.INFO,...e)}warn(...e){this._userLogHandler&&this._userLogHandler(this,Au.WARN,...e),this._logHandler(this,Au.WARN,...e)}error(...e){this._userLogHandler&&this._userLogHandler(this,Au.ERROR,...e),this._logHandler(this,Au.ERROR,...e)}}let zu,Eu;const Du=new WeakMap,Ru=new WeakMap,Mu=new WeakMap,ju=new WeakMap,qu=new WeakMap;let Lu={get(e,t,a){if(e instanceof IDBTransaction){if("done"===t)return Ru.get(e);if("objectStoreNames"===t)return e.objectStoreNames||Mu.get(e);if("store"===t)return a.objectStoreNames[1]?void 0:a.objectStore(a.objectStoreNames[0])}return Uu(e[t])},set:(e,t,a)=>(e[t]=a,!0),has:(e,t)=>e instanceof IDBTransaction&&("done"===t||"store"===t)||t in e};function Ou(e){return e!==IDBDatabase.prototype.transaction||"objectStoreNames"in IDBTransaction.prototype?(Eu||(Eu=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])).includes(e)?function(...t){return e.apply(Fu(this),t),Uu(Du.get(this))}:function(...t){return Uu(e.apply(Fu(this),t))}:function(t,...a){const r=e.call(Fu(this),t,...a);return Mu.set(r,t.sort?t.sort():[t]),Uu(r)}}function Nu(e){return"function"==typeof e?Ou(e):(e instanceof IDBTransaction&&function(e){if(Ru.has(e))return;const t=new Promise((t,a)=>{const r=()=>{e.removeEventListener("complete",n),e.removeEventListener("error",i),e.removeEventListener("abort",i)},n=()=>{t(),r()},i=()=>{a(e.error||new DOMException("AbortError","AbortError")),r()};e.addEventListener("complete",n),e.addEventListener("error",i),e.addEventListener("abort",i)});Ru.set(e,t)}(e),t=e,(zu||(zu=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction])).some(e=>t instanceof e)?new Proxy(e,Lu):e);var t}function Uu(e){if(e instanceof IDBRequest)return function(e){const t=new Promise((t,a)=>{const r=()=>{e.removeEventListener("success",n),e.removeEventListener("error",i)},n=()=>{t(Uu(e.result)),r()},i=()=>{a(e.error),r()};e.addEventListener("success",n),e.addEventListener("error",i)});return t.then(t=>{t instanceof IDBCursor&&Du.set(t,e)}).catch(()=>{}),qu.set(t,e),t}(e);if(ju.has(e))return ju.get(e);const t=Nu(e);return t!==e&&(ju.set(e,t),qu.set(t,e)),t}const Fu=e=>qu.get(e);function Bu(e,t,{blocked:a,upgrade:r,blocking:n,terminated:i}={}){const o=indexedDB.open(e,t),s=Uu(o);return r&&o.addEventListener("upgradeneeded",e=>{r(Uu(o.result),e.oldVersion,e.newVersion,Uu(o.transaction),e)}),a&&o.addEventListener("blocked",e=>a(e.oldVersion,e.newVersion,e)),s.then(e=>{i&&e.addEventListener("close",()=>i()),n&&e.addEventListener("versionchange",e=>n(e.oldVersion,e.newVersion,e))}).catch(()=>{}),s}const Wu=["get","getKey","getAll","getAllKeys","count"],Vu=["put","add","delete","clear"],Hu=new Map;function Gu(e,t){if(!(e instanceof IDBDatabase)||t in e||"string"!=typeof t)return;if(Hu.get(t))return Hu.get(t);const a=t.replace(/FromIndex$/,""),r=t!==a,n=Vu.includes(a);if(!(a in(r?IDBIndex:IDBObjectStore).prototype)||!n&&!Wu.includes(a))return;const i=async function(e,...t){const i=this.transaction(e,n?"readwrite":"readonly");let o=i.store;return r&&(o=o.index(t.shift())),(await Promise.all([o[a](...t),n&&i.done]))[0]};return Hu.set(t,i),i}Lu=(e=>({...e,get:(t,a,r)=>Gu(t,a)||e.get(t,a,r),has:(t,a)=>!!Gu(t,a)||e.has(t,a)}))(Lu);class Yu{constructor(e){this.container=e}getPlatformInfoString(){return this.container.getProviders().map(e=>{if(function(e){const t=e.getComponent();return"VERSION"===(null==t?void 0:t.type)}(e)){const t=e.getImmediate();return`${t.library}/${t.version}`}return null}).filter(e=>e).join(" ")}}const $u="@firebase/app",Ku="0.14.13",Zu=new Tu("@firebase/app"),Ju="@firebase/app-compat",Qu="@firebase/analytics-compat",Xu="@firebase/analytics",ed="@firebase/app-check-compat",td="@firebase/app-check",ad="@firebase/auth",rd="@firebase/auth-compat",nd="@firebase/database",id="@firebase/data-connect",od="@firebase/database-compat",sd="@firebase/functions",ld="@firebase/functions-compat",cd="@firebase/installations",ud="@firebase/installations-compat",dd="@firebase/messaging",pd="@firebase/messaging-compat",md="@firebase/performance",hd="@firebase/performance-compat",gd="@firebase/remote-config",fd="@firebase/remote-config-compat",vd="@firebase/storage",yd="@firebase/storage-compat",bd="@firebase/firestore",wd="@firebase/ai",Cd="@firebase/firestore-compat",kd="firebase",Ad="[DEFAULT]",xd={[$u]:"fire-core",[Ju]:"fire-core-compat",[Xu]:"fire-analytics",[Qu]:"fire-analytics-compat",[td]:"fire-app-check",[ed]:"fire-app-check-compat",[ad]:"fire-auth",[rd]:"fire-auth-compat",[nd]:"fire-rtdb",[id]:"fire-data-connect",[od]:"fire-rtdb-compat",[sd]:"fire-fn",[ld]:"fire-fn-compat",[cd]:"fire-iid",[ud]:"fire-iid-compat",[dd]:"fire-fcm",[pd]:"fire-fcm-compat",[md]:"fire-perf",[hd]:"fire-perf-compat",[gd]:"fire-rc",[fd]:"fire-rc-compat",[vd]:"fire-gcs",[yd]:"fire-gcs-compat",[bd]:"fire-fst",[Cd]:"fire-fst-compat",[wd]:"fire-vertex","fire-js":"fire-js",[kd]:"fire-js-all"},Pd=new Map,Sd=new Map,_d=new Map;function Id(e,t){try{e.container.addComponent(t)}catch(a){Zu.debug(`Component ${t.name} failed to register with FirebaseApp ${e.name}`,a)}}function Td(e){const t=e.name;if(_d.has(t))return Zu.debug(`There were multiple attempts to register component ${t}.`),!1;_d.set(t,e);for(const a of Pd.values())Id(a,e);for(const a of Sd.values())Id(a,e);return!0}function zd(e,t){const a=e.container.getProvider("heartbeat").getImmediate({optional:!0});return a&&a.triggerHeartbeat(),e.container.getProvider(t)}const Ed=new mu("app","Firebase",{"no-app":"No Firebase App '{$appName}' has been created - call initializeApp() first","bad-app-name":"Illegal App name: '{$appName}'","duplicate-app":"Firebase App named '{$appName}' already exists with different options or config","app-deleted":"Firebase App named '{$appName}' already deleted","server-app-deleted":"Firebase Server App has been deleted","no-options":"Need to provide options, when not being deployed to hosting via source.","invalid-app-argument":"firebase.{$appName}() takes either no argument or a Firebase App instance.","invalid-log-argument":"First argument to `onLog` must be null or a function.","idb-open":"Error thrown when opening IndexedDB. Original error: {$originalErrorMessage}.","idb-get":"Error thrown when reading from IndexedDB. Original error: {$originalErrorMessage}.","idb-set":"Error thrown when writing to IndexedDB. Original error: {$originalErrorMessage}.","idb-delete":"Error thrown when deleting from IndexedDB. Original error: {$originalErrorMessage}.","finalization-registry-not-supported":"FirebaseServerApp deleteOnDeref field defined but the JS runtime does not support FinalizationRegistry.","invalid-server-app-environment":"FirebaseServerApp is not for use in browser environments."});class Dd{constructor(e,t,a){this._isDeleted=!1,this._options={...e},this._config={...t},this._name=t.name,this._automaticDataCollectionEnabled=t.automaticDataCollectionEnabled,this._container=a,this.container.addComponent(new bu("app",()=>this,"PUBLIC"))}get automaticDataCollectionEnabled(){return this.checkDestroyed(),this._automaticDataCollectionEnabled}set automaticDataCollectionEnabled(e){this.checkDestroyed(),this._automaticDataCollectionEnabled=e}get name(){return this.checkDestroyed(),this._name}get options(){return this.checkDestroyed(),this._options}get config(){return this.checkDestroyed(),this._config}get container(){return this._container}get isDeleted(){return this._isDeleted}set isDeleted(e){this._isDeleted=e}checkDestroyed(){if(this.isDeleted)throw Ed.create("app-deleted",{appName:this._name})}}function Rd(e,t={}){let a=e;if("object"!=typeof t){t={name:t}}const r={name:Ad,automaticDataCollectionEnabled:!0,...t},n=r.name;if("string"!=typeof n||!n)throw Ed.create("bad-app-name",{appName:String(n)});if(a||(a=lu()),!a)throw Ed.create("no-options");const i=Pd.get(n);if(i){if(gu(a,i.options)&&gu(r,i.config))return i;throw Ed.create("duplicate-app",{appName:n})}const o=new ku(n);for(const l of _d.values())o.addComponent(l);const s=new Dd(a,r,o);return Pd.set(n,s),s}function Md(e,t,a){let r=xd[e]??e;a&&(r+=`-${a}`);const n=r.match(/\s|\//),i=t.match(/\s|\//);if(n||i){const e=[`Unable to register library "${r}" with version "${t}":`];return n&&e.push(`library name "${r}" contains illegal characters (whitespace or "/")`),n&&i&&e.push("and"),i&&e.push(`version name "${t}" contains illegal characters (whitespace or "/")`),void Zu.warn(e.join(" "))}Td(new bu(`${r}-version`,()=>({library:r,version:t}),"VERSION"))}const jd="firebase-heartbeat-store";let qd=null;function Ld(){return qd||(qd=Bu("firebase-heartbeat-database",1,{upgrade:(e,t)=>{if(0===t)try{e.createObjectStore(jd)}catch(a){}}}).catch(e=>{throw Ed.create("idb-open",{originalErrorMessage:e.message})})),qd}async function Od(e,t){try{const a=(await Ld()).transaction(jd,"readwrite"),r=a.objectStore(jd);await r.put(t,Nd(e)),await a.done}catch(a){if(a instanceof pu)Zu.warn(a.message);else{const e=Ed.create("idb-set",{originalErrorMessage:null==a?void 0:a.message});Zu.warn(e.message)}}}function Nd(e){return`${e.name}!${e.options.appId}`}class Ud{constructor(e){this.container=e,this._heartbeatsCache=null;const t=this.container.getProvider("app").getImmediate();this._storage=new Bd(t),this._heartbeatsCachePromise=this._storage.read().then(e=>(this._heartbeatsCache=e,e))}async triggerHeartbeat(){var e,t;try{const a=this.container.getProvider("platform-logger").getImmediate().getPlatformInfoString(),r=Fd();if(null==(null==(e=this._heartbeatsCache)?void 0:e.heartbeats)&&(this._heartbeatsCache=await this._heartbeatsCachePromise,null==(null==(t=this._heartbeatsCache)?void 0:t.heartbeats)))return;if(this._heartbeatsCache.lastSentHeartbeatDate===r||this._heartbeatsCache.heartbeats.some(e=>e.date===r))return;if(this._heartbeatsCache.heartbeats.push({date:r,agent:a}),this._heartbeatsCache.heartbeats.length>30){const e=function(e){if(0===e.length)return-1;let t=0,a=e[0].date;for(let r=1;r<e.length;r++)e[r].date<a&&(a=e[r].date,t=r);return t}(this._heartbeatsCache.heartbeats);this._heartbeatsCache.heartbeats.splice(e,1)}return this._storage.overwrite(this._heartbeatsCache)}catch(a){Zu.warn(a)}}async getHeartbeatsHeader(){var e;try{if(null===this._heartbeatsCache&&await this._heartbeatsCachePromise,null==(null==(e=this._heartbeatsCache)?void 0:e.heartbeats)||0===this._heartbeatsCache.heartbeats.length)return"";const t=Fd(),{heartbeatsToSend:a,unsentEntries:r}=function(e,t=1024){const a=[];let r=e.slice();for(const n of e){const e=a.find(e=>e.agent===n.agent);if(e){if(e.dates.push(n.date),Wd(a)>t){e.dates.pop();break}}else if(a.push({agent:n.agent,dates:[n.date]}),Wd(a)>t){a.pop();break}r=r.slice(1)}return{heartbeatsToSend:a,unsentEntries:r}}(this._heartbeatsCache.heartbeats),n=nu(JSON.stringify({version:2,heartbeats:a}));return this._heartbeatsCache.lastSentHeartbeatDate=t,r.length>0?(this._heartbeatsCache.heartbeats=r,await this._storage.overwrite(this._heartbeatsCache)):(this._heartbeatsCache.heartbeats=[],this._storage.overwrite(this._heartbeatsCache)),n}catch(t){return Zu.warn(t),""}}}function Fd(){return(new Date).toISOString().substring(0,10)}class Bd{constructor(e){this.app=e,this._canUseIndexedDBPromise=this.runIndexedDBEnvironmentCheck()}async runIndexedDBEnvironmentCheck(){return!!uu()&&du().then(()=>!0).catch(()=>!1)}async read(){if(await this._canUseIndexedDBPromise){const e=await async function(e){try{const t=(await Ld()).transaction(jd),a=await t.objectStore(jd).get(Nd(e));return await t.done,a}catch(t){if(t instanceof pu)Zu.warn(t.message);else{const e=Ed.create("idb-get",{originalErrorMessage:null==t?void 0:t.message});Zu.warn(e.message)}}}(this.app);return(null==e?void 0:e.heartbeats)?e:{heartbeats:[]}}return{heartbeats:[]}}async overwrite(e){if(await this._canUseIndexedDBPromise){const t=await this.read();return Od(this.app,{lastSentHeartbeatDate:e.lastSentHeartbeatDate??t.lastSentHeartbeatDate,heartbeats:e.heartbeats})}}async add(e){if(await this._canUseIndexedDBPromise){const t=await this.read();return Od(this.app,{lastSentHeartbeatDate:e.lastSentHeartbeatDate??t.lastSentHeartbeatDate,heartbeats:[...t.heartbeats,...e.heartbeats]})}}}function Wd(e){return nu(JSON.stringify({version:2,heartbeats:e})).length}var Vd;Vd="",Td(new bu("platform-logger",e=>new Yu(e),"PRIVATE")),Td(new bu("heartbeat",e=>new Ud(e),"PRIVATE")),Md($u,Ku,Vd),Md($u,Ku,"esm2020"),Md("fire-js","");Md("firebase","12.14.0","app");const Hd="@firebase/installations",Gd="0.6.22",Yd=1e4,$d=`w:${Gd}`,Kd="FIS_v2",Zd=36e5,Jd=new mu("installations","Installations",{"missing-app-config-values":'Missing App configuration value: "{$valueName}"',"not-registered":"Firebase Installation is not registered.","installation-not-found":"Firebase Installation not found.","request-failed":'{$requestName} request failed with error "{$serverCode} {$serverStatus}: {$serverMessage}"',"app-offline":"Could not process request. Application offline.","delete-pending-registration":"Can't delete installation while there is a pending registration request."});function Qd(e){return e instanceof pu&&e.code.includes("request-failed")}function Xd({projectId:e}){return`https://firebaseinstallations.googleapis.com/v1/projects/${e}/installations`}function ep(e){return{token:e.token,requestStatus:2,expiresIn:(t=e.expiresIn,Number(t.replace("s","000"))),creationTime:Date.now()};var t}async function tp(e,t){const a=(await t.json()).error;return Jd.create("request-failed",{requestName:e,serverCode:a.code,serverMessage:a.message,serverStatus:a.status})}function ap({apiKey:e}){return new Headers({"Content-Type":"application/json",Accept:"application/json","x-goog-api-key":e})}function rp(e,{refreshToken:t}){const a=ap(e);return a.append("Authorization",function(e){return`${Kd} ${e}`}(t)),a}async function np(e){const t=await e();return t.status>=500&&t.status<600?e():t}function ip(e){return new Promise(t=>{setTimeout(t,e)})}const op=/^[cdef][\w-]{21}$/;function sp(){try{const e=new Uint8Array(17);(self.crypto||self.msCrypto).getRandomValues(e),e[0]=112+e[0]%16;const t=function(e){const t=(a=e,btoa(String.fromCharCode(...a)).replace(/\+/g,"-").replace(/\//g,"_"));var a;return t.substr(0,22)}(e);return op.test(t)?t:""}catch{return""}}function lp(e){return`${e.appName}!${e.appId}`}const cp=new Map;function up(e,t){const a=lp(e);dp(a,t),function(e,t){const a=function(){!pp&&"BroadcastChannel"in self&&(pp=new BroadcastChannel("[Firebase] FID Change"),pp.onmessage=e=>{dp(e.data.key,e.data.fid)});return pp}();a&&a.postMessage({key:e,fid:t});0===cp.size&&pp&&(pp.close(),pp=null)}(a,t)}function dp(e,t){const a=cp.get(e);if(a)for(const r of a)r(t)}let pp=null;const mp="firebase-installations-store";let hp=null;function gp(){return hp||(hp=Bu("firebase-installations-database",1,{upgrade:(e,t)=>{if(0===t)e.createObjectStore(mp)}})),hp}async function fp(e,t){const a=lp(e),r=(await gp()).transaction(mp,"readwrite"),n=r.objectStore(mp),i=await n.get(a);return await n.put(t,a),await r.done,i&&i.fid===t.fid||up(e,t.fid),t}async function vp(e){const t=lp(e),a=(await gp()).transaction(mp,"readwrite");await a.objectStore(mp).delete(t),await a.done}async function yp(e,t){const a=lp(e),r=(await gp()).transaction(mp,"readwrite"),n=r.objectStore(mp),i=await n.get(a),o=t(i);return void 0===o?await n.delete(a):await n.put(o,a),await r.done,!o||i&&i.fid===o.fid||up(e,o.fid),o}async function bp(e){let t;const a=await yp(e.appConfig,a=>{const r=function(e){const t=e||{fid:sp(),registrationStatus:0};return kp(t)}(a),n=function(e,t){if(0===t.registrationStatus){if(!navigator.onLine){return{installationEntry:t,registrationPromise:Promise.reject(Jd.create("app-offline"))}}const a={fid:t.fid,registrationStatus:1,registrationTime:Date.now()},r=async function(e,t){try{const a=await async function({appConfig:e,heartbeatServiceProvider:t},{fid:a}){const r=Xd(e),n=ap(e),i=t.getImmediate({optional:!0});if(i){const e=await i.getHeartbeatsHeader();e&&n.append("x-firebase-client",e)}const o={fid:a,authVersion:Kd,appId:e.appId,sdkVersion:$d},s={method:"POST",headers:n,body:JSON.stringify(o)},l=await np(()=>fetch(r,s));if(l.ok){const e=await l.json();return{fid:e.fid||a,registrationStatus:2,refreshToken:e.refreshToken,authToken:ep(e.authToken)}}throw await tp("Create Installation",l)}(e,t);return fp(e.appConfig,a)}catch(a){throw Qd(a)&&409===a.customData.serverCode?await vp(e.appConfig):await fp(e.appConfig,{fid:t.fid,registrationStatus:0}),a}}(e,a);return{installationEntry:a,registrationPromise:r}}return 1===t.registrationStatus?{installationEntry:t,registrationPromise:wp(e)}:{installationEntry:t}}(e,r);return t=n.registrationPromise,n.installationEntry});return""===a.fid?{installationEntry:await t}:{installationEntry:a,registrationPromise:t}}async function wp(e){let t=await Cp(e.appConfig);for(;1===t.registrationStatus;)await ip(100),t=await Cp(e.appConfig);if(0===t.registrationStatus){const{installationEntry:t,registrationPromise:a}=await bp(e);return a||t}return t}function Cp(e){return yp(e,e=>{if(!e)throw Jd.create("installation-not-found");return kp(e)})}function kp(e){return 1===(t=e).registrationStatus&&t.registrationTime+Yd<Date.now()?{fid:e.fid,registrationStatus:0}:e;var t}async function Ap({appConfig:e,heartbeatServiceProvider:t},a){const r=function(e,{fid:t}){return`${Xd(e)}/${t}/authTokens:generate`}(e,a),n=rp(e,a),i=t.getImmediate({optional:!0});if(i){const e=await i.getHeartbeatsHeader();e&&n.append("x-firebase-client",e)}const o={installation:{sdkVersion:$d,appId:e.appId}},s={method:"POST",headers:n,body:JSON.stringify(o)},l=await np(()=>fetch(r,s));if(l.ok){return ep(await l.json())}throw await tp("Generate Auth Token",l)}async function xp(e,t=!1){let a;const r=await yp(e.appConfig,r=>{if(!Sp(r))throw Jd.create("not-registered");const n=r.authToken;if(!t&&function(e){return 2===e.requestStatus&&!function(e){const t=Date.now();return t<e.creationTime||e.creationTime+e.expiresIn<t+Zd}(e)}(n))return r;if(1===n.requestStatus)return a=async function(e,t){let a=await Pp(e.appConfig);for(;1===a.authToken.requestStatus;)await ip(100),a=await Pp(e.appConfig);const r=a.authToken;return 0===r.requestStatus?xp(e,t):r}(e,t),r;{if(!navigator.onLine)throw Jd.create("app-offline");const t=function(e){const t={requestStatus:1,requestTime:Date.now()};return{...e,authToken:t}}(r);return a=async function(e,t){try{const a=await Ap(e,t),r={...t,authToken:a};return await fp(e.appConfig,r),a}catch(a){if(!Qd(a)||401!==a.customData.serverCode&&404!==a.customData.serverCode){const a={...t,authToken:{requestStatus:0}};await fp(e.appConfig,a)}else await vp(e.appConfig);throw a}}(e,t),t}});return a?await a:r.authToken}function Pp(e){return yp(e,e=>{if(!Sp(e))throw Jd.create("not-registered");const t=e.authToken;return 1===(a=t).requestStatus&&a.requestTime+Yd<Date.now()?{...e,authToken:{requestStatus:0}}:e;var a})}function Sp(e){return void 0!==e&&2===e.registrationStatus}async function _p(e,t=!1){const a=e;await async function(e){const{registrationPromise:t}=await bp(e);t&&await t}(a);return(await xp(a,t)).token}function Ip(e){return Jd.create("missing-app-config-values",{valueName:e})}const Tp="installations",zp=e=>{const t=zd(e.getProvider("app").getImmediate(),Tp).getImmediate();return{getId:()=>async function(e){const t=e,{installationEntry:a,registrationPromise:r}=await bp(t);return r?r.catch(console.error):xp(t).catch(console.error),a.fid}(t),getToken:e=>_p(t,e)}};Td(new bu(Tp,e=>{const t=e.getProvider("app").getImmediate(),a=function(e){if(!e||!e.options)throw Ip("App Configuration");if(!e.name)throw Ip("App Name");const t=["projectId","apiKey","appId"];for(const a of t)if(!e.options[a])throw Ip(a);return{appName:e.name,projectId:e.options.projectId,apiKey:e.options.apiKey,appId:e.options.appId}}(t);return{app:t,appConfig:a,heartbeatServiceProvider:zd(t,"heartbeat"),_delete:()=>Promise.resolve()}},"PUBLIC")),Td(new bu("installations-internal",zp,"PRIVATE")),Md(Hd,Gd),Md(Hd,Gd,"esm2020");const Ep="analytics",Dp="https://www.googletagmanager.com/gtag/js",Rp=new Tu("@firebase/analytics"),Mp=new mu("analytics","Analytics",{"already-exists":"A Firebase Analytics instance with the appId {$id}  already exists. Only one Firebase Analytics instance can be created for each appId.","already-initialized":"initializeAnalytics() cannot be called again with different options than those it was initially called with. It can be called again with the same options to return the existing instance, or getAnalytics() can be used to get a reference to the already-initialized instance.","already-initialized-settings":"Firebase Analytics has already been initialized.settings() must be called before initializing any Analytics instanceor it will have no effect.","interop-component-reg-failed":"Firebase Analytics Interop Component failed to instantiate: {$reason}","invalid-analytics-context":"Firebase Analytics is not supported in this environment. Wrap initialization of analytics in analytics.isSupported() to prevent initialization in unsupported environments. Details: {$errorInfo}","indexeddb-unavailable":"IndexedDB unavailable or restricted in this environment. Wrap initialization of analytics in analytics.isSupported() to prevent initialization in unsupported environments. Details: {$errorInfo}","fetch-throttle":"The config fetch request timed out while in an exponential backoff state. Unix timestamp in milliseconds when fetch request throttling ends: {$throttleEndTimeMillis}.","config-fetch-failed":"Dynamic config fetch failed: [{$httpStatus}] {$responseMessage}","no-api-key":'The "apiKey" field is empty in the local Firebase config. Firebase Analytics requires this field tocontain a valid API key.',"no-app-id":'The "appId" field is empty in the local Firebase config. Firebase Analytics requires this field tocontain a valid app ID.',"no-client-id":'The "client_id" field is empty.',"invalid-gtag-resource":"Trusted Types detected an invalid gtag resource: {$gtagURL}."});function jp(e){if(!e.startsWith(Dp)){const t=Mp.create("invalid-gtag-resource",{gtagURL:e});return Rp.warn(t.message),""}return e}function qp(e){return Promise.all(e.map(e=>e.catch(e=>e)))}function Lp(e,t){const a=function(e,t){let a;return window.trustedTypes&&(a=window.trustedTypes.createPolicy(e,t)),a}("firebase-js-sdk-policy",{createScriptURL:jp}),r=document.createElement("script"),n=`${Dp}?l=${e}&id=${t}`;r.src=a?null==a?void 0:a.createScriptURL(n):n,r.async=!0,document.head.appendChild(r)}function Op(e,t,a,r){return async function(n,...i){try{if("event"===n){const[r,n]=i;await async function(e,t,a,r,n){try{let i=[];if(n&&n.send_to){let e=n.send_to;Array.isArray(e)||(e=[e]);const r=await qp(a);for(const a of e){const e=r.find(e=>e.measurementId===a),n=e&&t[e.appId];if(!n){i=[];break}i.push(n)}}0===i.length&&(i=Object.values(t)),await Promise.all(i),e("event",r,n||{})}catch(i){Rp.error(i)}}(e,t,a,r,n)}else if("config"===n){const[n,o]=i;await async function(e,t,a,r,n,i){const o=r[n];try{if(o)await t[o];else{const e=(await qp(a)).find(e=>e.measurementId===n);e&&await t[e.appId]}}catch(s){Rp.error(s)}e("config",n,i)}(e,t,a,r,n,o)}else if("consent"===n){const[t,a]=i;e("consent",t,a)}else if("get"===n){const[t,a,r]=i;e("get",t,a,r)}else if("set"===n){const[t]=i;e("set",t)}else e(n,...i)}catch(o){Rp.error(o)}}}const Np=new class{constructor(e={},t=1e3){this.throttleMetadata=e,this.intervalMillis=t}getThrottleMetadata(e){return this.throttleMetadata[e]}setThrottleMetadata(e,t){this.throttleMetadata[e]=t}deleteThrottleMetadata(e){delete this.throttleMetadata[e]}};function Up(e){return new Headers({Accept:"application/json","x-goog-api-key":e})}async function Fp(e,t=Np,a){const{appId:r,apiKey:n,measurementId:i}=e.options;if(!r)throw Mp.create("no-app-id");if(!n){if(i)return{measurementId:i,appId:r};throw Mp.create("no-api-key")}const o=t.getThrottleMetadata(r)||{backoffCount:0,throttleEndTimeMillis:Date.now()},s=new Wp;return setTimeout(async()=>{s.abort()},6e4),Bp({appId:r,apiKey:n,measurementId:i},o,s,t)}async function Bp(e,{throttleEndTimeMillis:t,backoffCount:a},r,n=Np){var i;const{appId:o,measurementId:s}=e;try{await function(e,t){return new Promise((a,r)=>{const n=Math.max(t-Date.now(),0),i=setTimeout(a,n);e.addEventListener(()=>{clearTimeout(i),r(Mp.create("fetch-throttle",{throttleEndTimeMillis:t}))})})}(r,t)}catch(l){if(s)return Rp.warn(`Timed out fetching this Firebase app's measurement ID from the server. Falling back to the measurement ID ${s} provided in the "measurementId" field in the local Firebase config. [${null==l?void 0:l.message}]`),{appId:o,measurementId:s};throw l}try{const t=await async function(e){var t;const{appId:a,apiKey:r}=e,n={method:"GET",headers:Up(r)},i="https://firebase.googleapis.com/v1alpha/projects/-/apps/{app-id}/webConfig".replace("{app-id}",a),o=await fetch(i,n);if(200!==o.status&&304!==o.status){let e="";try{const a=await o.json();(null==(t=a.error)?void 0:t.message)&&(e=a.error.message)}catch(s){}throw Mp.create("config-fetch-failed",{httpStatus:o.status,responseMessage:e})}return o.json()}(e);return n.deleteThrottleMetadata(o),t}catch(l){const t=l;if(!function(e){if(!(e instanceof pu&&e.customData))return!1;const t=Number(e.customData.httpStatus);return 429===t||500===t||503===t||504===t}(t)){if(n.deleteThrottleMetadata(o),s)return Rp.warn(`Failed to fetch this Firebase app's measurement ID from the server. Falling back to the measurement ID ${s} provided in the "measurementId" field in the local Firebase config. [${null==t?void 0:t.message}]`),{appId:o,measurementId:s};throw l}const c=503===Number(null==(i=null==t?void 0:t.customData)?void 0:i.httpStatus)?vu(a,n.intervalMillis,30):vu(a,n.intervalMillis),u={throttleEndTimeMillis:Date.now()+c,backoffCount:a+1};return n.setThrottleMetadata(o,u),Rp.debug(`Calling attemptFetch again in ${c} millis`),Bp(e,u,r,n)}}class Wp{constructor(){this.listeners=[]}addEventListener(e){this.listeners.push(e)}abort(){this.listeners.forEach(e=>e())}}async function Vp(e,t,a,r,n,i,o){const s=Fp(e);s.then(t=>{a[t.measurementId]=t.appId,e.options.measurementId&&t.measurementId!==e.options.measurementId&&Rp.warn(`The measurement ID in the local Firebase config (${e.options.measurementId}) does not match the measurement ID fetched from the server (${t.measurementId}). To ensure analytics events are always sent to the correct Analytics property, update the measurement ID field in the local config or remove it from the local config.`)}).catch(e=>Rp.error(e)),t.push(s);const l=async function(){if(!uu())return Rp.warn(Mp.create("indexeddb-unavailable",{errorInfo:"IndexedDB is not available in this environment."}).message),!1;try{await du()}catch(e){return Rp.warn(Mp.create("indexeddb-unavailable",{errorInfo:null==e?void 0:e.toString()}).message),!1}return!0}().then(e=>e?r.getId():void 0),[c,u]=await Promise.all([s,l]);(function(e){const t=window.document.getElementsByTagName("script");for(const a of Object.values(t))if(a.src&&a.src.includes(Dp)&&a.src.includes(e))return a;return null})(i)||Lp(i,c.measurementId),n("js",new Date);const d=(null==o?void 0:o.config)??{};return d.origin="firebase",d.update=!0,null!=u&&(d.firebase_id=u),n("config",c.measurementId,d),c.measurementId}class Hp{constructor(e){this.app=e}_delete(){return delete Gp[this.app.options.appId],Promise.resolve()}}let Gp={},Yp=[];const $p={};let Kp,Zp,Jp="dataLayer",Qp=!1;function Xp(){const e=[];if(function(){const e="object"==typeof chrome?chrome.runtime:"object"==typeof browser?browser.runtime:void 0;return"object"==typeof e&&void 0!==e.id}()&&e.push("This is a browser extension environment."),"undefined"!=typeof navigator&&navigator.cookieEnabled||e.push("Cookies are not available."),e.length>0){const t=e.map((e,t)=>`(${t+1}) ${e}`).join(" "),a=Mp.create("invalid-analytics-context",{errorInfo:t});Rp.warn(a.message)}}function em(e,t,a){Xp();const r=e.options.appId;if(!r)throw Mp.create("no-app-id");if(!e.options.apiKey){if(!e.options.measurementId)throw Mp.create("no-api-key");Rp.warn(`The "apiKey" field is empty in the local Firebase config. This is needed to fetch the latest measurement ID for this Firebase app. Falling back to the measurement ID ${e.options.measurementId} provided in the "measurementId" field in the local Firebase config.`)}if(null!=Gp[r])throw Mp.create("already-exists",{id:r});if(!Qp){!function(e){let t=[];Array.isArray(window[e])?t=window[e]:window[e]=t}(Jp);const{wrappedGtag:e,gtagCore:t}=function(e,t,a,r,n){let i=function(...e){window[r].push(arguments)};return window[n]&&"function"==typeof window[n]&&(i=window[n]),window[n]=Op(i,e,t,a),{gtagCore:i,wrappedGtag:window[n]}}(Gp,Yp,$p,Jp,"gtag");Zp=e,Kp=t,Qp=!0}Gp[r]=Vp(e,Yp,$p,t,Kp,Jp,a);return new Hp(e)}function tm(e=function(e=Ad){const t=Pd.get(e);if(!t&&e===Ad&&lu())return Rd();if(!t)throw Ed.create("no-app",{appName:e});return t}()){const t=zd(e=yu(e),Ep);return t.isInitialized()?t.getImmediate():function(e,t={}){const a=zd(e,Ep);if(a.isInitialized()){const e=a.getImmediate();if(gu(t,a.getOptions()))return e;throw Mp.create("already-initialized")}const r=a.initialize({options:t});return r}(e)}function am(e,t,a){e=yu(e),async function(e,t,a,r){if(r&&r.global){const t={};for(const e of Object.keys(a))t[`user_properties.${e}`]=a[e];return e("set",t),Promise.resolve()}e("config",await t,{update:!0,user_properties:a})}(Zp,Gp[e.app.options.appId],t,a).catch(e=>Rp.error(e))}function rm(e,t,a,r){e=yu(e),async function(e,t,a,r,n){if(n&&n.global)e("event",a,r);else{const n=await t;e("event",a,{...r,send_to:n})}}(Zp,Gp[e.app.options.appId],t,a,r).catch(e=>Rp.error(e))}const nm="@firebase/analytics",im="0.10.22";Td(new bu(Ep,(e,{options:t})=>em(e.getProvider("app").getImmediate(),e.getProvider("installations-internal").getImmediate(),t),"PUBLIC")),Td(new bu("analytics-internal",function(e){try{const t=e.getProvider(Ep).getImmediate();return{logEvent:(e,a,r)=>rm(t,e,a,r),setUserProperties:(e,a)=>am(t,e,a)}}catch(t){throw Mp.create("interop-component-reg-failed",{reason:t})}},"PRIVATE")),Md(nm,im),Md(nm,im,"esm2020");class om{constructor(e,a=!0){t(this,"name"),t(this,"enabled"),t(this,"initialized",!1),this.name=e,this.enabled=a}safeExecute(e,t){try{e()}catch(a){}}async safeExecuteAsync(e,t){try{await e()}catch(a){}}checkInitialized(){return!!this.initialized}}class sm extends om{constructor(e,a=!0){super("Firebase",a),t(this,"config"),t(this,"app",null),t(this,"analytics",null),this.config=e}async initialize(){this.enabled&&await this.safeExecuteAsync(async()=>{try{this.app=Rd(this.config),this.analytics=tm(this.app),this.initialized=!0}catch(e){throw this.initialized=!1,this.enabled=!1,e}},"Failed to initialize Firebase Analytics")}logEvent(e,t){this.enabled&&this.checkInitialized()&&this.analytics&&this.safeExecute(()=>{rm(this.analytics,e,t)},`Failed to log event: ${e}`)}setUserId(e){this.enabled&&this.checkInitialized()&&this.analytics&&this.safeExecute(()=>{var t,a;t=this.analytics,a=e,t=yu(t),async function(e,t,a){e("config",await t,{update:!0,user_id:a})}(Zp,Gp[t.app.options.appId],a).catch(e=>Rp.error(e))},"Failed to set user ID")}setUserProperties(e){this.enabled&&this.checkInitialized()&&this.analytics&&this.safeExecute(()=>{am(this.analytics,e)},"Failed to set user properties")}}class lm extends om{constructor(e,a=!0){super("Adjust",a),t(this,"config"),t(this,"eventTokens",new Map),this.config=e}async initialize(){this.enabled&&await this.safeExecuteAsync(async()=>{if(!this.config.appToken)throw new Error("Adjust App Token is required");if(await this.loadAdjustSDK(),!window.Adjust)throw new Error("Adjust SDK failed to load");{const e={appToken:this.config.appToken,environment:"sandbox"===this.config.environment?"sandbox":"production",logLevel:"none"};this.config.externalDeviceId&&(e.externalDeviceId=this.config.externalDeviceId),window.Adjust.initSdk(e),this.initialized=!0}},"Failed to initialize Adjust")}loadAdjustSDK(){return new Promise((e,t)=>{if(window.Adjust)return void e();const a=document.createElement("script");a.async=!0,a.src="https://cdn.adjust.com/adjust-latest.min.js",a.onload=()=>{e()},a.onerror=()=>{t(new Error("Failed to load Adjust SDK"))};const r=document.getElementsByTagName("script")[0];r&&r.parentNode?r.parentNode.insertBefore(a,r):document.head.appendChild(a)})}setEventToken(e,t){this.eventTokens.set(e,t)}setEventTokens(e){Object.entries(e).forEach(([e,t])=>{this.eventTokens.set(e,t)})}logEvent(e,t){this.enabled&&this.checkInitialized()&&window.Adjust&&this.safeExecute(()=>{let a=this.eventTokens.get(e);a||(a=e);const r={eventToken:a};t&&(r.callbackParams=Object.entries(t).map(([e,t])=>({key:e,value:String(t)}))),window.Adjust.trackEvent(r)},`Failed to log event: ${e}`)}setUserId(e){this.enabled&&this.checkInitialized()&&window.Adjust&&this.safeExecute(()=>{window.Adjust.addGlobalCallbackParameters([{key:"user_id",value:e}])},"Failed to set user ID")}setUserProperties(e){this.enabled&&this.checkInitialized()&&window.Adjust&&this.safeExecute(()=>{const t=Object.entries(e).map(([e,t])=>({key:e,value:String(t)}));window.Adjust.addGlobalCallbackParameters(t)},"Failed to set user properties")}removeUserProperty(e){this.enabled&&this.checkInitialized()&&window.Adjust&&this.safeExecute(()=>{window.Adjust.removeGlobalCallbackParameter(e)},`Failed to remove user property: ${e}`)}}const cm={registration:"xYzKwMR5",install:"qWeRtYuI",login:"R5T8V18n",recharge:"hIjKlMM4",custom:"k5m8n2B9"},um={ic:{urlParam:"ic",storageKey:"hmserver_ic"},ac:{urlParam:"ac",storageKey:"hmserver_ac"},a:{urlParam:"a",storageKey:"hmserver_a"},fbp:{urlParam:"fbp",cookieName:"_fbp",storageKey:"hmserver_fbp"},fbc:{urlParam:"fbc",cookieName:"_fbc",storageKey:"hmserver_fbc"},fbclid:{urlParam:"fbclid",storageKey:"hmserver_fbclid"},gclid:{urlParam:"gclid",storageKey:"hmserver_gclid"},ttclid:{urlParam:"ttclid",storageKey:"hmserver_ttclid"},twclid:{urlParam:"twclid",storageKey:"hmserver_twclid"},utm_source:{urlParam:"utm_source",storageKey:"hmserver_utm_source"},utm_medium:{urlParam:"utm_medium",storageKey:"hmserver_utm_medium"},utm_campaign:{urlParam:"utm_campaign",storageKey:"hmserver_utm_campaign"},utm_term:{urlParam:"utm_term",storageKey:"hmserver_utm_term"},utm_content:{urlParam:"utm_content",storageKey:"hmserver_utm_content"},ref:{urlParam:"ref",storageKey:"hmserver_ref"},src:{urlParam:"src",storageKey:"hmserver_src"},channel:{urlParam:"channel",storageKey:"hmserver_channel"},aff_id:{urlParam:"aff_id",storageKey:"hmserver_aff_id"},aff_sub:{urlParam:"aff_sub",storageKey:"hmserver_aff_sub"},click_id:{urlParam:"click_id",storageKey:"hmserver_click_id"}};class dm extends om{constructor(e,a=!0){super("HMServer",a),t(this,"config"),t(this,"eventCodes"),t(this,"deviceId",""),t(this,"currentUserId",""),t(this,"eventQueue",[]),t(this,"batchTimer",null),t(this,"BATCH_SIZE",10),t(this,"BATCH_INTERVAL",5e3),t(this,"appVersion","1.0.0"),t(this,"sourceParams",{}),t(this,"useV2EventFormat"),t(this,"batchApiPath"),this.config=e,this.eventCodes={...cm,...e.eventCodes},this.useV2EventFormat=e.useV2EventFormat??!0,this.batchApiPath=e.batchApiPath||"/batchCustominfo",this.getAppVersion(),this.initSourceParams(),this.initDeviceIdSync(),this.setupUnloadListener()}setupUnloadListener(){const e=()=>{this.eventQueue.length>0&&this.sendBeaconReport()};document.addEventListener("visibilitychange",()=>{"hidden"===document.visibilityState&&e()}),window.addEventListener("pagehide",e)}getAppVersion(){const e=document.querySelector('meta[name="version"]');e&&(this.appVersion=e.getAttribute("content")||"1.0.0")}initSourceParams(){const e=new URLSearchParams(window.location.search);Object.entries(um).forEach(([t,a])=>{const r=this.getParamValue(a,e);r&&(this.sourceParams[t]=r,localStorage.setItem(a.storageKey,r))})}getParamValue(e,t){const a=t.get(e.urlParam);if(a)return a;if(e.cookieName){const t=this.getCookie(e.cookieName);if(t)return t}return localStorage.getItem(e.storageKey)}getCookie(e){var t;const a=`; ${document.cookie}`.split(`; ${e}=`);return 2===a.length&&(null==(t=a.pop())?void 0:t.split(";").shift())||null}generateNonce(){return"xxxxxxxxxxxx4xxxyxxxxxxxxxxxxxxx".replace(/[xy]/g,e=>{const t=16*Math.random()|0;return("x"===e?t:3&t|8).toString(16)})}initDeviceIdSync(){try{const e="hmserver_device_id";if(localStorage.getItem(e)&&localStorage.removeItem(e),this.deviceId=Xc(),!this.deviceId){const e=`web_${Date.now()}_${Math.random().toString(36).substring(2,11)}`;this.deviceId=e}}catch(e){const t=`web_${Date.now()}_${Math.random().toString(36).substring(2,11)}`;this.deviceId=t}}xorEncrypt(e,t){if(!e)return"";if(!t)throw new Error("key must not be null or empty");const a=e.split("").map(e=>e.charCodeAt(0)),r=t.split("").map(e=>e.charCodeAt(0)),n=[];for(let o=0;o<a.length;o++)n.push(a[o]^r[o%r.length]);const i=String.fromCharCode(...n);return Zc.enc.Base64.stringify(Zc.enc.Utf8.parse(i))}generateEncryptedPayload(e){const t=Date.now(),a=this.generateNonce(),r={appId:this.config.appId,eventInfos:e,di:this.getDeviceInfo(),sourceParams:Object.keys(this.sourceParams).length>0?this.sourceParams:void 0,thirdParams:{},appVersion:this.appVersion,language:navigator.language,platform:"Web",channel:"web",nonce:a,timestamp:t},n={d:JSON.stringify(r),i:this.config.appId,t:t},i=this.generateSignature(n);n.s=i;const o=JSON.stringify(n);return{base64:this.xorEncrypt(o,"xai-secret-key-2025")}}generateSignature(e){const t=Object.keys(e).filter(e=>"s"!==e).sort().map(t=>`${t}=${e[t]}`).join("&")+"&key="+this.config.appKey;return Zc.HmacSHA256(t,this.config.appSecure).toString()}async batchReport(){if(0===this.eventQueue.length)return;const e=[...this.eventQueue];this.eventQueue=[];try{const t=this.generateEncryptedPayload(e),a={"Content-Type":"application/json; charset=UTF-8",AppId:this.config.appId,Timestamp:Math.floor(Date.now()/1e3).toString()},r=this.config.apiUrl.replace(/\/$/,"")+this.batchApiPath,n=await fetch(r,{method:"POST",headers:a,body:JSON.stringify(t),keepalive:!0});if(!n.ok)throw new Error(`HTTP error! status: ${n.status}`);await n.json();e.map(e=>{var t;return(null==(t=e.ext)?void 0:t.eventName)||"unknown"}).join(", ")}catch(t){}}sendBeaconReport(){if(0===this.eventQueue.length)return;const e=[...this.eventQueue];this.eventQueue=[];try{const t=this.generateEncryptedPayload(e),a=new Blob([JSON.stringify(t)],{type:"application/json"}),r=this.config.apiUrl.replace(/\/$/,"")+this.batchApiPath,n=new URL(r);n.searchParams.set("AppId",this.config.appId),n.searchParams.set("Timestamp",Math.floor(Date.now()/1e3).toString());if(navigator.sendBeacon(n.toString(),a)){e.map(e=>{var t;return(null==(t=e.ext)?void 0:t.eventName)||"unknown"}).join(", ")}}catch(t){}}queueEvent(e){this.eventQueue.push(e),this.eventQueue.length>=this.BATCH_SIZE?this.flushQueue():this.startBatchTimer()}startBatchTimer(){this.batchTimer||(this.batchTimer=setTimeout(()=>{this.flushQueue()},this.BATCH_INTERVAL))}flushQueue(){return this.batchTimer&&(clearTimeout(this.batchTimer),this.batchTimer=null),this.batchReport()}async flush(){await this.flushQueue()}getCanvasFingerprint(){try{const e=document.createElement("canvas"),t=e.getContext("2d");if(!t)return"";e.width=200,e.height=50,t.textBaseline="top",t.font="14px Arial",t.fillStyle="#f60",t.fillRect(125,1,62,20),t.fillStyle="#069",t.fillText("Browser Fingerprint",2,15);const a=e.toDataURL();let r=0;for(let n=0;n<a.length;n++){r=(r<<5)-r+a.charCodeAt(n),r&=r}return Math.abs(r).toString(16).substring(0,16)}catch(e){return""}}getAudioContextFingerprint(){try{const e=window.OfflineAudioContext||window.webkitOfflineAudioContext;if(!e)return"";const t=new e(1,44100,44100),a=t.createAnalyser();return`${t.sampleRate}-${a.frequencyBinCount}`}catch(e){return""}}ensureDeviceId(){const e=Xc();e&&e!==this.deviceId&&(this.deviceId=e)}getDeviceInfo(){this.ensureDeviceId();const e=window.screen,t=navigator,a=t.userAgent;let r="Unknown",n="Unknown";if(-1!==a.indexOf("Win")){r="Windows";const e=a.match(/Windows NT ([\d.]+)/);n=e?`Windows ${e[1]}`:"Windows"}else if(-1!==a.indexOf("Mac")){r="macOS";const e=a.match(/Mac OS X ([\d_]+)/);n=e?`macOS ${e[1].replace(/_/g,".")}`:"macOS"}else if(-1!==a.indexOf("Linux"))r="Linux",n="Linux";else if(-1!==a.indexOf("Android")){r="Android";const e=a.match(/Android ([\d.]+)/);n=e?`Android ${e[1]}`:"Android"}else if(-1!==a.indexOf("iOS")||-1!==a.indexOf("iPhone")||-1!==a.indexOf("iPad")){r="iOS";const e=a.match(/OS ([\d_]+)/);n=e?`iOS ${e[1].replace(/_/g,".")}`:"iOS"}let i="Unknown";if(-1!==a.indexOf("iPhone"))i="iPhone";else if(-1!==a.indexOf("iPad"))i="iPad";else if(-1!==a.indexOf("Android")){const e=a.match(/\(([^)]+)\)/);i=e?e[1]:"Android Device"}else i="Web Browser";let o,s,l="",c="";try{const e=document.createElement("canvas"),t=e.getContext("webgl")||e.getContext("experimental-webgl");if(t){const e=t.getExtension("WEBGL_debug_renderer_info");e&&(l=t.getParameter(e.UNMASKED_VENDOR_WEBGL),c=t.getParameter(e.UNMASKED_RENDERER_WEBGL))}}catch(d){}try{"storage"in navigator&&"estimate"in navigator.storage&&navigator.storage.estimate().then(e=>{e.quota&&(o=Math.floor(e.quota/1048576))})}catch(d){}try{const e=navigator.connection||navigator.mozConnection||navigator.webkitConnection;e&&e.effectiveType&&(s=e.effectiveType.toUpperCase())}catch(d){}const u={deviceId:this.deviceId,screenResolution:`${e.width}x${e.height}`,colorDepth:e.colorDepth,devicePixelRatio:window.devicePixelRatio.toString(),machine:i,canvas:this.getCanvasFingerprint(),audioContext:this.getAudioContextFingerprint(),osName:r,osVersion:n,deviceModel:i,timeZone:`${Intl.DateTimeFormat().resolvedOptions().timeZone}, GMT${(new Date).getTimezoneOffset()/-60>=0?"+":""}${(new Date).getTimezoneOffset()/-60}`,language:`${t.language}, ${t.languages.join(", ")}`};return t.hardwareConcurrency&&(u.processorCount=t.hardwareConcurrency),t.deviceMemory&&(u.memorySize=Math.floor(1024*t.deviceMemory)),l&&(u.vendoor=l),c&&(u.renderer=c),s&&(u.networkType=s),o&&(u.storageSize=o),u}async initialize(){this.initialized||this.enabled&&await this.safeExecuteAsync(async()=>{if(!this.config.appId||!this.config.appKey||!this.config.appSecure)throw new Error("Missing required configuration: appId, appKey, or appSecure");const e=Xc();e?(this.deviceId.startsWith("web_"),this.deviceId=e):this.deviceId||this.initDeviceIdSync(),this.initialized=!0},"Failed to initialize")}setUserId(e){this.currentUserId=e}getEventCode(e){return{register_success:this.eventCodes.registration,install:this.eventCodes.install,login_success:this.eventCodes.login,coin_order_success:this.eventCodes.recharge}[e]||this.eventCodes.custom}getRechargeUserId(e){if((null==e?void 0:e.userId)||this.currentUserId)return(null==e?void 0:e.userId)||this.currentUserId;try{const e=localStorage.getItem("pendingOrder");if(e){const t=JSON.parse(e),a=Object.keys(t);if(a.length>0)return this.currentUserId=a[0],a[0]}}catch(t){}}buildEventInfo(e,t){var a;const r={eventCode:this.getEventCode(e),eventAt:Math.floor(Date.now()/1e3),deviceId:this.deviceId};switch(this.currentUserId&&(r.userId=this.currentUserId),e){case"coin_order_success":r.userId=this.getRechargeUserId(t),r.amount=String((null==t?void 0:t.amount)||(null==t?void 0:t.value)||"0"),r.currencyUnit=(null==t?void 0:t.currency)||(null==t?void 0:t.currencyUnit)||"USD",r.orderId=(null==t?void 0:t.orderId)||(null==t?void 0:t.transaction_id);break;case"install":r.clickId=(null==t?void 0:t.clickId)||""}return r.ext={eventName:e,...t},null==(a=r.ext)||delete a.thirdParams,r}logEvent(e,t){this.checkInitialized()&&this.safeExecute(()=>{const a=this.buildEventInfo(e,t);this.queueEvent(a)},`Failed to log event: ${e}`)}destroy(){this.flushQueue()}}const pm=new class{constructor(){t(this,"providers",new Map),t(this,"eventMappings",{}),t(this,"initialized",!1)}async initialize(e){var t,a,r;if(this.initialized)return;const n=e.analytics;if(!n)return;this.eventMappings=n.events||{};const i=[];if(null==(t=n.platforms.firebase)?void 0:t.enabled){const e=new sm(n.platforms.firebase.config,!0);this.providers.set("firebase",e),i.push(e.initialize())}if(null==(a=n.platforms.adjust)?void 0:a.enabled){const e=new lm(n.platforms.adjust.config,!0);if(n.events){const t={};Object.entries(n.events).forEach(([,e])=>{e.adjust&&(t[e.adjust]=e.adjust)}),e.setEventTokens(t)}this.providers.set("adjust",e),i.push(e.initialize())}if(null==(r=n.platforms.hmserver)?void 0:r.enabled){const e=new dm(n.platforms.hmserver.config,!0);this.providers.set("hmserver",e),i.push(e.initialize())}try{await Promise.all(i),this.initialized=!0}catch(o){this.initialized=!0}}logEvent(e,t){if(!this.initialized)return;const a=this.eventMappings[e];a&&this.providers.forEach((e,r)=>{const n=a[r];n&&e.logEvent(n,t)})}setUserId(e){this.initialized&&this.providers.forEach(t=>{t.setUserId&&t.setUserId(e)})}setUserProperties(e){this.initialized&&this.providers.forEach(t=>{t.setUserProperties&&t.setUserProperties(e)})}getActiveProviders(){return Array.from(this.providers.keys())}isInitialized(){return this.initialized}async flush(){if(!this.initialized)return;const e=[];this.providers.forEach(t=>{"function"==typeof t.flush&&e.push(t.flush())}),await Promise.all(e)}},mm=async e=>{try{await Qc.loadSDK()}catch(t){}try{await pm.initialize(e)}catch(t){}try{hm()}catch(t){}},hm=()=>{const e=new URLSearchParams(window.location.search).get("ic");e&&!localStorage.getItem("analytics_install_reported")&&setTimeout(()=>{gm("install",{clickId:e}),localStorage.setItem("analytics_install_reported","1")},200)},gm=(e,t)=>{pm.logEvent(e,t)},fm={[_s.EN]:{errorPage:{page404:{oops:"OOPS!",headline:"The webmaster said that you can not enter this page...",info:"Please check that the URL you entered is correct, or click the button below to return to the homepage.",backToHome:"Back to home",allRightsReserved:"All rights reserved"},page401:{oops:"Oops!",noPermission:"You don't have permission to go to this page",contactLeader:"If you are not satisfied, please contact your leader",orYouCan:"Or you can go:",backHome:"Back to home",browse:"Just browse",viewImage:"Click me to view image",back:"Back",gifSource:"gif source",randomView:"Random view"},ipAccess:{title:"Access Restricted",description:"Sorry, This Service Is Not Available In Your Region",tips:"Due to local regulations and agreements, this website is not available in your geographical region."}},route:{premium:"Premium",home:"Discover",characterList:"Character List",characterSearch:"Character Search",characterDetail:"Character Detail",characterChat:"Character Chat",chatHistory:"Chat",userCenter:"User Center",userCenterEdit:"Personal Information",rechargeCenter:"Recharge Center",contactUs:"Contact Us",characterCollections:"Collections",characterLiked:"Liked",rechargeHistory:"Recharge History",legalInformation:"Legal Information",underagePolicy:"Underage Policy",subscriptionPolicy:"Subscription Policy",exemption2257:"18 U.S.C. 2257 Exemption",dmcaPolicy:"DMCA Policy",blockedContentPolicy:"Blocked Content Policy",contentRemovalPolicy:"Content Removal Policy",complaintPolicy:"Complaint Policy"},rechargeHistory:{title:"Transaction History",tabs:{deposits:"Deposits",expenses:"Expenses"},expense:{chatWith:"Chat with {name}",unlockedVideo:"Unlocked {name}'s Private video",unlockedPhoto:"Unlocked {name}'s Private Photo",upgradeVideo:"Upgrade Photo to Video",sendGifts:"Intimate interaction expense: {name}",other:"Other expense"}},rechargeCenter:{tabs:{subscribe:"Subscribe",coins:"Coins"},premium:{title:"Subscribe",choosePlan:"Choose Your Plan",anonymous:"100% anonymous. You can cancel anytime.",countdown:{hours:"Hours",minutes:"Minutes",seconds:"Seconds"},limitedOffer:"LIMITED TIME OFFER",discount:"Up to 75% off your subscription",plans:{yearly:"12 months",quarterly:"3 months",monthly:"1 month",perMonth:"/month"},currentSubscription:{label:"Current Subscription",daysLeft:"Days Left",renewsOn:"Renews on {date}"},subscribeTypes:{none:"No Subscription",weekly:"Weekly",monthly:"Monthly",quarterly:"Quarterly",annual:"Annual",planText:"{type} Plan"},badges:{bestChoice:"BEST CHOICE"},security:{noAdultTransaction:"No adult transaction in your bank statement",noHiddenFees:"No hidden fees + Cancel subscription at any time",securePayment:"Secure Payment",sslEncrypted:"SSL Encrypted"},agreement:{iAgree:"I agree to the",termsOfService:"Terms of Service",and:"and",subscriptionPolicy:"Subscription Policy"},subscribe:"Subscribe",subscribed:"Subscribed",upgrade:"Upgrade",errors:{alreadySubscribed:"You are already subscribed."},vipGuide:{title:"Unlock Exclusive Privileges",description:"Elevate your experience with our most elite tier of connection and luxury content.",discountTag:"40% OFF",button:"Start My Premium Journey",benefits:{exclusivePrivateShows:"Exclusive Private Shows & Videos & Images",premiumTipMenu:"Premium Tip Menu",emotionalChatModel:"Richer emotional AI chat model",betterMemory:"Better memory in every interaction",welfareImages:"Unlock regularly updated bonus images",posePrivilege:"Unlock exclusive pose privileges",liveChatPrivilege:"Live room chat privileges",monthlyFreeCoins:"{coins} free coins every month"}},paymentPending:{alt:"Payment in progress",title:"Payment in Progress",description:"Your payment is being processed. Once verified, your account will be automatically upgraded to Premium. This may take a few minutes.",button:"Got it"},benefits:{title:"Premium Benefits",createAI:"Create your own AI Girlfriend(s)",unlimitedMessages:"Unlimited text messages",freeTokens:"Get 100 FREE tokens / month",removeBlur:"Remove image blur",generateImages:"Generate images",phoneCalls:"Make AI phone calls",fastResponse:"Fast response time",prioritySupport:"Priority customer support",exclusiveCharacters:"Access to exclusive characters",advancedCustomization:"Advanced personality customization"}},coins:{title:"Coins",currentCoins:"Current Coins",description:{title:"Coins Description",subtitle:"Coins are the virtual cash of the universe! With more coins, you can make your chat experience even more awesome:"},badges:{discount:"{percent}% OFF"},features:{heartWhisper:"Chat Message",inspirationReply:"Inspiration Reply",premiumChat:"Special Gifts",specialGifts:"Buy Animated Video"},history:{title:"Recharge History",item:{title:"Coins",conisNum:"+ {num} coins",orderId:"Order ID: {id}"}}}},order:{status:{completed:{type:"Completed",title:"Payment Successful",description:"Coins have been successfully added to your account! You can now use them to unlock exclusive features."},pending:{type:"Pending",title:"Processing Payment…",description:"Please wait while we confirm your payment. You can check the latest progress in the recharge record at any time."},failed:{type:"Failed",title:"Payment Failed",description:"Unfortunately, this payment could not be completed. Please rest assured that we did not charge you. Please try again."}}},navbar:{search:{placeholder:"Search"},login:{title:"Login",notification:{title:"Tip",message:"Login method not yet open"}},download:{title:"Download",dialog:{title:"Download APP",subtitle:"Download the App to search for over 20 million characters."}},checkIn:{title:"Check In"},joinFree:{title:"Join Free"}},sidebar:{today:"TODAY",yesterday:"YESTERDAY",other:"OTHER",footer:{affiliate:"Affiliate",support:"Support"}},contactUs:{email:"Email",youtube:"Youtube",facebook:"Facebook",whatsapp:"WhatsApp",telegram:"Telegram",instagram:"Instagram",discord:"Discord"},loading:{title:"Loading..."},noData:{title:"It's a Little Quiet in Here..."},home:{more:"View All",faq:{title:"FAQ"},banner:{slide1:{title:"Your Story Begins Here",description:"Unlock Endless Conversations",buttonText:"Start Chatting Now"},slide2:{title:"Find Your Perfect Character",description:"Explore popular characters curated for you",buttonText:"Explore Now"},slide3:{title:"Build Your Profile",description:"Customize preferences and keep progress in sync",buttonText:"Go to Center"}},all:"All"},characterTabs:{recommend:"Recommended",trending:"Trending",topRated:"Top Rated",popular:"Popular",latest:"Latest"},characterChat:{sendInputPlaceholder:"Type your message...",openingPopoverTitle:"Try to reply",copyMessage:"Copy Message",deleteMessage:"Delete Message",reportMessage:"Report Message",copySuccess:"Copied to clipboard",copyFailed:"Copy failed",noCopyContent:"No content to copy",sendTooFrequent:"Sending too frequently, please try again later",messageTooLong:"Message length cannot exceed 200 characters",sendFailed:"Failed to send, please try again",openingSuggestions:{careerChange:"I've been considering a career change into tech. What do you think about that industry's prospects?",tellMore:"That's interesting! Could you tell me more about your experience in marketing strategy?",professionalAdvice:"I'm feeling a bit stuck in my current role. Any advice on how to grow professionally?"},chatUser:{collect:"Collect",collected:"Collected",profile:"Profile",share:"Share"},chatHeader:{status:{online:"Online",offline:"Offline",typing:"Typing...",sendingPhoto:"sending a photo",living:"living"}}},interact:{actionTrigger:"Trigger",actionSend:"Send",heat:"Interaction heat with her",liveRoomGuide:{description:"Send gifts for special interactive performances!",action:"Send"},blockingDialog:{title:"Everything You've Dreamed Of...",previewPrefix:"Here is a preview of the ",previewHighlight:"Exclusive Try-On Show.",previewSuffix:" Send premium gifts to unlock more.",action:"Unlock Now"},giftPanel:{sendGift:"Send Gift",recharge:"Recharge",more:"More",gift:"Gift",sort:"Sort",close:"Close"},sceneSwitch:{guide:"Tap here to explore more scenes.",button:"Switch\nScene",shortButton:"Scene",title:"Switch Scene",subtitle:"Click to switch and open a different live scene.",switching:"Switching...",close:"Close",current:"Current",price:"{price} coins to unlock",payInsufficient:"Insufficient coins. Please top up and try again.",payNeedsConfirm:"This scene requires payment confirmation. Please try again.",payFailed:"Failed to unlock this scene. Please try again."},floatingNotice:{sent:"sent",requested:"requested"},mobileMenu:{mute:"Mute",unmute:"Unmute",showMenu:"Show menu",hideMenu:"Hide menu",muteToast:"Muted",unmuteToast:"Unmuted"},fallbackReply:{feeling:"How are you feeling now?",anywhere:"If you could be anywhere right now, where would it be?",mind:"I'd love to hear what's been on your mind lately."},defaultNames:{action:"Action",gift:"Gift",character:"Character"},loading:{title:"Please wait...",subtitle:"{name} is getting ready."},a11y:{avatarBackground:"Avatar background",showMenu:"Show menu",fire:"Fire",up:"Up",send:"Send",gift:"Gift",chat:"Chat",coin:"Coin",recharge:"Recharge"}},chatInput:{placeholder:"Type your message..."},chatDeletePopover:{deleteChat:"Delete",hide:"Hide"},clearChat:{title:"Clear this chat?",message:"All messages in this chat will be permanently deleted.",clear:"Clear",clearing:"Clearing...",clearChat:"Clear Chat"},footer:{privacyPolicy:"Privacy Policy",termsService:"Terms Service",content:"Experience the next generation of AI companionship. OnlyGF brings you authentic conversations, emotional connections, and a community of AI friends that understand and grow with you.",desc:"© 2025 OnlyGF. All rights reserved.",features:"Features",popular:"Popular",chat:"Chat",createCharacter:"Create Character",myCollection:"My collection",myAI:"My AI",legalSupport:"Legal & Support",termsAndPolicies:"Terms and Policies"},legalInformation:{pageTitle:"Legal Information",items:{termsService:"Terms of Service",privacyNotice:"Privacy Notice",subscriptionPolicy:"Subscription Policy",cookiesNotice:"Cookies Notice",underagePolicy:"Underage Policy",contentRemovalPolicy:"Content Removal Policy",blockedContentPolicy:"Blocked Content Policy",dmcaPolicy:"DMCA Policy",complaintPolicy:"Complaint Policy",exemption2257:"18 U.S.C. 2257 Exemption",communityGuidelines:"Community Guidelines",affiliateTerms:"Affiliate Terms & Conditions"}},languageDialog:{title:"Language selection",desc:"Select your display language"},dialogUploadAvatar:{title:"Choose Your Avatar",desc:"Let's find a look that feels like you. First impressions matter!",save:"Save"},dialogShare:{title:"Share",desc:"Copy the link or share directly, friends can start chat instantly.",copy:"Copy link",success:"Link copied to clipboard",error:"Failed to copy link, please try again"},dialogReport:{title:"Report",desc:"Select a reason",list:{sexuallyExplicit:"Sexually explicit content",hateSpeech:"Hate speech or harassment",suicideSelfInjury:"Suicide or self-injury",violenceThreats:"Violence or threats",falseInformation:"False information",spamFraud:"Spam or fraud",privacyViolation:"Privacy violation",harmfulMinors:"Harmful to minors",other:"Other"},other:{title:"Description",placeholder:"Please describe problem..."},submit:"Submit"},dialogDownload:{title:"Download",desc:"Download the App to search for over 20 million characters.",toast:"Coming Soon"},dialogCoinInsufficient:{title:"Unlock the Next Message",liveTitle:"Insufficient coins",desc:"You've run out of coins to continue this chat. Please top up your balance to unlock more replies.",message:"Messages",balance:"Balance",coins:"Coins",button:"Get More Coins"},dialogRegisterGuide:{title:"Want to keep talking?",desc:"Create a free account to continue chatting and unlock all features!",benefit1:"Unlimited conversations",benefit2:"Save your chat history",benefit3:"Access to all characters",signUp:"Sign Up",later:"Maybe Later"},registerGuideMessage:{text:"Want to keep talking? Just create a free account! Sign up now for bonus messages—I can't wait to continue!",button:"Register to Chat"},dialogPhotoUnlock:{title:"Unlock Photo",desc:"Unlock this photo to see the full content",balance:"Your Balance",button:"Unlock Now",getMore:"Get More Coins",insufficientBalance:"Insufficient Balance",unlocking:"Unlocking...",unlockSuccess:"Photo unlocked successfully",unlockFailed:"Failed to unlock photo"},photoRequest:{buttonTitle:"Request a photo",selectType:"Select photos type:",requestFailed:"Failed to request photo",sendMePhoto:"Send me a photo",noMorePhotos:"No more photos available",poses:{random:"Random",selfie:"Selfie",posing:"Posing",sitting:"Sitting",kneeling:"Kneeling",squatting:"Squatting",standing:"Standing",prone:"Prone"},vipGuide:{title:"Unlock VIP Photo Poses",description:"Subscribe to unlock exclusive photo poses and request the pose you want.",buttonText:"Unlock VIP Now"}},dialogLogout:{title:"Log out?",desc:"Are you sure you want to log out?",desc2:"You will need to sign in again to access your account.",confirm:"Log out"},dialogLogin:{title:"Log In / Sign Up",subtitle:"Chat with over 20M Girls",continueWith:"Continue with {method}",google:"Google",apple:"Apple",facebook:"Facebook",line:"Line",guest:"Guest",desc:"I agree to receive special offers, marketing communications,and service updates by email.",sub:"I confirm I am",age:"18+",agreementPrefix:"accept the",termsOfService:"Terms of Service",and:"and",privacyPolicy:"Privacy Policy",or:"or",emailPlaceholder:"Email address",continueWithEmail:"Continue with Email",verifyTitle:"Verify your email",verifyDesc:"We've sent a 6-digit verification code to {email}. Open the email and enter the code below to continue.",confirm:"Confirm",resendCode:"Resend Code",resendCountdown:"Resend in {seconds}s",back:"Back",invalidEmail:"Please enter a valid email address",codeSent:"Verification code sent",codeSendFailed:"Failed to send verification code",codeRequired:"Please enter the verification code",codeInvalid:"Invalid verification code",promotionHint:"First Subscription <b>-75% OFF</b> Exclusive Offer"},dialogCheckin:{title:"Daily Rewards",desc:"Check in for 7 consecutive days to claim all rewards!",button:"Claim Reward",claimedToday:"Claimed For Today",resultTitle:"Reward Claimed!",resultDesc:"You've checked in for {days} days in a row. Keep it up!",resultButton:"Got It",daysText:"Day {days}"},auth:{loginSuccess:"Login successful",loginFailed:"Login failed, please try again"},person:{edit:"Edit",follow:"Following",fans:"Followers",createBot:" Bots",sendPost:" Posts",followBot:" Followed bots"},common:{noData:"noData",clickRetry:"Tap to retry",live:"Live",report:"Report message",reset:"Reset",months:{january:"January",february:"February",march:"March",april:"April",may:"May",june:"June",july:"July",august:"August",september:"September",october:"October",november:"November",december:"December"},submitting:"Submitting...",unlockFailed:"Subscription access required"},characterDetail:{online:"Online",chatToMe:"Chat to me",collect:"Collect",collected:"Collected",share:"Share",gallery:"Gallery",report:"Report",age:"Age",career:"Career",height:"Height",constellation:"Constellation",bloodType:"Blood Type",unknown:"Unknown",likeSuccess:"Liked successfully",unlikeSuccess:"Unliked successfully",collectSuccess:"Collected successfully",uncollectSuccess:"Uncollected successfully",likeFailed:"Like failed, please try again",collectFailed:"Collect failed, please try again",networkError:"Network error, please try again",reportSuccess:"Report submitted successfully, we will handle it as soon as possible",reportFailed:"Report submission failed, please try again"},langSelect:{message:{success:"Switch Language Successful!"}},userCenter:{title:"Personal Information",username:"Username",usernamePlaceholder:"AlexOnlyGF",usernameHelper:"Please input 3-25 characters, letters, emoji, numbers and underscores are allowed. Username must be unique.",profile:"Profile (Optional)",profilePlaceholder:"Complete your bio so others can know you better",save:"Save",saving:"Saving...",saveSuccess:"Save successful",saveFailed:"Save failed, please try again",editProfile:"Edit Profile",collections:"Collections",likes:"Likes",logout:"Log out",logoutConfirm:"Are you sure you want to log out?",downloadApp:"Download APP",language:"Language",privacyPolicy:"Privacy Policy",termsOfUse:"Terms of Use",contactUs:"Contact Us",support:"Support",supportDesc:"We’re here for you 24/7",premiumTitle:"OnlyGF Premium",premiumDesc:"Unlock all shows & {coins} bonus coins every month",myBalance:"My Balance",recharge:"ReCharge",currentSubscription:"Current Subscription",daysLeft:"Days Left"},download:{googlePlay:{name:"Google Play",description:"Get the official app for secure, seamless updates and new companions.",subtitle:"GET IT ON"},appStore:{name:"App Store",description:"Enjoy a private, immersive chat experience optimized for your iPhone.",subtitle:"Download"},androidApk:{name:"Android APK",description:"Install directly for ultimate privacy, instant access, and the latest updates.",subtitle:"Download"},webApp:{name:"Web APP",description:"Chat instantly from any browser —no installation needed. Your private escape awaits.",subtitle:"Install"}},premiumPhotoUnlock:{vipUnlock:"Can unlock",vipMark:"VIP",proMark:"Pro"},photoGallery:{photoCount:"{current}/{total}",prevPhoto:"Previous",nextPhoto:"Next"},dialogVideoUnlock:{title:"Unlock Video",desc:"Unlock this video to watch the full content",button:"Unlock Now",balance:"Your Balance",insufficientBalance:"Insufficient Balance",getMore:"Get More Coins",unlocking:"Unlocking...",unlockSuccess:"Video unlocked successfully",unlockFailed:"Failed to unlock video"},upgradablePhoto:{unlockMoment:"Unlock the moment",upgrading:"Upgrading...",upgradeSuccess:"Upgraded to video",upgradeFailed:"Failed to upgrade"},dialogWebViewGuide:{title:"Please Open in Browser",desc:"Google login is not supported in app browsers. Please copy the link and open it in your system browser (Chrome/Safari) to complete login.",currentUrl:"Current Page URL",copyLink:"Copy Link",copied:"Link Copied",copyFailed:"Copy failed, please copy manually",steps:{step1:"Click the button above to copy the link",step2:"Open your system browser (Chrome/Safari)",step3:"Paste the link and visit to complete login"}},emailChat:{openEmailChat:"Open Email Chat",connectViaEmail:"Connect via Email",enterEmailTitle:"Enter Email to Receive Letter",receiveYourFirstLetter:"Receive Your First Letter",receiveLetter:"Receive Letter",startEmailChatWith:"Start Email Chat with {botName}",letterWillBeSent:"Letter will be sent to your email soon!",description:"Want to receive letters written just for you, beyond the chat? Once enabled, they will reach out to your inbox, continuing your story as if they were a real part of your life.",emailPlaceholder:"Email address",sendNow:"Send Email Now",emailChatStartedWith:"Email Chat Started with {botName}",switchToBot:"Switch to {botName}",receiveLetterAt:"Receive Letter",tips:"Tips:",tipsContent:"She will proactively write to you and respond to your letters. It's private, slow-paced, and exclusively for the two of you.",invalidEmail:"Please enter a valid email address",enableSuccess:"Email chat enabled successfully",disableSuccess:"Email chat disabled successfully",updateEmailSuccess:"Email updated successfully",switchBotSuccess:"Switched to new character successfully",enableFailed:"Failed to enable email chat",disableFailed:"Failed to disable email chat",updateEmailFailed:"Failed to update email",switchBotFailed:"Failed to switch character",disableConfirmTitle:"Close Email Chat?",disableConfirmMessage:"You will no longer receive letters from this character.",switchBotConfirmTitle:"Switch Character?",switchBotConfirmMessage:"Switch email chat from {fromBot} to {toBot}?",updateEmail:"Update Email",enterNewEmail:"Please enter new email address",firstLetterTriggered:"Your first letter is on the way!",firstLetterFailed:"Failed to trigger first letter",verifyTitle:"Verify Email",verifyDesc:"Verification code sent to {email}",codeRequired:"Please enter 6-digit code",codeInvalid:"Invalid or expired code",codeSent:"Code sent",codeSendFailed:"Failed to send code",confirm:"Confirm",resendCode:"Resend",resendCountdown:"Resend in {seconds}s"},emailCallback:{verifying:"Verifying your link...",success:"Success!",redirectingToChat:"Redirecting to chat...",oops:"Oops!",redirectingIn:"Redirecting to homepage in {seconds}s...",goHomeNow:"Go to Homepage Now",invalidLink:"Invalid link",linkExpired:"Link has expired. Please return to your email and click again.",linkInvalid:"Invalid link",linkUsed:"Link is no longer valid",userNotFound:"User not found",networkError:"Network error, please try again"},profileComplete:{title:"Welcome to {appName}!",subtitle:"Tell us more for a better personalized experience",nicknameLabel:"What's Your Name",nicknamePlaceholder:"Enter a cool nickname",nicknameRequired:"Please enter your nickname",genderLabel:"Which pronoun do you use?",genderHint:"(Gender cannot be changed once selected.)",birthdayLabel:"Your Birthday?",birthdayPlaceholder:"MM/DD/YYYY",birthdayRequired:"Please select your birthday",birthdayUnderAge:"You must be at least 18 years old",submitButton:"Start My Journey!",genderRequired:"Please select your gender",submitSuccess:"Profile completed successfully!",submitFailed:"Failed to submit, please try again",genderOptions:{male:"He/Him",female:"She/Her",other:"They/Them"}},seo:{description:{characterList:"Browse all AI characters on {appName}. Find your perfect AI companion for live interaction, chat, and storytelling.",characterSearch:"Search AI characters on {appName}. Discover AI companions by name, tag, or interest and start chatting instantly.",chatHistory:"Review your AI chat history on {appName} and continue conversations with your favorite AI companions.",userCenter:"Manage your {appName} profile, collections, and account settings in the user center.",rechargeCenter:"Recharge coins and subscribe on {appName}. Unlock premium AI chat, live interaction, and exclusive content.",webTutorial:"Learn how to use {appName} with our web tutorial. Tips for AI chat, live interaction, and getting the most from your AI companion.",contactUs:"Contact {appName} for support, partnership, and product inquiries about AI companion experiences.",privacyPolicy:"Read the {appName} Privacy Policy to learn how we collect, use, and protect your personal information.",termsService:"Read the {appName} Terms of Service governing your use of our AI companion platform."}}},[_s.ZH]:{errorPage:{page404:{oops:"哎呀!",headline:"網站管理員說您不能進入此頁面...",info:"請檢查您輸入的網址是否正確,或點擊下面的按鈕返回首頁。",backToHome:"返回首頁",allRightsReserved:"保留所有權利"},page401:{oops:"哎呀!",noPermission:"你沒有權限去該頁面",contactLeader:"如有不滿請聯繫你領導",orYouCan:"或者你可以去:",backHome:"回首頁",browse:"隨便看看",viewImage:"點我看圖",back:"返回",gifSource:"gif來源",randomView:"隨便看"},ipAccess:{title:"訪問受限",description:"抱歉,此服務在您的地區不可用",tips:"由於當地法規和協議,本網站在您的地理區域不可用。"}},route:{premium:"訂閱",home:"探索",characterList:"角色列表",characterSearch:"角色搜尋",characterDetail:"角色詳情",characterChat:"角色聊天",chatHistory:"聊天",userCenter:"用戶中心",userCenterEdit:"個人資訊",rechargeCenter:"充值中心",contactUs:"聯繫我們",characterCollections:"收藏",characterLiked:"喜歡",rechargeHistory:"充值歷史",legalInformation:"法律資訊",underagePolicy:"未成年人政策",subscriptionPolicy:"訂閱政策",exemption2257:"18 U.S.C. 2257 豁免聲明",dmcaPolicy:"DMCA 政策",blockedContentPolicy:"封鎖內容政策",contentRemovalPolicy:"內容移除政策",complaintPolicy:"投訴政策"},rechargeHistory:{title:"付費記錄",tabs:{deposits:"充值記錄",expenses:"消費記錄"},expense:{chatWith:"與 {name} 聊天",unlockedVideo:"解鎖 {name} 的私密視頻",unlockedPhoto:"解鎖 {name} 的私密照片",upgradeVideo:"圖片升級視頻",sendGifts:"親密互動消費:{name}",other:"其他消費"}},rechargeCenter:{tabs:{subscribe:"訂閱",coins:"代幣"},premium:{title:"訂閱",choosePlan:"選擇您的方案",anonymous:"100% 匿名。您可以隨時取消。",countdown:{hours:"小時",minutes:"分鐘",seconds:"秒"},limitedOffer:"限時優惠",discount:"訂閱最高享 75% 折扣",plans:{yearly:"12 個月",quarterly:"3 個月",monthly:"1 個月",perMonth:"/月"},currentSubscription:{label:"目前訂閱",daysLeft:"剩餘天數",renewsOn:"續費日期 {date}"},subscribeTypes:{none:"無訂閱",weekly:"週訂閱",monthly:"月訂閱",quarterly:"季訂閱",annual:"年訂閱",planText:"{type}方案"},badges:{bestChoice:"最佳選擇"},security:{noAdultTransaction:"您的銀行對帳單中不會出現成人交易",noHiddenFees:"無隱藏費用 + 隨時取消訂閱",securePayment:"安全支付",sslEncrypted:"SSL 加密"},agreement:{iAgree:"我同意",termsOfService:"服務條款",and:"和",subscriptionPolicy:"訂閱政策"},subscribe:"訂閱",subscribed:"已訂閱",upgrade:"升級",errors:{alreadySubscribed:"您已訂閱"},vipGuide:{title:"解鎖專屬特權",description:"以最頂級的連結體驗與奢華內容,全面提升你的互動感受。",discountTag:"40% OFF",button:"開啟我的 Premium 旅程",benefits:{exclusivePrivateShows:"專屬私密表演 & 影片與圖片",premiumTipMenu:"會員尊享互動清單",emotionalChatModel:"情感更加豐富的 AI 聊天模型",betterMemory:"更好的記憶效果",welfareImages:"解鎖定期更新福利圖",posePrivilege:"解鎖特定姿勢特權",liveChatPrivilege:"直播間聊天特權",monthlyFreeCoins:"每月 {coins} 個免費金幣"}},paymentPending:{alt:"付款處理中",title:"付款處理中",description:"您的付款正在處理中。驗證完成後,您的帳戶將自動升級為 Premium。這可能需要幾分鐘。",button:"知道了"},benefits:{title:"高級會員權益",createAI:"創建您自己的 AI 女友",unlimitedMessages:"無限制文字訊息",freeTokens:"每月獲得 100 個免費代幣",removeBlur:"移除圖片模糊",generateImages:"生成圖片",phoneCalls:"撥打 AI 電話",fastResponse:"快速回應時間",prioritySupport:"優先客戶支援",exclusiveCharacters:"訪問專屬角色",advancedCustomization:"進階個性化定制"}},coins:{title:"代幣",currentCoins:"當前代幣",description:{title:"代幣說明",subtitle:"金幣是虛擬貨幣!擁有更多金幣,可以讓你的聊天體驗更加精彩:"},badges:{discount:"{percent}% 折扣"},features:{heartWhisper:"聊天訊息",inspirationReply:"靈感回覆",premiumChat:"特別禮物",specialGifts:"購買動圖影片"},history:{title:"充值歷史",item:{title:"代幣",conisNum:"+ {num} 代幣",orderId:"訂單編號:{id}"}}}},order:{status:{completed:{type:"已完成",title:"支付成功",description:"代幣已成功添加到您的帳戶!您現在可以使用它們來解鎖獨家功能。"},pending:{type:"處理中",title:"正在處理付款…",description:"請耐心等待我們確認您的付款。您可以隨時在充值記錄中查看最新進度。"},failed:{type:"失敗",title:"支付失敗",description:"很遺憾,此次付款無法完成。請放心,我們沒有向您收取費用。請重試。"}}},navbar:{search:{placeholder:"搜尋"},login:{title:"登入",notification:{title:"提示",message:"登入方式暫未開放"}},download:{title:"下載",dialog:{title:"下載 APP",subtitle:"下載應用程式以搜尋超過 2000 萬個角色。"}},checkIn:{title:"簽到"},joinFree:{title:"免費加入"}},sidebar:{today:"今天",yesterday:"昨天",other:"其他",footer:{affiliate:"聯盟計劃",support:"支援"}},contactUs:{email:"電子郵件",youtube:"Youtube",facebook:"Facebook",whatsapp:"WhatsApp",telegram:"Telegram",instagram:"Instagram",discord:"Discord"},loading:{title:"載入中..."},noData:{title:"這裡有點安靜..."},home:{more:"查看全部",faq:{title:"常見問題"},banner:{slide1:{title:"您的故事從這裡開始",description:"解鎖無限對話",buttonText:"立即開始聊天"},slide2:{title:"找到您的完美角色",description:"探索為您精選的熱門角色",buttonText:"立即探索"},slide3:{title:"建立您的個人檔案",description:"自定義偏好並保持進度同步",buttonText:"前往中心"}},all:"全部"},characterTabs:{recommend:"推薦",trending:"熱門",topRated:"最高評分",popular:"流行",latest:"最新"},characterChat:{sendInputPlaceholder:"輸入您的訊息...",openingPopoverTitle:"嘗試回覆",copyMessage:"複製訊息",deleteMessage:"刪除訊息",reportMessage:"舉報訊息",copySuccess:"已複製到剪貼簿",copyFailed:"複製失敗",noCopyContent:"沒有可複製的內容",sendTooFrequent:"發送過於頻繁,請稍後再試",messageTooLong:"訊息長度不能超過200個字符",sendFailed:"發送失敗,請重試",openingSuggestions:{careerChange:"我一直在考慮轉行進入科技領域。您對該行業的前景有什麼看法?",tellMore:"很有趣!您能告訴我更多關於您在市場營銷策略方面的經驗嗎?",professionalAdvice:"我感覺在目前的職位上有點停滯不前。有什麼建議可以幫助我在職業上成長嗎?"},chatUser:{collect:"收藏",collected:"已收藏",profile:"個人檔案",share:"分享"},chatHeader:{status:{online:"線上",offline:"離線",typing:"正在輸入...",sendingPhoto:"正在發送照片",living:"直播中"}}},interact:{actionTrigger:"觸發",actionSend:"送",heat:"與 ta 的互動熱度",liveRoomGuide:{description:"送禮可解鎖專屬互動表演!",action:"發送"},blockingDialog:{title:"都是你夢寐以求的...",previewPrefix:"這裡是",previewHighlight:"專屬試穿秀",previewSuffix:"的預覽。發送高級禮物即可解鎖更多內容。",action:"立即解鎖"},giftPanel:{sendGift:"送禮",recharge:"充值",more:"更多",gift:"禮物",sort:"排序",close:"關閉"},sceneSwitch:{guide:"点击这里可以切换直播间场景",button:"切换\n场景",shortButton:"场景",title:"切换场景",subtitle:"点击切换,开启不同的直播间场景。",switching:"切换中...",close:"关闭",current:"当前",price:"{price}金币解锁",payInsufficient:"金币不足,请充值后重试。",payNeedsConfirm:"此场景需要付款确认,请稍后重试。",payFailed:"场景解锁失败,请稍后重试。"},floatingNotice:{sent:"送出",requested:"點播"},mobileMenu:{mute:"靜音",unmute:"取消靜音",showMenu:"顯示選單",hideMenu:"隱藏選單",muteToast:"已靜音",unmuteToast:"已取消靜音"},fallbackReply:{feeling:"你現在感覺怎麼樣?",anywhere:"如果你現在可以去任何地方,你會去哪裡?",mind:"我很想聽聽你最近在想什麼。"},defaultNames:{action:"動作",gift:"禮物",character:"角色"},loading:{title:"請稍候...",subtitle:"{name}正在準備中。"},a11y:{avatarBackground:"頭像背景",showMenu:"顯示選單",fire:"火焰",up:"向上",send:"發送",gift:"禮物",chat:"聊天",coin:"金幣",recharge:"充值"}},chatInput:{placeholder:"輸入您的訊息..."},chatDeletePopover:{deleteChat:"刪除",hide:"隱藏"},clearChat:{title:"清除此聊天?",message:"此聊天中的所有消息將被永久刪除。",clear:"清除",clearing:"清除中...",clearChat:"清除聊天"},footer:{privacyPolicy:"隱私政策",termsService:"服務條款",content:"體驗下一代 AI 陪伴。OnlyGF 為您帶來真實的對話、情感聯繫,以及一個理解您並與您一起成長的 AI 朋友社群。",desc:"© 2025 OnlyGF. 保留所有權利。",features:"功能",popular:"熱門",chat:"聊天",createCharacter:"創建角色",myCollection:"我的收藏",myAI:"我的 AI",legalSupport:"法律與支援",termsAndPolicies:"條款與政策"},legalInformation:{pageTitle:"法律資訊",items:{termsService:"服務條款",privacyNotice:"隱私聲明",subscriptionPolicy:"訂閱政策",cookiesNotice:"Cookies 聲明",underagePolicy:"未成年人政策",contentRemovalPolicy:"內容移除政策",blockedContentPolicy:"封鎖內容政策",dmcaPolicy:"DMCA 政策",complaintPolicy:"投訴政策",exemption2257:"18 U.S.C. 2257 豁免聲明",communityGuidelines:"社群守則",affiliateTerms:"聯盟條款與條件"}},languageDialog:{title:"語言選擇",desc:"選擇您的顯示語言"},dialogUploadAvatar:{title:"選擇您的頭像",desc:"讓我們找一個感覺像您的形象。第一印象很重要!",save:"儲存"},dialogShare:{title:"分享",desc:"複製連結或直接分享,朋友可以立即開始聊天。",copy:"複製連結",success:"連結已複製到剪貼簿",error:"複製連結失敗,請重試"},dialogReport:{title:"舉報",desc:"選擇一個原因",list:{sexuallyExplicit:"色情內容",hateSpeech:"仇恨言論或騷擾",suicideSelfInjury:"自殺或自我傷害",violenceThreats:"暴力或威脅",falseInformation:"虛假資訊",spamFraud:"垃圾訊息或詐騙",privacyViolation:"侵犯隱私",harmfulMinors:"對未成年人有害",other:"其他"},other:{title:"描述",placeholder:"請描述問題..."},submit:"提交"},dialogDownload:{title:"下載",desc:"下載應用程式以搜尋超過 2000 萬個角色。",toast:"敬請期待"},dialogCoinInsufficient:{title:"解鎖下一條訊息",liveTitle:"代幣不足",desc:"您的代幣已用完,無法繼續此聊天。請充值您的餘額以解鎖更多回覆。",message:"訊息",balance:"餘額",coins:"代幣",button:"獲取更多代幣"},dialogRegisterGuide:{title:"想繼續聊天嗎?",desc:"建立免費帳號,繼續聊天並解鎖所有功能!",benefit1:"無限對話",benefit2:"儲存聊天記錄",benefit3:"訪問所有角色",signUp:"註冊",later:"稍後再說"},registerGuideMessage:{text:"想繼續聊天嗎?建立一個免費帳號吧!立即註冊獲得額外訊息獎勵——我迫不及待想繼續聊下去!",button:"註冊繼續聊天"},dialogPhotoUnlock:{title:"解鎖照片",desc:"解鎖此照片以查看完整內容",balance:"您的餘額",button:"立即解鎖",getMore:"獲取更多代幣",insufficientBalance:"餘額不足",unlocking:"解鎖中...",unlockSuccess:"照片解鎖成功",unlockFailed:"照片解鎖失敗"},photoRequest:{buttonTitle:"索取照片",selectType:"選擇照片類型:",requestFailed:"索取照片失敗",sendMePhoto:"發送照片給我",noMorePhotos:"沒有更多照片了",poses:{random:"隨機",selfie:"自拍",posing:"擺姿勢",sitting:"坐姿",kneeling:"跪姿",squatting:"蹲姿",standing:"站姿",prone:"俯臥"},vipGuide:{title:"解鎖 VIP 照片姿勢",description:"訂閱即可解鎖專屬照片姿勢,隨心索取想要的姿勢。",buttonText:"立即解鎖 VIP"}},dialogLogout:{title:"登出?",desc:"您確定要登出嗎?",desc2:"您需要重新登入才能訪問您的帳戶。",confirm:"登出"},dialogLogin:{title:"登入 / 註冊",subtitle:"與超過2000萬女孩聊天",continueWith:"使用 {method} 繼續",google:"Google",apple:"Apple",facebook:"Facebook",line:"Line",guest:"訪客",desc:"我同意通過電子郵件接收特別優惠、行銷通訊和服務更新。",sub:"我確認我已",age:"18+",agreementPrefix:"接受",termsOfService:"服務條款",and:"和",privacyPolicy:"隱私政策",or:"或",emailPlaceholder:"電子郵箱地址",continueWithEmail:"使用郵箱繼續",verifyTitle:"驗證您的郵箱",verifyDesc:"我們已向 {email} 發送了一個6位數驗證碼。請打開郵件並在下方輸入驗證碼以繼續。",confirm:"確認",resendCode:"重新發送",resendCountdown:"{seconds}秒後重新發送",back:"返回",invalidEmail:"請輸入有效的電子郵箱地址",codeSent:"驗證碼已發送",codeSendFailed:"驗證碼發送失敗",codeRequired:"請輸入驗證碼",codeInvalid:"驗證碼無效",promotionHint:"首次訂閱 <b>7.5 折</b> 獨家優惠"},dialogCheckin:{title:"每日獎勵",desc:"連續簽到7天即可領取所有獎勵!",button:"領取獎勵",claimedToday:"今日的獎勵已領取",resultTitle:"獎勵已領取!",resultDesc:"您已連續簽到 {days} 天。繼續保持!",resultButton:"知道了",daysText:"第 {days} 天"},auth:{loginSuccess:"登入成功",loginFailed:"登入失敗,請重試"},person:{edit:"編輯",follow:"關注",fans:"粉絲",createBot:" 機器人",sendPost:" 貼文",followBot:" 關注的機器人"},common:{noData:"暫無資料",clickRetry:"點擊重試",live:"直播",report:"舉報訊息",reset:"重設",months:{january:"一月",february:"二月",march:"三月",april:"四月",may:"五月",june:"六月",july:"七月",august:"八月",september:"九月",october:"十月",november:"十一月",december:"十二月"},submitting:"提交中...",unlockFailed:"需要解鎖訂閱權限"},characterDetail:{online:"線上",chatToMe:"與我聊天",collect:"收藏",collected:"已收藏",share:"分享",gallery:"畫廊",report:"舉報",age:"年齡",career:"職業",height:"身高",constellation:"星座",bloodType:"血型",unknown:"未知",likeSuccess:"點讚成功",unlikeSuccess:"取消點讚成功",collectSuccess:"收藏成功",uncollectSuccess:"取消收藏成功",likeFailed:"點讚失敗,請重試",collectFailed:"收藏失敗,請重試",networkError:"網路錯誤,請重試",reportSuccess:"舉報已成功提交,我們會盡快處理",reportFailed:"舉報提交失敗,請重試"},langSelect:{message:{success:"切換語言成功!"}},userCenter:{title:"個人資訊",username:"用戶名稱",usernamePlaceholder:"AlexOnlyGF",usernameHelper:"請輸入 3-25 個字元,允許使用字母、表情符號、數字和底線。用戶名稱必須唯一。",profile:"個人簡介(可選)",profilePlaceholder:"完善您的個人簡介,讓其他人更了解您",save:"儲存",saving:"儲存中...",saveSuccess:"儲存成功",saveFailed:"儲存失敗,請重試",editProfile:"編輯個人檔案",collections:"收藏",likes:"喜歡",logout:"登出",logoutConfirm:"您確定要登出嗎?",downloadApp:"下載 APP",language:"語言",privacyPolicy:"隱私政策",termsOfUse:"使用條款",contactUs:"聯繫我們",support:"支援",supportDesc:"我們全天候 24/7 為您服務",premiumTitle:"OnlyGF Premium",premiumDesc:"解鎖所有表演,每月獲得 {coins} 枚獎勵金幣",myBalance:"我的餘額",recharge:"充值",currentSubscription:"目前訂閱",daysLeft:"剩餘天數"},download:{googlePlay:{name:"Google Play",description:"獲取官方應用程式,享受安全、無縫的更新和新夥伴。",subtitle:"前往下載"},appStore:{name:"App Store",description:"享受為您的 iPhone 優化的私密、沉浸式聊天體驗。",subtitle:"下載"},androidApk:{name:"Android APK",description:"直接安裝,享受極致隱私、即時存取和最新更新。",subtitle:"下載"},webApp:{name:"Web APP",description:"從任何瀏覽器即時聊天——無需安裝。您的私密空間正等待著您。",subtitle:"安裝"}},premiumPhotoUnlock:{vipUnlock:"可以解鎖",vipMark:"VIP",proMark:"Pro"},photoGallery:{photoCount:"{current}/{total}",prevPhoto:"上一張",nextPhoto:"下一張"},dialogVideoUnlock:{title:"解鎖視頻",desc:"解鎖此視頻以觀看完整內容",button:"立即解鎖",balance:"您的餘額",insufficientBalance:"餘額不足",getMore:"獲取更多代幣",unlocking:"解鎖中...",unlockSuccess:"視頻解鎖成功",unlockFailed:"視頻解鎖失敗"},upgradablePhoto:{unlockMoment:"解鎖精彩瞬間",upgrading:"升級中...",upgradeSuccess:"已升級為視頻",upgradeFailed:"升級失敗"},dialogWebViewGuide:{title:"請使用瀏覽器開啟",desc:"Google 登入不支援在應用內置瀏覽器中使用,請複製連結到系統瀏覽器(Chrome/Safari)完成登入。",currentUrl:"當前頁面地址",copyLink:"複製連結",copied:"連結已複製",copyFailed:"複製失敗,請手動複製",steps:{step1:"點擊上方按鈕複製連結",step2:"開啟系統瀏覽器(Chrome/Safari)",step3:"貼上連結並訪問完成登入"}},emailChat:{openEmailChat:"打開郵箱聊天",connectViaEmail:"通過郵件聯繫",enterEmailTitle:"輸入郵箱以接收信件",receiveYourFirstLetter:"接收你的第一封信",receiveLetter:"接收信件",startEmailChatWith:"與 {botName} 開始郵箱聊天",letterWillBeSent:"信件即將發送到你的郵箱!",description:"想要收到專屬於你的信件嗎?開啟後,TA 會主動給你寫信,讓你們的故事延續到現實生活中。",emailPlaceholder:"郵箱地址",sendNow:"立即發送",emailChatStartedWith:"已與 {botName} 開啟郵件聊天",switchToBot:"切換到 {botName}",receiveLetterAt:"接收信件",tips:"提示:",tipsContent:"TA 會主動給你寫信並回覆你的信件。這是私密的、慢節奏的、專屬於你們兩個人的。",invalidEmail:"請輸入有效的郵箱地址",enableSuccess:"郵件聊天已開啟",disableSuccess:"郵件聊天已關閉",updateEmailSuccess:"郵箱已更新",switchBotSuccess:"已成功切換到新角色",enableFailed:"開啟郵件聊天失敗",disableFailed:"關閉郵件聊天失敗",updateEmailFailed:"更新郵箱失敗",switchBotFailed:"切換角色失敗",disableConfirmTitle:"關閉郵件聊天?",disableConfirmMessage:"你將不再收到該角色的信件。",switchBotConfirmTitle:"切換角色?",switchBotConfirmMessage:"將郵件聊天從 {fromBot} 切換到 {toBot}?",updateEmail:"更新郵箱",enterNewEmail:"請輸入新的郵箱地址",firstLetterTriggered:"您的第一封信正在路上!",firstLetterFailed:"觸發首封信件失敗",verifyTitle:"驗證郵箱",verifyDesc:"驗證碼已發送至 {email}",codeRequired:"請輸入6位驗證碼",codeInvalid:"驗證碼錯誤或已過期",codeSent:"驗證碼已發送",codeSendFailed:"驗證碼發送失敗",confirm:"確認",resendCode:"重新發送",resendCountdown:"{seconds}秒後可重新發送"},emailCallback:{verifying:"正在驗證您的連結...",success:"成功!",redirectingToChat:"正在跳轉到聊天...",oops:"糟糕!",redirectingIn:"{seconds}秒後跳轉到首頁...",goHomeNow:"立即返回首頁",invalidLink:"無效的連結",linkExpired:"連結已過期,請返回郵箱重新點擊。",linkInvalid:"無效的連結",linkUsed:"連結已失效",userNotFound:"用戶不存在",networkError:"網路錯誤,請重試"},profileComplete:{title:"歡迎來到 {appName}!",subtitle:"告訴我們更多資訊,獲得更好的個人化體驗",nicknameLabel:"您的名字",nicknamePlaceholder:"輸入一個酷炫的暱稱",nicknameRequired:"請輸入您的暱稱",genderLabel:"您使用哪個代詞?",genderHint:"(性別一旦選擇後無法更改。)",birthdayLabel:"您的生日?",birthdayPlaceholder:"月/日/年",birthdayRequired:"請選擇您的生日",birthdayUnderAge:"您必須年滿18歲",submitButton:"開始我的旅程!",genderRequired:"請選擇您的性別",submitSuccess:"資料完善成功!",submitFailed:"提交失敗,請重試",genderOptions:{male:"他/祂",female:"她/祂",other:"他們/祂們"}},seo:{description:{characterList:"浏览 {appName} 上的所有 AI 角色。找到您理想的 AI 伴侣,享受实时互动、聊天和故事体验。",characterSearch:"在 {appName} 上搜索 AI 角色。按名称、标签或兴趣发现 AI 伴侣,即刻开始聊天。",chatHistory:"查看您在 {appName} 上的 AI 聊天记录,继续与您喜爱的 AI 伴侣对话。",userCenter:"在用户中心管理您的 {appName} 个人资料、收藏和账户设置。",rechargeCenter:"在 {appName} 上充值金币和订阅会员。解锁高级 AI 聊天、实时互动和专属内容。",webTutorial:"通过我们的网页教程了解如何使用 {appName}。获取 AI 聊天、实时互动以及充分发挥 AI 伴侣功能的技巧。",contactUs:"联系 {appName} 获取有关 AI 伴侣体验的支持、合作和产品咨询。",privacyPolicy:"阅读 {appName} 隐私政策,了解我们如何收集、使用和保护您的个人信息。",termsService:"阅读 {appName} 服务条款,了解您使用我们 AI 伴侣平台的规则。"}}},[_s.ES]:{errorPage:{page404:{oops:"¡OOPS!",headline:"El webmaster dice que no puedes entrar a esta página...",info:"Por favor, verifica que la URL que ingresaste sea correcta, o haz clic en el botón de abajo para volver a la página de inicio.",backToHome:"Volver al inicio",allRightsReserved:"Todos los derechos reservados"},page401:{oops:"¡Oops!",noPermission:"No tienes permiso para ir a esta página",contactLeader:"Si no estás satisfecho, por favor contacta a tu líder",orYouCan:"O puedes ir a:",backHome:"Volver al inicio",browse:"Solo navegar",viewImage:"Haz clic para ver la imagen",back:"Volver",gifSource:"fuente gif",randomView:"Vista aleatoria"},ipAccess:{title:"Acceso Restringido",description:"Lo sentimos, este servicio no está disponible en su región",tips:"Debido a las regulaciones y acuerdos locales, este sitio web no está disponible en su región geográfica."}},route:{premium:"Premium",home:"Descubrir",characterList:"Lista de Personajes",characterSearch:"Búsqueda de Personajes",characterDetail:"Detalles del Personaje",characterChat:"Chat con Personaje",chatHistory:"Chat",userCenter:"Centro de Usuario",userCenterEdit:"Información Personal",rechargeCenter:"Centro de Recarga",contactUs:"Contáctanos",characterCollections:"Colecciones",characterLiked:"Me Gusta",rechargeHistory:"Historial de Recargas",legalInformation:"Información legal",underagePolicy:"Política de menores",subscriptionPolicy:"Política de suscripción",exemption2257:"Exención 18 U.S.C. 2257",dmcaPolicy:"Política DMCA",blockedContentPolicy:"Política de contenido bloqueado",contentRemovalPolicy:"Política de eliminación de contenido",complaintPolicy:"Política de reclamaciones"},rechargeHistory:{title:"Historial de Transacciones",tabs:{deposits:"Recargas",expenses:"Gastos"},expense:{chatWith:"Chat con {name}",unlockedVideo:"Video privado de {name} desbloqueado",unlockedPhoto:"Foto privada de {name} desbloqueada",upgradeVideo:"Actualizar video",sendGifts:"Gasto de interacción íntima: {name}",other:"Otro gasto"}},rechargeCenter:{tabs:{subscribe:"Suscribirse",coins:"Monedas"},premium:{title:"Suscribirse",choosePlan:"Elige Tu Plan",anonymous:"100% anónimo. Puedes cancelar en cualquier momento.",countdown:{hours:"Horas",minutes:"Minutos",seconds:"Segundos"},limitedOffer:"OFERTA POR TIEMPO LIMITADO",discount:"Hasta 75% de descuento en tu suscripción",plans:{yearly:"12 meses",quarterly:"3 meses",monthly:"1 mes",perMonth:"/mes"},currentSubscription:{label:"Suscripci?n actual",daysLeft:"D?as restantes",renewsOn:"Se renueva el {date}"},subscribeTypes:{none:"Sin suscripci?n",weekly:"Semanal",monthly:"Mensual",quarterly:"Trimestral",annual:"Anual",planText:"Plan {type}"},badges:{bestChoice:"MEJOR OPCIÓN"},security:{noAdultTransaction:"Sin transacciones para adultos en tu extracto bancario",noHiddenFees:"Sin cargos ocultos + Cancela la suscripción en cualquier momento",securePayment:"Pago Seguro",sslEncrypted:"Encriptación SSL"},agreement:{iAgree:"Acepto los",termsOfService:"Términos de Servicio",and:"y",subscriptionPolicy:"Política de suscripción"},subscribe:"Suscribirse",subscribed:"Suscrito",upgrade:"Mejorar",errors:{alreadySubscribed:"Ya tienes una suscripción activa."},vipGuide:{title:"Desbloquea privilegios exclusivos",description:"Eleva tu experiencia con nuestro nivel mas exclusivo de conexion y contenido de lujo.",discountTag:"40% DTO",button:"Iniciar mi viaje Premium",benefits:{exclusivePrivateShows:"Shows Privados Exclusivos & Videos e Imágenes",premiumTipMenu:"Menú de Propinas Premium",emotionalChatModel:"Modelo de chat AI con emociones mas ricas",betterMemory:"Mejor memoria en cada interaccion",welfareImages:"Desbloquea imagenes bonus actualizadas regularmente",posePrivilege:"Desbloquea privilegios de poses especiales",liveChatPrivilege:"Privilegios de chat en sala en vivo",monthlyFreeCoins:"{coins} monedas gratis cada mes"}},paymentPending:{alt:"Pago en curso",title:"Pago en curso",description:"Tu pago se está procesando. Una vez verificado, tu cuenta se actualizará automáticamente a Premium. Esto puede tardar unos minutos.",button:"Entendido"},benefits:{title:"Beneficios Premium",createAI:"Crea tu propia Novia IA",unlimitedMessages:"Mensajes de texto ilimitados",freeTokens:"Obtén 100 tokens GRATIS / mes",removeBlur:"Eliminar desenfoque de imágenes",generateImages:"Generar imágenes",phoneCalls:"Hacer llamadas IA",fastResponse:"Tiempo de respuesta rápido",prioritySupport:"Soporte prioritario al cliente",exclusiveCharacters:"Acceso a personajes exclusivos",advancedCustomization:"Personalización avanzada de personalidad"}},coins:{title:"Monedas",currentCoins:"Monedas Actuales",description:{title:"Descripción de Monedas",subtitle:"¡Las monedas son la moneda virtual del universo! Con más monedas, tu experiencia de chat puede ser aún más increíble:"},badges:{discount:"{percent}% DE DESCUENTO"},features:{heartWhisper:"Mensaje de chat",inspirationReply:"Respuesta inspiradora",premiumChat:"Regalos especiales",specialGifts:"Comprar video animado"},history:{title:"Historial de Recargas",item:{title:"Monedas",conisNum:"+ {num} monedas",orderId:"ID de Pedido: {id}"}}}},order:{status:{completed:{type:"Completado",title:"Pago Exitoso",description:"¡Las monedas se han agregado exitosamente a tu cuenta! Ahora puedes usarlas para desbloquear funciones exclusivas."},pending:{type:"Pendiente",title:"Procesando Pago…",description:"Por favor espera mientras confirmamos tu pago. Puedes verificar el progreso más reciente en el historial de recargas en cualquier momento."},failed:{type:"Fallido",title:"Pago Fallido",description:"Desafortunadamente, este pago no pudo completarse. Ten la seguridad de que no te cobramos. Por favor, intenta nuevamente."}}},navbar:{search:{placeholder:"Buscar"},login:{title:"Iniciar Sesión",notification:{title:"Consejo",message:"Método de inicio de sesión aún no disponible"}},download:{title:"Descargar",dialog:{title:"Descargar APP",subtitle:"Descarga la aplicación para buscar entre más de 20 millones de personajes."}},checkIn:{title:"Registrarse"},joinFree:{title:"Únete Gratis"}},sidebar:{today:"HOY",yesterday:"AYER",other:"OTRO",footer:{affiliate:"Afiliado",support:"Soporte"}},contactUs:{email:"Correo electrónico",youtube:"Youtube",facebook:"Facebook",whatsapp:"WhatsApp",telegram:"Telegram",instagram:"Instagram",discord:"Discord"},loading:{title:"Cargando..."},noData:{title:"Está un poco tranquilo aquí..."},home:{more:"Ver Todo",faq:{title:"Preguntas Frecuentes"},banner:{slide1:{title:"Tu Historia Comienza Aquí",description:"Desbloquea Conversaciones Infinitas",buttonText:"Comenzar a Chatear Ahora"},slide2:{title:"Encuentra Tu Personaje Perfecto",description:"Explora personajes populares seleccionados para ti",buttonText:"Explorar Ahora"},slide3:{title:"Construye Tu Perfil",description:"Personaliza preferencias y mantén el progreso sincronizado",buttonText:"Ir al Centro"}},all:"Todos"},characterTabs:{recommend:"Recomendado",trending:"Tendencias",topRated:"Mejor Valorados",popular:"Popular",latest:"Últimos"},characterChat:{sendInputPlaceholder:"Escribe tu mensaje...",openingPopoverTitle:"Intenta responder",copyMessage:"Copiar Mensaje",deleteMessage:"Eliminar Mensaje",reportMessage:"Reportar Mensaje",copySuccess:"Copiado al portapapeles",copyFailed:"Error al copiar",noCopyContent:"No hay contenido para copiar",sendTooFrequent:"Enviando con demasiada frecuencia, inténtalo de nuevo más tarde",messageTooLong:"La longitud del mensaje no puede exceder los 200 caracteres",sendFailed:"Error al enviar, por favor inténtalo de nuevo",openingSuggestions:{careerChange:"Estoy pensando en cambiar de carrera a tecnología. ¿Qué opinas sobre las perspectivas de esta industria?",tellMore:"¡Interesante! ¿Podrías contarme más sobre tu experiencia en estrategia de marketing?",professionalAdvice:"Me siento un poco estancado en mi rol actual. ¿Algún consejo sobre cómo avanzar profesionalmente?"},chatUser:{collect:"Coleccionar",collected:"Coleccionado",profile:"Perfil",share:"Compartir"},chatHeader:{status:{online:"En línea",offline:"Desconectado",typing:"Escribiendo...",sendingPhoto:"enviando una foto",living:"En vivo"}}},interact:{actionTrigger:"Activar",actionSend:"Enviar",heat:"Calor de interacción con ella",liveRoomGuide:{description:"¡Envía regalos para desbloquear actuaciones interactivas exclusivas!",action:"Enviar"},blockingDialog:{title:"Todo lo que has soñado...",previewPrefix:"Aquí tienes un adelanto del ",previewHighlight:"Show exclusivo de prueba.",previewSuffix:" Envía regalos premium para desbloquear más.",action:"Desbloquear ahora"},giftPanel:{sendGift:"Enviar regalo",recharge:"Recargar",more:"Más",gift:"Regalo",sort:"Ordenar",close:"Cerrar"},sceneSwitch:{guide:"Toca aquí para explorar más escenas.",button:"Cambiar\nescena",shortButton:"Escena",title:"Cambiar escena",subtitle:"Haz clic para cambiar y abrir una escena en vivo diferente.",switching:"Cambiando...",close:"Cerrar",current:"Actual",price:"{price} monedas para desbloquear",payInsufficient:"Monedas insuficientes. Recarga e intentalo de nuevo.",payNeedsConfirm:"Esta escena requiere confirmacion de pago. Intentalo de nuevo.",payFailed:"No se pudo desbloquear esta escena. Intentalo de nuevo."},floatingNotice:{sent:"envió",requested:"solicitó"},mobileMenu:{mute:"Silenciar",unmute:"Activar sonido",showMenu:"Mostrar menú",hideMenu:"Ocultar menú",muteToast:"Silenciado",unmuteToast:"Sonido activado"},fallbackReply:{feeling:"¿Cómo te sientes ahora?",anywhere:"Si pudieras estar en cualquier lugar ahora, ¿dónde estarías?",mind:"Me encantaría saber qué has estado pensando últimamente."},defaultNames:{action:"Acción",gift:"Regalo",character:"Personaje"},loading:{title:"Por favor espera...",subtitle:"{name} se está preparando."},a11y:{avatarBackground:"Fondo del avatar",showMenu:"Mostrar menú",fire:"Fuego",up:"Arriba",send:"Enviar",gift:"Regalo",chat:"Chat",coin:"Moneda",recharge:"Recargar"}},chatInput:{placeholder:"Escribe tu mensaje..."},chatDeletePopover:{deleteChat:"Eliminar",hide:"Ocultar"},clearChat:{title:"¿Borrar este chat?",message:"Todos los mensajes de este chat se eliminarán permanentemente.",clear:"Borrar",clearing:"Borrando...",clearChat:"Borrar Chat"},footer:{privacyPolicy:"Política de Privacidad",termsService:"Términos de Servicio",content:"Descubre la próxima generación de compañía IA. OnlyGF te trae conversaciones auténticas, conexiones emocionales y una comunidad de amigos IA que te entienden y crecen contigo.",desc:"© 2025 OnlyGF. Todos los derechos reservados.",features:"Características",popular:"Popular",chat:"Chat",createCharacter:"Crear Personaje",myCollection:"Mi colección",myAI:"Mi IA",legalSupport:"Legal y soporte",termsAndPolicies:"Términos y políticas"},legalInformation:{pageTitle:"Información legal",items:{termsService:"Términos de servicio",privacyNotice:"Aviso de privacidad",subscriptionPolicy:"Política de suscripción",cookiesNotice:"Aviso de cookies",underagePolicy:"Política de menores",contentRemovalPolicy:"Política de eliminación de contenido",blockedContentPolicy:"Política de contenido bloqueado",dmcaPolicy:"Política DMCA",complaintPolicy:"Política de reclamaciones",exemption2257:"Exención 18 U.S.C. 2257",communityGuidelines:"Normas de la comunidad",affiliateTerms:"Términos y condiciones de afiliados"}},languageDialog:{title:"Selección de Idioma",desc:"Selecciona tu idioma de visualización"},dialogUploadAvatar:{title:"Elige Tu Avatar",desc:"Encontremos un look que sea totalmente tú. ¡Las primeras impresiones cuentan!",save:"Guardar"},dialogShare:{title:"Compartir",desc:"Copia el enlace o comparte directamente, los amigos pueden comenzar a chatear instantáneamente.",copy:"Copiar enlace",success:"Enlace copiado al portapapeles",error:"Error al copiar el enlace, por favor intenta nuevamente"},dialogReport:{title:"Reportar",desc:"Selecciona una razón",list:{sexuallyExplicit:"Contenido sexualmente explícito",hateSpeech:"Discurso de odio o acoso",suicideSelfInjury:"Suicidio o autolesión",violenceThreats:"Violencia o amenazas",falseInformation:"Información falsa",spamFraud:"Spam o fraude",privacyViolation:"Violación de privacidad",harmfulMinors:"Dañino para menores",other:"Otro"},other:{title:"Descripción",placeholder:"Por favor describe el problema..."},submit:"Enviar"},dialogDownload:{title:"Descargar",desc:"Descarga la aplicación para buscar entre más de 20 millones de personajes.",toast:"Próximamente"},dialogCoinInsufficient:{title:"Desbloquear Siguiente Mensaje",liveTitle:"Monedas insuficientes",desc:"Te has quedado sin monedas para continuar este chat. Por favor recarga tu saldo para desbloquear más respuestas.",message:"Mensajes",balance:"Saldo",coins:"Monedas",button:"Obtener Más Monedas"},dialogRegisterGuide:{title:"¿Quieres seguir hablando?",desc:"¡Crea una cuenta gratuita para continuar chateando y desbloquear todas las funciones!",benefit1:"Conversaciones ilimitadas",benefit2:"Guardar historial de chat",benefit3:"Acceso a todos los personajes",signUp:"Registrarse",later:"Quizás Después"},registerGuideMessage:{text:"¿Quieres seguir hablando? ¡Solo crea una cuenta gratis! Regístrate ahora para mensajes de bonificación—¡No puedo esperar para continuar!",button:"Regístrate para chatear"},dialogPhotoUnlock:{title:"Desbloquear Foto",desc:"Desbloquea esta foto para ver el contenido completo",balance:"Tu Saldo",button:"Desbloquear Ahora",getMore:"Obtener Más Monedas",insufficientBalance:"Saldo Insuficiente",unlocking:"Desbloqueando...",unlockSuccess:"Foto desbloqueada exitosamente",unlockFailed:"Error al desbloquear la foto"},photoRequest:{buttonTitle:"Solicitar una foto",selectType:"Selecciona el tipo de foto:",requestFailed:"Error al solicitar la foto",sendMePhoto:"Envíame una foto",noMorePhotos:"No hay más fotos disponibles",poses:{random:"Aleatorio",selfie:"Selfie",posing:"Posando",sitting:"Sentada",kneeling:"Arrodillada",squatting:"En cuclillas",standing:"De pie",prone:"Acostada"},vipGuide:{title:"Desbloquear Poses de Fotos VIP",description:"Suscríbete para desbloquear poses de fotos exclusivas y solicitar la pose que desees.",buttonText:"Desbloquear VIP Ahora"}},dialogLogout:{title:"¿Cerrar Sesión?",desc:"¿Estás seguro de que quieres cerrar sesión?",desc2:"Tendrás que iniciar sesión nuevamente para acceder a tu cuenta.",confirm:"Cerrar Sesión"},dialogLogin:{title:"Iniciar Sesión / Registrarse",subtitle:"Chatea con más de 20 millones de chicas",continueWith:"Continuar con {method}",google:"Google",apple:"Apple",facebook:"Facebook",line:"Line",guest:"Invitado",desc:"Acepto recibir ofertas especiales, comunicaciones de marketing y actualizaciones de servicio por correo electrónico.",sub:"Confirmo que soy",age:"18+",agreementPrefix:"aceptar los",termsOfService:"Términos de Servicio",and:"y",privacyPolicy:"Política de Privacidad",or:"o",emailPlaceholder:"Dirección de correo electrónico",continueWithEmail:"Continuar con Correo",verifyTitle:"Verifica tu correo",verifyDesc:"Hemos enviado un código de verificación de 6 dígitos a {email}. Abre el correo e ingresa el código abajo para continuar.",confirm:"Confirmar",resendCode:"Reenviar código",resendCountdown:"Reenviar en {seconds}s",back:"Volver",invalidEmail:"Por favor ingresa una dirección de correo válida",codeSent:"Código de verificación enviado",codeSendFailed:"Error al enviar el código de verificación",codeRequired:"Por favor ingresa el código de verificación",codeInvalid:"Código de verificación inválido",promotionHint:"Primera suscripción <b>-75% OFF</b> Oferta Exclusiva"},dialogCheckin:{title:"Recompensas Diarias",desc:"¡Regístrate durante 7 días consecutivos para reclamar todas las recompensas!",button:"Reclamar Recompensa",claimedToday:"Reclamado Para Hoy",resultTitle:"¡Recompensa Reclamada!",resultDesc:"Te has registrado durante {days} días seguidos. ¡Sigue así!",resultButton:"Entendido",daysText:"Día {days}"},auth:{loginSuccess:"Inicio de sesión exitoso",loginFailed:"Error al iniciar sesión, por favor intenta nuevamente"},person:{edit:"Editar",follow:"Siguiendo",fans:"Seguidores",createBot:" Bots",sendPost:" Publicaciones",followBot:" Bots Seguidos"},common:{noData:"Sin datos",clickRetry:"Toca para reintentar",live:"En vivo",report:"Reportar mensaje",reset:"Restablecer",months:{january:"Enero",february:"Febrero",march:"Marzo",april:"Abril",may:"Mayo",june:"Junio",july:"Julio",august:"Agosto",september:"Septiembre",october:"Octubre",november:"Noviembre",december:"Diciembre"},submitting:"Enviando...",unlockFailed:"Se requiere acceso de suscripción"},characterDetail:{online:"En Línea",chatToMe:"Chatea Conmigo",collect:"Coleccionar",collected:"Coleccionado",share:"Compartir",gallery:"Galería",report:"Reportar",age:"Edad",career:"Carrera",height:"Altura",constellation:"Constelación",bloodType:"Tipo de Sangre",unknown:"Desconocido",likeSuccess:"Me gusta agregado exitosamente",unlikeSuccess:"Me gusta quitado exitosamente",collectSuccess:"Coleccionado exitosamente",uncollectSuccess:"Colección cancelada exitosamente",likeFailed:"Error al dar me gusta, por favor intenta nuevamente",collectFailed:"Error al coleccionar, por favor intenta nuevamente",networkError:"Error de red, por favor intenta nuevamente",reportSuccess:"Reporte enviado exitosamente, lo procesaremos lo antes posible",reportFailed:"Error al enviar el reporte, por favor intenta nuevamente"},langSelect:{message:{success:"¡Cambio de idioma exitoso!"}},userCenter:{title:"Información Personal",username:"Nombre de Usuario",usernamePlaceholder:"AlexOnlyGF",usernameHelper:"Por favor ingresa 3-25 caracteres, se permiten letras, emoji, números y guiones bajos. El nombre de usuario debe ser único.",profile:"Perfil (Opcional)",profilePlaceholder:"Completa tu biografía para que otros puedan conocerte mejor",save:"Guardar",saving:"Guardando...",saveSuccess:"Guardado exitosamente",saveFailed:"Error al guardar, por favor intenta nuevamente",editProfile:"Editar Perfil",collections:"Colecciones",likes:"Me Gusta",logout:"Cerrar Sesión",logoutConfirm:"¿Estás seguro de que quieres cerrar sesión?",downloadApp:"Descargar APP",language:"Idioma",privacyPolicy:"Política de Privacidad",termsOfUse:"Términos de Uso",contactUs:"Contáctanos",support:"Soporte",supportDesc:"Estamos aquí para ti 24/7",premiumTitle:"OnlyGF Premium",premiumDesc:"Desbloquea todos los shows y {coins} monedas extra cada mes",myBalance:"Mi saldo",recharge:"Recargar",currentSubscription:"Suscripción actual",daysLeft:"Días restantes"},download:{googlePlay:{name:"Google Play",description:"Obtén la aplicación oficial para actualizaciones seguras y sin problemas y nuevos compañeros.",subtitle:"CONSÍGUELO EN"},appStore:{name:"App Store",description:"Disfruta de una experiencia de chat privada e inmersiva optimizada para tu iPhone.",subtitle:"Descargar"},androidApk:{name:"Android APK",description:"Instala directamente para máxima privacidad, acceso instantáneo y las últimas actualizaciones.",subtitle:"Descargar"},webApp:{name:"Web APP",description:"Chatea instantáneamente desde cualquier navegador, no necesita instalación. Tu escape privado te espera.",subtitle:"Instalar"}},premiumPhotoUnlock:{vipUnlock:"Puede desbloquear",vipMark:"VIP",proMark:"Pro"},photoGallery:{photoCount:"{current}/{total}",prevPhoto:"Anterior",nextPhoto:"Siguiente"},dialogVideoUnlock:{title:"Desbloquear Video",desc:"Desbloquea este video para ver el contenido completo",button:"Desbloquear Ahora",balance:"Tu Saldo",insufficientBalance:"Saldo Insuficiente",getMore:"Obtener Más Monedas",unlocking:"Desbloqueando...",unlockSuccess:"Video desbloqueado exitosamente",unlockFailed:"Error al desbloquear video"},upgradablePhoto:{unlockMoment:"Desbloquear el momento",upgrading:"Actualizando...",upgradeSuccess:"Actualizado a video",upgradeFailed:"Error al actualizar"},dialogWebViewGuide:{title:"Por favor, abra en el navegador",desc:"El inicio de sesión de Google no es compatible con los navegadores integrados de las aplicaciones. Copie el enlace y ábralo en su navegador del sistema (Chrome/Safari) para completar el inicio de sesión.",currentUrl:"URL de la página actual",copyLink:"Copiar enlace",copied:"Enlace copiado",copyFailed:"Error al copiar, copie manualmente",steps:{step1:"Haga clic en el botón de arriba para copiar el enlace",step2:"Abra su navegador del sistema (Chrome/Safari)",step3:"Pegue el enlace y visite para completar el inicio de sesión"}},emailChat:{openEmailChat:"Abrir chat de correo",connectViaEmail:"Conectar por correo",enterEmailTitle:"Ingrese el correo para recibir cartas",receiveYourFirstLetter:"Recibe tu primera carta",receiveLetter:"Recibir carta",startEmailChatWith:"Iniciar chat de correo con {botName}",letterWillBeSent:"¡La carta se enviará a tu correo pronto!",description:"¿Quieres recibir cartas escritas solo para ti, más allá del chat? Una vez habilitado, llegarán a tu bandeja de entrada, continuando tu historia como si fueran parte real de tu vida.",emailPlaceholder:"Dirección de correo",sendNow:"Enviar ahora",emailChatStartedWith:"Chat de correo iniciado con {botName}",switchToBot:"Cambiar a {botName}",receiveLetterAt:"Recibir carta",tips:"Consejos:",tipsContent:"Ella te escribirá proactivamente y responderá a tus cartas. Es privado, de ritmo lento y exclusivo para ustedes dos.",invalidEmail:"Por favor ingrese una dirección de correo válida",enableSuccess:"Chat de correo habilitado exitosamente",disableSuccess:"Chat de correo deshabilitado exitosamente",updateEmailSuccess:"Correo actualizado exitosamente",switchBotSuccess:"Cambiado a nuevo personaje exitosamente",enableFailed:"Error al habilitar el chat de correo",disableFailed:"Error al deshabilitar el chat de correo",updateEmailFailed:"Error al actualizar el correo",switchBotFailed:"Error al cambiar de personaje",disableConfirmTitle:"¿Cerrar chat de correo?",disableConfirmMessage:"Ya no recibirás cartas de este personaje.",switchBotConfirmTitle:"¿Cambiar personaje?",switchBotConfirmMessage:"¿Cambiar chat de correo de {fromBot} a {toBot}?",updateEmail:"Actualizar correo",enterNewEmail:"Por favor ingrese la nueva dirección de correo",firstLetterTriggered:"¡Tu primera carta está en camino!",firstLetterFailed:"Error al enviar la primera carta",verifyTitle:"Verificar correo",verifyDesc:"Código de verificación enviado a {email}",codeRequired:"Por favor ingrese el código de 6 dígitos",codeInvalid:"Código inválido o expirado",codeSent:"Código enviado",codeSendFailed:"Error al enviar el código",confirm:"Confirmar",resendCode:"Reenviar",resendCountdown:"Reenviar en {seconds}s"},emailCallback:{verifying:"Verificando tu enlace...",success:"¡Éxito!",redirectingToChat:"Redirigiendo al chat...",oops:"¡Ups!",redirectingIn:"Redirigiendo a la página principal en {seconds}s...",goHomeNow:"Ir a la página principal ahora",invalidLink:"Enlace inválido",linkExpired:"El enlace ha expirado. Por favor regresa a tu correo y haz clic nuevamente.",linkInvalid:"Enlace inválido",linkUsed:"El enlace ya no es válido",userNotFound:"Usuario no encontrado",networkError:"Error de red, por favor intenta de nuevo"},profileComplete:{title:"¡Bienvenido a {appName}!",subtitle:"Cuéntanos más para una mejor experiencia personalizada",nicknameLabel:"¿Cuál es tu nombre?",nicknamePlaceholder:"Ingresa un apodo genial",nicknameRequired:"Por favor ingresa tu apodo",genderLabel:"¿Qué pronombre usas?",genderHint:"(El género no se puede cambiar una vez seleccionado.)",birthdayLabel:"¿Tu cumpleaños?",birthdayPlaceholder:"MM/DD/AAAA",birthdayRequired:"Por favor selecciona tu cumpleaños",birthdayUnderAge:"Debes tener al menos 18 años",submitButton:"¡Comenzar mi viaje!",genderRequired:"Por favor selecciona tu género",submitSuccess:"¡Perfil completado con éxito!",submitFailed:"Error al enviar, por favor intenta de nuevo",genderOptions:{male:"Él",female:"Ella",other:"Elle"}},seo:{description:{characterList:"Explora todos los personajes de IA en {appName}. Encuentra tu compañero de IA ideal para interacción en vivo, chat y narración de historias.",characterSearch:"Busca personajes de IA en {appName}. Descubre compañeros de IA por nombre, etiqueta o interés y comienza a chatear al instante.",chatHistory:"Revisa tu historial de chat de IA en {appName} y continúa las conversaciones con tus compañeros de IA favoritos.",userCenter:"Gestiona tu perfil de {appName}, colecciones y configuración de cuenta en el centro de usuario.",rechargeCenter:"Recarga monedas y suscríbete en {appName}. Desbloquea chat de IA premium, interacción en vivo y contenido exclusivo.",webTutorial:"Aprende a usar {appName} con nuestro tutorial web. Consejos para chat de IA, interacción en vivo y cómo aprovechar al máximo tu compañero de IA.",contactUs:"Contacta a {appName} para soporte, colaboraciones y consultas sobre productos de experiencias con compañeros de IA.",privacyPolicy:"Lee la Política de Privacidad de {appName} para saber cómo recopilamos, usamos y protegemos tu información personal.",termsService:"Lee los Términos de Servicio de {appName} que rigen el uso de nuestra plataforma de compañeros de IA."}}},[_s.JA]:{errorPage:{page404:{oops:"おっと!",headline:"ウェブマスターがこのページに入ることはできないと言っています...",info:"入力したURLが正しいか確認するか、下のボタンをクリックしてホームページに戻ってください。",backToHome:"ホームに戻る",allRightsReserved:"全著作権所有"},page401:{oops:"おっと!",noPermission:"このページへのアクセス権限がありません",contactLeader:"ご不満がある場合は、リーダーにお問い合わせください",orYouCan:"または次の場所に移動できます:",backHome:"ホームに戻る",browse:"ただ閲覧する",viewImage:"クリックして画像を表示",back:"戻る",gifSource:"gifソース",randomView:"ランダム表示"},ipAccess:{title:"アクセス制限",description:"申し訳ございません。このサービスはお住まいの地域ではご利用いただけません",tips:"現地の規制および合意により、このウェブサイトはお住まいの地域ではご利用いただけません。"}},route:{premium:"プレミアム",home:"発見",characterList:"キャラクターリスト",characterSearch:"キャラクター検索",characterDetail:"キャラクター詳細",characterChat:"キャラクターチャット",chatHistory:"チャット",userCenter:"ユーザーセンター",userCenterEdit:"個人情報",rechargeCenter:"チャージセンター",contactUs:"お問い合わせ",characterCollections:"コレクション",characterLiked:"いいね",rechargeHistory:"チャージ履歴",legalInformation:"法的情報",underagePolicy:"未成年者ポリシー",subscriptionPolicy:"サブスクリプションポリシー",exemption2257:"18 U.S.C. 2257免責",dmcaPolicy:"DMCAポリシー",blockedContentPolicy:"ブロックコンテンツポリシー",contentRemovalPolicy:"コンテンツ削除ポリシー",complaintPolicy:"苦情対応ポリシー"},rechargeHistory:{title:"取引履歴",tabs:{deposits:"チャージ履歴",expenses:"利用履歴"},expense:{chatWith:"{name}とのチャット",unlockedVideo:"{name}のプライベート動画を解除",unlockedPhoto:"{name}のプライベート写真を解除",upgradeVideo:"動画をアップグレード",sendGifts:"親密なインタラクション消費:{name}",other:"その他の利用"}},rechargeCenter:{tabs:{subscribe:"購読",coins:"コイン"},premium:{title:"購読",choosePlan:"プランを選択",anonymous:"100%匿名。いつでもキャンセルできます。",countdown:{hours:"時間",minutes:"分",seconds:"秒"},limitedOffer:"期間限定オファー",discount:"サブスクリプションが最大75%オフ",plans:{yearly:"12ヶ月",quarterly:"3ヶ月",monthly:"1ヶ月",perMonth:"/月"},currentSubscription:{label:"現在のサブスクリプション",daysLeft:"残り日数",renewsOn:"更新日 {date}"},subscribeTypes:{none:"サブスクなし",weekly:"週間",monthly:"月間",quarterly:"四半期",annual:"年間",planText:"{type}プラン"},badges:{bestChoice:"ベストチョイス"},security:{noAdultTransaction:"銀行明細書にアダルト取引なし",noHiddenFees:"隠れた料金なし + いつでもサブスクリプションをキャンセル",securePayment:"安全な支払い",sslEncrypted:"SSL暗号化"},agreement:{iAgree:"同意します",termsOfService:"利用規約",and:"と",subscriptionPolicy:"サブスクリプションポリシー"},subscribe:"購読する",subscribed:"購読中",upgrade:"アップグレード",errors:{alreadySubscribed:"すでに購読中です。"},vipGuide:{title:"限定特典をアンロック",description:"最上位のつながりとラグジュアリーなコンテンツで、体験をさらに高めましょう。",discountTag:"40% OFF",button:"Premiumを始める",benefits:{exclusivePrivateShows:"限定プライベートショー & 動画&画像",premiumTipMenu:"プレミアムチップメニュー",emotionalChatModel:"より感情豊かなAIチャットモデル",betterMemory:"より優れた記憶効果",welfareImages:"定期更新の特典画像を解放",posePrivilege:"特定ポーズ特権を解放",liveChatPrivilege:"ライブ配信ルームのチャット特権",monthlyFreeCoins:"毎月{coins}無料コイン"}},paymentPending:{alt:"支払い処理中",title:"支払い処理中",description:"お支払いを処理しています。確認が完了すると、アカウントは自動的にPremiumにアップグレードされます。数分かかる場合があります。",button:"了解"},benefits:{title:"プレミアム特典",createAI:"独自のAIガールフレンドを作成",unlimitedMessages:"無制限のテキストメッセージ",freeTokens:"毎月100トークンを無料で取得",removeBlur:"画像のぼかしを削除",generateImages:"画像を生成",phoneCalls:"AI通話を行う",fastResponse:"高速応答時間",prioritySupport:"優先カスタマーサポート",exclusiveCharacters:"限定キャラクターへのアクセス",advancedCustomization:"高度な性格カスタマイズ"}},coins:{title:"コイン",currentCoins:"現在のコイン",description:{title:"コインの説明",subtitle:"コインは宇宙の仮想通貨です!コインを増やすことで、チャット体験をさらに素晴らしいものにできます:"},badges:{discount:"{percent}%オフ"},features:{heartWhisper:"チャットメッセージ",inspirationReply:"インスピレーション返信",premiumChat:"特別ギフト",specialGifts:"アニメーション動画を購入"},history:{title:"チャージ履歴",item:{title:"コイン",conisNum:"+ {num} コイン",orderId:"注文ID:{id}"}}}},order:{status:{completed:{type:"完了",title:"支払い成功",description:"コインがアカウントに正常に追加されました!今すぐ限定機能のロックを解除できます。"},pending:{type:"保留中",title:"支払い処理中…",description:"お支払いの確認をお待ちください。チャージ履歴でいつでも最新の進捗状況を確認できます。"},failed:{type:"失敗",title:"支払い失敗",description:"残念ながら、このお支払いを完了できませんでした。ご安心ください。料金は請求されていません。もう一度お試しください。"}}},navbar:{search:{placeholder:"検索する"},login:{title:"ログイン",notification:{title:"ヒント",message:"ログイン方法はまだ利用できません"}},download:{title:"ダウンロード",dialog:{title:"アプリをダウンロード",subtitle:"アプリをダウンロードして2000万以上のキャラクターを検索してください。"}},checkIn:{title:"チェックイン"},joinFree:{title:"無料で参加"}},sidebar:{today:"今日",yesterday:"昨日",other:"その他",footer:{affiliate:"アフィリエイト",support:"サポート"}},contactUs:{email:"メール",youtube:"Youtube",facebook:"Facebook",whatsapp:"WhatsApp",telegram:"Telegram",instagram:"Instagram",discord:"Discord"},loading:{title:"読み込み中..."},noData:{title:"ここは少し静かです..."},home:{more:"すべて見る",faq:{title:"よくある質問"},banner:{slide1:{title:"あなたのストーリーはここから始まります",description:"無限の会話をアンロック",buttonText:"今すぐチャットを始める"},slide2:{title:"完璧なキャラクターを見つけよう",description:"あなたのために厳選された人気キャラクターを探索",buttonText:"今すぐ探索"},slide3:{title:"プロフィールを構築",description:"設定をカスタマイズして進捗を同期",buttonText:"センターへ"}},all:"すべて"},characterTabs:{recommend:"おすすめ",trending:"トレンド",topRated:"トップ評価",popular:"人気",latest:"最新"},characterChat:{sendInputPlaceholder:"メッセージを入力...",openingPopoverTitle:"返信してみてください",copyMessage:"メッセージをコピー",deleteMessage:"メッセージを削除",reportMessage:"メッセージを報告",copySuccess:"クリップボードにコピーしました",copyFailed:"コピーに失敗しました",noCopyContent:"コピーする内容がありません",sendTooFrequent:"送信頻度が高すぎます。しばらくしてからもう一度お試しください",messageTooLong:"メッセージの長さは200文字を超えることはできません",sendFailed:"送信に失敗しました。もう一度お試しください",openingSuggestions:{careerChange:"テクノロジーへの転職を考えています。この業界の見通しについてどう思いますか?",tellMore:"興味深い!マーケティング戦略の経験についてもっと教えていただけますか?",professionalAdvice:"現在の役割で少し行き詰まりを感じています。専門的に進歩するためのアドバイスはありますか?"},chatUser:{collect:"コレクション",collected:"コレクション済み",profile:"プロフィール",share:"共有"},chatHeader:{status:{online:"オンライン",offline:"オフライン",typing:"入力中...",sendingPhoto:"写真を送信中",living:"配信中"}}},interact:{actionTrigger:"発動",actionSend:"送る",heat:"彼女との交流熱度",liveRoomGuide:{description:"ギフトを送ると限定インタラクティブ演出を解放できます!",action:"送信"},blockingDialog:{title:"夢見ていたすべてがここに...",previewPrefix:"こちらは",previewHighlight:"限定Try-Onショー",previewSuffix:"のプレビューです。プレミアムギフトを送ってさらに解放しましょう。",action:"今すぐ解放"},giftPanel:{sendGift:"ギフトを送る",recharge:"チャージ",more:"もっと",gift:"ギフト",sort:"並べ替え",close:"閉じる"},sceneSwitch:{guide:"ここをタップして、もっと多くのシーンをチェック。",button:"シーン\n切替",shortButton:"シーン",title:"シーン切替",subtitle:"クリックして別のライブシーンに切り替えます。",switching:"切替中...",close:"閉じる",current:"現在",price:"解除に{price}コイン",payInsufficient:"コインが不足しています。チャージしてもう一度お試しください。",payNeedsConfirm:"このシーンは支払い確認が必要です。もう一度お試しください。",payFailed:"このシーンを解除できませんでした。もう一度お試しください。"},floatingNotice:{sent:"贈った",requested:"リクエストした"},mobileMenu:{mute:"ミュート",unmute:"ミュート解除",showMenu:"メニューを表示",hideMenu:"メニューを非表示",muteToast:"ミュートしました",unmuteToast:"ミュート解除しました"},fallbackReply:{feeling:"今の気分はどうですか?",anywhere:"今どこに行けるなら、どこに行きたいですか?",mind:"最近何を考えているか聞きたいです。"},defaultNames:{action:"アクション",gift:"ギフト",character:"キャラクター"},loading:{title:"しばらくお待ちください...",subtitle:"{name}の準備中です。"},a11y:{avatarBackground:"アバター背景",showMenu:"メニューを表示",fire:"炎",up:"上",send:"送信",gift:"ギフト",chat:"チャット",coin:"コイン",recharge:"チャージ"}},chatInput:{placeholder:"メッセージを入力..."},chatDeletePopover:{deleteChat:"削除",hide:"非表示"},clearChat:{title:"このチャットをクリアしますか?",message:"このチャットのすべてのメッセージが完全に削除されます。",clear:"クリア",clearing:"クリア中...",clearChat:"チャットをクリア"},footer:{privacyPolicy:"プライバシーポリシー",termsService:"利用規約",content:"次世代のAIコンパニオンを発見してください。OnlyGFは、あなたを理解し、共に成長するAI友達のコミュニティと、本物の会話、感情的なつながりをもたらします。",desc:"© 2025 OnlyGF. 全著作権所有。",features:"機能",popular:"人気",chat:"チャット",createCharacter:"キャラクター作成",myCollection:"マイコレクション",myAI:"マイ AI",legalSupport:"法務とサポート",termsAndPolicies:"規約とポリシー"},legalInformation:{pageTitle:"法的情報",items:{termsService:"利用規約",privacyNotice:"プライバシー通知",subscriptionPolicy:"サブスクリプションポリシー",cookiesNotice:"Cookie通知",underagePolicy:"未成年者ポリシー",contentRemovalPolicy:"コンテンツ削除ポリシー",blockedContentPolicy:"ブロックコンテンツポリシー",dmcaPolicy:"DMCAポリシー",complaintPolicy:"苦情対応ポリシー",exemption2257:"18 U.S.C. 2257免責",communityGuidelines:"コミュニティガイドライン",affiliateTerms:"アフィリエイト利用規約"}},languageDialog:{title:"言語選択",desc:"表示言語を選択してください"},dialogUploadAvatar:{title:"アバターを選択",desc:"あなたらしい見た目を見つけましょう。第一印象が重要です!",save:"保存"},dialogShare:{title:"共有",desc:"リンクをコピーするか直接共有してください。友達はすぐにチャットを始められます。",copy:"リンクをコピー",success:"リンクがクリップボードにコピーされました",error:"リンクのコピーに失敗しました。もう一度お試しください"},dialogReport:{title:"報告",desc:"理由を選択してください",list:{sexuallyExplicit:"性的に露骨なコンテンツ",hateSpeech:"ヘイトスピーチまたは嫌がらせ",suicideSelfInjury:"自殺または自傷行為",violenceThreats:"暴力または脅迫",falseInformation:"虚偽情報",spamFraud:"スパムまたは詐欺",privacyViolation:"プライバシー侵害",harmfulMinors:"未成年者に有害",other:"その他"},other:{title:"説明",placeholder:"問題を説明してください..."},submit:"送信"},dialogDownload:{title:"ダウンロード",desc:"アプリをダウンロードして2000万以上のキャラクターを検索してください。",toast:"すぐに"},dialogCoinInsufficient:{title:"次のメッセージをアンロック",liveTitle:"コイン不足",desc:"このチャットを続けるためのコインが不足しています。残高をチャージして、より多くの応答をアンロックしてください。",message:"メッセージ",balance:"残高",coins:"コイン",button:"コインを追加"},dialogRegisterGuide:{title:"会話を続けたいですか?",desc:"無料アカウントを作成して、チャットを続けてすべての機能をアンロックしましょう!",benefit1:"無制限の会話",benefit2:"チャット履歴を保存",benefit3:"すべてのキャラクターにアクセス",signUp:"新規登録",later:"後で"},registerGuideMessage:{text:"会話を続けたいですか?無料アカウントを作成してください!今すぐ登録してボーナスメッセージをゲット——続きが待ちきれません!",button:"登録してチャット"},dialogPhotoUnlock:{title:"写真をアンロック",desc:"この写真をアンロックして全内容を見る",balance:"残高",button:"今すぐアンロック",getMore:"コインを追加",insufficientBalance:"残高不足",unlocking:"アンロック中...",unlockSuccess:"写真のアンロックに成功しました",unlockFailed:"写真のアンロックに失敗しました"},photoRequest:{buttonTitle:"写真をリクエスト",selectType:"写真タイプを選択:",requestFailed:"写真のリクエストに失敗しました",sendMePhoto:"写真を送って",noMorePhotos:"これ以上の写真はありません",poses:{random:"ランダム",selfie:"セルフィー",posing:"ポージング",sitting:"座る",kneeling:"膝立ち",squatting:"しゃがむ",standing:"立つ",prone:"うつ伏せ"},vipGuide:{title:"VIP写真ポーズを解除",description:"サブスクライブすると、限定の写真ポーズが解除され、希望のポーズをリクエストできます。",buttonText:"今すぐVIPを解除"}},dialogLogout:{title:"ログアウトしますか?",desc:"本当にログアウトしますか?",desc2:"アカウントにアクセスするには再度ログインする必要があります。",confirm:"ログアウト"},dialogLogin:{title:"ログイン / サインアップ",subtitle:"2000万人以上の女の子とチャット",continueWith:"{method}で続ける",google:"Google",apple:"Apple",facebook:"Facebook",line:"Line",guest:"ゲスト",desc:"特別オファー、マーケティング通信、サービス更新をメールで受け取ることに同意します。",sub:"私は",age:"18+",agreementPrefix:"であることを確認し",termsOfService:"利用規約",and:"と",privacyPolicy:"プライバシーポリシー",or:"または",emailPlaceholder:"メールアドレス",continueWithEmail:"メールで続ける",verifyTitle:"メールを確認してください",verifyDesc:"{email} に6桁の確認コードを送信しました。メールを開いて、以下にコードを入力してください。",confirm:"確認",resendCode:"再送信",resendCountdown:"{seconds}秒後に再送信",back:"戻る",invalidEmail:"有効なメールアドレスを入力してください",codeSent:"確認コードを送信しました",codeSendFailed:"確認コードの送信に失敗しました",codeRequired:"確認コードを入力してください",codeInvalid:"確認コードが無効です",promotionHint:"初回購読 <b>-75% OFF</b> 限定オファー"},dialogCheckin:{title:"デイリー報酬",desc:"7日間連続でチェックインして、すべての報酬を獲得しましょう!",button:"報酬を受け取る",claimedToday:"今日の報酬を受け取りました",resultTitle:"報酬を受け取りました!",resultDesc:"{days}日連続でチェックインしました。この調子で続けてください!",resultButton:"了解",daysText:"{days}日目"},auth:{loginSuccess:"ログインに成功しました",loginFailed:"ログインに失敗しました。もう一度お試しください"},person:{edit:"編集",follow:"フォロー中",fans:"フォロワー",createBot:" ボット",sendPost:" 投稿",followBot:" フォロー中のボット"},common:{noData:"データなし",clickRetry:"タップしてリトライ",live:"ライブ",report:"メッセージを報告",reset:"リセット",months:{january:"1月",february:"2月",march:"3月",april:"4月",may:"5月",june:"6月",july:"7月",august:"8月",september:"9月",october:"10月",november:"11月",december:"12月"},submitting:"送信中...",unlockFailed:"サブスクリプション権限の解除が必要です"},characterDetail:{online:"オンライン",chatToMe:"チャットする",collect:"コレクション",collected:"コレクション済み",share:"共有",gallery:"ギャラリー",report:"報告",age:"年齢",career:"職業",height:"身長",constellation:"星座",bloodType:"血液型",unknown:"不明",likeSuccess:"いいねに成功しました",unlikeSuccess:"いいね解除に成功しました",collectSuccess:"コレクションに成功しました",uncollectSuccess:"コレクション解除に成功しました",likeFailed:"いいねに失敗しました。もう一度お試しください",collectFailed:"コレクションに失敗しました。もう一度お試しください",networkError:"ネットワークエラー。もう一度お試しください",reportSuccess:"報告が正常に送信されました。できるだけ早く処理します",reportFailed:"報告の送信に失敗しました。もう一度お試しください"},langSelect:{message:{success:"言語変更に成功しました!"}},userCenter:{title:"個人情報",username:"ユーザー名",usernamePlaceholder:"AlexOnlyGF",usernameHelper:"3〜25文字を入力してください。文字、絵文字、数字、アンダースコアが使用できます。ユーザー名は一意である必要があります。",profile:"プロフィール(オプション)",profilePlaceholder:"他の人があなたをよりよく知ることができるように自己紹介を記入してください",save:"保存",saving:"保存中...",saveSuccess:"保存に成功しました",saveFailed:"保存に失敗しました。もう一度お試しください",editProfile:"プロフィールを編集",collections:"コレクション",likes:"いいね",logout:"ログアウト",logoutConfirm:"本当にログアウトしますか?",downloadApp:"アプリをダウンロード",language:"言語",privacyPolicy:"プライバシーポリシー",termsOfUse:"利用規約",contactUs:"お問い合わせ",support:"サポート",supportDesc:"24時間年中無休でサポートします",premiumTitle:"OnlyGF Premium",premiumDesc:"すべてのショーと毎月{coins}ボーナスコインをアンロック",myBalance:"残高",recharge:"チャージ",currentSubscription:"現在のサブスクリプション",daysLeft:"残り日数"},download:{googlePlay:{name:"Google Play",description:"安全でシームレスなアップデートと新しいコンパニオンのための公式アプリを入手してください。",subtitle:"今すぐダウンロード"},appStore:{name:"App Store",description:"iPhoneに最適化されたプライベートで没入型のチャット体験をお楽しみください。",subtitle:"ダウンロード"},androidApk:{name:"Android APK",description:"究極のプライバシー、即座のアクセス、最新のアップデートのために直接インストールしてください。",subtitle:"ダウンロード"},webApp:{name:"Web APP",description:"任意のブラウザから即座にチャット—インストール不要。あなたのプライベートな逃避場所が待っています。",subtitle:"インストール"}},premiumPhotoUnlock:{vipUnlock:"ロック解除可能",vipMark:"VIP",proMark:"Pro"},photoGallery:{photoCount:"{current}/{total}",prevPhoto:"前へ",nextPhoto:"次へ"},dialogVideoUnlock:{title:"動画をロック解除",desc:"この動画をロック解除してフルコンテンツを視聴",button:"今すぐロック解除",balance:"残高",insufficientBalance:"残高不足",getMore:"コインを追加",unlocking:"ロック解除中...",unlockSuccess:"動画のロック解除に成功しました",unlockFailed:"動画のロック解除に失敗しました"},upgradablePhoto:{unlockMoment:"この瞬間をロック解除",upgrading:"アップグレード中...",upgradeSuccess:"動画にアップグレードしました",upgradeFailed:"アップグレードに失敗しました"},dialogWebViewGuide:{title:"ブラウザで開いてください",desc:"Googleログインはアプリ内ブラウザではサポートされていません。リンクをコピーしてシステムブラウザ(Chrome/Safari)で開き、ログインを完了してください。",currentUrl:"現在のページURL",copyLink:"リンクをコピー",copied:"リンクをコピーしました",copyFailed:"コピーに失敗しました。手動でコピーしてください",steps:{step1:"上のボタンをクリックしてリンクをコピー",step2:"システムブラウザ(Chrome/Safari)を開く",step3:"リンクを貼り付けてアクセスし、ログインを完了"}},emailChat:{openEmailChat:"メールチャットを開く",connectViaEmail:"メールで連絡",enterEmailTitle:"手紙を受け取るメールアドレスを入力",receiveYourFirstLetter:"最初の手紙を受け取る",receiveLetter:"手紙を受け取る",startEmailChatWith:"{botName}とメールチャットを開始",letterWillBeSent:"手紙がまもなくメールに送信されます!",description:"チャット以外にも、あなただけのために書かれた手紙を受け取りたいですか?有効にすると、あなたの受信箱に届き、まるで現実の一部のようにあなたの物語が続きます。",emailPlaceholder:"メールアドレス",sendNow:"今すぐ送信",emailChatStartedWith:"{botName}とメールチャット開始",switchToBot:"{botName}に切り替え",receiveLetterAt:"手紙を受け取る",tips:"ヒント:",tipsContent:"彼女は積極的にあなたに手紙を書き、あなたの手紙に返信します。プライベートで、ゆっくりとしたペースで、二人だけのものです。",invalidEmail:"有効なメールアドレスを入力してください",enableSuccess:"メールチャットが有効になりました",disableSuccess:"メールチャットが無効になりました",updateEmailSuccess:"メールアドレスが更新されました",switchBotSuccess:"新しいキャラクターに切り替えました",enableFailed:"メールチャットの有効化に失敗しました",disableFailed:"メールチャットの無効化に失敗しました",updateEmailFailed:"メールアドレスの更新に失敗しました",switchBotFailed:"キャラクターの切り替えに失敗しました",disableConfirmTitle:"メールチャットを閉じますか?",disableConfirmMessage:"このキャラクターからの手紙を受け取らなくなります。",switchBotConfirmTitle:"キャラクターを切り替えますか?",switchBotConfirmMessage:"メールチャットを{fromBot}から{toBot}に切り替えますか?",updateEmail:"メールアドレスを更新",enterNewEmail:"新しいメールアドレスを入力してください",firstLetterTriggered:"最初の手紙が送信されました!",firstLetterFailed:"最初の手紙の送信に失敗しました",verifyTitle:"メールアドレスを確認",verifyDesc:"確認コードが{email}に送信されました",codeRequired:"6桁の確認コードを入力してください",codeInvalid:"確認コードが無効または期限切れです",codeSent:"確認コードを送信しました",codeSendFailed:"確認コードの送信に失敗しました",confirm:"確認",resendCode:"再送信",resendCountdown:"{seconds}秒後に再送信できます"},emailCallback:{verifying:"リンクを確認中...",success:"成功!",redirectingToChat:"チャットにリダイレクト中...",oops:"おっと!",redirectingIn:"{seconds}秒後にホームページにリダイレクト...",goHomeNow:"今すぐホームページへ",invalidLink:"無効なリンク",linkExpired:"リンクの有効期限が切れました。メールに戻ってもう一度クリックしてください。",linkInvalid:"無効なリンク",linkUsed:"リンクは無効になりました",userNotFound:"ユーザーが見つかりません",networkError:"ネットワークエラー、もう一度お試しください"},profileComplete:{title:"{appName}へようこそ!",subtitle:"より良いパーソナライズされた体験のために、もっと教えてください",nicknameLabel:"お名前は?",nicknamePlaceholder:"かっこいいニックネームを入力",nicknameRequired:"ニックネームを入力してください",genderLabel:"どの代名詞を使用しますか?",genderHint:"(性別は一度選択すると変更できません。)",birthdayLabel:"お誕生日は?",birthdayPlaceholder:"月/日/年",birthdayRequired:"誕生日を選択してください",birthdayUnderAge:"18歳以上である必要があります",submitButton:"旅を始めよう!",genderRequired:"性別を選択してください",submitSuccess:"プロフィールが完成しました!",submitFailed:"送信に失敗しました。もう一度お試しください",genderOptions:{male:"彼/彼",female:"彼女/彼女",other:"彼ら/彼ら"}},seo:{description:{characterList:"{appName}で全てのAIキャラクターを閲覧。ライブインタラクション、チャット、ストーリーテリングを楽しめる理想のAIコンパニオンを見つけましょう。",characterSearch:"{appName}でAIキャラクターを検索。名前、タグ、興味でAIコンパニオンを見つけて、すぐにチャットを始めましょう。",chatHistory:"{appName}でのAIチャット履歴を確認し、お気に入りのAIコンパニオンとの会話を続けましょう。",userCenter:"ユーザーセンターで{appName}のプロフィール、コレクション、アカウント設定を管理。",rechargeCenter:"{appName}でコインをチャージしてサブスク登録。プレミアムAIチャット、ライブインタラクション、限定コンテンツを解除。",webTutorial:"ウェブチュートリアルで{appName}の使い方を学ぶ。AIチャット、ライブインタラクション、AIコンパニオンを最大限活用するためのヒント。",contactUs:"AIコンパニオン体験に関するサポート、パートナーシップ、製品のお問い合わせは{appName}まで。",privacyPolicy:"{appName}のプライバシーポリシーをお読みください。個人情報の収集、使用、保護方法について説明しています。",termsService:"{appName}の利用規約をお読みください。AIコンパニオンプラットフォームの利用に関する規則を定めています。"}}},[_s.FR]:{errorPage:{page404:{oops:"OUPS !",headline:"Le webmaster a dit que vous ne pouvez pas accéder à cette page...",info:"Veuillez vérifier que l'URL que vous avez saisie est correcte, ou cliquez sur le bouton ci-dessous pour revenir à la page d'accueil.",backToHome:"Retour à l'accueil",allRightsReserved:"Tous droits réservés"},page401:{oops:"Oups !",noPermission:"Vous n'avez pas la permission d'accéder à cette page",contactLeader:"Si vous n'êtes pas satisfait, veuillez contacter votre responsable",orYouCan:"Ou vous pouvez aller :",backHome:"Retour à l'accueil",browse:"Parcourir",viewImage:"Cliquez pour voir l'image",back:"Retour",gifSource:"source gif",randomView:"Vue aléatoire"},ipAccess:{title:"Accès Restreint",description:"Désolé, ce service n'est pas disponible dans votre région",tips:"En raison des réglementations et accords locaux, ce site web n'est pas disponible dans votre région géographique."}},route:{premium:"Premium",home:"Découvrir",characterList:"Liste des Personnages",characterSearch:"Recherche de Personnage",characterDetail:"Détails du Personnage",characterChat:"Chat avec Personnage",chatHistory:"Chat",userCenter:"Centre Utilisateur",userCenterEdit:"Informations Personnelles",rechargeCenter:"Centre de Recharge",contactUs:"Nous Contacter",characterCollections:"Collections",characterLiked:"Aimés",rechargeHistory:"Historique des Recharges",legalInformation:"Informations légales",underagePolicy:"Politique des mineurs",subscriptionPolicy:"Politique d'abonnement",exemption2257:"Exemption 18 U.S.C. 2257",dmcaPolicy:"Politique DMCA",blockedContentPolicy:"Politique de contenu bloqué",contentRemovalPolicy:"Politique de retrait de contenu",complaintPolicy:"Politique de réclamation"},rechargeHistory:{title:"Historique des Transactions",tabs:{deposits:"Recharges",expenses:"Dépenses"},expense:{chatWith:"Chat avec {name}",unlockedVideo:"Vidéo privée de {name} débloquée",unlockedPhoto:"Photo privée de {name} débloquée",upgradeVideo:"Mettre à niveau la vidéo",sendGifts:"Dépense d'interaction intime : {name}",other:"Autre dépense"}},rechargeCenter:{tabs:{subscribe:"S'abonner",coins:"Pièces"},premium:{title:"S'abonner",choosePlan:"Choisissez Votre Forfait",anonymous:"100% anonyme. Vous pouvez annuler à tout moment.",countdown:{hours:"Heures",minutes:"Minutes",seconds:"Secondes"},limitedOffer:"OFFRE À DURÉE LIMITÉE",discount:"Jusqu'à 75% de réduction sur votre abonnement",plans:{yearly:"12 mois",quarterly:"3 mois",monthly:"1 mois",perMonth:"/mois"},currentSubscription:{label:"Abonnement actuel",daysLeft:"Jours restants",renewsOn:"Renouvellement le {date}"},subscribeTypes:{none:"Aucun abonnement",weekly:"Hebdomadaire",monthly:"Mensuel",quarterly:"Trimestriel",annual:"Annuel",planText:"Forfait {type}"},badges:{bestChoice:"MEILLEUR CHOIX"},security:{noAdultTransaction:"Aucune transaction pour adultes dans votre relevé bancaire",noHiddenFees:"Pas de frais cachés + Annulation de l'abonnement à tout moment",securePayment:"Paiement Sécurisé",sslEncrypted:"Cryptage SSL"},agreement:{iAgree:"J'accepte les",termsOfService:"Conditions de Service",and:"et",subscriptionPolicy:"Politique d'abonnement"},subscribe:"S'abonner",subscribed:"Abonné",upgrade:"Mettre à niveau",errors:{alreadySubscribed:"Vous avez déjà un abonnement actif."},vipGuide:{title:"Debloquez des privileges exclusifs",description:"Elevez votre experience avec notre niveau le plus exclusif de connexion et de contenu premium.",discountTag:"-40%",button:"Commencer mon voyage Premium",benefits:{exclusivePrivateShows:"Spectacles Privés Exclusifs & Vidéos et Images",premiumTipMenu:"Menu de Pourboires Premium",emotionalChatModel:"Modele de chat IA aux emotions plus riches",betterMemory:"Meilleure memoire dans chaque interaction",welfareImages:"Debloquez des images bonus mises a jour regulierement",posePrivilege:"Debloquez des privileges de poses speciales",liveChatPrivilege:"Privileges de chat en salle live",monthlyFreeCoins:"{coins} pieces gratuites chaque mois"}},paymentPending:{alt:"Paiement en cours",title:"Paiement en cours",description:"Votre paiement est en cours de traitement. Une fois vérifié, votre compte sera automatiquement mis à niveau vers Premium. Cela peut prendre quelques minutes.",button:"Compris"},benefits:{title:"Avantages Premium",createAI:"Créez votre propre Petite Amie IA",unlimitedMessages:"Messages texte illimités",freeTokens:"Obtenez 100 jetons GRATUITS / mois",removeBlur:"Supprimer le flou des images",generateImages:"Générer des images",phoneCalls:"Passer des appels IA",fastResponse:"Temps de réponse rapide",prioritySupport:"Support client prioritaire",exclusiveCharacters:"Accès aux personnages exclusifs",advancedCustomization:"Personnalisation avancée de la personnalité"}},coins:{title:"Pièces",currentCoins:"Pièces Actuelles",description:{title:"Description des Pièces",subtitle:"Les pièces sont la monnaie virtuelle de l’univers ! Avec plus de pièces, vous pouvez rendre votre expérience de chat encore plus géniale :"},badges:{discount:"{percent}% DE RÉDUCTION"},features:{heartWhisper:"Message de chat",inspirationReply:"Réponse inspirante",premiumChat:"Cadeaux spéciaux",specialGifts:"Acheter une vidéo animée"},history:{title:"Historique des Recharges",item:{title:"Pièces",conisNum:"+ {num} pièces",orderId:"ID de Commande : {id}"}}}},order:{status:{completed:{type:"Terminé",title:"Paiement Réussi",description:"Les pièces ont été ajoutées avec succès à votre compte ! Vous pouvez maintenant les utiliser pour débloquer des fonctionnalités exclusives."},pending:{type:"En Attente",title:"Traitement du Paiement…",description:"Veuillez patienter pendant que nous confirmons votre paiement. Vous pouvez vérifier les derniers progrès dans l'historique des recharges à tout moment."},failed:{type:"Échoué",title:"Paiement Échoué",description:"Malheureusement, ce paiement n'a pas pu être effectué. Soyez assuré que nous ne vous avons pas facturé. Veuillez réessayer."}}},navbar:{search:{placeholder:"Rechercher"},login:{title:"Connexion",notification:{title:"Conseil",message:"Méthode de connexion pas encore disponible"}},download:{title:"Télécharger",dialog:{title:"Télécharger l'APP",subtitle:"Téléchargez l'application pour rechercher parmi plus de 20 millions de personnages."}},checkIn:{title:"Enregistrement"},joinFree:{title:"Rejoindre Gratuitement"}},sidebar:{today:"AUJOURD'HUI",yesterday:"HIER",other:"AUTRE",footer:{affiliate:"Affilié",support:"Support"}},contactUs:{email:"Email",youtube:"Youtube",facebook:"Facebook",whatsapp:"WhatsApp",telegram:"Telegram",instagram:"Instagram",discord:"Discord"},loading:{title:"Chargement..."},noData:{title:"C'est un peu calme ici..."},home:{more:"Voir Tout",faq:{title:"FAQ"},banner:{slide1:{title:"Votre Histoire Commence Ici",description:"Débloquez des Conversations Infinies",buttonText:"Commencer à Chatter Maintenant"},slide2:{title:"Trouvez Votre Personnage Parfait",description:"Explorez les personnages populaires sélectionnés pour vous",buttonText:"Explorer Maintenant"},slide3:{title:"Construisez Votre Profil",description:"Personnalisez les préférences et gardez la progression synchronisée",buttonText:"Aller au Centre"}},all:"Tous"},characterTabs:{recommend:"Recommandé",trending:"Tendances",topRated:"Mieux Notés",popular:"Populaire",latest:"Derniers"},characterChat:{sendInputPlaceholder:"Tapez votre message...",openingPopoverTitle:"Essayez de répondre",copyMessage:"Copier le Message",deleteMessage:"Supprimer le Message",reportMessage:"Signaler le Message",copySuccess:"Copié dans le presse-papiers",copyFailed:"Échec de la copie",noCopyContent:"Aucun contenu à copier",sendTooFrequent:"Envoi trop fréquent, veuillez réessayer plus tard",messageTooLong:"La longueur du message ne peut pas dépasser 200 caractères",sendFailed:"Échec de l'envoi, veuillez réessayer",openingSuggestions:{careerChange:"J'envisage une reconversion professionnelle dans la technologie. Que pensez-vous des perspectives de cette industrie ?",tellMore:"C'est intéressant ! Pourriez-vous m'en dire plus sur votre expérience en stratégie marketing ?",professionalAdvice:"Je me sens un peu bloqué dans mon rôle actuel. Des conseils sur comment progresser professionnellement ?"},chatUser:{collect:"Collecter",collected:"Collecté",profile:"Profil",share:"Partager"},chatHeader:{status:{online:"En ligne",offline:"Hors ligne",typing:"En train d'écrire...",sendingPhoto:"envoi d'une photo",living:"En direct"}}},interact:{actionTrigger:"Déclencher",actionSend:"Envoyer",heat:"Chaleur d'interaction avec elle",liveRoomGuide:{description:"Envoyez des cadeaux pour débloquer des performances interactives exclusives !",action:"Envoyer"},blockingDialog:{title:"Tout ce dont vous avez rêvé...",previewPrefix:"Voici un aperçu du ",previewHighlight:"Show d'essayage exclusif.",previewSuffix:" Envoyez des cadeaux premium pour en débloquer davantage.",action:"Débloquer maintenant"},giftPanel:{sendGift:"Envoyer un cadeau",recharge:"Recharger",more:"Plus",gift:"Cadeau",sort:"Trier",close:"Fermer"},sceneSwitch:{guide:"Touchez ici pour découvrir plus de scènes.",button:"Changer\nde scène",shortButton:"Scène",title:"Changer de scène",subtitle:"Cliquez pour passer à une autre scène live.",switching:"Changement...",close:"Fermer",current:"Actuelle",price:"{price} pièces pour débloquer",payInsufficient:"Pièces insuffisantes. Rechargez et réessayez.",payNeedsConfirm:"Cette scène nécessite une confirmation de paiement. Veuillez réessayer.",payFailed:"Impossible de déverrouiller cette scène. Veuillez réessayer."},floatingNotice:{sent:"a envoyé",requested:"a demandé"},mobileMenu:{mute:"Muet",unmute:"Réactiver le son",showMenu:"Afficher le menu",hideMenu:"Masquer le menu",muteToast:"Muet activé",unmuteToast:"Son réactivé"},fallbackReply:{feeling:"Comment vous sentez-vous maintenant ?",anywhere:"Si vous pouviez être n'importe où en ce moment, où seriez-vous ?",mind:"J'aimerais savoir ce qui vous préoccupe en ce moment."},defaultNames:{action:"Action",gift:"Cadeau",character:"Personnage"},loading:{title:"Veuillez patienter...",subtitle:"{name} se prépare."},a11y:{avatarBackground:"Arrière-plan de l'avatar",showMenu:"Afficher le menu",fire:"Flamme",up:"Haut",send:"Envoyer",gift:"Cadeau",chat:"Chat",coin:"Pièce",recharge:"Recharger"}},chatInput:{placeholder:"Tapez votre message..."},chatDeletePopover:{deleteChat:"Supprimer",hide:"Masquer"},clearChat:{title:"Effacer ce chat ?",message:"Tous les messages de ce chat seront définitivement supprimés.",clear:"Effacer",clearing:"Effacement...",clearChat:"Effacer le Chat"},footer:{privacyPolicy:"Politique de Confidentialité",termsService:"Conditions de Service",content:"Découvrez la prochaine génération de compagnie IA. OnlyGF vous apporte des conversations authentiques, des connexions émotionnelles et une communauté d'amis IA qui vous comprennent et grandissent avec vous.",desc:"© 2025 OnlyGF. Tous droits réservés.",features:"Fonctionnalités",popular:"Populaire",chat:"Chat",createCharacter:"Créer un Personnage",myCollection:"Ma collection",myAI:"Mon IA",legalSupport:"Juridique et support",termsAndPolicies:"Conditions et politiques"},legalInformation:{pageTitle:"Informations légales",items:{termsService:"Conditions d'utilisation",privacyNotice:"Avis de confidentialité",subscriptionPolicy:"Politique d'abonnement",cookiesNotice:"Avis sur les cookies",underagePolicy:"Politique des mineurs",contentRemovalPolicy:"Politique de retrait de contenu",blockedContentPolicy:"Politique de contenu bloqué",dmcaPolicy:"Politique DMCA",complaintPolicy:"Politique de réclamation",exemption2257:"Exemption 18 U.S.C. 2257",communityGuidelines:"Règles de la communauté",affiliateTerms:"Conditions d'affiliation"}},languageDialog:{title:"Sélection de la langue",desc:"Sélectionnez votre langue d'affichage"},dialogUploadAvatar:{title:"Choisissez Votre Avatar",desc:"Trouvons un look qui vous ressemble. Les premières impressions comptent !",save:"Enregistrer"},dialogShare:{title:"Partager",desc:"Copiez le lien ou partagez directement, les amis peuvent commencer à chatter instantanément.",copy:"Copier le lien",success:"Lien copié dans le presse-papiers",error:"Échec de la copie du lien, veuillez réessayer"},dialogReport:{title:"Signaler",desc:"Sélectionnez une raison",list:{sexuallyExplicit:"Contenu sexuellement explicite",hateSpeech:"Discours haineux ou harcèlement",suicideSelfInjury:"Suicide ou automutilation",violenceThreats:"Violence ou menaces",falseInformation:"Fausses informations",spamFraud:"Spam ou fraude",privacyViolation:"Violation de la vie privée",harmfulMinors:"Nuisible aux mineurs",other:"Autre"},other:{title:"Description",placeholder:"Veuillez décrire le problème..."},submit:"Soumettre"},dialogDownload:{title:"Télécharger",desc:"Téléchargez l'application pour rechercher parmi plus de 20 millions de personnages.",toast:"Bientôt disponible"},dialogCoinInsufficient:{title:"Débloquer le Prochain Message",liveTitle:"Pièces insuffisantes",desc:"Vous n'avez plus de pièces pour continuer ce chat. Veuillez recharger votre solde pour débloquer plus de réponses.",message:"Messages",balance:"Solde",coins:"Pièces",button:"Obtenir Plus de Pièces"},dialogRegisterGuide:{title:"Envie de continuer à parler ?",desc:"Créez un compte gratuit pour continuer à discuter et débloquer toutes les fonctionnalités !",benefit1:"Conversations illimitées",benefit2:"Enregistrer l'historique des discussions",benefit3:"Accès à tous les personnages",signUp:"S'inscrire",later:"Peut-être Plus Tard"},registerGuideMessage:{text:"Envie de continuer à parler ? Créez simplement un compte gratuit ! Inscrivez-vous maintenant pour des messages bonus—j'ai hâte de continuer !",button:"S'inscrire pour discuter"},dialogPhotoUnlock:{title:"Débloquer la Photo",desc:"Débloquez cette photo pour voir le contenu complet",balance:"Votre Solde",button:"Débloquer Maintenant",getMore:"Obtenir Plus de Pièces",insufficientBalance:"Solde Insuffisant",unlocking:"Déblocage...",unlockSuccess:"Photo débloquée avec succès",unlockFailed:"Échec du déblocage de la photo"},photoRequest:{buttonTitle:"Demander une photo",selectType:"Sélectionnez le type de photo :",requestFailed:"Échec de la demande de photo",sendMePhoto:"Envoie-moi une photo",noMorePhotos:"Plus de photos disponibles",poses:{random:"Aléatoire",selfie:"Selfie",posing:"Pose",sitting:"Assise",kneeling:"À genoux",squatting:"Accroupie",standing:"Debout",prone:"Allongée"},vipGuide:{title:"Débloquer les Poses Photo VIP",description:"Abonnez-vous pour débloquer des poses photo exclusives et demander la pose que vous voulez.",buttonText:"Débloquer VIP Maintenant"}},dialogLogout:{title:"Se déconnecter ?",desc:"Êtes-vous sûr de vouloir vous déconnecter ?",desc2:"Vous devrez vous reconnecter pour accéder à votre compte.",confirm:"Se déconnecter"},dialogLogin:{title:"Connexion / Inscription",subtitle:"Discutez avec plus de 20 millions de filles",continueWith:"Continuer avec {method}",google:"Google",apple:"Apple",facebook:"Facebook",line:"Line",guest:"Invité",desc:"J'accepte de recevoir des offres spéciales, des communications marketing et des mises à jour de service par e-mail.",sub:"Je confirme que j'ai",age:"18+",agreementPrefix:"accepter les",termsOfService:"Conditions de Service",and:"et",privacyPolicy:"Politique de Confidentialité",or:"ou",emailPlaceholder:"Adresse e-mail",continueWithEmail:"Continuer avec Email",verifyTitle:"Vérifiez votre e-mail",verifyDesc:"Nous avons envoyé un code de vérification à 6 chiffres à {email}. Ouvrez l'e-mail et entrez le code ci-dessous pour continuer.",confirm:"Confirmer",resendCode:"Renvoyer le code",resendCountdown:"Renvoyer dans {seconds}s",back:"Retour",invalidEmail:"Veuillez entrer une adresse e-mail valide",codeSent:"Code de vérification envoyé",codeSendFailed:"Échec de l'envoi du code de vérification",codeRequired:"Veuillez entrer le code de vérification",codeInvalid:"Code de vérification invalide",promotionHint:"Première souscription <b>-75% OFF</b> Offre Exclusive"},dialogCheckin:{title:"Récompenses Quotidiennes",desc:"Enregistrez-vous pendant 7 jours consécutifs pour réclamer toutes les récompenses !",button:"Réclamer la Récompense",claimedToday:"Réclamé Pour Aujourd'hui",resultTitle:"Récompense Réclamée !",resultDesc:"Vous vous êtes enregistré pendant {days} jours d'affilée. Continuez comme ça !",resultButton:"Compris",daysText:"Jour {days}"},auth:{loginSuccess:"Connexion réussie",loginFailed:"Échec de la connexion, veuillez réessayer"},person:{edit:"Modifier",follow:"Abonnements",fans:"Abonnés",createBot:" Bots",sendPost:" Publications",followBot:" Bots suivis"},common:{noData:"Aucune donnée",clickRetry:"Appuyez pour réessayer",live:"En direct",report:"Signaler le message",reset:"Réinitialiser",months:{january:"Janvier",february:"Février",march:"Mars",april:"Avril",may:"Mai",june:"Juin",july:"Juillet",august:"Août",september:"Septembre",october:"Octobre",november:"Novembre",december:"Décembre"},submitting:"Envoi en cours...",unlockFailed:"Accès à l'abonnement requis"},characterDetail:{online:"En ligne",chatToMe:"Chattez avec moi",collect:"Collecter",collected:"Collecté",share:"Partager",gallery:"Galerie",report:"Signaler",age:"Âge",career:"Carrière",height:"Taille",constellation:"Constellation",bloodType:"Groupe Sanguin",unknown:"Inconnu",likeSuccess:"Aimé avec succès",unlikeSuccess:"N'aime plus avec succès",collectSuccess:"Collecté avec succès",uncollectSuccess:"Collection annulée avec succès",likeFailed:"Échec du j'aime, veuillez réessayer",collectFailed:"Échec de la collection, veuillez réessayer",networkError:"Erreur réseau, veuillez réessayer",reportSuccess:"Rapport soumis avec succès, nous le traiterons dès que possible",reportFailed:"Échec de la soumission du rapport, veuillez réessayer"},langSelect:{message:{success:"Changement de langue réussi !"}},userCenter:{title:"Informations Personnelles",username:"Nom d'utilisateur",usernamePlaceholder:"AlexOnlyGF",usernameHelper:"Veuillez saisir 3-25 caractères, lettres, emoji, chiffres et underscores sont autorisés. Le nom d'utilisateur doit être unique.",profile:"Profil (Optionnel)",profilePlaceholder:"Complétez votre biographie pour que les autres puissent mieux vous connaître",save:"Enregistrer",saving:"Enregistrement...",saveSuccess:"Enregistrement réussi",saveFailed:"Échec de l'enregistrement, veuillez réessayer",editProfile:"Modifier le Profil",collections:"Collections",likes:"J'aime",logout:"Se déconnecter",logoutConfirm:"Êtes-vous sûr de vouloir vous déconnecter ?",downloadApp:"Télécharger l'APP",language:"Langue",privacyPolicy:"Politique de Confidentialité",termsOfUse:"Conditions d'Utilisation",contactUs:"Nous Contacter",support:"Support",supportDesc:"Nous sommes là pour vous 24h/24 et 7j/7",premiumTitle:"OnlyGF Premium",premiumDesc:"Débloquez tous les shows et {coins} pièces bonus chaque mois",myBalance:"Mon solde",recharge:"Recharger",currentSubscription:"Abonnement actuel",daysLeft:"Jours restants"},download:{googlePlay:{name:"Google Play",description:"Obtenez l'application officielle pour des mises à jour sécurisées et transparentes et de nouveaux compagnons.",subtitle:"OBTENEZ-LE SUR"},appStore:{name:"App Store",description:"Profitez d'une expérience de chat privée et immersive optimisée pour votre iPhone.",subtitle:"Télécharger"},androidApk:{name:"Android APK",description:"Installez directement pour une confidentialité maximale, un accès instantané et les dernières mises à jour.",subtitle:"Télécharger"},webApp:{name:"Web APP",description:"Chattez instantanément depuis n'importe quel navigateur - aucune installation nécessaire. Votre évasion privée vous attend.",subtitle:"Installer"}},premiumPhotoUnlock:{vipUnlock:"Peut déverrouiller",vipMark:"VIP",proMark:"Pro"},photoGallery:{photoCount:"{current}/{total}",prevPhoto:"Précédent",nextPhoto:"Suivant"},dialogVideoUnlock:{title:"Déverrouiller la Vidéo",desc:"Déverrouillez cette vidéo pour voir le contenu complet",button:"Déverrouiller Maintenant",balance:"Votre Solde",insufficientBalance:"Solde Insuffisant",getMore:"Obtenir Plus de Pièces",unlocking:"Déverrouillage...",unlockSuccess:"Vidéo déverrouillée avec succès",unlockFailed:"Échec du déverrouillage"},upgradablePhoto:{unlockMoment:"Débloquer le moment",upgrading:"Mise à niveau...",upgradeSuccess:"Mise à niveau vers la vidéo",upgradeFailed:"Échec de la mise à niveau"},dialogWebViewGuide:{title:"Veuillez ouvrir dans le navigateur",desc:"La connexion Google n'est pas prise en charge dans les navigateurs intégrés aux applications. Veuillez copier le lien et l'ouvrir dans votre navigateur système (Chrome/Safari) pour terminer la connexion.",currentUrl:"URL de la page actuelle",copyLink:"Copier le lien",copied:"Lien copié",copyFailed:"Échec de la copie, veuillez copier manuellement",steps:{step1:"Cliquez sur le bouton ci-dessus pour copier le lien",step2:"Ouvrez votre navigateur système (Chrome/Safari)",step3:"Collez le lien et visitez pour terminer la connexion"}},emailChat:{openEmailChat:"Ouvrir le chat par e-mail",connectViaEmail:"Se connecter par e-mail",enterEmailTitle:"Entrez l'e-mail pour recevoir des lettres",receiveYourFirstLetter:"Recevez votre première lettre",receiveLetter:"Recevoir la lettre",startEmailChatWith:"Commencer le chat par e-mail avec {botName}",letterWillBeSent:"La lettre sera bientôt envoyée à votre e-mail !",description:"Vous voulez recevoir des lettres écrites juste pour vous, au-delà du chat ? Une fois activé, elles arriveront dans votre boîte de réception, poursuivant votre histoire comme si elles faisaient vraiment partie de votre vie.",emailPlaceholder:"Adresse e-mail",sendNow:"Envoyer maintenant",emailChatStartedWith:"Chat par e-mail commencé avec {botName}",switchToBot:"Passer à {botName}",receiveLetterAt:"Recevoir une lettre",tips:"Conseils :",tipsContent:"Elle vous écrira de manière proactive et répondra à vos lettres. C'est privé, à un rythme lent et exclusivement pour vous deux.",invalidEmail:"Veuillez entrer une adresse e-mail valide",enableSuccess:"Chat par e-mail activé avec succès",disableSuccess:"Chat par e-mail désactivé avec succès",updateEmailSuccess:"E-mail mis à jour avec succès",switchBotSuccess:"Changement vers le nouveau personnage réussi",enableFailed:"Échec de l'activation du chat par e-mail",disableFailed:"Échec de la désactivation du chat par e-mail",updateEmailFailed:"Échec de la mise à jour de l'e-mail",switchBotFailed:"Échec du changement de personnage",disableConfirmTitle:"Fermer le chat par e-mail ?",disableConfirmMessage:"Vous ne recevrez plus de lettres de ce personnage.",switchBotConfirmTitle:"Changer de personnage ?",switchBotConfirmMessage:"Changer le chat par e-mail de {fromBot} à {toBot} ?",updateEmail:"Mettre à jour l'e-mail",enterNewEmail:"Veuillez entrer la nouvelle adresse e-mail",firstLetterTriggered:"Votre première lettre est en route !",firstLetterFailed:"Échec de l'envoi de la première lettre",verifyTitle:"Vérifier l'e-mail",verifyDesc:"Code de vérification envoyé à {email}",codeRequired:"Veuillez entrer le code à 6 chiffres",codeInvalid:"Code invalide ou expiré",codeSent:"Code envoyé",codeSendFailed:"Échec de l'envoi du code",confirm:"Confirmer",resendCode:"Renvoyer",resendCountdown:"Renvoyer dans {seconds}s"},emailCallback:{verifying:"Vérification de votre lien...",success:"Succès !",redirectingToChat:"Redirection vers le chat...",oops:"Oups !",redirectingIn:"Redirection vers la page d'accueil dans {seconds}s...",goHomeNow:"Aller à la page d'accueil maintenant",invalidLink:"Lien invalide",linkExpired:"Le lien a expiré. Veuillez retourner dans votre e-mail et cliquer à nouveau.",linkInvalid:"Lien invalide",linkUsed:"Le lien n'est plus valide",userNotFound:"Utilisateur non trouvé",networkError:"Erreur réseau, veuillez réessayer"},profileComplete:{title:"Bienvenue sur {appName} !",subtitle:"Dites-nous en plus pour une meilleure expérience personnalisée",nicknameLabel:"Quel est votre nom ?",nicknamePlaceholder:"Entrez un pseudo cool",nicknameRequired:"Veuillez entrer votre pseudo",genderLabel:"Quel pronom utilisez-vous ?",genderHint:"(Le genre ne peut pas être modifié une fois sélectionné.)",birthdayLabel:"Votre anniversaire ?",birthdayPlaceholder:"JJ/MM/AAAA",birthdayRequired:"Veuillez sélectionner votre anniversaire",birthdayUnderAge:"Vous devez avoir au moins 18 ans",submitButton:"Commencer mon voyage !",genderRequired:"Veuillez sélectionner votre genre",submitSuccess:"Profil complété avec succès !",submitFailed:"Échec de l'envoi, veuillez réessayer",genderOptions:{male:"Il",female:"Elle",other:"Iel"}},seo:{description:{characterList:"Parcourez tous les personnages IA sur {appName}. Trouvez votre compagnon IA idéal pour des interactions en direct, du chat et des histoires.",characterSearch:"Recherchez des personnages IA sur {appName}. Découvrez des compagnons IA par nom, tag ou intérêt et commencez à discuter instantanément.",chatHistory:"Consultez votre historique de chat IA sur {appName} et poursuivez vos conversations avec vos compagnons IA préférés.",userCenter:"Gérez votre profil {appName}, vos collections et vos paramètres de compte dans le centre utilisateur.",rechargeCenter:"Rechargez des pièces et abonnez-vous sur {appName}. Débloquez le chat IA premium, les interactions en direct et le contenu exclusif.",webTutorial:"Apprenez à utiliser {appName} avec notre tutoriel web. Conseils pour le chat IA, les interactions en direct et tirer le meilleur parti de votre compagnon IA.",contactUs:"Contactez {appName} pour obtenir de l'aide, des partenariats et des renseignements sur les produits concernant les expériences de compagnon IA.",privacyPolicy:"Lisez la politique de confidentialité de {appName} pour savoir comment nous collectons, utilisons et protégeons vos informations personnelles.",termsService:"Lisez les conditions d'utilisation de {appName} régissant votre utilisation de notre plateforme de compagnon IA."}}},[_s.RU]:{errorPage:{page404:{oops:"УПС!",headline:"Веб-мастер сказал, что вы не можете войти на эту страницу...",info:"Пожалуйста, проверьте правильность введенного URL-адреса или нажмите кнопку ниже, чтобы вернуться на главную страницу.",backToHome:"Вернуться на главную",allRightsReserved:"Все права защищены"},page401:{oops:"Упс!",noPermission:"У вас нет разрешения на доступ к этой странице",contactLeader:"Если вы не удовлетворены, пожалуйста, свяжитесь с вашим руководителем",orYouCan:"Или вы можете перейти:",backHome:"Вернуться на главную",browse:"Просто просмотреть",viewImage:"Нажмите, чтобы посмотреть изображение",back:"Назад",gifSource:"источник gif",randomView:"Случайный просмотр"},ipAccess:{title:"Доступ Ограничен",description:"К сожалению, этот сервис недоступен в вашем регионе",tips:"В связи с местными нормативами и соглашениями, этот веб-сайт недоступен в вашем географическом регионе."}},route:{premium:"Премиум",home:"Исследовать",characterList:"Список Персонажей",characterSearch:"Поиск Персонажа",characterDetail:"Детали Персонажа",characterChat:"Чат с Персонажем",chatHistory:"Чат",userCenter:"Центр Пользователя",userCenterEdit:"Личная Информация",rechargeCenter:"Центр Пополнения",contactUs:"Связаться с Нами",characterCollections:"Коллекции",characterLiked:"Понравившиеся",rechargeHistory:"История Пополнений",legalInformation:"Юридическая информация",underagePolicy:"Политика в отношении несовершеннолетних",subscriptionPolicy:"Политика подписки",exemption2257:"Исключение 18 U.S.C. 2257",dmcaPolicy:"Политика DMCA",blockedContentPolicy:"Политика заблокированного контента",contentRemovalPolicy:"Политика удаления контента",complaintPolicy:"Политика жалоб"},rechargeHistory:{title:"История Транзакций",tabs:{deposits:"Пополнения",expenses:"Расходы"},expense:{chatWith:"Чат с {name}",unlockedVideo:"Разблокировано приватное видео {name}",unlockedPhoto:"Разблокировано приватное фото {name}",upgradeVideo:"Обновить видео",sendGifts:"Расход на интимное взаимодействие: {name}",other:"Другой расход"}},rechargeCenter:{tabs:{subscribe:"Подписаться",coins:"Монеты"},premium:{title:"Подписаться",choosePlan:"Выберите Свой План",anonymous:"100% анонимно. Вы можете отменить в любое время.",countdown:{hours:"Часы",minutes:"Минуты",seconds:"Секунды"},limitedOffer:"ОГРАНИЧЕННОЕ ПРЕДЛОЖЕНИЕ",discount:"До 75% скидки на вашу подписку",plans:{yearly:"12 месяцев",quarterly:"3 месяца",monthly:"1 месяц",perMonth:"/месяц"},currentSubscription:{label:"Текущая подписка",daysLeft:"Дней осталось",renewsOn:"Продление {date}"},subscribeTypes:{none:"Нет подписки",weekly:"Еженедельно",monthly:"Ежемесячно",quarterly:"Ежеквартально",annual:"Ежегодно",planText:"План {type}"},badges:{bestChoice:"ЛУЧШИЙ ВЫБОР"},security:{noAdultTransaction:"Никаких транзакций для взрослых в вашей банковской выписке",noHiddenFees:"Никаких скрытых платежей + Отмена подписки в любое время",securePayment:"Безопасная Оплата",sslEncrypted:"SSL Шифрование"},agreement:{iAgree:"Я принимаю",termsOfService:"Условия Обслуживания",and:"и",subscriptionPolicy:"Политика подписки"},subscribe:"Подписаться",subscribed:"Подписка активна",upgrade:"Обновить",errors:{alreadySubscribed:"У вас уже есть активная подписка."},vipGuide:{title:"Откройте эксклюзивные привилегии",description:"Поднимите свой опыт на новый уровень с нашим самым элитным форматом общения и премиум-контента.",discountTag:"40% OFF",button:"Начать мой Premium-путь",benefits:{exclusivePrivateShows:"Эксклюзивные Приватные Шоу & Видео и Изображения",premiumTipMenu:"Премиум Меню Чаевых",emotionalChatModel:"AI-модель чата с более богатыми эмоциями",betterMemory:"Лучшая память в каждом взаимодействии",welfareImages:"Откройте регулярно обновляемые бонусные изображения",posePrivilege:"Откройте привилегии специальных поз",liveChatPrivilege:"Привилегии чата в live-комнате",monthlyFreeCoins:"{coins} бесплатных монет каждый месяц"}},paymentPending:{alt:"Платеж обрабатывается",title:"Платеж обрабатывается",description:"Ваш платеж обрабатывается. После подтверждения ваша учетная запись будет автоматически обновлена до Premium. Это может занять несколько минут.",button:"Понятно"},benefits:{title:"Преимущества Premium",createAI:"Создайте свою собственную ИИ Подругу",unlimitedMessages:"Неограниченные текстовые сообщения",freeTokens:"Получите 100 БЕСПЛАТНЫХ токенов / месяц",removeBlur:"Удалить размытие с изображений",generateImages:"Генерировать изображения",phoneCalls:"Совершать ИИ звонки",fastResponse:"Быстрое время отклика",prioritySupport:"Приоритетная поддержка клиентов",exclusiveCharacters:"Доступ к эксклюзивным персонажам",advancedCustomization:"Расширенная настройка личности"}},coins:{title:"Монеты",currentCoins:"Текущие Монеты",description:{title:"Описание Монет",subtitle:"Монеты — это виртуальная валюта вселенной! С большим количеством монет вы можете сделать свой чат еще круче:"},badges:{discount:"{percent}% СКИДКА"},features:{heartWhisper:"Сообщение чата",inspirationReply:"Вдохновляющий ответ",premiumChat:"Специальные подарки",specialGifts:"Купить анимированное видео"},history:{title:"История Пополнений",item:{title:"Монеты",conisNum:"+ {num} монет",orderId:"ID Заказа: {id}"}}}},order:{status:{completed:{type:"Завершено",title:"Оплата Успешна",description:"Монеты успешно добавлены на ваш счет! Теперь вы можете использовать их для разблокировки эксклюзивных функций."},pending:{type:"Ожидание",title:"Обработка Платежа…",description:"Пожалуйста, подождите, пока мы подтверждаем ваш платеж. Вы можете проверить последний прогресс в истории пополнений в любое время."},failed:{type:"Неудачно",title:"Платеж Не Прошел",description:"К сожалению, этот платеж не был завершен. Будьте уверены, что мы не взимали с вас плату. Пожалуйста, попробуйте снова."}}},navbar:{search:{placeholder:"Поиск"},login:{title:"Войти",notification:{title:"Совет",message:"Метод входа пока недоступен"}},download:{title:"Скачать",dialog:{title:"Скачать APP",subtitle:"Скачайте приложение для поиска среди более чем 20 миллионов персонажей."}},checkIn:{title:"Регистрация"},joinFree:{title:"Присоединиться бесплатно"}},sidebar:{today:"СЕГОДНЯ",yesterday:"ВЧЕРА",other:"ДРУГОЕ",footer:{affiliate:"Партнерская программа",support:"Поддержка"}},contactUs:{email:"Электронная почта",youtube:"Youtube",facebook:"Facebook",whatsapp:"WhatsApp",telegram:"Telegram",instagram:"Instagram",discord:"Discord"},loading:{title:"Загрузка..."},noData:{title:"Здесь немного тихо..."},home:{more:"Посмотреть Всё",faq:{title:"Часто Задаваемые Вопросы"},banner:{slide1:{title:"Ваша История Начинается Здесь",description:"Разблокируйте Бесконечные Разговоры",buttonText:"Начать Общение Сейчас"},slide2:{title:"Найдите Своего Идеального Персонажа",description:"Исследуйте популярных персонажей, подобранных для вас",buttonText:"Исследовать Сейчас"},slide3:{title:"Создайте Свой Профиль",description:"Настройте предпочтения и синхронизируйте прогресс",buttonText:"Перейти в Центр"}},all:"Все"},characterTabs:{recommend:"Рекомендуемые",trending:"В Тренде",topRated:"Лучшие Оценки",popular:"Популярные",latest:"Последние"},characterChat:{sendInputPlaceholder:"Введите ваше сообщение...",openingPopoverTitle:"Попробуйте ответить",copyMessage:"Копировать Сообщение",deleteMessage:"Удалить Сообщение",reportMessage:"Пожаловаться на Сообщение",copySuccess:"Скопировано в буфер обмена",copyFailed:"Не удалось скопировать",noCopyContent:"Нет содержимого для копирования",sendTooFrequent:"Слишком частая отправка, попробуйте позже",messageTooLong:"Длина сообщения не может превышать 200 символов",sendFailed:"Не удалось отправить, попробуйте снова",openingSuggestions:{careerChange:"Я думаю о смене карьеры в сторону технологий. Что вы думаете о перспективах этой отрасли?",tellMore:"Интересно! Не могли бы вы рассказать больше о своем опыте в маркетинговой стратегии?",professionalAdvice:"Я чувствую себя немного застрявшим в своей текущей роли. Есть советы о том, как продвинуться профессионально?"},chatUser:{collect:"Коллекция",collected:"Собрано",profile:"Профиль",share:"Поделиться"},chatHeader:{status:{online:"Онлайн",offline:"Оффлайн",typing:"Печатает...",sendingPhoto:"отправка фото",living:"В эфире"}}},interact:{actionTrigger:"Активировать",actionSend:"Отправить",heat:"Теплота взаимодействия с ней",liveRoomGuide:{description:"Отправляйте подарки, чтобы открыть эксклюзивные интерактивные выступления!",action:"Отправить"},blockingDialog:{title:"Всё, о чём вы мечтали...",previewPrefix:"Вот превью ",previewHighlight:"эксклюзивного Try-On Show.",previewSuffix:" Отправьте премиум-подарки, чтобы открыть больше.",action:"Открыть сейчас"},giftPanel:{sendGift:"Отправить подарок",recharge:"Пополнить",more:"Ещё",gift:"Подарок",sort:"Сортировать",close:"Закрыть"},sceneSwitch:{guide:"Нажмите здесь, чтобы открыть больше сцен.",button:"Сменить\nсцену",shortButton:"Сцена",title:"Сменить сцену",subtitle:"Нажмите, чтобы переключиться на другую live-сцену.",switching:"Переключение...",close:"Закрыть",current:"Текущая",price:"Открыть за {price} монет",payInsufficient:"Недостаточно монет. Пополните баланс и попробуйте снова.",payNeedsConfirm:"Для этой сцены требуется подтверждение оплаты. Попробуйте снова.",payFailed:"Не удалось разблокировать эту сцену. Попробуйте снова."},floatingNotice:{sent:"отправил",requested:"заказал"},mobileMenu:{mute:"Отключить звук",unmute:"Включить звук",showMenu:"Показать меню",hideMenu:"Скрыть меню",muteToast:"Звук отключён",unmuteToast:"Звук включён"},fallbackReply:{feeling:"Как вы себя чувствуете?",anywhere:"Если бы вы могли быть где угодно прямо сейчас, где бы вы были?",mind:"Мне бы хотелось узнать, о чём вы думаете в последнее время."},defaultNames:{action:"Действие",gift:"Подарок",character:"Персонаж"},loading:{title:"Пожалуйста, подождите...",subtitle:"{name} готовится."},a11y:{avatarBackground:"Фон аватара",showMenu:"Показать меню",fire:"Огонь",up:"Вверх",send:"Отправить",gift:"Подарок",chat:"Чат",coin:"Монета",recharge:"Пополнить"}},chatInput:{placeholder:"Введите ваше сообщение..."},chatDeletePopover:{deleteChat:"Удалить",hide:"Скрыть"},clearChat:{title:"Очистить этот чат?",message:"Все сообщения в этом чате будут удалены навсегда.",clear:"Очистить",clearing:"Очистка...",clearChat:"Очистить Чат"},footer:{privacyPolicy:"Политика Конфиденциальности",termsService:"Условия Обслуживания",content:"Откройте для себя следующее поколение ИИ компаньонов. OnlyGF приносит вам подлинные разговоры, эмоциональные связи и сообщество ИИ друзей, которые понимают вас и растут вместе с вами.",desc:"© 2025 OnlyGF. Все права защищены.",features:"Функции",popular:"Популярное",chat:"Чат",createCharacter:"Создать Персонажа",myCollection:"Моя коллекция",myAI:"Мой ИИ",legalSupport:"Правовая информация и поддержка",termsAndPolicies:"Условия и политики"},legalInformation:{pageTitle:"Юридическая информация",items:{termsService:"Условия обслуживания",privacyNotice:"Уведомление о конфиденциальности",subscriptionPolicy:"Политика подписки",cookiesNotice:"Уведомление о cookie",underagePolicy:"Политика в отношении несовершеннолетних",contentRemovalPolicy:"Политика удаления контента",blockedContentPolicy:"Политика заблокированного контента",dmcaPolicy:"Политика DMCA",complaintPolicy:"Политика жалоб",exemption2257:"Исключение 18 U.S.C. 2257",communityGuidelines:"Правила сообщества",affiliateTerms:"Условия партнерской программы"}},languageDialog:{title:"Выбор Языка",desc:"Выберите язык отображения"},dialogUploadAvatar:{title:"Выберите Свой Аватар",desc:"Давайте найдем образ, который полностью вас отражает. Первое впечатление имеет значение!",save:"Сохранить"},dialogShare:{title:"Поделиться",desc:"Скопируйте ссылку или поделитесь напрямую, друзья могут сразу начать общение.",copy:"Скопировать ссылку",success:"Ссылка скопирована в буфер обмена",error:"Не удалось скопировать ссылку, пожалуйста, попробуйте снова"},dialogReport:{title:"Пожаловаться",desc:"Выберите причину",list:{sexuallyExplicit:"Откровенный сексуальный контент",hateSpeech:"Язык вражды или преследование",suicideSelfInjury:"Суицид или членовредительство",violenceThreats:"Насилие или угрозы",falseInformation:"Ложная информация",spamFraud:"Спам или мошенничество",privacyViolation:"Нарушение конфиденциальности",harmfulMinors:"Вредно для несовершеннолетних",other:"Другое"},other:{title:"Описание",placeholder:"Пожалуйста, опишите проблему..."},submit:"Отправить"},dialogDownload:{title:"Скачать",desc:"Скачайте приложение для поиска среди более чем 20 миллионов персонажей.",toast:"Скоро будет"},dialogCoinInsufficient:{title:"Разблокировать Следующее Сообщение",liveTitle:"Недостаточно монет",desc:"У вас закончились монеты для продолжения этого чата. Пожалуйста, пополните баланс, чтобы разблокировать больше ответов.",message:"Сообщения",balance:"Баланс",coins:"Монеты",button:"Получить Больше Монет"},dialogRegisterGuide:{title:"Хотите продолжить общение?",desc:"Создайте бесплатную учетную запись, чтобы продолжить общение и разблокировать все функции!",benefit1:"Неограниченные разговоры",benefit2:"Сохранение истории чатов",benefit3:"Доступ ко всем персонажам",signUp:"Зарегистрироваться",later:"Может Быть Позже"},registerGuideMessage:{text:"Хотите продолжить общение? Просто создайте бесплатный аккаунт! Зарегистрируйтесь сейчас для бонусных сообщений—я с нетерпением жду продолжения!",button:"Зарегистрироваться для чата"},dialogPhotoUnlock:{title:"Разблокировать Фото",desc:"Разблокируйте это фото, чтобы увидеть полное содержимое",balance:"Ваш Баланс",button:"Разблокировать Сейчас",getMore:"Получить Больше Монет",insufficientBalance:"Недостаточно Средств",unlocking:"Разблокировка...",unlockSuccess:"Фото успешно разблокировано",unlockFailed:"Не удалось разблокировать фото"},photoRequest:{buttonTitle:"Запросить фото",selectType:"Выберите тип фото:",requestFailed:"Не удалось запросить фото",sendMePhoto:"Пришли мне фото",noMorePhotos:"Больше нет доступных фото",poses:{random:"Случайно",selfie:"Селфи",posing:"Позирование",sitting:"Сидя",kneeling:"На коленях",squatting:"Присев",standing:"Стоя",prone:"Лёжа"},vipGuide:{title:"Разблокировать VIP Позы Фото",description:"Подпишитесь, чтобы разблокировать эксклюзивные позы фото и запрашивать желаемую позу.",buttonText:"Разблокировать VIP Сейчас"}},dialogLogout:{title:"Выйти?",desc:"Вы уверены, что хотите выйти?",desc2:"Вам нужно будет войти снова, чтобы получить доступ к вашей учетной записи.",confirm:"Выйти"},dialogLogin:{title:"Войти / Зарегистрироваться",subtitle:"Общайтесь с более чем 20 миллионами девушек",continueWith:"Продолжить с {method}",google:"Google",apple:"Apple",facebook:"Facebook",line:"Line",guest:"Гость",desc:"Я согласен получать специальные предложения, маркетинговые сообщения и обновления услуг по электронной почте.",sub:"Я подтверждаю, что мне",age:"18+",agreementPrefix:"принять",termsOfService:"Условия Обслуживания",and:"и",privacyPolicy:"Политику Конфиденциальности",or:"или",emailPlaceholder:"Адрес электронной почты",continueWithEmail:"Продолжить с Email",verifyTitle:"Подтвердите вашу почту",verifyDesc:"Мы отправили 6-значный код подтверждения на {email}. Откройте письмо и введите код ниже, чтобы продолжить.",confirm:"Подтвердить",resendCode:"Отправить повторно",resendCountdown:"Повторить через {seconds}с",back:"Назад",invalidEmail:"Введите действительный адрес электронной почты",codeSent:"Код подтверждения отправлен",codeSendFailed:"Не удалось отправить код подтверждения",codeRequired:"Введите код подтверждения",codeInvalid:"Неверный код подтверждения",promotionHint:"Первая подписка <b>-75% OFF</b> Эксклюзивное предложение"},dialogCheckin:{title:"Ежедневные Награды",desc:"Регистрируйтесь 7 дней подряд, чтобы получить все награды!",button:"Получить Награду",claimedToday:"Награда Получена Сегодня",resultTitle:"Награда Получена!",resultDesc:"Вы регистрировались {days} дней подряд. Продолжайте в том же духе!",resultButton:"Понятно",daysText:"День {days}"},auth:{loginSuccess:"Вход выполнен успешно",loginFailed:"Не удалось войти, пожалуйста, попробуйте снова"},person:{edit:"Редактировать",follow:"Подписки",fans:"Подписчики",createBot:" Боты",sendPost:" Публикации",followBot:" Отслеживаемые Боты"},common:{noData:"Нет данных",clickRetry:"Нажмите, чтобы повторить",live:"В эфире",report:"Пожаловаться на сообщение",reset:"Сбросить",months:{january:"Январь",february:"Февраль",march:"Март",april:"Апрель",may:"Май",june:"Июнь",july:"Июль",august:"Август",september:"Сентябрь",october:"Октябрь",november:"Ноябрь",december:"Декабрь"},submitting:"Отправка...",unlockFailed:"Необходимо разблокировать доступ по подписке"},characterDetail:{online:"Онлайн",chatToMe:"Общайтесь со Мной",collect:"Коллекция",collected:"Собрано",share:"Поделиться",gallery:"Галерея",report:"Пожаловаться",age:"Возраст",career:"Карьера",height:"Рост",constellation:"Созвездие",bloodType:"Группа Крови",unknown:"Неизвестно",likeSuccess:"Успешно понравилось",unlikeSuccess:"Успешно удалено из понравившихся",collectSuccess:"Успешно добавлено в коллекцию",uncollectSuccess:"Коллекция отменена успешно",likeFailed:"Не удалось поставить лайк, пожалуйста, попробуйте снова",collectFailed:"Не удалось добавить в коллекцию, пожалуйста, попробуйте снова",networkError:"Ошибка сети, пожалуйста, попробуйте снова",reportSuccess:"Жалоба успешно отправлена, мы обработаем ее как можно скорее",reportFailed:"Не удалось отправить жалобу, пожалуйста, попробуйте снова"},langSelect:{message:{success:"Язык успешно изменен!"}},userCenter:{title:"Личная Информация",username:"Имя Пользователя",usernamePlaceholder:"AlexOnlyGF",usernameHelper:"Пожалуйста, введите 3-25 символов, разрешены буквы, эмодзи, цифры и подчеркивания. Имя пользователя должно быть уникальным.",profile:"Профиль (Опционально)",profilePlaceholder:"Заполните свою биографию, чтобы другие могли лучше вас узнать",save:"Сохранить",saving:"Сохранение...",saveSuccess:"Успешно сохранено",saveFailed:"Не удалось сохранить, пожалуйста, попробуйте снова",editProfile:"Редактировать Профиль",collections:"Коллекции",likes:"Нравится",logout:"Выйти",logoutConfirm:"Вы уверены, что хотите выйти?",downloadApp:"Скачать APP",language:"Язык",privacyPolicy:"Политика Конфиденциальности",termsOfUse:"Условия Использования",contactUs:"Связаться с Нами",support:"Поддержка",supportDesc:"Мы здесь для вас 24/7",premiumTitle:"OnlyGF Premium",premiumDesc:"Откройте все шоу и {coins} бонусных монет каждый месяц",myBalance:"Мой баланс",recharge:"Пополнить",currentSubscription:"Текущая подписка",daysLeft:"Дней осталось"},download:{googlePlay:{name:"Google Play",description:"Получите официальное приложение для безопасных, бесшовных обновлений и новых компаньонов.",subtitle:"СКАЧАТЬ В"},appStore:{name:"App Store",description:"Наслаждайтесь приватным, захватывающим опытом общения, оптимизированным для вашего iPhone.",subtitle:"Скачать"},androidApk:{name:"Android APK",description:"Установите напрямую для максимальной конфиденциальности, мгновенного доступа и последних обновлений.",subtitle:"Скачать"},webApp:{name:"Web APP",description:"Общайтесь мгновенно из любого браузера — установка не требуется. Ваше личное убежище ждет вас.",subtitle:"Установить"}},premiumPhotoUnlock:{vipUnlock:"Можно разблокировать",vipMark:"VIP",proMark:"Pro"},photoGallery:{photoCount:"{current}/{total}",prevPhoto:"Назад",nextPhoto:"Далее"},dialogVideoUnlock:{title:"Разблокировать Видео",desc:"Разблокируйте это видео, чтобы посмотреть полное содержимое",button:"Разблокировать Сейчас",balance:"Ваш Баланс",insufficientBalance:"Недостаточно Средств",getMore:"Получить Больше Монет",unlocking:"Разблокировка...",unlockSuccess:"Видео успешно разблокировано",unlockFailed:"Не удалось разблокировать видео"},upgradablePhoto:{unlockMoment:"Разблокировать момент",upgrading:"Обновление...",upgradeSuccess:"Обновлено до видео",upgradeFailed:"Не удалось обновить"},dialogWebViewGuide:{title:"Откройте в браузере",desc:"Вход через Google не поддерживается во встроенных браузерах приложений. Скопируйте ссылку и откройте её в системном браузере (Chrome/Safari), чтобы завершить вход.",currentUrl:"URL текущей страницы",copyLink:"Копировать ссылку",copied:"Ссылка скопирована",copyFailed:"Не удалось скопировать, скопируйте вручную",steps:{step1:"Нажмите кнопку выше, чтобы скопировать ссылку",step2:"Откройте системный браузер (Chrome/Safari)",step3:"Вставьте ссылку и перейдите для завершения входа"}},emailChat:{openEmailChat:"Открыть чат по электронной почте",connectViaEmail:"Связаться по электронной почте",enterEmailTitle:"Введите электронную почту для получения писем",receiveYourFirstLetter:"Получите ваше первое письмо",receiveLetter:"Получить письмо",startEmailChatWith:"Начать чат по электронной почте с {botName}",letterWillBeSent:"Письмо скоро будет отправлено на вашу почту!",description:"Хотите получать письма, написанные специально для вас, помимо чата? После включения они будут приходить в ваш почтовый ящик, продолжая вашу историю, как если бы они были реальной частью вашей жизни.",emailPlaceholder:"Адрес электронной почты",sendNow:"Отправить сейчас",emailChatStartedWith:"Чат по электронной почте начат с {botName}",switchToBot:"Переключиться на {botName}",receiveLetterAt:"Получить письмо",tips:"Советы:",tipsContent:"Она будет проактивно писать вам и отвечать на ваши письма. Это личное, в медленном темпе и исключительно для вас двоих.",invalidEmail:"Пожалуйста, введите действительный адрес электронной почты",enableSuccess:"Чат по электронной почте успешно включен",disableSuccess:"Чат по электронной почте успешно отключен",updateEmailSuccess:"Электронная почта успешно обновлена",switchBotSuccess:"Успешно переключено на нового персонажа",enableFailed:"Не удалось включить чат по электронной почте",disableFailed:"Не удалось отключить чат по электронной почте",updateEmailFailed:"Не удалось обновить электронную почту",switchBotFailed:"Не удалось переключить персонажа",disableConfirmTitle:"Закрыть чат по электронной почте?",disableConfirmMessage:"Вы больше не будете получать письма от этого персонажа.",switchBotConfirmTitle:"Переключить персонажа?",switchBotConfirmMessage:"Переключить чат по электронной почте с {fromBot} на {toBot}?",updateEmail:"Обновить электронную почту",enterNewEmail:"Пожалуйста, введите новый адрес электронной почты",firstLetterTriggered:"Ваше первое письмо уже в пути!",firstLetterFailed:"Не удалось отправить первое письмо",verifyTitle:"Подтвердить электронную почту",verifyDesc:"Код подтверждения отправлен на {email}",codeRequired:"Пожалуйста, введите 6-значный код",codeInvalid:"Неверный или истекший код",codeSent:"Код отправлен",codeSendFailed:"Не удалось отправить код",confirm:"Подтвердить",resendCode:"Отправить повторно",resendCountdown:"Отправить повторно через {seconds}s"},emailCallback:{verifying:"Проверка вашей ссылки...",success:"Успешно!",redirectingToChat:"Перенаправление в чат...",oops:"Упс!",redirectingIn:"Перенаправление на главную страницу через {seconds}с...",goHomeNow:"Перейти на главную страницу",invalidLink:"Недействительная ссылка",linkExpired:"Срок действия ссылки истек. Пожалуйста, вернитесь в письмо и нажмите еще раз.",linkInvalid:"Недействительная ссылка",linkUsed:"Ссылка больше не действительна",userNotFound:"Пользователь не найден",networkError:"Ошибка сети, попробуйте еще раз"},profileComplete:{title:"Добро пожаловать в {appName}!",subtitle:"Расскажите нам больше для лучшего персонализированного опыта",nicknameLabel:"Как вас зовут?",nicknamePlaceholder:"Введите крутой никнейм",nicknameRequired:"Пожалуйста, введите ваш никнейм",genderLabel:"Какое местоимение вы используете?",genderHint:"(Пол нельзя изменить после выбора.)",birthdayLabel:"Ваш день рождения?",birthdayPlaceholder:"ДД/ММ/ГГГГ",birthdayRequired:"Пожалуйста, выберите ваш день рождения",birthdayUnderAge:"Вам должно быть не менее 18 лет",submitButton:"Начать мое путешествие!",genderRequired:"Пожалуйста, выберите ваш пол",submitSuccess:"Профиль успешно заполнен!",submitFailed:"Не удалось отправить, попробуйте еще раз",genderOptions:{male:"Он",female:"Она",other:"Они"}},seo:{description:{characterList:"Просмотрите всех ИИ-персонажей на {appName}. Найдите своего идеального ИИ-компаньона для живого общения, чата и историй.",characterSearch:"Ищите ИИ-персонажей на {appName}. Находите ИИ-компаньонов по имени, тегу или интересам и начинайте общаться мгновенно.",chatHistory:"Просмотрите историю чатов с ИИ на {appName} и продолжайте общение с любимыми ИИ-компаньонами.",userCenter:"Управляйте профилем {appName}, коллекциями и настройками аккаунта в пользовательском центре.",rechargeCenter:"Пополняйте монеты и оформляйте подписку на {appName}. Откройте премиум-чат с ИИ, живое общение и эксклюзивный контент.",webTutorial:"Узнайте, как использовать {appName}, с помощью нашего веб-руководства. Советы по чату с ИИ, живому общению и максимальному использованию ИИ-компаньона.",contactUs:"Свяжитесь с {appName} для поддержки, партнерства и запросов о продуктах, связанных с опытом общения с ИИ-компаньонами.",privacyPolicy:"Ознакомьтесь с Политикой конфиденциальности {appName}, чтобы узнать, как мы собираем, используем и защищаем вашу личную информацию.",termsService:"Ознакомьтесь с Условиями использования {appName}, регулирующими использование нашей платформы ИИ-компаньонов."}}},[_s.PL]:{errorPage:{page404:{oops:"UPS!",headline:"Webmaster powiedział, że nie możesz wejść na tę stronę...",info:"Sprawdź, czy wprowadzony adres URL jest prawidłowy lub kliknij przycisk poniżej, aby wrócić do strony głównej.",backToHome:"Wróć do strony głównej",allRightsReserved:"Wszelkie prawa zastrzeżone"},page401:{oops:"Ups!",noPermission:"Nie masz uprawnień, aby przejść na tę stronę",contactLeader:"Jeśli nie jesteś zadowolony, skontaktuj się ze swoim przełożonym",orYouCan:"Lub możesz przejść:",backHome:"Wróć do strony głównej",browse:"Po prostu przeglądaj",viewImage:"Kliknij, aby zobaczyć obraz",back:"Wstecz",gifSource:"źródło gif",randomView:"Losowy widok"},ipAccess:{title:"Dostęp Ograniczony",description:"Przepraszamy, ta usługa nie jest dostępna w Twoim regionie",tips:"Ze względu na lokalne przepisy i umowy, ta strona internetowa nie jest dostępna w Twoim regionie geograficznym."}},route:{premium:"Premium",home:"Odkrywaj",characterList:"Lista Postaci",characterSearch:"Wyszukiwanie Postaci",characterDetail:"Szczegóły Postaci",characterChat:"Czat z Postacią",chatHistory:"Czat",userCenter:"Centrum Użytkownika",userCenterEdit:"Informacje Osobiste",rechargeCenter:"Centrum Doładowań",contactUs:"Skontaktuj się z Nami",characterCollections:"Kolekcje",characterLiked:"Polubione",rechargeHistory:"Historia Doładowań",legalInformation:"Informacje prawne",underagePolicy:"Polityka dotycząca nieletnich",subscriptionPolicy:"Polityka subskrypcji",exemption2257:"Wyłączenie 18 U.S.C. 2257",dmcaPolicy:"Polityka DMCA",blockedContentPolicy:"Polityka zablokowanych treści",contentRemovalPolicy:"Polityka usuwania treści",complaintPolicy:"Polityka skarg"},rechargeHistory:{title:"Historia Transakcji",tabs:{deposits:"Doładowania",expenses:"Wydatki"},expense:{chatWith:"Czat z {name}",unlockedVideo:"Odblokowano prywatne wideo {name}",unlockedPhoto:"Odblokowano prywatne zdjęcie {name}",upgradeVideo:"Upgrade wideo",sendGifts:"Wydatek na interakcję intymną: {name}",other:"Inny wydatek"}},rechargeCenter:{tabs:{subscribe:"Subskrybuj",coins:"Monety"},premium:{title:"Subskrybuj",choosePlan:"Wybierz Swój Plan",anonymous:"100% anonimowo. Możesz anulować w dowolnym momencie.",countdown:{hours:"Godziny",minutes:"Minuty",seconds:"Sekundy"},limitedOffer:"OFERTA CZASOWA",discount:"Do 75% zniżki na subskrypcję",plans:{yearly:"12 miesięcy",quarterly:"3 miesiące",monthly:"1 miesiąc",perMonth:"/miesiąc"},currentSubscription:{label:"Aktualna subskrypcja",daysLeft:"Dni pozosta?o",renewsOn:"Odnowienie {date}"},subscribeTypes:{none:"Brak subskrypcji",weekly:"Tygodniowa",monthly:"Miesi?czna",quarterly:"Kwartalna",annual:"Roczna",planText:"Plan {type}"},badges:{bestChoice:"NAJLEPSZY WYBÓR"},security:{noAdultTransaction:"Brak transakcji dla dorosłych w wyciągu bankowym",noHiddenFees:"Brak ukrytych opłat + Anuluj subskrypcję w dowolnym momencie",securePayment:"Bezpieczna Płatność",sslEncrypted:"Szyfrowanie SSL"},agreement:{iAgree:"Akceptuję",termsOfService:"Warunki Świadczenia Usług",and:"i",subscriptionPolicy:"Polityka subskrypcji"},subscribe:"Subskrybuj",subscribed:"Aktywna subskrypcja",upgrade:"Ulepsz",errors:{alreadySubscribed:"Masz już aktywną subskrypcję."},vipGuide:{title:"Odblokuj ekskluzywne przywileje",description:"Podnies swoje doswiadczenie dzieki naszemu najbardziej elitarnemu poziomowi relacji i tresci premium.",discountTag:"40% TANIEJ",button:"Rozpocznij moja podroz Premium",benefits:{exclusivePrivateShows:"Ekskluzywne Prywatne Pokazy & Wideo i Obrazy",premiumTipMenu:"Menu Napiwków Premium",emotionalChatModel:"Bogatszy emocjonalnie model czatu AI",betterMemory:"Lepsza pamiec w kazdej interakcji",welfareImages:"Odblokuj regularnie aktualizowane obrazy bonusowe",posePrivilege:"Odblokuj specjalne przywileje poz",liveChatPrivilege:"Przywileje czatu w pokoju live",monthlyFreeCoins:"{coins} darmowych monet co miesiac"}},paymentPending:{alt:"Płatność w toku",title:"Płatność w toku",description:"Twoja płatność jest przetwarzana. Po weryfikacji konto zostanie automatycznie uaktualnione do Premium. Może to potrwać kilka minut.",button:"Rozumiem"},benefits:{title:"Korzyści Premium",createAI:"Stwórz własną Dziewczynę AI",unlimitedMessages:"Nieograniczone wiadomości tekstowe",freeTokens:"Otrzymaj 100 DARMOWYCH tokenów / miesiąc",removeBlur:"Usuń rozmycie z obrazów",generateImages:"Generuj obrazy",phoneCalls:"Wykonuj połączenia AI",fastResponse:"Szybki czas odpowiedzi",prioritySupport:"Priorytetowe wsparcie klienta",exclusiveCharacters:"Dostęp do ekskluzywnych postaci",advancedCustomization:"Zaawansowane dostosowanie osobowości"}},coins:{title:"Monety",currentCoins:"Obecne Monety",description:{title:"Opis Monet",subtitle:"Monety to wirtualna waluta wszechświata! Mając więcej monet, możesz uczynić swoje doświadczenie czatu jeszcze lepszym:"},badges:{discount:"{percent}% ZNIŻKI"},features:{heartWhisper:"Wiadomość czatu",inspirationReply:"Odpowiedź inspiracji",premiumChat:"Specjalne prezenty",specialGifts:"Kup animowany film"},history:{title:"Historia Doładowań",item:{title:"Monety",conisNum:"+ {num} monet",orderId:"ID Zamówienia: {id}"}}}},order:{status:{completed:{type:"Zakończone",title:"Płatność Udana",description:"Monety zostały pomyślnie dodane do Twojego konta! Możesz teraz ich używać, aby odblokować ekskluzywne funkcje."},pending:{type:"Oczekujące",title:"Przetwarzanie Płatności…",description:"Poczekaj, aż potwierdzimy Twoją płatność. Możesz sprawdzić najnowszy postęp w historii doładowań w dowolnym momencie."},failed:{type:"Nieudane",title:"Płatność Nieudana",description:"Niestety, ta płatność nie mogła zostać zrealizowana. Upewnij się, że nie naliczyliśmy Ci opłat. Spróbuj ponownie."}}},navbar:{search:{placeholder:"Szukaj"},login:{title:"Zaloguj się",notification:{title:"Wskazówka",message:"Metoda logowania jeszcze niedostępna"}},download:{title:"Pobierz",dialog:{title:"Pobierz APP",subtitle:"Pobierz aplikację, aby przeszukać ponad 20 milionów postaci."}},checkIn:{title:"Zamelduj się"},joinFree:{title:"Dołącz za darmo"}},sidebar:{today:"DZISIAJ",yesterday:"WCZORAJ",other:"INNE",footer:{affiliate:"Afiliacja",support:"Wsparcie"}},contactUs:{email:"Email",youtube:"Youtube",facebook:"Facebook",whatsapp:"WhatsApp",telegram:"Telegram",instagram:"Instagram",discord:"Discord"},loading:{title:"Ładowanie..."},noData:{title:"Tutaj jest trochę cicho..."},home:{more:"Zobacz Wszystko",faq:{title:"Najczęściej Zadawane Pytania"},banner:{slide1:{title:"Twoja Historia Zaczyna się Tutaj",description:"Odblokuj Nieskończone Rozmowy",buttonText:"Zacznij Czatować Teraz"},slide2:{title:"Znajdź Swoją Idealną Postać",description:"Odkryj popularne postacie wybrane dla Ciebie",buttonText:"Odkrywaj Teraz"},slide3:{title:"Zbuduj Swój Profil",description:"Dostosuj preferencje i zsynchronizuj postępy",buttonText:"Przejdź do Centrum"}},all:"Wszystkie"},characterTabs:{recommend:"Polecane",trending:"Trendy",topRated:"Najwyżej Oceniane",popular:"Popularne",latest:"Najnowsze"},characterChat:{sendInputPlaceholder:"Wpisz swoją wiadomość...",openingPopoverTitle:"Spróbuj odpowiedzieć",copyMessage:"Kopiuj Wiadomość",deleteMessage:"Usuń Wiadomość",reportMessage:"Zgłoś Wiadomość",copySuccess:"Skopiowano do schowka",copyFailed:"Kopiowanie nie powiodło się",noCopyContent:"Brak treści do skopiowania",sendTooFrequent:"Wysyłanie zbyt częste, spróbuj ponownie później",messageTooLong:"Długość wiadomości nie może przekraczać 200 znaków",sendFailed:"Wysyłanie nie powiodło się, spróbuj ponownie",openingSuggestions:{careerChange:"Myślę o zmianie kariery w kierunku technologii. Co sądzisz o perspektywach tej branży?",tellMore:"Ciekawe! Czy mógłbyś opowiedzieć więcej o swoim doświadczeniu w strategii marketingowej?",professionalAdvice:"Czuję się trochę utknięty w mojej obecnej roli. Jakieś rady, jak się rozwijać zawodowo?"},chatUser:{collect:"Kolekcja",collected:"Zebrane",profile:"Profil",share:"Udostępnij"},chatHeader:{status:{online:"Online",offline:"Offline",typing:"Pisze...",sendingPhoto:"wysyłanie zdjęcia",living:"Na żywo"}}},interact:{actionTrigger:"Wywołaj",actionSend:"Wyślij",heat:"Poziom interakcji z nią",liveRoomGuide:{description:"Wyślij prezenty, aby odblokować ekskluzywne interaktywne występy!",action:"Wyślij"},blockingDialog:{title:"Wszystko, o czym marzyłaś...",previewPrefix:"Oto zapowiedź ",previewHighlight:"ekskluzywnego pokazu Try-On.",previewSuffix:" Wyślij prezenty premium, aby odblokować więcej.",action:"Odblokuj teraz"},giftPanel:{sendGift:"Wyślij prezent",recharge:"Doładuj",more:"Więcej",gift:"Prezent",sort:"Sortuj",close:"Zamknij"},sceneSwitch:{guide:"Kliknij tutaj, aby odkryć więcej scen.",button:"Zmień\nscenę",shortButton:"Scena",title:"Zmień scenę",subtitle:"Kliknij, aby przełączyć się na inną scenę live.",switching:"Przełączanie...",close:"Zamknij",current:"Obecna",price:"Odblokuj za {price} monet",payInsufficient:"Za mało monet. Doładuj konto i spróbuj ponownie.",payNeedsConfirm:"Ta scena wymaga potwierdzenia płatności. Spróbuj ponownie.",payFailed:"Nie udało się odblokować tej sceny. Spróbuj ponownie."},floatingNotice:{sent:"wysłał",requested:"zażądał"},mobileMenu:{mute:"Wycisz",unmute:"Włącz dźwięk",showMenu:"Pokaż menu",hideMenu:"Ukryj menu",muteToast:"Wyciszono",unmuteToast:"Włączono dźwięk"},fallbackReply:{feeling:"Jak się teraz czujesz?",anywhere:"Gdybyś mógł być teraz w dowolnym miejscu, gdzie byłbyś?",mind:"Chciałbym usłyszeć, o czym ostatnio myślisz."},defaultNames:{action:"Akcja",gift:"Prezent",character:"Postać"},loading:{title:"Proszę czekać...",subtitle:"{name} się przygotowuje."},a11y:{avatarBackground:"Tło awatara",showMenu:"Pokaż menu",fire:"Ogień",up:"W górę",send:"Wyślij",gift:"Prezent",chat:"Czat",coin:"Moneta",recharge:"Doładuj"}},chatInput:{placeholder:"Wpisz swoją wiadomość..."},chatDeletePopover:{deleteChat:"Usuń",hide:"Ukryj"},clearChat:{title:"Wyczyścić ten czat?",message:"Wszystkie wiadomości w tym czacie zostaną trwale usunięte.",clear:"Wyczyść",clearing:"Czyszczenie...",clearChat:"Wyczyść Czat"},footer:{privacyPolicy:"Polityka Prywatności",termsService:"Warunki Świadczenia Usług",content:"Odkryj nową generację towarzystwa AI. OnlyGF przynosi Ci autentyczne rozmowy, emocjonalne połączenia i społeczność przyjaciół AI, którzy Cię rozumieją i rosną razem z Tobą.",desc:"© 2025 OnlyGF. Wszelkie prawa zastrzeżone.",features:"Funkcje",popular:"Popularne",chat:"Czat",createCharacter:"Utwórz Postać",myCollection:"Moja kolekcja",myAI:"Moja AI",legalSupport:"Prawo i wsparcie",termsAndPolicies:"Regulaminy i polityki"},legalInformation:{pageTitle:"Informacje prawne",items:{termsService:"Warunki świadczenia usług",privacyNotice:"Informacja o prywatności",subscriptionPolicy:"Polityka subskrypcji",cookiesNotice:"Informacja o plikach cookie",underagePolicy:"Polityka dotycząca nieletnich",contentRemovalPolicy:"Polityka usuwania treści",blockedContentPolicy:"Polityka zablokowanych treści",dmcaPolicy:"Polityka DMCA",complaintPolicy:"Polityka skarg",exemption2257:"Wyłączenie 18 U.S.C. 2257",communityGuidelines:"Wytyczne społeczności",affiliateTerms:"Warunki programu partnerskiego"}},languageDialog:{title:"Wybór Języka",desc:"Wybierz język wyświetlania"},dialogUploadAvatar:{title:"Wybierz Swój Awatar",desc:"Znajdźmy wygląd, który jest w pełni Tobą. Pierwsze wrażenia się liczą!",save:"Zapisz"},dialogShare:{title:"Udostępnij",desc:"Skopiuj link lub udostępnij bezpośrednio, znajomi mogą natychmiast zacząć czatować.",copy:"Skopiuj link",success:"Link skopiowany do schowka",error:"Nie udało się skopiować linku, spróbuj ponownie"},dialogReport:{title:"Zgłoś",desc:"Wybierz powód",list:{sexuallyExplicit:"Treści o charakterze seksualnym",hateSpeech:"Mowa nienawiści lub nękanie",suicideSelfInjury:"Samobójstwo lub samookaleczenie",violenceThreats:"Przemoc lub groźby",falseInformation:"Fałszywe informacje",spamFraud:"Spam lub oszustwo",privacyViolation:"Naruszenie prywatności",harmfulMinors:"Szkodliwe dla nieletnich",other:"Inne"},other:{title:"Opis",placeholder:"Proszę opisać problem..."},submit:"Wyślij"},dialogDownload:{title:"Pobierz",desc:"Pobierz aplikację, aby przeszukać ponad 20 milionów postaci.",toast:"Już wkrótce"},dialogCoinInsufficient:{title:"Odblokuj Następną Wiadomość",liveTitle:"Niewystarczająca liczba monet",desc:"Skończyły Ci się monety, aby kontynuować ten czat. Doładuj swoje saldo, aby odblokować więcej odpowiedzi.",message:"Wiadomości",balance:"Saldo",coins:"Monety",button:"Zdobądź Więcej Monet"},dialogRegisterGuide:{title:"Chcesz kontynuować rozmowę?",desc:"Utwórz darmowe konto, aby kontynuować czat i odblokować wszystkie funkcje!",benefit1:"Nieograniczone rozmowy",benefit2:"Zapisz historię czatów",benefit3:"Dostęp do wszystkich postaci",signUp:"Zarejestruj się",later:"Może Później"},registerGuideMessage:{text:"Chcesz kontynuować rozmowę? Po prostu utwórz darmowe konto! Zarejestruj się teraz, aby otrzymać bonusowe wiadomości—nie mogę się doczekać kontynuacji!",button:"Zarejestruj się, aby czatować"},dialogPhotoUnlock:{title:"Odblokuj Zdjęcie",desc:"Odblokuj to zdjęcie, aby zobaczyć pełną zawartość",balance:"Twoje Saldo",button:"Odblokuj Teraz",getMore:"Zdobądź Więcej Monet",insufficientBalance:"Niewystarczające Saldo",unlocking:"Odblokowywanie...",unlockSuccess:"Zdjęcie odblokowane pomyślnie",unlockFailed:"Nie udało się odblokować zdjęcia"},photoRequest:{buttonTitle:"Poproś o zdjęcie",selectType:"Wybierz typ zdjęcia:",requestFailed:"Nie udało się poprosić o zdjęcie",sendMePhoto:"Wyślij mi zdjęcie",noMorePhotos:"Brak dostępnych zdjęć",poses:{random:"Losowe",selfie:"Selfie",posing:"Pozowanie",sitting:"Siedząca",kneeling:"Klęcząca",squatting:"Kucająca",standing:"Stojąca",prone:"Leżąca"},vipGuide:{title:"Odblokuj VIP Pozycje Zdjęć",description:"Subskrybuj, aby odblokować ekskluzywne pozycje zdjęć i poprosić o wybraną pozę.",buttonText:"Odblokuj VIP Teraz"}},dialogLogout:{title:"Wylogować?",desc:"Czy na pewno chcesz się wylogować?",desc2:"Będziesz musiał zalogować się ponownie, aby uzyskać dostęp do swojego konta.",confirm:"Wyloguj"},dialogLogin:{title:"Zaloguj się / Zarejestruj się",subtitle:"Rozmawiaj z ponad 20 mln dziewczyn",continueWith:"Kontynuuj z {method}",google:"Google",apple:"Apple",facebook:"Facebook",line:"Line",guest:"Gość",desc:"Wyrażam zgodę na otrzymywanie specjalnych ofert, komunikacji marketingowej i aktualizacji usług pocztą e-mail.",sub:"Potwierdzam, że mam",age:"18+",agreementPrefix:"akceptować",termsOfService:"Warunki Świadczenia Usług",and:"i",privacyPolicy:"Politykę Prywatności",or:"lub",emailPlaceholder:"Adres e-mail",continueWithEmail:"Kontynuuj z Email",verifyTitle:"Zweryfikuj swój e-mail",verifyDesc:"Wysłaliśmy 6-cyfrowy kod weryfikacyjny na {email}. Otwórz e-mail i wprowadź kod poniżej, aby kontynuować.",confirm:"Potwierdź",resendCode:"Wyślij ponownie kod",resendCountdown:"Wyślij ponownie za {seconds}s",back:"Wstecz",invalidEmail:"Wprowadź prawidłowy adres e-mail",codeSent:"Kod weryfikacyjny wysłany",codeSendFailed:"Nie udało się wysłać kodu weryfikacyjnego",codeRequired:"Wprowadź kod weryfikacyjny",codeInvalid:"Nieprawidłowy kod weryfikacyjny",promotionHint:"Pierwsza subskrypcja <b>-75% OFF</b> Oferta Ekskluzywna"},dialogCheckin:{title:"Codzienne Nagrody",desc:"Zamelduj się przez 7 kolejnych dni, aby zdobyć wszystkie nagrody!",button:"Odbierz Nagrodę",claimedToday:"Nagroda Odebrana Dzisiaj",resultTitle:"Nagroda Odebrana!",resultDesc:"Zameldowałeś się przez {days} dni z rzędu. Tak trzymaj!",resultButton:"Rozumiem",daysText:"Dzień {days}"},auth:{loginSuccess:"Zalogowano pomyślnie",loginFailed:"Nie udało się zalogować, spróbuj ponownie"},person:{edit:"Edytuj",follow:"Obserwowane",fans:"Obserwujący",createBot:" Boty",sendPost:" Posty",followBot:" Obserwowane Boty"},common:{noData:"Brak danych",clickRetry:"Dotknij, aby ponowić",live:"Na żywo",report:"Zgłoś wiadomość",reset:"Resetuj",months:{january:"Styczeń",february:"Luty",march:"Marzec",april:"Kwiecień",may:"Maj",june:"Czerwiec",july:"Lipiec",august:"Sierpień",september:"Wrzesień",october:"Październik",november:"Listopad",december:"Grudzień"},submitting:"Przesyłanie...",unlockFailed:"Wymagane jest odblokowanie uprawnień subskrypcji"},characterDetail:{online:"Online",chatToMe:"Czatuj ze Mną",collect:"Kolekcja",collected:"Zebrane",share:"Udostępnij",gallery:"Galeria",report:"Zgłoś",age:"Wiek",career:"Kariera",height:"Wzrost",constellation:"Konstelacja",bloodType:"Grupa Krwi",unknown:"Nieznany",likeSuccess:"Polubiono pomyślnie",unlikeSuccess:"Usunięto polubienie pomyślnie",collectSuccess:"Dodano do kolekcji pomyślnie",uncollectSuccess:"Kolekcja anulowana pomyślnie",likeFailed:"Nie udało się polubić, spróbuj ponownie",collectFailed:"Nie udało się dodać do kolekcji, spróbuj ponownie",networkError:"Błąd sieci, spróbuj ponownie",reportSuccess:"Zgłoszenie wysłane pomyślnie, przetwórzymy je jak najszybciej",reportFailed:"Nie udało się wysłać zgłoszenia, spróbuj ponownie"},langSelect:{message:{success:"Język zmieniony pomyślnie!"}},userCenter:{title:"Informacje Osobiste",username:"Nazwa Użytkownika",usernamePlaceholder:"AlexOnlyGF",usernameHelper:"Wprowadź 3-25 znaków, dozwolone są litery, emoji, cyfry i podkreślenia. Nazwa użytkownika musi być unikalna.",profile:"Profil (Opcjonalnie)",profilePlaceholder:"Wypełnij swoją biografię, aby inni mogli Cię lepiej poznać",save:"Zapisz",saving:"Zapisywanie...",saveSuccess:"Zapisano pomyślnie",saveFailed:"Nie udało się zapisać, spróbuj ponownie",editProfile:"Edytuj Profil",collections:"Kolekcje",likes:"Polubienia",logout:"Wyloguj",logoutConfirm:"Czy na pewno chcesz się wylogować?",downloadApp:"Pobierz APP",language:"Język",privacyPolicy:"Polityka Prywatności",termsOfUse:"Warunki Użytkowania",contactUs:"Skontaktuj się z Nami",support:"Wsparcie",supportDesc:"Jesteśmy tu dla Ciebie 24/7",premiumTitle:"OnlyGF Premium",premiumDesc:"Odblokuj wszystkie pokazy i {coins} bonusowych monet co miesiąc",myBalance:"Moje saldo",recharge:"Doładuj",currentSubscription:"Aktualna subskrypcja",daysLeft:"Dni pozostało"},download:{googlePlay:{name:"Google Play",description:"Pobierz oficjalną aplikację dla bezpiecznych, płynnych aktualizacji i nowych towarzyszy.",subtitle:"POBIERZ W"},appStore:{name:"App Store",description:"Ciesz się prywatnym, wciągającym doświadczeniem czatu zoptymalizowanym dla Twojego iPhone'a.",subtitle:"Pobierz"},androidApk:{name:"Android APK",description:"Zainstaluj bezpośrednio dla maksymalnej prywatności, natychmiastowego dostępu i najnowszych aktualizacji.",subtitle:"Pobierz"},webApp:{name:"Web APP",description:"Czatuj natychmiast z dowolnej przeglądarki — nie wymaga instalacji. Twoja prywatna ucieczka czeka.",subtitle:"Zainstaluj"}},premiumPhotoUnlock:{vipUnlock:"Można odblokować",vipMark:"VIP",proMark:"Pro"},photoGallery:{photoCount:"{current}/{total}",prevPhoto:"Poprzedni",nextPhoto:"Następny"},dialogVideoUnlock:{title:"Odblokuj Wideo",desc:"Odblokuj to wideo, aby obejrzeć pełną treść",button:"Odblokuj Teraz",balance:"Twoje Saldo",insufficientBalance:"Niewystarczające Saldo",getMore:"Zdobądź Więcej Monet",unlocking:"Odblokowywanie...",unlockSuccess:"Wideo odblokowane pomyślnie",unlockFailed:"Nie udało się odblokować wideo"},upgradablePhoto:{unlockMoment:"Odblokuj moment",upgrading:"Aktualizowanie...",upgradeSuccess:"Zaktualizowano do wideo",upgradeFailed:"Nie udało się zaktualizować"},dialogWebViewGuide:{title:"Proszę otworzyć w przeglądarce",desc:"Logowanie przez Google nie jest obsługiwane w przeglądarkach wbudowanych w aplikacje. Skopiuj link i otwórz go w systemowej przeglądarce (Chrome/Safari), aby dokończyć logowanie.",currentUrl:"Adres URL bieżącej strony",copyLink:"Kopiuj link",copied:"Link skopiowany",copyFailed:"Kopiowanie nie powiodło się, skopiuj ręcznie",steps:{step1:"Kliknij przycisk powyżej, aby skopiować link",step2:"Otwórz systemową przeglądarkę (Chrome/Safari)",step3:"Wklej link i odwiedź, aby dokończyć logowanie"}},emailChat:{openEmailChat:"Otwórz czat e-mail",connectViaEmail:"Połącz przez e-mail",enterEmailTitle:"Wprowadź e-mail, aby otrzymywać listy",receiveYourFirstLetter:"Otrzymaj swój pierwszy list",receiveLetter:"Odbierz list",startEmailChatWith:"Rozpocznij czat e-mailowy z {botName}",letterWillBeSent:"List zostanie wkrótce wysłany na Twój e-mail!",description:"Chcesz otrzymywać listy napisane tylko dla Ciebie, poza czatem? Po włączeniu trafią do Twojej skrzynki odbiorczej, kontynuując Twoją historię, jakby były prawdziwą częścią Twojego życia.",emailPlaceholder:"Adres e-mail",sendNow:"Wyślij teraz",emailChatStartedWith:"Czat e-mail rozpoczęty z {botName}",switchToBot:"Przełącz na {botName}",receiveLetterAt:"Odbierz list",tips:"Wskazówki:",tipsContent:"Będzie proaktywnie pisać do Ciebie i odpowiadać na Twoje listy. To prywatne, w wolnym tempie i wyłącznie dla was dwojga.",invalidEmail:"Proszę wprowadzić prawidłowy adres e-mail",enableSuccess:"Czat e-mail został pomyślnie włączony",disableSuccess:"Czat e-mail został pomyślnie wyłączony",updateEmailSuccess:"E-mail został pomyślnie zaktualizowany",switchBotSuccess:"Pomyślnie przełączono na nową postać",enableFailed:"Nie udało się włączyć czatu e-mail",disableFailed:"Nie udało się wyłączyć czatu e-mail",updateEmailFailed:"Nie udało się zaktualizować e-maila",switchBotFailed:"Nie udało się przełączyć postaci",disableConfirmTitle:"Zamknąć czat e-mail?",disableConfirmMessage:"Nie będziesz już otrzymywać listów od tej postaci.",switchBotConfirmTitle:"Przełączyć postać?",switchBotConfirmMessage:"Przełączyć czat e-mail z {fromBot} na {toBot}?",updateEmail:"Zaktualizuj e-mail",enterNewEmail:"Proszę wprowadzić nowy adres e-mail",firstLetterTriggered:"Twój pierwszy list jest w drodze!",firstLetterFailed:"Nie udało się wysłać pierwszego listu",verifyTitle:"Zweryfikuj e-mail",verifyDesc:"Kod weryfikacyjny wysłany na {email}",codeRequired:"Proszę wprowadzić 6-cyfrowy kod",codeInvalid:"Nieprawidłowy lub wygasły kod",codeSent:"Kod wysłany",codeSendFailed:"Nie udało się wysłać kodu",confirm:"Potwierdź",resendCode:"Wyślij ponownie",resendCountdown:"Wyślij ponownie za {seconds}s"},emailCallback:{verifying:"Weryfikowanie twojego linku...",success:"Sukces!",redirectingToChat:"Przekierowanie do czatu...",oops:"Ups!",redirectingIn:"Przekierowanie na stronę główną za {seconds}s...",goHomeNow:"Przejdź na stronę główną teraz",invalidLink:"Nieprawidłowy link",linkExpired:"Link wygasł. Proszę wrócić do e-maila i kliknąć ponownie.",linkInvalid:"Nieprawidłowy link",linkUsed:"Link nie jest już ważny",userNotFound:"Użytkownik nie znaleziony",networkError:"Błąd sieci, proszę spróbować ponownie"},profileComplete:{title:"Witamy w {appName}!",subtitle:"Powiedz nam więcej, aby uzyskać lepsze spersonalizowane doświadczenie",nicknameLabel:"Jak się nazywasz?",nicknamePlaceholder:"Wprowadź fajny pseudonim",nicknameRequired:"Proszę wprowadzić pseudonim",genderLabel:"Jakiego zaimka używasz?",genderHint:"(Płeć nie może być zmieniona po wybraniu.)",birthdayLabel:"Twoje urodziny?",birthdayPlaceholder:"DD/MM/RRRR",birthdayRequired:"Proszę wybrać datę urodzenia",birthdayUnderAge:"Musisz mieć co najmniej 18 lat",submitButton:"Rozpocznij moją podróż!",genderRequired:"Proszę wybrać płeć",submitSuccess:"Profil uzupełniony pomyślnie!",submitFailed:"Nie udało się wysłać, proszę spróbować ponownie",genderOptions:{male:"On",female:"Ona",other:"Oni"}},seo:{description:{characterList:"Przeglądaj wszystkie postacie AI na {appName}. Znajdź idealnego towarzysza AI do interakcji na żywo, czatu i opowieści.",characterSearch:"Szukaj postaci AI na {appName}. Odkrywaj towarzyszy AI według nazwy, tagu lub zainteresowań i zacznij rozmawiać natychmiast.",chatHistory:"Przeglądaj historię czatów AI na {appName} i kontynuuj rozmowy z ulubionymi towarzyszami AI.",userCenter:"Zarządzaj profilem {appName}, kolekcjami i ustawieniami konta w centrum użytkownika.",rechargeCenter:"Doładuj monety i subskrybuj na {appName}. Odblokuj premium czat AI, interakcje na żywo i ekskluzywne treści.",webTutorial:"Dowiedz się, jak korzystać z {appName}, korzystając z naszego samouczka internetowego. Wskazówki dotyczące czatu AI, interakcji na żywo i maksymalnego wykorzystania towarzysza AI.",contactUs:"Skontaktuj się z {appName} w sprawie wsparcia, partnerstwa i zapytań dotyczących produktów związanych z doświadczeniami towarzysza AI.",privacyPolicy:"Przeczytaj Politykę prywatności {appName}, aby dowiedzieć się, jak zbieramy, wykorzystujemy i chronimy Twoje dane osobowe.",termsService:"Przeczytaj Warunki korzystania z usług {appName} regulujące korzystanie z naszej platformy towarzyszy AI."}}},[_s.IT]:{errorPage:{page404:{oops:"OOPS!",headline:"Il webmaster ha detto che non puoi entrare in questa pagina...",info:"Verifica che l'URL inserito sia corretto o fai clic sul pulsante qui sotto per tornare alla homepage.",backToHome:"Torna alla home",allRightsReserved:"Tutti i diritti riservati"},page401:{oops:"Oops!",noPermission:"Non hai il permesso di accedere a questa pagina",contactLeader:"Se non sei soddisfatto, contatta il tuo responsabile",orYouCan:"Oppure puoi andare:",backHome:"Torna alla home",browse:"Naviga semplicemente",viewImage:"Clicca per vedere l'immagine",back:"Indietro",gifSource:"fonte gif",randomView:"Vista casuale"},ipAccess:{title:"Accesso Limitato",description:"Spiacenti, questo servizio non è disponibile nella tua regione",tips:"A causa delle normative e degli accordi locali, questo sito web non è disponibile nella tua area geografica."}},route:{premium:"Premium",home:"Esplora",characterList:"Lista Personaggi",characterSearch:"Ricerca Personaggio",characterDetail:"Dettagli Personaggio",characterChat:"Chat con Personaggio",chatHistory:"Chat",userCenter:"Centro Utente",userCenterEdit:"Informazioni Personali",rechargeCenter:"Centro Ricariche",contactUs:"Contattaci",characterCollections:"Collezioni",characterLiked:"Piaciuti",rechargeHistory:"Storico Ricariche",legalInformation:"Informazioni legali",underagePolicy:"Politica per i minori",subscriptionPolicy:"Politica di abbonamento",exemption2257:"Esenzione 18 U.S.C. 2257",dmcaPolicy:"Politica DMCA",blockedContentPolicy:"Politica sui contenuti bloccati",contentRemovalPolicy:"Politica di rimozione dei contenuti",complaintPolicy:"Politica sui reclami"},rechargeHistory:{title:"Cronologia Transazioni",tabs:{deposits:"Ricariche",expenses:"Spese"},expense:{chatWith:"Chat con {name}",unlockedVideo:"Video privato di {name} sbloccato",unlockedPhoto:"Foto privata di {name} sbloccata",upgradeVideo:"Upgrade Video",sendGifts:"Spesa per interazione intima: {name}",other:"Altra spesa"}},rechargeCenter:{tabs:{subscribe:"Abbonati",coins:"Monete"},premium:{title:"Abbonati",choosePlan:"Scegli il Tuo Piano",anonymous:"100% anonimo. Puoi annullare in qualsiasi momento.",countdown:{hours:"Ore",minutes:"Minuti",seconds:"Secondi"},limitedOffer:"OFFERTA A TEMPO LIMITATO",discount:"Fino al 75% di sconto sul tuo abbonamento",plans:{yearly:"12 mesi",quarterly:"3 mesi",monthly:"1 mese",perMonth:"/mese"},currentSubscription:{label:"Abbonamento attuale",daysLeft:"Giorni rimasti",renewsOn:"Rinnovo il {date}"},subscribeTypes:{none:"Nessun abbonamento",weekly:"Settimanale",monthly:"Mensile",quarterly:"Trimestrale",annual:"Annuale",planText:"Piano {type}"},badges:{bestChoice:"SCELTA MIGLIORE"},security:{noAdultTransaction:"Nessuna transazione per adulti nell'estratto conto bancario",noHiddenFees:"Nessun costo nascosto + Annulla l'abbonamento in qualsiasi momento",securePayment:"Pagamento Sicuro",sslEncrypted:"Crittografia SSL"},agreement:{iAgree:"Accetto i",termsOfService:"Termini di Servizio",and:"e",subscriptionPolicy:"Politica di abbonamento"},subscribe:"Abbonati",subscribed:"Abbonato",upgrade:"Aggiorna",errors:{alreadySubscribed:"Hai già un abbonamento attivo."},vipGuide:{title:"Sblocca privilegi esclusivi",description:"Porta la tua esperienza al livello piu esclusivo di connessione e contenuti di lusso.",discountTag:"40% OFF",button:"Inizia il mio viaggio Premium",benefits:{exclusivePrivateShows:"Spettacoli Privati Esclusivi & Video e Immagini",premiumTipMenu:"Menu Mance Premium",emotionalChatModel:"Modello chat AI con emozioni piu ricche",betterMemory:"Memoria migliore in ogni interazione",welfareImages:"Sblocca immagini bonus aggiornate regolarmente",posePrivilege:"Sblocca privilegi per pose speciali",liveChatPrivilege:"Privilegi chat nella live room",monthlyFreeCoins:"{coins} monete gratis ogni mese"}},paymentPending:{alt:"Pagamento in corso",title:"Pagamento in corso",description:"Il pagamento è in fase di elaborazione. Una volta verificato, il tuo account verrà aggiornato automaticamente a Premium. Potrebbero volerci alcuni minuti.",button:"Ho capito"},benefits:{title:"Vantaggi Premium",createAI:"Crea la tua Fidanzata AI",unlimitedMessages:"Messaggi di testo illimitati",freeTokens:"Ottieni 100 token GRATUITI / mese",removeBlur:"Rimuovi sfocatura dalle immagini",generateImages:"Genera immagini",phoneCalls:"Effettua chiamate AI",fastResponse:"Tempo di risposta rapido",prioritySupport:"Supporto clienti prioritario",exclusiveCharacters:"Accesso a personaggi esclusivi",advancedCustomization:"Personalizzazione avanzata della personalità"}},coins:{title:"Monete",currentCoins:"Monete Attuali",description:{title:"Descrizione Monete",subtitle:"Le monete sono la valuta virtuale dell’universo! Con più monete, puoi rendere la tua esperienza di chat ancora più fantastica:"},badges:{discount:"{percent}% DI SCONTO"},features:{heartWhisper:"Messaggio della chat",inspirationReply:"Risposta ispiratrice",premiumChat:"Regali speciali",specialGifts:"Acquista video animato"},history:{title:"Storico Ricariche",item:{title:"Monete",conisNum:"+ {num} monete",orderId:"ID Ordine: {id}"}}}},order:{status:{completed:{type:"Completato",title:"Pagamento Riuscito",description:"Le monete sono state aggiunte con successo al tuo account! Ora puoi usarle per sbloccare funzionalità esclusive."},pending:{type:"In Attesa",title:"Elaborazione Pagamento…",description:"Attendere mentre confermiamo il tuo pagamento. Puoi controllare i progressi più recenti nello storico ricariche in qualsiasi momento."},failed:{type:"Fallito",title:"Pagamento Fallito",description:"Sfortunatamente, questo pagamento non è stato completato. Puoi stare tranquillo che non ti abbiamo addebitato nulla. Riprova."}}},navbar:{search:{placeholder:"Cercare"},login:{title:"Accedi",notification:{title:"Suggerimento",message:"Metodo di accesso non ancora disponibile"}},download:{title:"Scarica",dialog:{title:"Scarica APP",subtitle:"Scarica l'app per cercare tra oltre 20 milioni di personaggi."}},checkIn:{title:"Registrazione"},joinFree:{title:"Iscriviti Gratis"}},sidebar:{today:"OGGI",yesterday:"IERI",other:"ALTRO",footer:{affiliate:"Affiliato",support:"Supporto"}},contactUs:{email:"Email",youtube:"Youtube",facebook:"Facebook",whatsapp:"WhatsApp",telegram:"Telegram",instagram:"Instagram",discord:"Discord"},loading:{title:"Caricamento..."},noData:{title:"È un po' tranquillo qui..."},home:{more:"Vedi Tutto",faq:{title:"Domande Frequenti"},banner:{slide1:{title:"La Tua Storia Inizia Qui",description:"Sblocca Conversazioni Infinite",buttonText:"Inizia a Chattare Ora"},slide2:{title:"Trova il Tuo Personaggio Perfetto",description:"Esplora personaggi popolari selezionati per te",buttonText:"Esplora Ora"},slide3:{title:"Costruisci il Tuo Profilo",description:"Personalizza le preferenze e mantieni i progressi sincronizzati",buttonText:"Vai al Centro"}},all:"Tutti"},characterTabs:{recommend:"Consigliato",trending:"Tendenze",topRated:"Più Votati",popular:"Popolari",latest:"Ultimi"},characterChat:{sendInputPlaceholder:"Digita il tuo messaggio...",openingPopoverTitle:"Prova a rispondere",copyMessage:"Copia Messaggio",deleteMessage:"Elimina Messaggio",reportMessage:"Segnala Messaggio",copySuccess:"Copiato negli appunti",copyFailed:"Copia fallita",noCopyContent:"Nessun contenuto da copiare",sendTooFrequent:"Invio troppo frequente, riprova più tardi",messageTooLong:"La lunghezza del messaggio non può superare i 200 caratteri",sendFailed:"Invio fallito, riprova",openingSuggestions:{careerChange:"Sto pensando di cambiare carriera verso la tecnologia. Cosa ne pensi delle prospettive di questo settore?",tellMore:"Interessante! Potresti dirmi di più sulla tua esperienza nella strategia di marketing?",professionalAdvice:"Mi sento un po' bloccato nel mio ruolo attuale. Qualche consiglio su come avanzare professionalmente?"},chatUser:{collect:"Raccogli",collected:"Raccolto",profile:"Profilo",share:"Condividi"},chatHeader:{status:{online:"Online",offline:"Offline",typing:"Sta scrivendo...",sendingPhoto:"invio di una foto",living:"In diretta"}}},interact:{actionTrigger:"Attiva",actionSend:"Invia",heat:"Calore di interazione con lei",liveRoomGuide:{description:"Invia regali per sbloccare performance interattive esclusive!",action:"Invia"},blockingDialog:{title:"Tutto ciò che hai sempre sognato...",previewPrefix:"Ecco un'anteprima dello ",previewHighlight:"Show esclusivo di prova.",previewSuffix:" Invia regali premium per sbloccare di più.",action:"Sblocca ora"},giftPanel:{sendGift:"Invia regalo",recharge:"Ricarica",more:"Altro",gift:"Regalo",sort:"Ordina",close:"Chiudi"},sceneSwitch:{guide:"Tocca qui per esplorare altre scene.",button:"Cambia\nscena",shortButton:"Scena",title:"Cambia scena",subtitle:"Fai clic per passare a un'altra scena live.",switching:"Cambio in corso...",close:"Chiudi",current:"Attuale",price:"Sblocca con {price} monete",payInsufficient:"Monete insufficienti. Ricarica e riprova.",payNeedsConfirm:"Questa scena richiede la conferma del pagamento. Riprova.",payFailed:"Impossibile sbloccare questa scena. Riprova."},floatingNotice:{sent:"ha inviato",requested:"ha richiesto"},mobileMenu:{mute:"Silenzia",unmute:"Riattiva audio",showMenu:"Mostra menu",hideMenu:"Nascondi menu",muteToast:"Audio disattivato",unmuteToast:"Audio riattivato"},fallbackReply:{feeling:"Come ti senti adesso?",anywhere:"Se potessi essere ovunque ora, dove saresti?",mind:"Mi piacerebbe sapere a cosa hai pensato di recente."},defaultNames:{action:"Azione",gift:"Regalo",character:"Personaggio"},loading:{title:"Attendere prego...",subtitle:"{name} si sta preparando."},a11y:{avatarBackground:"Sfondo avatar",showMenu:"Mostra menu",fire:"Fuoco",up:"Su",send:"Invia",gift:"Regalo",chat:"Chat",coin:"Moneta",recharge:"Ricarica"}},chatInput:{placeholder:"Scrivi il tuo messaggio..."},chatDeletePopover:{deleteChat:"Elimina",hide:"Nascondi"},clearChat:{title:"Cancellare questa chat?",message:"Tutti i messaggi in questa chat verranno eliminati definitivamente.",clear:"Cancella",clearing:"Cancellazione...",clearChat:"Cancella Chat"},footer:{privacyPolicy:"Informativa sulla Privacy",termsService:"Termini di Servizio",content:"Scopri la prossima generazione di compagnia AI. OnlyGF ti porta conversazioni autentiche, connessioni emotive e una comunità di amici AI che ti capiscono e crescono con te.",desc:"© 2025 OnlyGF. Tutti i diritti riservati.",features:"Funzionalità",popular:"Popolare",chat:"Chat",createCharacter:"Crea Personaggio",myCollection:"La mia collezione",myAI:"La mia IA",legalSupport:"Legale e supporto",termsAndPolicies:"Termini e politiche"},legalInformation:{pageTitle:"Informazioni legali",items:{termsService:"Termini di servizio",privacyNotice:"Informativa sulla privacy",subscriptionPolicy:"Politica di abbonamento",cookiesNotice:"Informativa sui cookie",underagePolicy:"Politica per i minori",contentRemovalPolicy:"Politica di rimozione dei contenuti",blockedContentPolicy:"Politica sui contenuti bloccati",dmcaPolicy:"Politica DMCA",complaintPolicy:"Politica sui reclami",exemption2257:"Esenzione 18 U.S.C. 2257",communityGuidelines:"Linee guida della community",affiliateTerms:"Termini e condizioni di affiliazione"}},languageDialog:{title:"Selezione Lingua",desc:"Seleziona la tua lingua di visualizzazione"},dialogUploadAvatar:{title:"Scegli il Tuo Avatar",desc:"Troviamo un look che sia totalmente te. Le prime impressioni contano!",save:"Salva"},dialogShare:{title:"Condividi",desc:"Copia il link o condividi direttamente, gli amici possono iniziare a chattare istantaneamente.",copy:"Copia link",success:"Link copiato negli appunti",error:"Impossibile copiare il link, riprova"},dialogReport:{title:"Segnala",desc:"Seleziona un motivo",list:{sexuallyExplicit:"Contenuto sessualmente esplicito",hateSpeech:"Incitamento all'odio o molestie",suicideSelfInjury:"Suicidio o autolesionismo",violenceThreats:"Violenza o minacce",falseInformation:"Informazioni false",spamFraud:"Spam o frode",privacyViolation:"Violazione della privacy",harmfulMinors:"Dannoso per i minori",other:"Altro"},other:{title:"Descrizione",placeholder:"Per favore descrivi il problema..."},submit:"Invia"},dialogDownload:{title:"Scarica",desc:"Scarica l'app per cercare tra oltre 20 milioni di personaggi.",toast:"Prossimamente"},dialogCoinInsufficient:{title:"Sblocca il Prossimo Messaggio",liveTitle:"Monete insufficienti",desc:"Hai finito le monete per continuare questa chat. Ricarica il tuo saldo per sbloccare più risposte.",message:"Messaggi",balance:"Saldo",coins:"Monete",button:"Ottieni Più Monete"},dialogRegisterGuide:{title:"Vuoi continuare a parlare?",desc:"Crea un account gratuito per continuare a chattare e sbloccare tutte le funzionalità!",benefit1:"Conversazioni illimitate",benefit2:"Salva la cronologia delle chat",benefit3:"Accesso a tutti i personaggi",signUp:"Registrati",later:"Forse Dopo"},registerGuideMessage:{text:"Vuoi continuare a parlare? Crea semplicemente un account gratuito! Registrati ora per messaggi bonus—non vedo l'ora di continuare!",button:"Registrati per chattare"},dialogPhotoUnlock:{title:"Sblocca Foto",desc:"Sblocca questa foto per vedere il contenuto completo",balance:"Il Tuo Saldo",button:"Sblocca Ora",getMore:"Ottieni Più Monete",insufficientBalance:"Saldo Insufficiente",unlocking:"Sbloccando...",unlockSuccess:"Foto sbloccata con successo",unlockFailed:"Impossibile sbloccare la foto"},photoRequest:{buttonTitle:"Richiedi una foto",selectType:"Seleziona il tipo di foto:",requestFailed:"Impossibile richiedere la foto",sendMePhoto:"Mandami una foto",noMorePhotos:"Non ci sono più foto disponibili",poses:{random:"Casuale",selfie:"Selfie",posing:"In posa",sitting:"Seduta",kneeling:"In ginocchio",squatting:"Accovacciata",standing:"In piedi",prone:"Sdraiata"},vipGuide:{title:"Sblocca Pose Foto VIP",description:"Abbonati per sbloccare pose foto esclusive e richiedere la posa che desideri.",buttonText:"Sblocca VIP Ora"}},dialogLogout:{title:"Disconnettersi?",desc:"Sei sicuro di volerti disconnettere?",desc2:"Dovrai accedere nuovamente per accedere al tuo account.",confirm:"Disconnetti"},dialogLogin:{title:"Accedi / Registrati",subtitle:"Chatta con oltre 20 milioni di ragazze",continueWith:"Continua con {method}",google:"Google",apple:"Apple",facebook:"Facebook",line:"Line",guest:"Ospite",desc:"Accetto di ricevere offerte speciali, comunicazioni di marketing e aggiornamenti del servizio via e-mail.",sub:"Confermo di avere",age:"18+",agreementPrefix:"accettare i",termsOfService:"Termini di Servizio",and:"e",privacyPolicy:"l'Informativa sulla Privacy",or:"o",emailPlaceholder:"Indirizzo e-mail",continueWithEmail:"Continua con Email",verifyTitle:"Verifica la tua email",verifyDesc:"Abbiamo inviato un codice di verifica a 6 cifre a {email}. Apri l'email e inserisci il codice qui sotto per continuare.",confirm:"Conferma",resendCode:"Reinvia codice",resendCountdown:"Reinvia tra {seconds}s",back:"Indietro",invalidEmail:"Inserisci un indirizzo email valido",codeSent:"Codice di verifica inviato",codeSendFailed:"Invio del codice di verifica fallito",codeRequired:"Inserisci il codice di verifica",codeInvalid:"Codice di verifica non valido",promotionHint:"Primo abbonamento <b>-75% OFF</b> Offerta Esclusiva"},dialogCheckin:{title:"Premi Giornalieri",desc:"Registrati per 7 giorni consecutivi per richiedere tutti i premi!",button:"Reclama Premio",claimedToday:"Premio Reclamato Per Oggi",resultTitle:"Premio Reclamato!",resultDesc:"Ti sei registrato per {days} giorni di fila. Continua così!",resultButton:"Ho Capito",daysText:"Giorno {days}"},auth:{loginSuccess:"Login riuscito",loginFailed:"Login fallito, riprova"},person:{edit:"Modifica",follow:"Seguendo",fans:"Follower",createBot:" Bot",sendPost:" Post",followBot:" Bot Seguiti"},common:{noData:"Nessun dato",clickRetry:"Tocca per riprovare",live:"In diretta",report:"Segnala messaggio",reset:"Reimposta",months:{january:"Gennaio",february:"Febbraio",march:"Marzo",april:"Aprile",may:"Maggio",june:"Giugno",july:"Luglio",august:"Agosto",september:"Settembre",october:"Ottobre",november:"Novembre",december:"Dicembre"},submitting:"Invio in corso...",unlockFailed:"È necessario sbloccare l'accesso all'abbonamento"},characterDetail:{online:"Online",chatToMe:"Chatta con Me",collect:"Raccogli",collected:"Raccolto",share:"Condividi",gallery:"Galleria",report:"Segnala",age:"Età",career:"Carriera",height:"Altezza",constellation:"Costellazione",bloodType:"Gruppo Sanguigno",unknown:"Sconosciuto",likeSuccess:"Messo mi piace con successo",unlikeSuccess:"Mi piace rimosso con successo",collectSuccess:"Raccolto con successo",uncollectSuccess:"Collezione annullata con successo",likeFailed:"Impossibile mettere mi piace, riprova",collectFailed:"Impossibile raccogliere, riprova",networkError:"Errore di rete, riprova",reportSuccess:"Segnalazione inviata con successo, la processeremo il prima possibile",reportFailed:"Impossibile inviare la segnalazione, riprova"},langSelect:{message:{success:"Lingua cambiata con successo!"}},userCenter:{title:"Informazioni Personali",username:"Nome Utente",usernamePlaceholder:"AlexOnlyGF",usernameHelper:"Inserisci 3-25 caratteri, sono consentiti lettere, emoji, numeri e trattini bassi. Il nome utente deve essere unico.",profile:"Profilo (Opzionale)",profilePlaceholder:"Completa la tua biografia per far conoscere meglio te stesso agli altri",save:"Salva",saving:"Salvataggio...",saveSuccess:"Salvato con successo",saveFailed:"Impossibile salvare, riprova",editProfile:"Modifica Profilo",collections:"Collezioni",likes:"Mi piace",logout:"Disconnetti",logoutConfirm:"Sei sicuro di volerti disconnettere?",downloadApp:"Scarica APP",language:"Lingua",privacyPolicy:"Informativa sulla Privacy",termsOfUse:"Termini di Utilizzo",contactUs:"Contattaci",support:"Supporto",supportDesc:"Siamo qui per te 24/7",premiumTitle:"OnlyGF Premium",premiumDesc:"Sblocca tutti gli show e {coins} monete bonus ogni mese",myBalance:"Il mio saldo",recharge:"Ricarica",currentSubscription:"Abbonamento attuale",daysLeft:"Giorni rimasti"},download:{googlePlay:{name:"Google Play",description:"Ottieni l'app ufficiale per aggiornamenti sicuri e senza interruzioni e nuovi compagni.",subtitle:"SCARICA SU"},appStore:{name:"App Store",description:"Goditi un'esperienza di chat privata e coinvolgente ottimizzata per il tuo iPhone.",subtitle:"Scarica"},androidApk:{name:"Android APK",description:"Installa direttamente per la massima privacy, accesso istantaneo e gli ultimi aggiornamenti.",subtitle:"Scarica"},webApp:{name:"Web APP",description:"Chatta istantaneamente da qualsiasi browser: non è necessaria alcuna installazione. La tua fuga privata ti aspetta.",subtitle:"Installa"}},premiumPhotoUnlock:{vipUnlock:"Puoi sbloccare",vipMark:"VIP",proMark:"Pro"},photoGallery:{photoCount:"{current}/{total}",prevPhoto:"Precedente",nextPhoto:"Successivo"},dialogVideoUnlock:{title:"Sblocca Video",desc:"Sblocca questo video per guardare il contenuto completo",button:"Sblocca Ora",balance:"Il Tuo Saldo",insufficientBalance:"Saldo Insufficiente",getMore:"Ottieni Più Monete",unlocking:"Sbloccando...",unlockSuccess:"Video sbloccato con successo",unlockFailed:"Impossibile sbloccare il video"},upgradablePhoto:{unlockMoment:"Sblocca il momento",upgrading:"Aggiornamento...",upgradeSuccess:"Aggiornato a video",upgradeFailed:"Impossibile aggiornare"},dialogWebViewGuide:{title:"Apri nel browser",desc:"L'accesso con Google non è supportato nei browser integrati nelle app. Copia il link e aprilo nel browser di sistema (Chrome/Safari) per completare l'accesso.",currentUrl:"URL della pagina corrente",copyLink:"Copia link",copied:"Link copiato",copyFailed:"Copia fallita, copia manualmente",steps:{step1:"Clicca il pulsante sopra per copiare il link",step2:"Apri il browser di sistema (Chrome/Safari)",step3:"Incolla il link e visita per completare l'accesso"}},emailChat:{openEmailChat:"Apri chat email",connectViaEmail:"Connetti via email",enterEmailTitle:"Inserisci l'email per ricevere lettere",receiveYourFirstLetter:"Ricevi la tua prima lettera",receiveLetter:"Ricevi lettera",startEmailChatWith:"Inizia chat via email con {botName}",letterWillBeSent:"La lettera verrà inviata alla tua email a breve!",description:"Vuoi ricevere lettere scritte solo per te, oltre alla chat? Una volta abilitato, arriveranno nella tua casella di posta, continuando la tua storia come se fossero una parte reale della tua vita.",emailPlaceholder:"Indirizzo email",sendNow:"Invia ora",emailChatStartedWith:"Chat email iniziata con {botName}",switchToBot:"Passa a {botName}",receiveLetterAt:"Ricevi lettera",tips:"Suggerimenti:",tipsContent:"Lei ti scriverà in modo proattivo e risponderà alle tue lettere. È privato, a ritmo lento ed esclusivamente per voi due.",invalidEmail:"Inserisci un indirizzo email valido",enableSuccess:"Chat email abilitata con successo",disableSuccess:"Chat email disabilitata con successo",updateEmailSuccess:"Email aggiornata con successo",switchBotSuccess:"Passaggio al nuovo personaggio riuscito",enableFailed:"Impossibile abilitare la chat email",disableFailed:"Impossibile disabilitare la chat email",updateEmailFailed:"Impossibile aggiornare l'email",switchBotFailed:"Impossibile cambiare personaggio",disableConfirmTitle:"Chiudere la chat email?",disableConfirmMessage:"Non riceverai più lettere da questo personaggio.",switchBotConfirmTitle:"Cambiare personaggio?",switchBotConfirmMessage:"Cambiare chat email da {fromBot} a {toBot}?",updateEmail:"Aggiorna email",enterNewEmail:"Inserisci il nuovo indirizzo email",firstLetterTriggered:"La tua prima lettera è in arrivo!",firstLetterFailed:"Invio della prima lettera fallito",verifyTitle:"Verifica email",verifyDesc:"Codice di verifica inviato a {email}",codeRequired:"Inserisci il codice a 6 cifre",codeInvalid:"Codice non valido o scaduto",codeSent:"Codice inviato",codeSendFailed:"Invio del codice non riuscito",confirm:"Conferma",resendCode:"Reinvia",resendCountdown:"Reinvia tra {seconds}s"},emailCallback:{verifying:"Verifica del tuo link...",success:"Successo!",redirectingToChat:"Reindirizzamento alla chat...",oops:"Ops!",redirectingIn:"Reindirizzamento alla homepage tra {seconds}s...",goHomeNow:"Vai subito alla homepage",invalidLink:"Link non valido",linkExpired:"Il link è scaduto. Torna alla tua email e clicca di nuovo.",linkInvalid:"Link non valido",linkUsed:"Il link non è più valido",userNotFound:"Utente non trovato",networkError:"Errore di rete, riprova"},profileComplete:{title:"Benvenuto su {appName}!",subtitle:"Raccontaci di più per un'esperienza personalizzata migliore",nicknameLabel:"Qual è il tuo nome?",nicknamePlaceholder:"Inserisci un nickname figo",nicknameRequired:"Inserisci il tuo nickname",genderLabel:"Quale pronome usi?",genderHint:"(Il genere non può essere modificato una volta selezionato.)",birthdayLabel:"Il tuo compleanno?",birthdayPlaceholder:"GG/MM/AAAA",birthdayRequired:"Seleziona il tuo compleanno",birthdayUnderAge:"Devi avere almeno 18 anni",submitButton:"Inizia il mio viaggio!",genderRequired:"Seleziona il tuo genere",submitSuccess:"Profilo completato con successo!",submitFailed:"Invio fallito, riprova",genderOptions:{male:"Lui",female:"Lei",other:"Loro"}},seo:{description:{characterList:"Sfoglia tutti i personaggi IA su {appName}. Trova il tuo compagno IA ideale per interazioni dal vivo, chat e narrazione.",characterSearch:"Cerca personaggi IA su {appName}. Scopri compagni IA per nome, tag o interesse e inizia subito a chattare.",chatHistory:"Rivedi la cronologia delle chat IA su {appName} e continua le conversazioni con i tuoi compagni IA preferiti.",userCenter:"Gestisci il tuo profilo {appName}, le collezioni e le impostazioni dell'account nel centro utente.",rechargeCenter:"Ricarica monete e abbonati su {appName}. Sblocca chat IA premium, interazioni dal vivo e contenuti esclusivi.",webTutorial:"Impara a usare {appName} con il nostro tutorial web. Consigli per chat IA, interazioni dal vivo e per ottenere il massimo dal tuo compagno IA.",contactUs:"Contatta {appName} per supporto, partnership e richieste sui prodotti relativi alle esperienze con compagni IA.",privacyPolicy:"Leggi l'Informativa sulla privacy di {appName} per sapere come raccogliamo, utilizziamo e proteggiamo i tuoi dati personali.",termsService:"Leggi i Termini di servizio di {appName} che regolano l'uso della nostra piattaforma di compagni IA."}}},[_s.RO]:{errorPage:{page404:{oops:"HOPA!",headline:"Webmaster-ul spune că nu puteți accesa această pagină...",info:"Vă rugăm să verificați dacă URL-ul introdus este corect sau faceți clic pe butonul de mai jos pentru a reveni la pagina principală.",backToHome:"Înapoi la pagina principală",allRightsReserved:"Toate drepturile rezervate"},page401:{oops:"Hopa!",noPermission:"Nu aveți permisiunea de a accesa această pagină",contactLeader:"Dacă nu sunteți mulțumit, vă rugăm să contactați superiorul dvs.",orYouCan:"Sau puteți merge la:",backHome:"Înapoi la pagina principală",browse:"Doar răsfoiți",viewImage:"Faceți clic pentru a vizualiza imaginea",back:"Înapoi",gifSource:"sursa gif",randomView:"Vizualizare aleatorie"},ipAccess:{title:"Acces Restricționat",description:"Ne pare rău, acest serviciu nu este disponibil în regiunea dvs.",tips:"Din cauza reglementărilor și acordurilor locale, acest site web nu este disponibil în regiunea dvs. geografică."}},route:{premium:"Premium",home:"Explorează",characterList:"Lista de personaje",characterSearch:"Căutare personaje",characterDetail:"Detalii personaj",characterChat:"Chat cu personajul",chatHistory:"Chat",userCenter:"Centrul utilizatorului",userCenterEdit:"Informații personale",rechargeCenter:"Centrul de reîncărcare",contactUs:"Contactați-ne",characterCollections:"Colecții",characterLiked:"Apreciate",rechargeHistory:"Istoricul reîncărcărilor",legalInformation:"Informații juridice",underagePolicy:"Politica pentru minori",subscriptionPolicy:"Politica abonamentului",exemption2257:"Excepția 18 U.S.C. 2257",dmcaPolicy:"Politica DMCA",blockedContentPolicy:"Politica privind conținutul blocat",contentRemovalPolicy:"Politica de eliminare a conținutului",complaintPolicy:"Politica de reclamații"},rechargeHistory:{title:"Istoric Tranzacții",tabs:{deposits:"Reîncărcări",expenses:"Cheltuieli"},expense:{chatWith:"Chat cu {name}",unlockedVideo:"Video privat deblocat al lui {name}",unlockedPhoto:"Fotografie privată deblocată a lui {name}",upgradeVideo:"Actualizează video",sendGifts:"Cheltuială de interacțiune intimă: {name}",other:"Altă cheltuială"}},rechargeCenter:{tabs:{subscribe:"Abonament",coins:"Monede"},premium:{title:"Abonament",choosePlan:"Alegeți planul dvs.",anonymous:"100% anonim. Puteți anula oricând.",countdown:{hours:"Ore",minutes:"minute",seconds:"secunde"},limitedOffer:"OFERTĂ LIMITATĂ",discount:"Până la 75% reducere pentru abonamentul dvs.",plans:{yearly:"12 luni",quarterly:"3 luni",monthly:"1 lună",perMonth:"/lună"},currentSubscription:{label:"Abonament curent",daysLeft:"Zile rămase",renewsOn:"Se reînnoiește pe {date}"},subscribeTypes:{none:"Fără abonament",weekly:"Săptămânal",monthly:"Lunar",quarterly:"Trimestrial",annual:"Anual",planText:"Plan {type}"},badges:{bestChoice:"CEA MAI BUNĂ ALEGERE"},security:{noAdultTransaction:"Fără tranzacții pentru adulți în extrasul dvs. bancar",noHiddenFees:"Fără taxe ascunse + Anulați abonamentul oricând",securePayment:"Plată securizată",sslEncrypted:"Criptare SSL"},agreement:{iAgree:"Sunt de acord cu",termsOfService:"Termenii serviciului",and:"și",subscriptionPolicy:"Politica abonamentului"},subscribe:"Abonați-vă",subscribed:"Abonat",upgrade:"Actualizează",errors:{alreadySubscribed:"Ai deja un abonament activ."},vipGuide:{title:"Deblocheaza privilegii exclusive",description:"Ridica-ti experienta cu cel mai elitist nivel de conexiune si continut premium.",discountTag:"40% RED",button:"Incepe calatoria mea Premium",benefits:{exclusivePrivateShows:"Spectacole Private Exclusive & Videoclipuri și Imagini",premiumTipMenu:"Meniu Bacșișuri Premium",emotionalChatModel:"Model AI de chat cu emotii mai bogate",betterMemory:"Memorie mai buna in fiecare interactiune",welfareImages:"Deblocheaza imagini bonus actualizate periodic",posePrivilege:"Deblocheaza privilegii pentru pozitii speciale",liveChatPrivilege:"Privilegii de chat in camera live",monthlyFreeCoins:"{coins} monede gratuite in fiecare luna"}},paymentPending:{alt:"Plată în curs",title:"Plată în curs",description:"Plata dvs. este în curs de procesare. După verificare, contul dvs. va fi actualizat automat la Premium. Acest lucru poate dura câteva minute.",button:"Am înțeles"},benefits:{title:"Beneficii Premium",createAI:"Creați-vă propria prietenă AI",unlimitedMessages:"Mesaje text nelimitate",freeTokens:"Obțineți 100 jetoane GRATUITE / lună",removeBlur:"Eliminați blur-ul din imagini",generateImages:"Generați imagini",phoneCalls:"Efectuați apeluri AI",fastResponse:"Timp de răspuns rapid",prioritySupport:"Asistență clienți prioritară",exclusiveCharacters:"Acces la personaje exclusive",advancedCustomization:"Personalizare avansată a personalității"}},coins:{title:"Monede",currentCoins:"Monede curente",description:{title:"Descrierea monedelor",subtitle:"Monedele sunt moneda virtuală a universului! Cu mai multe monede, experiența ta de chat poate fi și mai grozavă:"},badges:{discount:"REDUCERE {percent}%"},features:{heartWhisper:"Mesaj de chat",inspirationReply:"Răspuns inspirațional",premiumChat:"Cadouri speciale",specialGifts:"Cumpără videoclip animat"},history:{title:"Istoricul reîncărcărilor",item:{title:"Monede",conisNum:"+ {num} monede",orderId:"ID comandă: {id}"}}}},order:{status:{completed:{type:"Finalizat",title:"Plată reușită",description:"Monedele au fost adăugate cu succes în contul dvs.! Acum le puteți folosi pentru a debloca funcții exclusive."},pending:{type:"În așteptare",title:"Procesăm plata…",description:"Vă rugăm să așteptați în timp ce confirmăm plata dvs. Puteți verifica progresul cel mai recent în istoricul reîncărcărilor oricând."},failed:{type:"Eșuat",title:"Plată eșuată",description:"Din păcate, această plată nu a putut fi finalizată. Fiți sigur că nu v-am taxat. Vă rugăm să încercați din nou."}}},navbar:{search:{placeholder:"Căutare"},login:{title:"Conectare",notification:{title:"Sfaturi",message:"Metoda de conectare nu este încă disponibilă"}},download:{title:"Descărcare",dialog:{title:"Descărcați APP",subtitle:"Descărcați aplicația pentru a căuta printre peste 20 de milioane de personaje."}},checkIn:{title:"Înregistrare"},joinFree:{title:"Alătură-te Gratuit"}},sidebar:{today:"ASTĂZI",yesterday:"IERI",other:"ALTELE",footer:{affiliate:"Afiliat",support:"Asistență"}},contactUs:{email:"Email",youtube:"Youtube",facebook:"Facebook",whatsapp:"WhatsApp",telegram:"Telegram",instagram:"Instagram",discord:"Discord"},loading:{title:"Se încarcă..."},noData:{title:"Puțin pustiu pe aici..."},home:{more:"Vezi tot",faq:{title:"Întrebări frecvente"},banner:{slide1:{title:"Povestea ta începe aici",description:"Deschide conversații nelimitate",buttonText:"Începe chatul acum"},slide2:{title:"Găsește personajul tău perfect",description:"Explorează personaje populare selectate pentru tine",buttonText:"Explorează acum"},slide3:{title:"Construiește-ți profilul",description:"Personalizează preferințele și sincronizează progresul",buttonText:"Mergi la centru"}},all:"Toate"},characterTabs:{recommend:"Recomandat",trending:"În tendințe",topRated:"Cele mai bine cotate",popular:"Populare",latest:"Cele mai recente"},characterChat:{sendInputPlaceholder:"Tastați mesajul dvs...",openingPopoverTitle:"Încercați să răspundeți",copyMessage:"Copiați mesajul",deleteMessage:"Ștergeți mesajul",reportMessage:"Raportați mesajul",copySuccess:"Copiat în clipboard",copyFailed:"Copierea a eșuat",noCopyContent:"Nu există conținut de copiat",sendTooFrequent:"Trimiteți prea des, vă rugăm să încercați din nou mai târziu",messageTooLong:"Lungimea mesajului nu poate depăși 200 de caractere",sendFailed:"Trimiterea a eșuat, vă rugăm să încercați din nou",openingSuggestions:{careerChange:"Mă gândesc la o schimbare de carieră în tehnologie. Ce părere aveți despre perspectivele acestei industrii?",tellMore:"Interesant! Puteți să-mi spuneți mai multe despre experiența dvs. în strategia de marketing?",professionalAdvice:"Mă simt blocat în rolul meu actual. Aveți sfaturi despre cum să progresez profesional?"},chatUser:{collect:"Colecție",collected:"Colecționat",profile:"Profil",share:"Distribuie"},chatHeader:{status:{online:"Online",offline:"Offline",typing:"Scrie...",sendingPhoto:"trimitere fotografie",living:"În direct"}}},interact:{actionTrigger:"Declanșează",actionSend:"Trimite",heat:"Nivelul de interacțiune cu ea",liveRoomGuide:{description:"Trimite cadouri pentru a debloca spectacole interactive exclusive!",action:"Trimite"},blockingDialog:{title:"Tot ceea ce ai visat...",previewPrefix:"Iată o previzualizare a ",previewHighlight:"show-ului exclusiv Try-On.",previewSuffix:" Trimite cadouri premium pentru a debloca mai mult.",action:"Deblochează acum"},giftPanel:{sendGift:"Trimite cadou",recharge:"Reîncarcă",more:"Mai mult",gift:"Cadou",sort:"Sortează",close:"Închide"},sceneSwitch:{guide:"Apasă aici pentru a explora mai multe scene.",button:"Schimbă\nscena",shortButton:"Scenă",title:"Schimbă scena",subtitle:"Apasă pentru a trece la o altă scenă live.",switching:"Se schimbă...",close:"Închide",current:"Curentă",price:"Deblochează cu {price} monede",payInsufficient:"Monede insuficiente. Reîncarcă și încearcă din nou.",payNeedsConfirm:"Această scenă necesită confirmarea plății. Încearcă din nou.",payFailed:"Nu s-a putut debloca această scenă. Încearcă din nou."},floatingNotice:{sent:"a trimis",requested:"a solicitat"},mobileMenu:{mute:"Mut",unmute:"Activează sunetul",showMenu:"Afișează meniul",hideMenu:"Ascunde meniul",muteToast:"Sunet oprit",unmuteToast:"Sunet pornit"},fallbackReply:{feeling:"Cum te simți acum?",anywhere:"Dacă ai putea fi oriunde acum, unde ai fi?",mind:"Aș vrea să aud ce ai avut în minte în ultima vreme."},defaultNames:{action:"Acțiune",gift:"Cadou",character:"Personaj"},loading:{title:"Te rugăm să aștepți...",subtitle:"{name} se pregătește."},a11y:{avatarBackground:"Fundal avatar",showMenu:"Afișează meniul",fire:"Foc",up:"Sus",send:"Trimite",gift:"Cadou",chat:"Chat",coin:"Monedă",recharge:"Reîncarcă"}},chatInput:{placeholder:"Tastați mesajul dvs..."},chatDeletePopover:{deleteChat:"Șterge",hide:"Ascunde"},clearChat:{title:"Ștergeți acest chat?",message:"Toate mesajele din acest chat vor fi șterse permanent.",clear:"Șterge",clearing:"Se șterge...",clearChat:"Șterge Chat-ul"},footer:{privacyPolicy:"Politica de confidențialitate",termsService:"Termenii serviciului",content:"Descoperă următoarea generație de companioni AI. OnlyGF îți aduce conversații autentice, conexiuni emoționale și o comunitate de prieteni AI care te înțeleg și cresc alături de tine.",desc:"© 2025 OnlyGF. Toate drepturile rezervate.",features:"Caracteristici",popular:"Popular",chat:"Chat",createCharacter:"Creează Personaj",myCollection:"Colecția mea",myAI:"AI-ul meu",legalSupport:"Juridic și suport",termsAndPolicies:"Termeni și politici"},legalInformation:{pageTitle:"Informații juridice",items:{termsService:"Termenii serviciului",privacyNotice:"Notificare de confidențialitate",subscriptionPolicy:"Politica abonamentului",cookiesNotice:"Notificare privind cookie-urile",underagePolicy:"Politica pentru minori",contentRemovalPolicy:"Politica de eliminare a conținutului",blockedContentPolicy:"Politica privind conținutul blocat",dmcaPolicy:"Politica DMCA",complaintPolicy:"Politica de reclamații",exemption2257:"Excepția 18 U.S.C. 2257",communityGuidelines:"Ghidul comunității",affiliateTerms:"Termeni și condiții pentru afiliați"}},languageDialog:{title:"Selectarea limbii",desc:"Alegeți limba de afișare"},dialogUploadAvatar:{title:"Alegeți avatarul dvs.",desc:"Să găsim o imagine care chiar vă reprezintă. Prima impresie contează!",save:"Salvează"},dialogShare:{title:"Distribuie",desc:"Copiați linkul sau distribuiți direct, prietenii pot începe chatul instantaneu.",copy:"Copiați linkul",success:"Link copiat în clipboard",error:"Eșec la copierea linkului, vă rugăm să încercați din nou"},dialogReport:{title:"Raportează",desc:"Selectați motivul",list:{sexuallyExplicit:"Conținut sexual explicit",hateSpeech:"Discurs instigator la ură sau hărțuire",suicideSelfInjury:"Sinucidere sau auto-vătămare",violenceThreats:"Violență sau amenințări",falseInformation:"Informații false",spamFraud:"Spam sau fraudă",privacyViolation:"Încălcarea confidențialității",harmfulMinors:"Dăunător minorilor",other:"Altele"},other:{title:"Descriere",placeholder:"Vă rugăm să descrieți problema..."},submit:"Trimite"},dialogDownload:{title:"Descărcare",desc:"Descărcați aplicația pentru a căuta printre peste 20 de milioane de personaje.",toast:"În curând"},dialogCoinInsufficient:{title:"Deblocați mesajul următor",liveTitle:"Monede insuficiente",desc:"Ați rămas fără monede pentru a continua acest chat. Vă rugăm să reîncărcați soldul pentru a debloca mai multe răspunsuri.",message:"Mesaje",balance:"Sold",coins:"Monede",button:"Obțineți mai multe monede"},dialogRegisterGuide:{title:"Vrei să continui să vorbești?",desc:"Creează un cont gratuit pentru a continua să conversezi și pentru a debloca toate funcțiile!",benefit1:"Conversații nelimitate",benefit2:"Salvează istoricul conversațiilor",benefit3:"Acces la toate personajele",signUp:"Înregistrează-te",later:"Poate Mai Târziu"},registerGuideMessage:{text:"Vrei să continui să vorbești? Creează doar un cont gratuit! Înregistrează-te acum pentru mesaje bonus—abia aștept să continuăm!",button:"Înregistrează-te pentru a discuta"},dialogPhotoUnlock:{title:"Deblocați Fotografia",desc:"Deblocați această fotografie pentru a vedea conținutul complet",balance:"Soldul Dvs.",button:"Deblocați Acum",getMore:"Obțineți Mai Multe Monede",insufficientBalance:"Sold Insuficient",unlocking:"Se deblochează...",unlockSuccess:"Fotografia a fost deblocată cu succes",unlockFailed:"Nu s-a putut debloca fotografia"},photoRequest:{buttonTitle:"Solicitați o fotografie",selectType:"Selectați tipul de fotografie:",requestFailed:"Nu s-a putut solicita fotografia",sendMePhoto:"Trimite-mi o poză",noMorePhotos:"Nu mai sunt fotografii disponibile",poses:{random:"Aleatoriu",selfie:"Selfie",posing:"Pozând",sitting:"Șezând",kneeling:"În genunchi",squatting:"Ghemuit",standing:"În picioare",prone:"Întinsă"},vipGuide:{title:"Deblochează Pozițiile Foto VIP",description:"Abonează-te pentru a debloca poziții foto exclusive și a cere poziția dorită.",buttonText:"Deblochează VIP Acum"}},dialogLogout:{title:"Deconectare?",desc:"Sunteți sigur că doriți să vă deconectați?",desc2:"Va trebui să vă conectați din nou pentru a accesa contul dvs.",confirm:"Deconectare"},dialogLogin:{title:"Conectare / Înregistrare",subtitle:"Conversați cu peste 20 de milioane de fete",continueWith:"Continuați cu {method}",google:"Google",apple:"Apple",facebook:"Facebook",line:"Line",guest:"Oaspete",desc:"Sunt de acord să primesc oferte speciale, comunicări de marketing și actualizări de servicii prin e-mail.",sub:"Confirm că am",age:"18+",agreementPrefix:"accepta",termsOfService:"Termenii serviciului",and:"și",privacyPolicy:"Politica de confidențialitate",or:"sau",emailPlaceholder:"Adresă de e-mail",continueWithEmail:"Continuați cu Email",verifyTitle:"Verificați-vă e-mailul",verifyDesc:"Am trimis un cod de verificare cu 6 cifre la {email}. Deschideți e-mailul și introduceți codul mai jos pentru a continua.",confirm:"Confirmați",resendCode:"Retrimite codul",resendCountdown:"Retrimite în {seconds}s",back:"Înapoi",invalidEmail:"Introduceți o adresă de e-mail validă",codeSent:"Cod de verificare trimis",codeSendFailed:"Trimiterea codului de verificare a eșuat",codeRequired:"Introduceți codul de verificare",codeInvalid:"Cod de verificare invalid",promotionHint:"Primul abonament <b>-75% OFF</b> Ofertă Exclusivă"},dialogCheckin:{title:"Recompense Zilnice",desc:"Înregistrați-vă timp de 7 zile consecutive pentru a revendica toate recompensele!",button:"Revendicați Recompensa",claimedToday:"Recompensă Revendicată Pentru Astăzi",resultTitle:"Recompensă Revendicată!",resultDesc:"V-ați înregistrat {days} zile la rând. Continuați așa!",resultButton:"Am Înțeles",daysText:"Ziua {days}"},auth:{loginSuccess:"Conectare reușită",loginFailed:"Conectare eșuată, vă rugăm să încercați din nou"},person:{edit:"Editează",follow:"Urmăresc",fans:"Urmăritori",createBot:" Boți",sendPost:" Postări",followBot:" Boți urmăriți"},common:{noData:"Fără date",clickRetry:"Atinge pentru a reîncerca",live:"În direct",report:"Raportați mesajul",reset:"Resetare",months:{january:"Ianuarie",february:"Februarie",march:"Martie",april:"Aprilie",may:"Mai",june:"Iunie",july:"Iulie",august:"August",september:"Septembrie",october:"Octombrie",november:"Noiembrie",december:"Decembrie"},submitting:"Se trimite...",unlockFailed:"Este necesară deblocarea accesului la abonament"},characterDetail:{online:"Online",chatToMe:"Conversează cu mine",collect:"Colecție",collected:"Colecționat",share:"Distribuie",gallery:"Galerie",report:"Raportează",age:"Vârstă",career:"Carieră",height:"Înălțime",constellation:"Constelație",bloodType:"Grupa sanguină",unknown:"Necunoscut",likeSuccess:"Apreciere reușită",unlikeSuccess:"Anulare apreciere reușită",collectSuccess:"Colecționare reușită",uncollectSuccess:"Anulare colecție reușită",likeFailed:"Apreciere eșuată, vă rugăm să încercați din nou",collectFailed:"Colecționare eșuată, vă rugăm să încercați din nou",networkError:"Eroare de rețea, vă rugăm să încercați din nou",reportSuccess:"Raportul a fost trimis cu succes, îl vom procesa cât mai curând posibil",reportFailed:"Trimiterea raportului a eșuat, vă rugăm să încercați din nou"},langSelect:{message:{success:"Limba a fost schimbată cu succes!"}},userCenter:{title:"Informații personale",username:"Nume utilizator",usernamePlaceholder:"AlexOnlyGF",usernameHelper:"Vă rugăm să introduceți 3-25 caractere, litere, emoji, cifre și liniuțe de subliniere sunt permise. Numele de utilizator trebuie să fie unic.",profile:"Profil (Opțional)",profilePlaceholder:"Completați biografia pentru ca alții să vă cunoască mai bine",save:"Salvează",saving:"Se salvează...",saveSuccess:"Salvat cu succes",saveFailed:"Salvare eșuată, vă rugăm să încercați din nou",editProfile:"Editează profilul",collections:"Colecții",likes:"Aprecieri",logout:"Deconectare",logoutConfirm:"Sunteți sigur că doriți să vă deconectați?",downloadApp:"Descărcați APP",language:"Limbă",privacyPolicy:"Politica de confidențialitate",termsOfUse:"Termenii de utilizare",contactUs:"Contactați-ne",support:"Asistență",supportDesc:"Suntem aici pentru dvs. 24/7",premiumTitle:"OnlyGF Premium",premiumDesc:"Deblocați toate show-urile și {coins} de monede bonus lunar",myBalance:"Soldul meu",recharge:"Reîncarcă",currentSubscription:"Abonament curent",daysLeft:"Zile rămase"},download:{googlePlay:{name:"Google Play",description:"Obțineți aplicația oficială pentru actualizări sigure și fără probleme și noi compagnoni.",subtitle:"DESCĂRCAȚI PE"},appStore:{name:"App Store",description:"Bucurați-vă de o experiență de chat privată și captivantă optimizată pentru iPhone-ul dvs.",subtitle:"Descărcare"},androidApk:{name:"Android APK",description:"Instalați direct pentru confidențialitate maximă, acces instantaneu și cele mai recente actualizări.",subtitle:"Descărcare"},webApp:{name:"Web APP",description:"Conversați instantaneu din orice browser — nu necesită instalare. Evadarea dvs. privată vă așteaptă.",subtitle:"Instalare"}},premiumPhotoUnlock:{vipUnlock:"Poți debloca",vipMark:"VIP",proMark:"Pro"},photoGallery:{photoCount:"{current}/{total}",prevPhoto:"Anterior",nextPhoto:"Următor"},dialogVideoUnlock:{title:"Deblochează Video",desc:"Deblochează acest video pentru a viziona conținutul complet",button:"Deblochează Acum",balance:"Soldul Tău",insufficientBalance:"Sold Insuficient",getMore:"Obține Mai Multe Monede",unlocking:"Se deblochează...",unlockSuccess:"Video deblocat cu succes",unlockFailed:"Nu s-a putut debloca video"},upgradablePhoto:{unlockMoment:"Deblochează momentul",upgrading:"Se actualizează...",upgradeSuccess:"Actualizat la video",upgradeFailed:"Nu s-a putut actualiza"},dialogWebViewGuide:{title:"Vă rugăm să deschideți în browser",desc:"Autentificarea Google nu este acceptată în browserele integrate în aplicații. Copiați linkul și deschideți-l în browserul de sistem (Chrome/Safari) pentru a finaliza autentificarea.",currentUrl:"Adresa URL a paginii curente",copyLink:"Copiază linkul",copied:"Link copiat",copyFailed:"Copierea a eșuat, copiați manual",steps:{step1:"Faceți clic pe butonul de mai sus pentru a copia linkul",step2:"Deschideți browserul de sistem (Chrome/Safari)",step3:"Lipiți linkul și vizitați pentru a finaliza autentificarea"}},emailChat:{openEmailChat:"Deschide chat-ul prin e-mail",connectViaEmail:"Conectează-te prin e-mail",enterEmailTitle:"Introduceți e-mailul pentru a primi scrisori",receiveYourFirstLetter:"Primiți prima scrisoare",receiveLetter:"Primește scrisoare",startEmailChatWith:"Începe chat prin e-mail cu {botName}",letterWillBeSent:"Scrisoarea va fi trimisă la e-mailul tău în curând!",description:"Vrei să primești scrisori scrise doar pentru tine, dincolo de chat? Odată activat, vor ajunge în căsuța ta de e-mail, continuând povestea ta ca și cum ar fi o parte reală a vieții tale.",emailPlaceholder:"Adresă de e-mail",sendNow:"Trimite acum",emailChatStartedWith:"Chat prin e-mail început cu {botName}",switchToBot:"Comută la {botName}",receiveLetterAt:"Primește scrisoare",tips:"Sfaturi:",tipsContent:"Ea îți va scrie proactiv și va răspunde la scrisorile tale. Este privat, în ritm lent și exclusiv pentru voi doi.",invalidEmail:"Vă rugăm să introduceți o adresă de e-mail validă",enableSuccess:"Chat-ul prin e-mail a fost activat cu succes",disableSuccess:"Chat-ul prin e-mail a fost dezactivat cu succes",updateEmailSuccess:"E-mailul a fost actualizat cu succes",switchBotSuccess:"Comutat cu succes la noul personaj",enableFailed:"Activarea chat-ului prin e-mail a eșuat",disableFailed:"Dezactivarea chat-ului prin e-mail a eșuat",updateEmailFailed:"Actualizarea e-mailului a eșuat",switchBotFailed:"Comutarea personajului a eșuat",disableConfirmTitle:"Închide chat-ul prin e-mail?",disableConfirmMessage:"Nu vei mai primi scrisori de la acest personaj.",switchBotConfirmTitle:"Comută personajul?",switchBotConfirmMessage:"Comută chat-ul prin e-mail de la {fromBot} la {toBot}?",updateEmail:"Actualizează e-mailul",enterNewEmail:"Vă rugăm să introduceți noua adresă de e-mail",firstLetterTriggered:"Prima ta scrisoare este pe drum!",firstLetterFailed:"Trimiterea primei scrisori a eșuat",verifyTitle:"Verifică e-mailul",verifyDesc:"Cod de verificare trimis la {email}",codeRequired:"Vă rugăm să introduceți codul de 6 cifre",codeInvalid:"Cod invalid sau expirat",codeSent:"Cod trimis",codeSendFailed:"Trimiterea codului a eșuat",confirm:"Confirmă",resendCode:"Retrimite",resendCountdown:"Retrimite în {seconds}s"},emailCallback:{verifying:"Se verifică linkul tău...",success:"Succes!",redirectingToChat:"Redirecționare către chat...",oops:"Ups!",redirectingIn:"Redirecționare către pagina principală în {seconds}s...",goHomeNow:"Mergi la pagina principală acum",invalidLink:"Link invalid",linkExpired:"Linkul a expirat. Te rugăm să te întorci la e-mail și să dai clic din nou.",linkInvalid:"Link invalid",linkUsed:"Linkul nu mai este valid",userNotFound:"Utilizator negăsit",networkError:"Eroare de rețea, te rugăm să încerci din nou"},profileComplete:{title:"Bun venit la {appName}!",subtitle:"Spune-ne mai multe pentru o experiență personalizată mai bună",nicknameLabel:"Care este numele tău?",nicknamePlaceholder:"Introdu un pseudonim cool",nicknameRequired:"Te rugăm să introduci pseudonimul",genderLabel:"Ce pronume folosești?",genderHint:"(Genul nu poate fi schimbat odată selectat.)",birthdayLabel:"Ziua ta de naștere?",birthdayPlaceholder:"ZZ/LL/AAAA",birthdayRequired:"Te rugăm să selectezi ziua de naștere",birthdayUnderAge:"Trebuie să ai cel puțin 18 ani",submitButton:"Începe călătoria mea!",genderRequired:"Te rugăm să selectezi genul",submitSuccess:"Profil completat cu succes!",submitFailed:"Trimitere eșuată, te rugăm să încerci din nou",genderOptions:{male:"El",female:"Ea",other:"Ei"}},seo:{description:{characterList:"Răsfoiește toate personajele AI pe {appName}. Găsește companionul AI ideal pentru interacțiuni live, chat și povești.",characterSearch:"Caută personaje AI pe {appName}. Descoperă companioni AI după nume, etichetă sau interes și începe să conversezi instantaneu.",chatHistory:"Revizuiește istoricul chat-urilor AI pe {appName} și continuă conversațiile cu companionii AI preferați.",userCenter:"Gestionează profilul {appName}, colecțiile și setările contului în centrul utilizatorului.",rechargeCenter:"Reîncarcă monede și abonează-te pe {appName}. Deblochează chat AI premium, interacțiuni live și conținut exclusiv.",webTutorial:"Învață cum să folosești {appName} cu tutorialul nostru web. Sfaturi pentru chat AI, interacțiuni live și pentru a profita la maximum de companionul AI.",contactUs:"Contactează {appName} pentru asistență, parteneriate și întrebări despre produse privind experiențele cu companioni AI.",privacyPolicy:"Citește Politica de confidențialitate {appName} pentru a afla cum colectăm, utilizăm și protejăm informațiile tale personale.",termsService:"Citește Termenii și condițiile {appName} care reglementează utilizarea platformei noastre de companioni AI."}}},[_s.HI]:{errorPage:{page404:{oops:"उफ़!",headline:"वेबमास्टर ने कहा कि आप इस पेज में प्रवेश नहीं कर सकते...",info:"कृपया जांचें कि आपके द्वारा दर्ज किया गया URL सही है, या होमपेज पर वापस जाने के लिए नीचे दिए गए बटन पर क्लिक करें।",backToHome:"होमपेज पर वापस जाएं",allRightsReserved:"सर्वाधिकार सुरक्षित"},page401:{oops:"उफ़!",noPermission:"आपके पास इस पेज पर जाने की अनुमति नहीं है",contactLeader:"यदि आप संतुष्ट नहीं हैं, तो कृपया अपने लीडर से संपर्क करें",orYouCan:"या आप जा सकते हैं:",backHome:"होम पर वापस जाएं",browse:"बस ब्राउज़ करें",viewImage:"छवि देखने के लिए क्लिक करें",back:"वापस",gifSource:"gif स्रोत",randomView:"रैंडम व्यू"},ipAccess:{title:"पहुंच प्रतिबंधित",description:"क्षमा करें, यह सेवा आपके क्षेत्र में उपलब्ध नहीं है",tips:"स्थानीय नियमों और समझौतों के कारण, यह वेबसाइट आपके भौगोलिक क्षेत्र में उपलब्ध नहीं है।"}},route:{premium:"प्रीमियम",home:"एक्सप्लोर करें",characterList:"कैरेक्टर लिस्ट",characterSearch:"कैरेक्टर खोजें",characterDetail:"कैरेक्टर विवरण",characterChat:"कैरेक्टर के साथ चैट",chatHistory:"चैट",userCenter:"यूजर सेंटर",userCenterEdit:"व्यक्तिगत जानकारी",rechargeCenter:"रिचार्ज सेंटर",contactUs:"हमसे संपर्क करें",characterCollections:"कलेक्शन",characterLiked:"पसंदीदा",rechargeHistory:"रिचार्ज इतिहास",legalInformation:"कानूनी जानकारी",underagePolicy:"अवयस्क नीति",subscriptionPolicy:"सदस्यता नीति",exemption2257:"18 U.S.C. 2257 छूट",dmcaPolicy:"DMCA नीति",blockedContentPolicy:"अवरोधित सामग्री नीति",contentRemovalPolicy:"सामग्री हटाने की नीति",complaintPolicy:"शिकायत नीति"},rechargeHistory:{title:"लेनदेन इतिहास",tabs:{deposits:"रिचार्ज",expenses:"खर्च"},expense:{chatWith:"{name} के साथ चैट",unlockedVideo:"{name} का प्राइवेट वीडियो अनलॉक किया",unlockedPhoto:"{name} की प्राइवेट फोटो अनलॉक की",upgradeVideo:"वीडियो अपग्रेड करें",sendGifts:"आंतरिक बातचीत खर्च: {name}",other:"अन्य खर्च"}},rechargeCenter:{tabs:{subscribe:"सब्सक्राइब करें",coins:"कॉइन्स"},premium:{title:"सब्सक्राइब करें",choosePlan:"अपना प्लान चुनें",anonymous:"100% गुमनाम। आप किसी भी समय कैंसिल कर सकते हैं।",countdown:{hours:"घंटे",minutes:"मिनट",seconds:"सेकंड"},limitedOffer:"सीमित समय का ऑफर",discount:"आपके सब्सक्रिप्शन पर 75% तक की छूट",plans:{yearly:"12 महीने",quarterly:"3 महीने",monthly:"1 महीना",perMonth:"/महीना"},currentSubscription:{label:"मौजूदा सब्सक्रिप्शन",daysLeft:"दिन बाकी",renewsOn:"{date} को नवीनीकरण"},subscribeTypes:{none:"कोई सब्सक्रिप्शन नहीं",weekly:"साप्ताहिक",monthly:"मासिक",quarterly:"त्रैमासिक",annual:"वार्षिक",planText:"{type} प्लान"},badges:{bestChoice:"सर्वश्रेष्ठ विकल्प"},security:{noAdultTransaction:"आपके बैंक स्टेटमेंट में कोई वयस्क लेनदेन नहीं",noHiddenFees:"कोई छिपी हुई फीस नहीं + किसी भी समय सब्सक्रिप्शन कैंसिल करें",securePayment:"सुरक्षित भुगतान",sslEncrypted:"SSL एन्क्रिप्शन"},agreement:{iAgree:"मैं स्वीकार करता हूं",termsOfService:"सेवा की शर्तें",and:"और",subscriptionPolicy:"सदस्यता नीति"},subscribe:"सब्सक्राइब करें",subscribed:"सक्रिय सदस्यता",upgrade:"अपग्रेड करें",errors:{alreadySubscribed:"आपके पास पहले से सक्रिय सदस्यता है।"},vipGuide:{title:"Exclusive Privileges Unlock Karein",description:"Connection aur luxury content ke hamare sabse elite tier ke saath apna experience elevate karein.",discountTag:"40% OFF",button:"Meri Premium Journey Shuru Karein",benefits:{exclusivePrivateShows:"विशेष निजी शो & वीडियो और चित्र",premiumTipMenu:"प्रीमियम टिप मेनू",emotionalChatModel:"Zyada emotional AI chat model",betterMemory:"Har interaction me behtar memory",welfareImages:"Regular update hone wali bonus images unlock karein",posePrivilege:"Special pose privileges unlock karein",liveChatPrivilege:"Live room chat privileges",monthlyFreeCoins:"Har mahine {coins} free coins"}},paymentPending:{alt:"भुगतान प्रक्रिया में है",title:"भुगतान प्रक्रिया में है",description:"आपका भुगतान प्रोसेस किया जा रहा है। सत्यापन के बाद, आपका अकाउंट अपने आप Premium में अपग्रेड हो जाएगा। इसमें कुछ मिनट लग सकते हैं।",button:"समझ गया"},benefits:{title:"प्रीमियम लाभ",createAI:"अपनी खुद की AI गर्लफ्रेंड बनाएं",unlimitedMessages:"असीमित टेक्स्ट मैसेज",freeTokens:"100 मुफ्त टोकन पाएं / महीना",removeBlur:"छवियों से धुंधलापन हटाएं",generateImages:"छवियां उत्पन्न करें",phoneCalls:"AI कॉल करें",fastResponse:"तेज प्रतिक्रिया समय",prioritySupport:"प्राथमिकता ग्राहक सहायता",exclusiveCharacters:"विशेष कैरेक्टर तक पहुंच",advancedCustomization:"उन्नत व्यक्तित्व अनुकूलन"}},coins:{title:"कॉइन्स",currentCoins:"वर्तमान कॉइन्स",description:{title:"कॉइन्स विवरण",subtitle:"सिक्के ब्रह्मांड की आभासी मुद्रा हैं! अधिक सिक्कों के साथ, आप अपनी चैट अनुभव को और भी शानदार बना सकते हैं:"},badges:{discount:"{percent}% की छूट"},features:{heartWhisper:"चैट संदेश",inspirationReply:"प्रेरणादायक उत्तर",premiumChat:"विशेष उपहार",specialGifts:"एनिमेटेड वीडियो खरीदें"},history:{title:"रिचार्ज इतिहास",item:{title:"कॉइन्स",conisNum:"+ {num} कॉइन्स",orderId:"ऑर्डर ID: {id}"}}}},order:{status:{completed:{type:"पूर्ण",title:"भुगतान सफल",description:"कॉइन्स सफलतापूर्वक आपके खाते में जोड़ दिए गए हैं! अब आप उन्हें विशेष सुविधाओं को अनलॉक करने के लिए उपयोग कर सकते हैं।"},pending:{type:"लंबित",title:"भुगतान प्रोसेस हो रहा है…",description:"कृपया प्रतीक्षा करें जब तक हम आपके भुगतान की पुष्टि करते हैं। आप किसी भी समय रिचार्ज रिकॉर्ड में नवीनतम प्रगति की जांच कर सकते हैं।"},failed:{type:"विफल",title:"भुगतान विफल",description:"दुर्भाग्य से, यह भुगतान पूरा नहीं हो सका। कृपया आश्वस्त रहें कि हमने आपसे शुल्क नहीं लिया। कृपया पुनः प्रयास करें।"}}},navbar:{search:{placeholder:"खोजें"},login:{title:"लॉगिन",notification:{title:"सुझाव",message:"लॉगिन विधि अभी उपलब्ध नहीं है"}},download:{title:"डाउनलोड करें",dialog:{title:"APP डाउनलोड करें",subtitle:"20 मिलियन से अधिक कैरेक्टर खोजने के लिए ऐप डाउनलोड करें।"}},checkIn:{title:"चेक इन"},joinFree:{title:"मुफ्त में शामिल हों"}},sidebar:{today:"आज",yesterday:"कल",other:"अन्य",footer:{affiliate:"सहयोगी",support:"सहायता"}},contactUs:{email:"ईमेल",youtube:"Youtube",facebook:"Facebook",whatsapp:"WhatsApp",telegram:"Telegram",instagram:"Instagram",discord:"Discord"},loading:{title:"लोड हो रहा है..."},noData:{title:"यहां थोड़ा शांत है..."},home:{more:"सभी देखें",faq:{title:"सामान्य प्रश्न"},banner:{slide1:{title:"आपकी कहानी यहां शुरू होती है",description:"असीमित बातचीत अनलॉक करें",buttonText:"अभी चैट शुरू करें"},slide2:{title:"अपना परफेक्ट कैरेक्टर खोजें",description:"आपके लिए चयनित लोकप्रिय कैरेक्टर एक्सप्लोर करें",buttonText:"अभी एक्सप्लोर करें"},slide3:{title:"अपनी प्रोफाइल बनाएं",description:"प्राथमिकताएं अनुकूलित करें और प्रगति सिंक रखें",buttonText:"सेंटर पर जाएं"}},all:"सभी"},characterTabs:{recommend:"अनुशंसित",trending:"ट्रेंडिंग",topRated:"टॉप रेटेड",popular:"लोकप्रिय",latest:"नवीनतम"},characterChat:{sendInputPlaceholder:"अपना संदेश टाइप करें...",openingPopoverTitle:"जवाब देने की कोशिश करें",copyMessage:"संदेश कॉपी करें",deleteMessage:"संदेश हटाएं",reportMessage:"संदेश रिपोर्ट करें",copySuccess:"क्लिपबोर्ड में कॉपी किया गया",copyFailed:"कॉपी विफल",noCopyContent:"कॉपी करने के लिए कोई सामग्री नहीं",sendTooFrequent:"बहुत बार भेज रहे हैं, कृपया बाद में पुनः प्रयास करें",messageTooLong:"संदेश की लंबाई 200 वर्णों से अधिक नहीं हो सकती",sendFailed:"भेजने में विफल, कृपया पुनः प्रयास करें",openingSuggestions:{careerChange:"मैं टेक्नोलॉजी में करियर बदलने के बारे में सोच रहा हूं। इस इंडस्ट्री की संभावनाओं के बारे में आप क्या सोचते हैं?",tellMore:"दिलचस्प! क्या आप मार्केटिंग स्ट्रैटेजी में अपने अनुभव के बारे में और बता सकते हैं?",professionalAdvice:"मैं अपनी वर्तमान भूमिका में थोड़ा फंसा हुआ महसूस कर रहा हूं। पेशेवर रूप से आगे बढ़ने के लिए कोई सलाह?"},chatUser:{collect:"कलेक्ट करें",collected:"कलेक्ट किया गया",profile:"प्रोफाइल",share:"शेयर करें"},chatHeader:{status:{online:"ऑनलाइन",offline:"ऑफलाइन",typing:"टाइप कर रहे हैं...",sendingPhoto:"फ़ोटो भेज रहे हैं",living:"लाइव"}}},interact:{actionTrigger:"ट्रिगर",actionSend:"भेजें",heat:"उसके साथ इंटरैक्शन हीट",liveRoomGuide:{description:"खास इंटरैक्टिव परफॉर्मेंस अनलॉक करने के लिए गिफ्ट भेजें!",action:"भेजें"},blockingDialog:{title:"वही सब कुछ जिसकी आपने कल्पना की है...",previewPrefix:"यहाँ ",previewHighlight:"एक्सक्लूसिव ट्राय-ऑन शो",previewSuffix:" की झलक है। और अनलॉक करने के लिए प्रीमियम गिफ्ट भेजें।",action:"अभी अनलॉक करें"},giftPanel:{sendGift:"गिफ्ट भेजें",recharge:"रिचार्ज",more:"और",gift:"गिफ्ट",sort:"क्रमबद्ध करें",close:"बंद करें"},sceneSwitch:{guide:"और ज़्यादा सीन देखने के लिए यहां टैप करें।",button:"सीन\nबदलें",shortButton:"सीन",title:"सीन बदलें",subtitle:"क्लिक करके दूसरे लाइव सीन में जाएं।",switching:"बदला जा रहा है...",close:"बंद करें",current:"मौजूदा",price:"अनलॉक करने के लिए {price} कॉइन",payInsufficient:"कॉइन अपर्याप्त हैं। कृपया रिचार्ज करके फिर कोशिश करें।",payNeedsConfirm:"इस सीन के लिए भुगतान पुष्टि चाहिए। कृपया फिर कोशिश करें।",payFailed:"यह सीन अनलॉक नहीं हो सका। कृपया फिर कोशिश करें।"},floatingNotice:{sent:"भेजा",requested:"अनुरोध किया"},mobileMenu:{mute:"म्यूट",unmute:"अनम्यूट",showMenu:"मेनू दिखाएं",hideMenu:"मेनू छिपाएं",muteToast:"म्यूट किया गया",unmuteToast:"अनम्यूट किया गया"},fallbackReply:{feeling:"आप अभी कैसा महसूस कर रहे हैं?",anywhere:"अगर आप अभी कहीं भी हो सकते हैं, तो आप कहाँ होंगे?",mind:"मैं सुनना चाहूँगा कि आपके दिमाग में हाल ही में क्या चल रहा है।"},defaultNames:{action:"एक्शन",gift:"गिफ्ट",character:"चरित्र"},loading:{title:"कृपया प्रतीक्षा करें...",subtitle:"{name} तैयार हो रहा है।"},a11y:{avatarBackground:"अवतार पृष्ठभूमि",showMenu:"मेनू दिखाएं",fire:"आग",up:"ऊपर",send:"भेजें",gift:"गिफ्ट",chat:"चैट",coin:"कॉइन",recharge:"रिचार्ज"}},chatInput:{placeholder:"अपना संदेश टाइप करें..."},chatDeletePopover:{deleteChat:"डिलीट करें",hide:"छुपाएं"},clearChat:{title:"इस चैट को साफ़ करें?",message:"इस चैट में सभी संदेश स्थायी रूप से हटा दिए जाएंगे।",clear:"साफ़ करें",clearing:"साफ़ हो रहा है...",clearChat:"चैट साफ़ करें"},footer:{privacyPolicy:"गोपनीयता नीति",termsService:"सेवा की शर्तें",content:"AI साथी की अगली पीढ़ी की खोज करें। OnlyGF आपको प्रामाणिक बातचीत, भावनात्मक संबंध और AI दोस्तों का एक समुदाय प्रदान करता है जो आपको समझते हैं और आपके साथ बढ़ते हैं।",desc:"© 2025 OnlyGF. सर्वाधिकार सुरक्षित।",features:"विशेषताएं",popular:"लोकप्रिय",chat:"चैट",createCharacter:"चरित्र बनाएं",myCollection:"मेरा संग्रह",myAI:"मेरा AI",legalSupport:"कानूनी और सहायता",termsAndPolicies:"शर्तें और नीतियां"},legalInformation:{pageTitle:"कानूनी जानकारी",items:{termsService:"सेवा की शर्तें",privacyNotice:"गोपनीयता सूचना",subscriptionPolicy:"सदस्यता नीति",cookiesNotice:"कुकी सूचना",underagePolicy:"अवयस्क नीति",contentRemovalPolicy:"सामग्री हटाने की नीति",blockedContentPolicy:"अवरोधित सामग्री नीति",dmcaPolicy:"DMCA नीति",complaintPolicy:"शिकायत नीति",exemption2257:"18 U.S.C. 2257 छूट",communityGuidelines:"समुदाय दिशानिर्देश",affiliateTerms:"एफिलिएट नियम और शर्तें"}},languageDialog:{title:"भाषा चयन",desc:"अपनी प्रदर्शन भाषा चुनें"},dialogUploadAvatar:{title:"अपना अवतार चुनें",desc:"आइए एक ऐसा लुक खोजें जो पूरी तरह से आप है। पहली छाप मायने रखती है!",save:"सेव करें"},dialogShare:{title:"शेयर करें",desc:"लिंक कॉपी करें या सीधे शेयर करें, दोस्त तुरंत चैट शुरू कर सकते हैं।",copy:"लिंक कॉपी करें",success:"लिंक क्लिपबोर्ड पर कॉपी हो गया",error:"लिंक कॉपी करने में विफल, कृपया पुनः प्रयास करें"},dialogReport:{title:"रिपोर्ट करें",desc:"एक कारण चुनें",list:{sexuallyExplicit:"यौन रूप से स्पष्ट सामग्री",hateSpeech:"घृणास्पद भाषण या उत्पीड़न",suicideSelfInjury:"आत्महत्या या आत्म-हानि",violenceThreats:"हिंसा या धमकी",falseInformation:"झूठी जानकारी",spamFraud:"स्पैम या धोखाधड़ी",privacyViolation:"गोपनीयता उल्लंघन",harmfulMinors:"नाबालिगों के लिए हानिकारक",other:"अन्य"},other:{title:"विवरण",placeholder:"कृपया समस्या का वर्णन करें..."},submit:"सबमिट करें"},dialogDownload:{title:"डाउनलोड करें",desc:"20 मिलियन से अधिक कैरेक्टर खोजने के लिए ऐप डाउनलोड करें।",toast:"जल्द ही आ रहा है "},dialogCoinInsufficient:{title:"अगला संदेश अनलॉक करें",liveTitle:"कॉइन्स अपर्याप्त हैं",desc:"इस चैट को जारी रखने के लिए आपके पास कॉइन्स खत्म हो गए हैं। अधिक जवाब अनलॉक करने के लिए कृपया अपना बैलेंस रिचार्ज करें।",message:"संदेश",balance:"बैलेंस",coins:"कॉइन्स",button:"अधिक कॉइन्स प्राप्त करें"},dialogRegisterGuide:{title:"बातचीत जारी रखना चाहते हैं?",desc:"चैट जारी रखने और सभी सुविधाओं को अनलॉक करने के लिए मुफ्त खाता बनाएं!",benefit1:"असीमित बातचीत",benefit2:"चैट इतिहास सहेजें",benefit3:"सभी पात्रों तक पहुंच",signUp:"साइन अप करें",later:"शायद बाद में"},registerGuideMessage:{text:"बातचीत जारी रखना चाहते हैं? बस एक मुफ्त खाता बनाएं! बोनस मैसेज के लिए अभी साइन अप करें—मैं आगे बढ़ने के लिए बेताब हूं!",button:"चैट के लिए रजिस्टर करें"},dialogPhotoUnlock:{title:"फोटो अनलॉक करें",desc:"पूरी सामग्री देखने के लिए इस फोटो को अनलॉक करें",balance:"आपका बैलेंस",button:"अभी अनलॉक करें",getMore:"अधिक कॉइन्स प्राप्त करें",insufficientBalance:"अपर्याप्त बैलेंस",unlocking:"अनलॉक हो रहा है...",unlockSuccess:"फोटो सफलतापूर्वक अनलॉक हो गई",unlockFailed:"फोटो अनलॉक करने में विफल"},photoRequest:{buttonTitle:"फोटो का अनुरोध करें",selectType:"फोटो प्रकार चुनें:",requestFailed:"फोटो का अनुरोध विफल",sendMePhoto:"मुझे एक फोटो भेजो",noMorePhotos:"कोई और फोटो उपलब्ध नहीं",poses:{random:"रैंडम",selfie:"सेल्फी",posing:"पोज़िंग",sitting:"बैठना",kneeling:"घुटने पर",squatting:"बैठक",standing:"खड़े",prone:"लेटना"},vipGuide:{title:"VIP फोटो पोज़ अनलॉक करें",description:"विशेष फोटो पोज़ अनलॉक करने और अपनी इच्छित पोज़ का अनुरोध करने के लिए सदस्यता लें।",buttonText:"अभी VIP अनलॉक करें"}},dialogLogout:{title:"लॉगआउट करें?",desc:"क्या आप वाकई लॉगआउट करना चाहते हैं?",desc2:"आपको अपने खाते तक पहुंचने के लिए फिर से लॉगिन करना होगा।",confirm:"लॉगआउट करें"},dialogLogin:{title:"लॉगिन / साइन अप",subtitle:"20 मिलियन से अधिक लड़कियों से चैट करें",continueWith:"{method} के साथ जारी रखें",google:"Google",apple:"Apple",facebook:"Facebook",line:"Line",guest:"अतिथि",desc:"मैं विशेष ऑफ़र, मार्केटिंग संचार और ईमेल द्वारा सेवा अपडेट प्राप्त करने के लिए सहमत हूं।",sub:"मैं पुष्टि करता हूं कि मैं",age:"18+",agreementPrefix:"हूं और",termsOfService:"सेवा की शर्तें",and:"और",privacyPolicy:"गोपनीयता नीति",or:"या",emailPlaceholder:"ईमेल पता",continueWithEmail:"ईमेल के साथ जारी रखें",verifyTitle:"अपना ईमेल सत्यापित करें",verifyDesc:"हमने {email} पर 6 अंकों का सत्यापन कोड भेजा है। ईमेल खोलें और जारी रखने के लिए नीचे कोड दर्ज करें।",confirm:"पुष्टि करें",resendCode:"कोड पुनः भेजें",resendCountdown:"{seconds}s में पुनः भेजें",back:"वापस",invalidEmail:"कृपया एक वैध ईमेल पता दर्ज करें",codeSent:"सत्यापन कोड भेजा गया",codeSendFailed:"सत्यापन कोड भेजने में विफल",codeRequired:"कृपया सत्यापन कोड दर्ज करें",codeInvalid:"अमान्य सत्यापन कोड",promotionHint:"पहली सदस्यता <b>-75% OFF</b> विशेष ऑफ़र"},dialogCheckin:{title:"दैनिक पुरस्कार",desc:"सभी पुरस्कार प्राप्त करने के लिए लगातार 7 दिनों तक चेक इन करें!",button:"पुरस्कार प्राप्त करें",claimedToday:"आज पुरस्कार प्राप्त हो गया",resultTitle:"पुरस्कार प्राप्त हो गया!",resultDesc:"आपने लगातार {days} दिनों तक चेक इन किया है। ऐसे ही जारी रखें!",resultButton:"समझ गया",daysText:"दिन {days}"},auth:{loginSuccess:"लॉगिन सफलतापूर्वक हो गया",loginFailed:"लॉगिन विफल, कृपया पुनः प्रयास करें"},person:{edit:"संपादित करें",follow:"फॉलो कर रहे हैं",fans:"फॉलोअर्स",createBot:" बॉट्स",sendPost:" पोस्ट",followBot:" फॉलो किए गए बॉट्स"},common:{noData:"कोई डेटा नहीं",clickRetry:"पुनः प्रयास करने के लिए टैप करें",live:"लाइव",report:"संदेश रिपोर्ट करें",reset:"रीसेट",months:{january:"जनवरी",february:"फ़रवरी",march:"मार्च",april:"अप्रैल",may:"मई",june:"जून",july:"जुलाई",august:"अगस्त",september:"सितंबर",october:"अक्टूबर",november:"नवंबर",december:"दिसंबर"},submitting:"सबमिट हो रहा है...",unlockFailed:"सदस्यता अनुमति अनलॉक करनी होगी"},characterDetail:{online:"ऑनलाइन",chatToMe:"मुझसे चैट करें",collect:"कलेक्ट करें",collected:"कलेक्ट किया गया",share:"शेयर करें",gallery:"गैलरी",report:"रिपोर्ट करें",age:"आयु",career:"करियर",height:"ऊंचाई",constellation:"राशि",bloodType:"रक्त समूह",unknown:"अज्ञात",likeSuccess:"सफलतापूर्वक पसंद किया गया",unlikeSuccess:"सफलतापूर्वक पसंद हटाया गया",collectSuccess:"सफलतापूर्वक कलेक्ट किया गया",uncollectSuccess:"कलेक्शन सफलतापूर्वक कैंसिल किया गया",likeFailed:"पसंद करने में विफल, कृपया पुनः प्रयास करें",collectFailed:"कलेक्ट करने में विफल, कृपया पुनः प्रयास करें",networkError:"नेटवर्क त्रुटि, कृपया पुनः प्रयास करें",reportSuccess:"रिपोर्ट सफलतापूर्वक सबमिट की गई, हम इसे जल्द से जल्द प्रोसेस करेंगे",reportFailed:"रिपोर्ट सबमिट करने में विफल, कृपया पुनः प्रयास करें"},langSelect:{message:{success:"भाषा सफलतापूर्वक बदली गई!"}},userCenter:{title:"व्यक्तिगत जानकारी",username:"यूजरनेम",usernamePlaceholder:"AlexOnlyGF",usernameHelper:"कृपया 3-25 अक्षर दर्ज करें, अक्षर, इमोजी, संख्या और अंडरस्कोर की अनुमति है। यूजरनेम अद्वितीय होना चाहिए।",profile:"प्रोफाइल (वैकल्पिक)",profilePlaceholder:"अपना बायो पूरा करें ताकि दूसरे आपको बेहतर जान सकें",save:"सेव करें",saving:"सेव हो रहा है...",saveSuccess:"सफलतापूर्वक सेव किया गया",saveFailed:"सेव करने में विफल, कृपया पुनः प्रयास करें",editProfile:"प्रोफाइल संपादित करें",collections:"कलेक्शन",likes:"पसंद",logout:"लॉगआउट",logoutConfirm:"क्या आप वाकई लॉगआउट करना चाहते हैं?",downloadApp:"APP डाउनलोड करें",language:"भाषा",privacyPolicy:"गोपनीयता नीति",termsOfUse:"उपयोग की शर्तें",contactUs:"हमसे संपर्क करें",support:"सहायता",supportDesc:"हम आपके लिए 24/7 यहां हैं",premiumTitle:"OnlyGF Premium",premiumDesc:"हर महीने सभी शो और {coins} बोनस कॉइन अनलॉक करें",myBalance:"मेरा बैलेंस",recharge:"रीचार्ज",currentSubscription:"मौजूदा सब्सक्रिप्शन",daysLeft:"दिन बाकी"},download:{googlePlay:{name:"Google Play",description:"सुरक्षित, सहज अपडेट और नए साथियों के लिए आधिकारिक ऐप प्राप्त करें।",subtitle:"इस पर डाउनलोड करें"},appStore:{name:"App Store",description:"अपने iPhone के लिए अनुकूलित निजी, इमर्सिव चैट अनुभव का आनंद लें।",subtitle:"डाउनलोड करें"},androidApk:{name:"Android APK",description:"परम गोपनीयता, त्वरित एक्सेस और नवीनतम अपडेट के लिए सीधे इंस्टॉल करें।",subtitle:"डाउनलोड करें"},webApp:{name:"Web APP",description:"किसी भी ब्राउज़र से तुरंत चैट करें—कोई इंस्टॉलेशन की जरूरत नहीं। आपका निजी पलायन आपका इंतजार कर रहा है।",subtitle:"इंस्टॉल करें"}},premiumPhotoUnlock:{vipUnlock:"अनलॉक कर सकते हैं",vipMark:"VIP",proMark:"Pro"},photoGallery:{photoCount:"{current}/{total}",prevPhoto:"पिछला",nextPhoto:"अगला"},dialogVideoUnlock:{title:"वीडियो अनलॉक करें",desc:"पूरी सामग्री देखने के लिए इस वीडियो को अनलॉक करें",button:"अभी अनलॉक करें",balance:"आपका बैलेंस",insufficientBalance:"अपर्याप्त बैलेंस",getMore:"अधिक सिक्के प्राप्त करें",unlocking:"अनलॉक हो रहा है...",unlockSuccess:"वीडियो सफलतापूर्वक अनलॉक हुआ",unlockFailed:"वीडियो अनलॉक करने में विफल"},upgradablePhoto:{unlockMoment:"पल को अनलॉक करें",upgrading:"अपग्रेड हो रहा है...",upgradeSuccess:"वीडियो में अपग्रेड किया गया",upgradeFailed:"अपग्रेड करने में विफल"},dialogWebViewGuide:{title:"कृपया ब्राउज़र में खोलें",desc:"Google लॉगिन ऐप के अंतर्निहित ब्राउज़र में समर्थित नहीं है। लॉगिन पूरा करने के लिए लिंक कॉपी करें और इसे सिस्टम ब्राउज़र (Chrome/Safari) में खोलें।",currentUrl:"वर्तमान पृष्ठ का URL",copyLink:"लिंक कॉपी करें",copied:"लिंक कॉपी हो गया",copyFailed:"कॉपी विफल, कृपया मैन्युअल रूप से कॉपी करें",steps:{step1:"लिंक कॉपी करने के लिए ऊपर बटन पर क्लिक करें",step2:"सिस्टम ब्राउज़र खोलें (Chrome/Safari)",step3:"लिंक पेस्ट करें और लॉगिन पूरा करने के लिए विज़िट करें"}},emailChat:{openEmailChat:"ईमेल चैट खोलें",connectViaEmail:"ईमेल के माध्यम से कनेक्ट करें",enterEmailTitle:"पत्र प्राप्त करने के लिए ईमेल दर्ज करें",receiveYourFirstLetter:"अपना पहला पत्र प्राप्त करें",receiveLetter:"पत्र प्राप्त करें",startEmailChatWith:"{botName} के साथ ईमेल चैट शुरू करें",letterWillBeSent:"पत्र जल्द ही आपके ईमेल पर भेजा जाएगा!",description:"क्या आप चैट से परे, सिर्फ आपके लिए लिखे गए पत्र प्राप्त करना चाहते हैं? एक बार सक्षम होने पर, वे आपके इनबॉक्स में पहुंचेंगे, आपकी कहानी को जारी रखते हुए जैसे कि वे आपके जीवन का वास्तविक हिस्सा हों।",emailPlaceholder:"ईमेल पता",sendNow:"अभी भेजें",emailChatStartedWith:"{botName} के साथ ईमेल चैट शुरू हुई",switchToBot:"{botName} पर स्विच करें",receiveLetterAt:"पत्र प्राप्त करें",tips:"सुझाव:",tipsContent:"वह सक्रिय रूप से आपको लिखेगी और आपके पत्रों का जवाब देगी। यह निजी, धीमी गति का और विशेष रूप से आप दोनों के लिए है।",invalidEmail:"कृपया एक वैध ईमेल पता दर्ज करें",enableSuccess:"ईमेल चैट सफलतापूर्वक सक्षम हुई",disableSuccess:"ईमेल चैट सफलतापूर्वक अक्षम हुई",updateEmailSuccess:"ईमेल सफलतापूर्वक अपडेट हुआ",switchBotSuccess:"नए चरित्र पर सफलतापूर्वक स्विच किया गया",enableFailed:"ईमेल चैट सक्षम करने में विफल",disableFailed:"ईमेल चैट अक्षम करने में विफल",updateEmailFailed:"ईमेल अपडेट करने में विफल",switchBotFailed:"चरित्र स्विच करने में विफल",disableConfirmTitle:"ईमेल चैट बंद करें?",disableConfirmMessage:"आपको इस चरित्र से अब पत्र नहीं मिलेंगे।",switchBotConfirmTitle:"चरित्र स्विच करें?",switchBotConfirmMessage:"ईमेल चैट को {fromBot} से {toBot} पर स्विच करें?",updateEmail:"ईमेल अपडेट करें",enterNewEmail:"कृपया नया ईमेल पता दर्ज करें",firstLetterTriggered:"आपका पहला पत्र रास्ते में है!",firstLetterFailed:"पहला पत्र भेजने में विफल",verifyTitle:"ईमेल सत्यापित करें",verifyDesc:"सत्यापन कोड {email} पर भेजा गया",codeRequired:"कृपया 6 अंकों का कोड दर्ज करें",codeInvalid:"अमान्य या समाप्त कोड",codeSent:"कोड भेजा गया",codeSendFailed:"कोड भेजने में विफल",confirm:"पुष्टि करें",resendCode:"पुनः भेजें",resendCountdown:"{seconds}s में पुनः भेजें"},emailCallback:{verifying:"आपका लिंक सत्यापित हो रहा है...",success:"सफलता!",redirectingToChat:"चैट पर रीडायरेक्ट हो रहा है...",oops:"उफ़!",redirectingIn:"{seconds}s में होमपेज पर रीडायरेक्ट हो रहा है...",goHomeNow:"अभी होमपेज पर जाएं",invalidLink:"अमान्य लिंक",linkExpired:"लिंक की समय सीमा समाप्त हो गई है। कृपया अपने ईमेल पर वापस जाएं और फिर से क्लिक करें।",linkInvalid:"अमान्य लिंक",linkUsed:"लिंक अब मान्य नहीं है",userNotFound:"उपयोगकर्ता नहीं मिला",networkError:"नेटवर्क त्रुटि, कृपया पुनः प्रयास करें"},profileComplete:{title:"{appName} में आपका स्वागत है!",subtitle:"बेहतर व्यक्तिगत अनुभव के लिए हमें और बताएं",nicknameLabel:"आपका नाम क्या है?",nicknamePlaceholder:"एक शानदार उपनाम दर्ज करें",nicknameRequired:"कृपया अपना उपनाम दर्ज करें",genderLabel:"आप कौन सा सर्वनाम उपयोग करते हैं?",genderHint:"(एक बार चयन करने के बाद लिंग नहीं बदला जा सकता।)",birthdayLabel:"आपका जन्मदिन?",birthdayPlaceholder:"DD/MM/YYYY",birthdayRequired:"कृपया अपना जन्मदिन चुनें",birthdayUnderAge:"आपकी आयु कम से कम 18 वर्ष होनी चाहिए",submitButton:"मेरी यात्रा शुरू करें!",genderRequired:"कृपया अपना लिंग चुनें",submitSuccess:"प्रोफ़ाइल सफलतापूर्वक पूर्ण हुई!",submitFailed:"सबमिट करने में विफल, कृपया पुनः प्रयास करें",genderOptions:{male:"वह (पुरुष)",female:"वह (महिला)",other:"वे"}},seo:{description:{characterList:"{appName} पर सभी AI पात्रों को ब्राउज़ करें। लाइव इंटरैक्शन, चैट और कहानी कहने के लिए अपना आदर्श AI साथी खोजें।",characterSearch:"{appName} पर AI पात्रों को खोजें। नाम, टैग या रुचि के अनुसार AI साथी खोजें और तुरंत चैट शुरू करें।",chatHistory:"{appName} पर अपने AI चैट इतिहास की समीक्षा करें और अपने पसंदीदा AI साथियों के साथ बातचीत जारी रखें।",userCenter:"उपयोगकर्ता केंद्र में अपनी {appName} प्रोफ़ाइल, संग्रह और खाता सेटिंग प्रबंधित करें।",rechargeCenter:"{appName} पर सिक्के रिचार्ज करें और सदस्यता लें। प्रीमियम AI चैट, लाइव इंटरैक्शन और विशेष सामग्री अनलॉक करें।",webTutorial:"हमारे वेब ट्यूटोरियल के साथ {appName} का उपयोग करना सीखें। AI चैट, लाइव इंटरैक्शन और अपने AI साथी से अधिकतम लाभ उठाने के लिए सुझाव।",contactUs:"AI साथी अनुभवों के बारे में समर्थन, साझेदारी और उत्पाद पूछताछ के लिए {appName} से संपर्क करें।",privacyPolicy:"{appName} गोपनीयता नीति पढ़ें और जानें कि हम आपकी व्यक्तिगत जानकारी कैसे एकत्र, उपयोग और सुरक्षित करते हैं।",termsService:"हमारे AI साथी प्लेटफ़ॉर्म के उपयोग को नियंत्रित करने वाली {appName} सेवा की शर्तें पढ़ें।"}}}},vm=we({legacy:!1,locale:Hs("language")||"en",messages:fm,globalInjection:!0});const ym=["/auth/login","/auth/refreshToken","/auth/email/sendCode","/auth/email-link","/auth/temp-guest","/version/query","/config/init","/user/v2/chat/page","/user/v2/detail","/chat/sessionList","/goods/v2/list"],bm=e=>!!e&&(ym.some(t=>e.includes(t))||/\/intimacy\/\d+\/info(?=$|\/|\?)/.test(e)),wm=e=>!!e&&e.includes("/auth/refreshToken"),Cm=()=>!!Hs(Rs),km=e=>bm(e)&&!Cm(),Am=e=>{e&&(e.headers&&delete e.headers.isEncrypt,Object.prototype.hasOwnProperty.call(e,"_rawData")&&(e.data=e._rawData))},xm=e=>(e=>String(e||"").trim().toLowerCase().includes("already subscribed"))(e)?String(vm.global.t("rechargeCenter.premium.errors.alreadySubscribed")):String(e||"Error"),Pm=ve.create({baseURL:"/api",timeout:5e4,headers:{"Content-Type":"application/json;charset=utf-8",Sign:"no_sign"}});let Sm=null;async function _m(e=!1){return Sm||(Sm=(async()=>{try{const e=await Em.refreshToken({refreshToken:Hs(Ms)});if(!e||!e.token)throw new Error("refreshToken response missing token");Vs(Rs,e.token),e.refreshToken&&Vs(Ms,e.refreshToken),gm("login"),gm("login_success"),gm("refresh_token_login")}catch(e){throw await sh().resetToken(!1),e}finally{Sm=null}})(),Sm)}Pm.interceptors.request.use(e=>{var t,a,r,n;const i=Hs(Rs);i&&!wm(e.url)&&(e.headers.token=i),e.hiddenToast&&(e.hiddenToast=!0);const o=$s(),s=Hs("language")||"en",l=null==(t=o.appConfig)?void 0:t.appBrand,c=null==(a=o.appConfig)?void 0:a.uaChannel;e.headers.ua=ll(s,l,c),e.headers.language=s,e.headers.timestamp=(new Date).toISOString();const u=Xc();u&&(e.headers.fp=u);const d=il();e.headers["X-Device-Category"]=d.category,e.headers["X-Device-Model"]=d.model;const p=null==(r=o.appConfig)?void 0:r.encryption;if(p){if(p.isEncrypt){const t=bm(e.url)?p.secretKey:i||p.secretKey;if(!t||t.length<16);else if(e.headers.isEncrypt="true",e.data&&["post","put","patch"].includes(null==(n=e.method)?void 0:n.toLowerCase())){const a=Object.prototype.hasOwnProperty.call(e,"_rawData")?e._rawData:e.data;e._rawData=a;try{const r=function(e,t){try{const a=Zc.enc.Utf8.parse(t);return Zc.AES.encrypt(e,a,{mode:Zc.mode.ECB,padding:Zc.pad.Pkcs7}).toString()}catch(a){throw new Error("data error")}}(JSON.stringify(a),t);e.data=JSON.stringify(r),e.headers["Content-Type"]="application/json;charset=utf-8"}catch(m){e.data=a,delete e.headers.isEncrypt}}}}else;return e},e=>Promise.reject(e));let Im=!1,Tm=[];Pm.interceptors.response.use(e=>{var t;const a=e.config;if("blob"===a.responseType||"arraybuffer"===a.responseType)return e;if("true"===a.headers.isEncrypt&&e.data)try{const r=Hs(Rs),n=null==(t=$s().appConfig)?void 0:t.encryption,i=bm(a.url)?null==n?void 0:n.secretKey:r||(null==n?void 0:n.secretKey),o=i,s=i===r?null==n?void 0:n.secretKey:r;if("string"==typeof e.data){const t=e.data;try{const a=Jc(t,o);e.data=JSON.parse(a)}catch(l){if(s&&s!==o&&s.length>=16)try{const a=Jc(t,s);e.data=JSON.parse(a)}catch(c){}}}else if(e.data.result&&"string"==typeof e.data.result){const t=e.data.result;try{const a=Jc(t,o);e.data.result=JSON.parse(a)}catch(l){if(s&&s!==o&&s.length>=16)try{const a=Jc(t,s);e.data.result=JSON.parse(a)}catch(c){}}}}catch(u){}const{code:r,result:n,msg:i,data:o}=e.data,s="result"in e.data?n:o;if(String(i||"").toLowerCase().includes("need to purchase for vip")&&Xs($s().appConfig))return tl().openVipGuideDialog(),Promise.reject({code:rl.NOT_VIP,message:String(i||"Need to purchase for VIP")});switch(r){case rl.SUCCESS:return s;case rl.REFRESH_TOKEN_EXPIRED:if(km(a.url))return Promise.resolve(null);return"true"===Hs(Bs)?(Gs(Rs),Gs(Ms),Gs(Ws),Gs(Bs),setTimeout(()=>{tl().showLoginDialog=!0},0),Promise.reject({code:887,message:"Temp guest login expired"})):a._retryCount&&a._retryCount>0?Promise.resolve(null):(sh().resetToken().then(()=>{setTimeout(()=>{tl().showLoginDialog=!0},0)}),Promise.reject({code:887,message:"RefreshToken expired"}));case rl.ACCESS_DENIED:return $s().isIpAccess=!0,s;case rl.NOT_VIP:return Xs($s().appConfig)&&tl().openVipGuideDialog(),Promise.reject({code:rl.NOT_VIP,message:String(i||"Need to purchase for VIP")});case rl.COIN_INSUFFICIENT:return tl().showVipDialog=!0,Promise.reject();case rl.TOKEN_EXPIRED:if(km(a.url))return Promise.resolve(null);if(a._retryCount&&a._retryCount>0)return Promise.resolve(null);if(a._retryCount=(a._retryCount||0)+1,Im)return new Promise(e=>{Tm.push({config:a,resolve:e})});{Im=!0;let e=!1;return _m(a.silentAuth).then(()=>(e=!0,Tm.forEach(e=>{const{config:t,resolve:a}=e;Am(t),a(Pm(t))}),Tm=[],Am(a),Pm(a))).catch(async()=>(e||(await sh().resetToken(!1),setTimeout(()=>{tl().showLoginDialog=!0},0)),Tm.forEach(e=>{e.resolve(Promise.reject(new Error("Token refresh failed")))}),Tm=[],Promise.reject({code:e?0:888,message:e?"Request retry failed after token refresh":"Token refresh failed"}))).finally(()=>{Im=!1})}default:if(i&&i.toLowerCase().includes("param"))return Promise.reject(new Error(i));const e=xm(i);return a.hiddenToast||Ps.error(e),Promise.reject(new Error(e))}},async e=>{if((e=>{var t;const a=null==e?void 0:e.config,r=null==(t=null==e?void 0:e.response)?void 0:t.status;return!!a&&(401===r||502===r)&&Cm()&&!wm(a.url)&&!km(a.url)&&!a._retryCount})(e)){const a=e.config;a._retryCount=(a._retryCount||0)+1;try{return await _m(a.silentAuth),Am(a),Pm(a)}catch(t){return await sh().resetToken(!1),setTimeout(()=>{tl().showLoginDialog=!0},0),Promise.reject(t)}}return Promise.reject(e)});const zm="/auth";class Em{static sendEmailCode(e){return Pm({url:`${zm}/email/sendCode`,method:"post",data:e})}static userDestroyed(e){return Pm({url:`${zm}/destroyed`,method:"post",data:e})}static userLogin(e){return Pm({url:`${zm}/login`,method:"post",data:e})}static refreshToken(e){return Pm({url:`${zm}/refreshToken`,method:"post",data:e,hiddenToast:!0})}static oauthLogin(e){return`http://localhost:3000/api${zm}/oauth/${e}`}static createTempGuest(e){return Pm({url:`${zm}/temp-guest`,method:"post",data:e||{}})}static upgradeAccount(e){return Pm({url:`${zm}/upgrade`,method:"post",data:e})}static bindAccount(e){return Pm({url:`${zm}/bindAccount`,method:"post",data:e})}static logout(){return Pm({url:`${zm}/logout`,method:"post"})}static getLinkedGuest(){return Pm({url:`${zm}/linkedGuest`,method:"get"})}static verifyEmailLink(e){return Pm({url:`${zm}/email-link`,method:"post",data:{code:e}})}}const Dm="/user";class Rm{static getUserInfo(){return Pm({url:`${Dm}/info`,method:"post"})}static reportBot(e){return Pm({url:`${Dm}/reportBot`,method:"post",data:e})}static updateUserInfo(e){return Pm({url:`${Dm}/update`,method:"post",data:e})}static userCollected(e){return Pm({url:`${Dm}/v2/collected`,method:"post",data:e})}static userLiked(e){return Pm({url:`${Dm}/v2/liked`,method:"post",data:e})}static unlockPhoto(e,t,a){const r={photoId:e,botId:t};return void 0!==a&&(r.isVip=a),Pm({url:`${Dm}/unlockPhoto`,method:"post",data:r})}static unlockVideo(e,t){return Pm({url:`${Dm}/v2/unlockVideo`,method:"post",data:{videoId:e,botId:t}})}static upgradePhotoToVideo(e,t){return Pm({url:`${Dm}/v2/upgradePhotoToVideo`,method:"post",data:{photoId:e,botId:t}})}}class Mm{static configInit(){return Pm({url:"/config/init",method:"post"})}}const jm=new Map,qm=new Map,Lm=e=>`live-bootstrap-meta:${e}`,Om=()=>{var e;if("undefined"!=typeof window){const t=String((null==(e=window.__APP_CONFIG__)?void 0:e.liveLoadingBackground)||"").trim();if(t)return t}return"/images/live-loading-bg.png"},Nm=e=>{const t=String(e||"").trim();if(!t||"undefined"==typeof window)return Promise.resolve(!1);const a=Um(t);if(void 0!==a)return Promise.resolve(a);const r=qm.get(t);if(r)return r;const n=new Promise(e=>{const a=new Image;a.decoding="async",a.onload=()=>{jm.set(t,!0),qm.delete(t),e(!0)},a.onerror=()=>{jm.set(t,!1),qm.delete(t),e(!1)},a.src=t});return qm.set(t,n),n},Um=e=>{const t=String(e||"").trim();if(!t)return!1;const a=jm.get(t);if(void 0!==a)return a;if("undefined"!=typeof window){const e=window.__LIVE_IMAGE_PROBE__,a=null==e?void 0:e[t];if(void 0!==a)return jm.set(t,a),a}},Fm=async e=>{if("undefined"==typeof window)return;const t=String(e||"").trim();if(!t)return void(await Nm(Om()));await Nm(t)||await Nm(Om())},Bm=(()=>{if("undefined"==typeof window)return null;const e=window.location.pathname||"";if(!/\/characterInteract\/?$/.test(e))return null;const t=window.__LIVE_BOOTSTRAP_META__;return t&&!0===t.enabled?t:null})(),Wm=String((null==Bm?void 0:Bm.characterName)||"").trim(),Vm=!!Bm,Hm=k({visible:Vm,backgroundUrl:String((null==Bm?void 0:Bm.backgroundUrl)||Om()),avatarUrl:String((null==Bm?void 0:Bm.avatarUrl)||""),showLiveAvatar:Vm,title:Vm?vm.global.t("interact.loading.title"):"",subtitle:Vm?vm.global.t("interact.loading.subtitle",{name:Wm||vm.global.t("interact.defaultNames.character")}):"",avatarSize:Number((null==Bm?void 0:Bm.avatarSize)||0),startedAt:Vm?Date.now():0,skipInitialTransition:Vm});let Gm=null,Ym=null;const $m=()=>{null!==Gm&&(window.clearTimeout(Gm),Gm=null)},Km=()=>{null!==Ym&&(window.clearTimeout(Ym),Ym=null)},Zm=()=>Hm,Jm=(e={})=>{const t=String(e.backgroundUrl||"").trim()||Om(),a=String(e.characterName||"").trim()||vm.global.t("interact.defaultNames.character");((e={})=>{$m(),Km(),Hm.skipInitialTransition=e.skipInitialTransition??!1,Hm.backgroundUrl=e.backgroundUrl||"",Hm.avatarUrl=e.avatarUrl||"",Hm.showLiveAvatar=e.showLiveAvatar??!1,Hm.title=e.title||"",Hm.subtitle=e.subtitle||"",Hm.avatarSize=e.avatarSize??0,Hm.visible=!0,Hm.startedAt=Date.now(),(e.autoHideMs??0)>0&&(Ym=window.setTimeout(()=>{eh(),Ym=null},e.autoHideMs))})({backgroundUrl:t,avatarUrl:e.avatarUrl||"",showLiveAvatar:e.showLiveAvatar??!0,title:vm.global.t("interact.loading.title"),subtitle:vm.global.t("interact.loading.subtitle",{name:a}),avatarSize:e.avatarSize??0,skipInitialTransition:!0})},Qm=e=>{const t=String(e||"").trim();t&&Hm.visible&&Hm.backgroundUrl===Om()&&(Hm.backgroundUrl=t)},Xm=async e=>{const t=String(e.userId),a=String(e.characterName||"").trim(),r=String(e.avatarUrl||"").trim(),n=(e=>{if("undefined"==typeof window)return null;const t=Lm(e);try{const e=window.sessionStorage.getItem(t);if(!e)return null;const a=JSON.parse(e);return Date.now()-(a.updatedAt||0)>1296e6?(window.sessionStorage.removeItem(t),null):String(a.backgroundUrl||"").trim()||null}catch(a){return null}})(t),i=String(e.backgroundUrl||"").trim()||n||Om();Fm(i),Jm({backgroundUrl:i,avatarUrl:r,characterName:a,avatarSize:e.avatarSize,showLiveAvatar:e.showLiveAvatar});const o={id:t,source:e.source||"live"};try{const e=Lm(t);window.sessionStorage.setItem(e,JSON.stringify({userId:t,characterName:a,avatarUrl:r,backgroundUrl:i,updatedAt:Date.now()}))}catch(l){}const s=await e.router.push({path:"/characterInteract",query:o});return s&&eh(!0),!s},eh=(e=!1)=>{$m(),Km();const t=Date.now()-Hm.startedAt,a=e?0:Math.max(0,2e3-t);Gm=window.setTimeout(()=>{Hm.visible=!1,Hm.title="",Hm.subtitle="",Hm.avatarSize=0,Hm.startedAt=0,Gm=null},a)},th=[{key:"terms-service",title:"Terms of Use",titleKey:"legalInformation.items.termsService",path:"/about/termsService",routeName:"termsService",routeTitleKey:"settings.link.termsService",htmlContent:'<span class="rendered_qtext">\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <i>Last Updated: June 6, 2025</i>\r\n        </p>\r\n\r\n        <h4 class="qtext_para u-ltr u-text-align--start">Table of Contents</h4>\r\n        <ul>\r\n          <li>Scope and Consent</li>\r\n          <li>Collection and Use of User Information</li>\r\n          <li>Cookies, SDKs, and Similar Technologies</li>\r\n          <li>Advertising</li>\r\n          <li>\r\n            Reasons for Collection, Processing, and Use of User Information\r\n          </li>\r\n          <li>Sharing, Transfer, Sale, and Disclosure of User Information</li>\r\n          <li>Management of User Information</li>\r\n          <li>Retention of User Information</li>\r\n          <li>Security of User Information</li>\r\n          <li>International Transfer of User Information</li>\r\n          <li>Protection of Children\'s Personal Information</li>\r\n          <li>Regional Privacy Disclosures</li>\r\n          <li>Users\' Rights to Remedies</li>\r\n          <li>Contact Us</li>\r\n        </ul>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Thanks for using\r\n          <a href="{{website}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{domain}}\r\n    </a>\r\n        </p>\r\n        <h4 class="qtext_para u-ltr u-text-align--start">Terms of Use</h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          These Terms of Use (as updated periodically, the "Terms") govern the\r\n          website\r\n          <a href="{{website}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{domain}}\r\n    </a>\r\n          , an online chat platform, along with its associated content,\r\n          features, and tools (collectively, the "Web Services") made available\r\n          to users ("you" or "your") by\r\n          <a href="{{website}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{domain}}\r\n    </a>\r\n          . This site is managed by us and backed by our affiliates (if\r\n          applicable) (together, "we," "our," or "us").\r\n        </p>\r\n        <h4 class="qtext_para u-ltr u-text-align--start">\r\n          Your Acceptance of These Terms\r\n        </h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          These Terms create a binding agreement between you and us, without\r\n          needing any physical, electronic, or digital signature. Agreeing to\r\n          these Terms is essential for accessing our Web Services, so we\r\n          recommend reviewing them thoroughly before proceeding.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Any engagement with the Web Services—such as downloading, installing,\r\n          browsing, activating, signing up, logging in, using, or paying—signals\r\n          your acceptance of these Terms. If you disagree, refrain from using\r\n          the Web Services in any capacity.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Users without an account become non-registered upon first interaction\r\n          and must follow all applicable provisions here, excluding those\r\n          specific to account holders.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          These Terms include key sections on child safety. Individuals under 14\r\n          or the legal minimum age in your area for services (online/offline\r\n          software, commercial/non-commercial, paid/free) are barred from using\r\n          Web Services entirely. If you\'re aged 14–17, discuss these Terms with\r\n          a parent or guardian to ensure full understanding and consent.\r\n          Parents/guardians accepting on behalf of a child are accountable for\r\n          adherence. Any child use implies parental/guardian approval and\r\n          oversight.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          These Terms address purchases and billing. All transactions require\r\n          adult involvement, with possible verification to prevent child errors.\r\n          Per these Terms and laws, completed purchases aren\'t refundable\r\n          without valid cause. To the fullest legal extent, we won\'t process\r\n          refunds for accidental child transactions.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Continued use of Web Services or our offerings post-updates implies\r\n          acceptance of the new version. If unagreed, stop using, or access\r\n          pre-update versions if technically viable.\r\n        </p>\r\n        <h4 class="qtext_para u-ltr u-text-align--start">User Privacy</h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          We prioritize safeguarding personal data. We\'ll handle your and/or\r\n          your child\'s information per these Terms, our Privacy Policy, and\r\n          relevant laws. We may sync such data across your devices for enhanced\r\n          service.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Review and accept our Privacy Policy prior to use—engaging with Web\r\n          Services confirms consent. Disagreement? Halt access immediately.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          See our Privacy Policy for full details.\r\n        </p>\r\n        <h4 class="qtext_para u-ltr u-text-align--start">\r\n          Child User Protection\r\n        </h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>3.1</b>\r\n          We emphasize child safety. Per laws, you confirm you\'re an adult or a\r\n          child\'s parent/guardian. Services reach children only after\r\n          parental/guardian review and acceptance of these Terms. We\'ll cease\r\n          provision upon discovering unapproved child use.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>3.2</b>\r\n          Parents/guardians must educate kids on online safety. Children can\'t\r\n          process payments—only adults may.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>3.3</b>\r\n          Child data protection follows our Privacy Policy and laws strictly.\r\n          Details therein.\r\n        </p>\r\n        <h4 class="qtext_para u-ltr u-text-align--start">\r\n          Our Services, Subscription, and Payment\r\n        </h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          For these Terms, Web Services cover:\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          - Chatting: converse with yours or others\' creations on the platform;\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          - Premium Services: Paid upgrades yield extra allowances and\r\n          capabilities, granting premium status;\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          - Additional user offerings.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>4.2</b>\r\n          Web Services are solely accessible at\r\n          <a href="{{website}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{domain}}\r\n    </a>\r\n          .\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>4.3</b>\r\n          Stick to official services—malicious/illegal extractions aren\'t\r\n          covered here. Violators bear consequences; we\'ll pursue remedies\r\n          legally.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>4.4</b>\r\n          We provide a limited, revocable, non-exclusive, non-transferable,\r\n          non-sublicensable license (see End User License Agreement "EULA") to\r\n          access/use Web Services and derived outputs ("Derivative Contents").\r\n          You gain no ownership or IP rights therein.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>4.5</b>\r\n          We may pause/alter services at discretion, sans notice. No liability\r\n          for unavailability. Access/use may be limited anytime.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>4.6</b>\r\n          Usage needs compatible hardware, internet (potential fees), software\r\n          (potential fees), and periodic updates. These factors impact access;\r\n          high-speed connections advised. You own responsibility for evolving\r\n          requirements.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>4.7</b>\r\n          Third-party elements (e.g., payments, links, SDKs) may appear. We\'re\r\n          not liable for related issues, barring legal mandates. Review\r\n          third-party terms/policies before engaging.\r\n        </p>\r\n        <h4 class="qtext_para u-ltr u-text-align--start">User\'s Account</h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>5.1 Account Registration</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          For complete access, sign in via Google, Apple, or\r\n          Facebook—auto-creating a Web Services account. Or, use email and\r\n          complete setup steps.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Start by providing truthful age data. Under-14s or jurisdictional\r\n          minima can\'t use. 14–17-year-olds get Teen Mode only; 18+ unlocks full\r\n          features.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Teen registrations (14–17) need parental/guardian oversight and\r\n          consent. Such use presumes approval.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          As a prerequisite, we may process personal data (e.g., username,\r\n          uploads, payments, device/logs). Provided info must stay accurate,\r\n          current, legal, and non-infringing. All submissions fall under our\r\n          Privacy Policy; you approve our handling per it and laws. You\'ve\r\n          reviewed/understood it and consent to outlined purposes.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Treat security details (e.g., usernames) confidentially—don\'t share.\r\n          Accounts are personal; you\'re liable for all activity. Report breaches\r\n          promptly.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          We may disable identifiers anytime, for cause or not, including\r\n          suspected violations.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Only official channels yield valid accounts—unauthorized ones risk\r\n          deletion/suspension at your peril.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Initial use prompts push notification consent; manage later via\r\n          "Profile" > "Settings" > "Notifications."\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>5.2 Account Management</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Login via Google/Apple or custom credentials. No fakes,\r\n          impersonations, or borrowed social logins—violations invite warnings,\r\n          restrictions, terminations, or deletions. We\'re not liable for info\r\n          inaccuracies/delays.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Registration elements (e.g., name, photo) must be legal/non-infringing\r\n          (see DMCA at Section XI). We review/deny as needed;\r\n          illegal/undesirable prompts warnings, corrections, suspensions, or\r\n          bans—your liability.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          No malicious registrations or illicit uses (e.g., disruption, scams).\r\n          Violations trigger measures; you bear costs. We may report to\r\n          authorities per laws.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>5.3 Protection of Account</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Account ownership is ours—you get limited access (per EULA). Secure\r\n          it; no sharing, transfers, sales, or monetization. Breaches invite\r\n          actions; you cover fallout.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Suspect theft/misuse? Alert us with legal proof. Unverifiable?\r\n          Risks/losses are yours.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>5.4 Deletion of Account</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Delete anytime: "Settings" > "Account" > "Delete." Irreversible—loses\r\n          login, services, rights (e.g., premiums). No recovery of data/records;\r\n          new accounts won\'t restore purchases. Backup first.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Eligibility: No disputes, balances, or active premiums.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Disputes (e.g., complaints, probes) pause deletions.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Deletion doesn\'t absolve prior liabilities.\r\n        </p>\r\n        <h4 class="qtext_para u-ltr u-text-align--start">\r\n          User Code of Conduct\r\n        </h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>6.1 User Rights</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Use lawfully and per Terms. Rights include:\r\n        </p>\r\n        <ul>\r\n          <li>Submitting service feedback for improvements;</li>\r\n          <li>\r\n            Uploading profile images, compliant with: no illegal, immoral,\r\n            infringing, defamatory, harassing, discriminatory, viral, ad-laden,\r\n            or harmful content.\r\n          </li>\r\n        </ul>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Suspected violations? We block/delete sans notice; you bear\r\n          consequences. No liability for your/child\'s breaches—you\'ll\r\n          mitigate/compensate (e.g., damages, fees).\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          We needn\'t vet uploads; no responsibility for them or breaches. Yet,\r\n          we may store/use for analysis (with your grant). We\'ll delete\r\n          violative content; no liability for impacts. Backup valuables.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          You absolve us from unauthorized access/alterations, failed\r\n          transmissions, or your illegal acts (e.g., fraud, hacking).\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>6.2 User Obligations</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>6.2.1</b>\r\n          You cover telecom fees from use; carriers bill directly.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>6.2.2</b>\r\n          Adhere to Terms; check updates regularly.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>6.2.3</b>\r\n          Follow laws, order, morals; no security threats/illegals. Suspected\r\n          breaches? Services end sans notice.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>6.2.4</b>\r\n          Prohibited: uploading illegals; exploiting/harming; impersonating;\r\n          faking transmissions; unlicensed posts; spam/ads; viruses;\r\n          tracking/harassing; aiding intrusions; disrupting servers;\r\n          reverse-engineering; legal violations; unauthorized\r\n          monitoring/copying; interfering routines; malware; unauthorized\r\n          access; infringing/illegal/threatening acts; restricting others\'\r\n          enjoyment.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>6.2.5</b>\r\n          Per laws, violations/IP harms log backend and may evidence to\r\n          authorities.\r\n        </p>\r\n        <h4 class="qtext_para u-ltr u-text-align--start">\r\n          Community Guidelines\r\n        </h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>7.1 General</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Fostering inclusivity via shared stories/views is core. These\r\n          Guidelines clarify avoidable content to sustain this. Grasp and\r\n          support the intent: respect sensitivities, contribute constructively.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Access/use binds you to Guidelines, incorporated into Terms. Breaches\r\n          risk content removal, suspensions/terminations, liabilities.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>7.2 Community Rules</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">All must follow:</p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Don\'t post/share content promoting violence/graphics;\r\n          self-harm/suicide; porn/sexual acts/nudity/exploitation (zero child\r\n          tolerance); hate/dehumanizing based on traits (race, disability,\r\n          etc.); illegals; restricted trades (guns, drugs, etc.);\r\n          impersonations; infringements. (Handle claims per Terms.)\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Don\'t: threaten/incite violence/terrorism; harass/discriminate; dox\r\n          without consent; spam/manipulate; scam (financial/identity); unwanted\r\n          contacts; compromise accounts; evade bans (all linked accounts\r\n          disabled).\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Help us: Tolerate diverse /user views—disengage if clashing;\r\n          creators/users can delete/block; unfollow/unlike non-violative\r\n          dislikes.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>7.3 Report of Issue(s) of Community Guidance</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Unresolvable issues? Email details (links, users, descriptions) per\r\n          "Contact Us." We\'ll reply promptly.\r\n        </p>\r\n        <h4 class="qtext_para u-ltr u-text-align--start">\r\n          Price, Subscription, and Payment\r\n        </h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>8.1</b>\r\n          Fees apply to premiums and in-app "Coins."\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>8.1.1</b>\r\n          (iOS) Monthly tiers; see pages for rates (service-only, pre-tax;\r\n          changeable sans notice). Tokens via app/site; bundles/prices as\r\n          listed, adjustable. Autos renew unless canceled timely; billed\r\n          periodically till stop.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>8.1.2</b>\r\n          (Android) Monthly tiers; rates pre-tax, adjustable.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>8.2</b>\r\n          Rates vary by plan; we adjust discretionally.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>8.3</b>\r\n          Paid scope matches payment-time description. Updates/expansions need\r\n          extra fees at current rates.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>8.4</b>\r\n          Pricing errors? We correct/cancel/refund within 90 business days.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>8.5</b>\r\n          You confirm no GST registration; thus, inapplicable. If applicable,\r\n          notify 14+ days pre via "Contact Us" with ID—we\'ll collect/pass\r\n          credits per laws. You\'re liable for your taxes; non-compliance costs\r\n          (penalties, etc.) reimbursable to us.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>8.6</b>\r\n          Payments route via third-party SDKs (e.g., Apple/Google Pay, Stripe)\r\n          or stores.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>8.7</b>\r\n          Third-party risks/losses? Ours if we fulfill Terms/laws; review their\r\n          docs.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>8.8</b>\r\n          Cancel anytime: "Settings" > "Help Center." Note: Cancellation shares\r\n          data (e.g., signup days, activity, purchases) with processor for\r\n          accuracy.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>8.9</b>\r\n          Per laws, compliant payments non-refundable, even post-cancel.\r\n        </p>\r\n        <h4 class="qtext_para u-ltr u-text-align--start">\r\n          The Community Contributor Program\r\n        </h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Purpose: Honor user-created content efforts via CC program rewards.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Qualification: Earn "Points" from others\' spends on your characters (2\r\n          Coins = 1 Point; unlimited characters). 100,000+ Points qualifies.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Reward: CCs redeem Points (max 80% balance per; min 100,000 trigger).\r\n          Ratios per app notices, adjustable sans notice.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Refund: Refunded Coins deduct Points; no alerts—check "Earning\r\n          Details."\r\n        </p>\r\n        <h4 class="qtext_para u-ltr u-text-align--start">\r\n          Intellectual Property\r\n        </h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Unless specified, all IP (patents, marks, copyrights, secrets) in our\r\n          content (pages, text, media, designs, data, code) is ours.\r\n          User-generated content IP vests in us per laws; no exploitation sans\r\n          written OK.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Platform IP ours; no unauthorized\r\n          use/modification/derivation/reverse-engineering absent\r\n          consent—liabilities/reporting follow.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>Chat Contents</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>1. Accuracy and Responsibility</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          The content generated during the chat represents only the real-time\r\n          personal expression of the chat participant. No guarantee is made\r\n          regarding its completeness, accuracy, or applicability. Users are\r\n          solely responsible for evaluating and assuming the risks of using such\r\n          content. The platform and chat personnel shall not be liable for any\r\n          consequences arising from the use of chat content.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>2. Intellectual Property</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Unless otherwise agreed, all texts, voices, images, and other related\r\n          content generated during the chat shall remain the intellectual\r\n          property of the platform. Users may not use such content for any\r\n          commercial purpose without the platform\'s prior written consent.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>3. Risk Notice</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          By using the one-on-one chat service, users understand and accept the\r\n          following potential risks:\r\n        </p>\r\n        <ul>\r\n          <li>Chat content may be incomplete, inaccurate, or misleading;</li>\r\n          <li>\r\n            Conversations may contain expressions that are uncomfortable,\r\n            offensive, or inconsistent with personal values;\r\n          </li>\r\n          <li>Dialogue may involve sensitive, emotional, or biased content;</li>\r\n          <li>\r\n            Some content may cause psychological discomfort, emotional distress,\r\n            or negative experiences.\r\n          </li>\r\n        </ul>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>4. Disclaimer</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          The platform and its personnel shall not be liable for any direct or\r\n          indirect losses, disputes, or liabilities resulting from the use of\r\n          chat content. Participation in this service constitutes full\r\n          acknowledgment and acceptance of all terms outlined in this agreement.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>5.</b>\r\n          No unauthorized use/deletion/alteration of Logos (e.g., "{{ name }}"\r\n          marks). No misleading displays/applications; violations fully liable.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>6.</b>\r\n          You warrant uploaded "Licensed Contents" ownership/rights; grant us\r\n          usage per Terms. IP remains yours/original per laws. Disputes? Yours\r\n          to resolve/compensation. Aid our defense if claimed; cover\r\n          infringement losses.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>7.</b>\r\n          From upload, per laws/privacy: perpetual, irrevocable, royalty-free,\r\n          worldwide, non-exclusive, sublicensable license (repro, adapt, etc.,\r\n          sans attribution) for use/development/licensing in analyses, across\r\n          devices.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>8.</b>\r\n          License covers permitted uses/reproductions/displays/disseminations.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>9.</b>\r\n          We may protect infringed Licensed Contents (monitor, litigate, etc.);\r\n          you assist, share recoveries post-costs.\r\n        </p>\r\n        <h4 class="qtext_para u-ltr u-text-align--start">\r\n          DMCA (Copyright) Compliance Policy\r\n        </h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>General</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          This Policy details infringement claim handling for App/Web, where\r\n          users upload visuals for characters and interact via text/voice. We\r\n          honor IP; users must too. DMCA-compliant notices get swift response.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>DMCA Notification of Claimed Infringement</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Suspect infringement? Submit to Agent below, including:\r\n        </p>\r\n        <ul>\r\n          <li>a) Infringed work(s) ID/list;</li>\r\n          <li>b) Infringing material/location (e.g., link);</li>\r\n          <li>c) Contact details;</li>\r\n          <li>d) Good-faith unauthorized-use belief;</li>\r\n          <li>e) Perjury-accurate/auth statement;</li>\r\n          <li>f) Signature.</li>\r\n        </ul>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Email: 5-business-day ACK; mail: 10. Results/decision: 15 business\r\n          days post-ACK. Complex? Estimated timeline (rare extensions).\r\n          Disagree? Submit evidence in 30 days; else, final.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>Designated Copyright Agent</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          {{ name }}\r\n          <br />\r\n          Attn: Legal Department\r\n          <br />\r\n          Email:\r\n          <a href="mailto:{{email}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{email}}\r\n    </a>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>Counter-Notification Procedures</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Mistaken removal? Counter to Agent:\r\n        </p>\r\n        <ul>\r\n          <li>Removed material/location;</li>\r\n          <li>Good-faith mistake belief (perjury);</li>\r\n          <li>Contact details;</li>\r\n          <li>Jurisdiction/service consent;</li>\r\n          <li>Signature.</li>\r\n        </ul>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>Termination of Accounts</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Repeat infringers risk account/access termination.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>Misrepresentation of Claims</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          False claims liable; we seek damages/fees.\r\n        </p>\r\n        <h4 class="qtext_para u-ltr u-text-align--start">\r\n          Modification and Termination\r\n        </h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Per business needs/laws, we may alter/pause/end Web Services sans\r\n          liability.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          For cause, suspend/terminate access/delete uploads.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Post-termination: No login/info access; halt collection/use, delete\r\n          personal (retain anonymized/legal data). Doesn\'t waive prior\r\n          liabilities.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Surviving provisions: IP, disclaimers, indemnity, limits. Breaches?\r\n          Recover dues/legal actions.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Amend Terms via posting; continued use = acceptance. Check often;\r\n          disagreement? Cease use.\r\n        </p>\r\n        <h4 class="qtext_para u-ltr u-text-align--start">Disclaimer</h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Web Services provided "as is" with tech limits—no defect-free\r\n          guarantee; no warranties (merchantability, fitness, quality, etc.). We\r\n          commit to ongoing enhancements.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Not medical/psych/professional advice—consult experts. No therapeutic\r\n          claims.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Updates optimize; latest version advised for continuity.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Max legal extent, no warranties for: incompatibilities (seek help;\r\n          unresolved? Stop use); interruptions/losses from force\r\n          majeure/hacks/etc.; safety/reliability/timeliness; meeting\r\n          expectations.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          NO DIRECT/INDIRECT/INCIDENTAL/SPECIAL/PUNITIVE DAMAGES FOR\r\n          PROFITS/REPUTE/INFO LOSSES FROM: use/failure; purchases; unauthorized\r\n          changes (non-our fault); Web Services matters.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Secure your account—leaks/thefts non-our fault reduce rights; no\r\n          liability.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Account/device safeguard failures/recoveries? Your losses.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          You assume all download/use risks/consequences; solely liable for\r\n          system/data damages.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          We may adjust/terminate sans notice/liability (barring\r\n          laws/agreements).\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Per laws, delete/block for violations; retain/report as needed.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          OUR DIRECT LIABILITY ONLY AS STATED; TOTAL CAP: Fees paid by/for\r\n          you/child.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          NO SPECIAL/INDIRECT/PUNITIVE/INCIDENTAL/CONSEQUENTIAL DAMAGES\r\n          (PROFIT/INTEREST/BUSINESS/MATERIALS), FORESEEABLE OR NOT.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Per laws, indemnify us/providers/suppliers/licensors/officers/etc.\r\n          from claims/liabilities (fees included) from: Term breaches; use; IP\r\n          violations.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Waive claims from our/investigative actions; cooperate in defenses. We\r\n          control if desired; survives Terms/use.\r\n        </p>\r\n        <h4 class="qtext_para u-ltr u-text-align--start">Indemnification</h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Per laws, hold us/officers/employees/agents/affiliates harmless from\r\n          claims/costs (fees) tied to Term/Policy breaches.\r\n        </p>\r\n        <h4 class="qtext_para u-ltr u-text-align--start">\r\n          Governing Law and Dispute Resolution\r\n        </h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Hong Kong SAR laws govern/construe.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Disputes (contractual/non-) resolve via HKIAC arbitration under\r\n          current rules; Hong Kong law applies.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Unless opted out (per Terms exceptions), binding individual\r\n          arbitration; no class actions.\r\n        </p>\r\n        <h4 class="qtext_para u-ltr u-text-align--start">Contact Us</h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Queries on site/Terms/Policy?\r\n        </p>\r\n        <ul>\r\n          <li>\r\n            Visit\r\n            <a href="{{website}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{domain}}\r\n    </a>\r\n            ;\r\n          </li>\r\n          <li>\r\n            Email:\r\n            <a href="mailto:{{email}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{email}}\r\n    </a>\r\n          </li>\r\n        </ul>\r\n      </span>\r\n    </div>\r\n',seo:{title:"Terms of Service - {appName}",description:"seo.description.termsService",keywords:"{appName} terms of service, terms of use, user agreement",jsonLdType:"Article"}},{key:"privacy-notice",title:"Privacy Policy",titleKey:"legalInformation.items.privacyNotice",path:"/about/privacyPolicy",routeName:"privacyPolicy",routeTitleKey:"settings.link.privacyPolicy",htmlContent:'<span class="rendered_qtext">\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <i>Last Updated: June 6, 2025</i>\r\n        </p>\r\n        <h4 class="qtext_para u-ltr u-text-align--start">Table of Contents</h4>\r\n        <ul>\r\n          <li>Scope and Consent</li>\r\n          <li>Collection and Use of User Information</li>\r\n          <li>Cookies, SDKs, and Similar Technologies</li>\r\n          <li>Advertising</li>\r\n          <li>\r\n            Reasons for Collection, Processing, and Use of User Information\r\n          </li>\r\n          <li>Sharing, Transfer, Sale, and Disclosure of User Information</li>\r\n          <li>Management of User Information</li>\r\n          <li>Retention of User Information</li>\r\n          <li>Security of User Information</li>\r\n          <li>International Transfer of User Information</li>\r\n          <li>Protection of Children\'s Personal Information</li>\r\n          <li>Regional Privacy Disclosures</li>\r\n          <li>Users\' Rights to Remedies</li>\r\n          <li>Contact Us</li>\r\n        </ul>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          This Privacy Policy ("Policy") covers\r\n          <a href="{{website}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{domain}}\r\n    </a>\r\n          , an online chat platform, along with its associated content, tools,\r\n          features, and capabilities (collectively, the "Web Services") offered\r\n          by\r\n          <a href="{{website}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{domain}}\r\n    </a>\r\n          ("we," "our," or "us"). This Policy has been established by us in\r\n          compliance with relevant laws to safeguard the personal information of\r\n          users ("you" or "your").\r\n        </p>\r\n        <h4 class="qtext_para u-ltr u-text-align--start">Scope and Consent</h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          This Policy explains the reasons for, methods of, and types of\r\n          personal information we gather, utilize, retain, handle, share,\r\n          transfer, and make public about you, as well as the information\r\n          security safeguards we implement and the rights we uphold for your\r\n          access, modification, removal, and oversight of your personal\r\n          information. Kindly review this Policy alongside the Terms of Use for\r\n          Web Services [Insert hyperlink]. Should you disagree with this Policy,\r\n          please cease using the Web Services immediately.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          We maintain the authority to update this Policy whenever necessary,\r\n          and we recommend checking it periodically for the most current\r\n          version. If you cannot agree to any revisions, you must discontinue\r\n          use of the Web Services.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>\r\n            The Web Services are not intended for individuals under 14 years\r\n            old, and our Terms of Service bar usage by anyone under 14, or under\r\n            16 if you reside in the European Economic Area.\r\n          </b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          For child users as defined under the Children\'s Online Privacy\r\n          Protection Act ("COPPA"), we will only offer our Services after the\r\n          child\'s parent or guardian has reviewed this Policy, fully understood\r\n          and accepted all provisions, and provided the legally required\r\n          consent. Unless permitted or mandated otherwise by law, we will\r\n          refrain from gathering, employing, or revealing any personal\r\n          information from a child user without the explicit approval of their\r\n          parent or guardian. Parents have the ability to inspect the personal\r\n          information we have collected about the child, request its deletion,\r\n          and instruct us to halt further collection or utilization of the\r\n          child\'s personal information.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          By visiting and/or engaging with our Services, you affirm that you are\r\n          either an adult who has reached the age of majority in your\r\n          jurisdiction or a minor under the supervision of a parent or legal\r\n          guardian, and that you possess the legal right, permission,\r\n          capability, or authorization to access and/or use our Services while\r\n          committing to follow this Policy.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          This Policy constitutes an electronic agreement governed by applicable\r\n          laws and does not necessitate any physical, electronic, or digital\r\n          signature.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          We urge you to examine this Policy thoroughly. By visiting or\r\n          utilizing the Web Services, you indicate that you comprehend, accept,\r\n          and consent to this Policy, including our gathering, utilization,\r\n          handling, sharing, transfer, and disclosure of information you have\r\n          supplied or may supply in the future, for the objectives outlined\r\n          herein and in line with relevant laws.\r\n        </p>\r\n        <h4 class="qtext_para u-ltr u-text-align--start">\r\n          Collection and Use of User Information\r\n        </h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          We will gather personal information (which may occasionally encompass\r\n          sensitive personal data) from you for the aims described in this\r\n          Policy, adhering to the guiding principles of lawfulness, fairness,\r\n          necessity, and openness. If we intend to apply your personal\r\n          information for purposes beyond those specified here or seek to\r\n          collect it for alternative reasons, we will inform you appropriately\r\n          and secure your advance consent where mandated by law. We will not\r\n          solicit more details from you than what is reasonably essential.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          In the United States, "Sensitive Personal Data" encompasses ten\r\n          designated categories of information that U.S. companies might hold or\r\n          acquire. These include various forms of financial, geolocation, and\r\n          health-related data, to name a few. Furthermore, a U.S. company\r\n          holding or acquiring such data on U.S. residents is deemed to possess\r\n          sensitive personal data only if it (i) customizes or adapts products\r\n          or services for specific groups, such as U.S. military personnel or\r\n          federal agency staff with national security roles, (ii) gathers or\r\n          retains such data on no fewer than one million people, or (iii)\r\n          demonstrates a clear business intent to gather or retain such data on\r\n          more than one million people, where that data forms an essential\r\n          element of the company\'s core offerings or services. Genetic testing\r\n          data is also covered under this definition, irrespective of alignment\r\n          with (i), (ii), or (iii).\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          In the European Union, the following types of personal data qualify as\r\n          "sensitive" and must adhere to distinct processing requirements: 1)\r\n          data disclosing racial or ethnic background, political views,\r\n          religious or philosophical convictions; 2) trade union affiliation; 3)\r\n          genetic data, or biometric data used exclusively for uniquely\r\n          identifying an individual; 4) data related to health; 5) data\r\n          pertaining to an individual\'s sexual life or orientation.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          We may align your personal information across various mobile devices\r\n          you own to deliver a seamless experience.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>\r\n            Personal Information You Supply While Engaging with Web Services\r\n          </b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          We prioritize user privacy and pledge to defend it adequately in every\r\n          key aspect. You consent to our collection of the following personal\r\n          information concerning you:\r\n        </p>\r\n        <ul>\r\n          <li>\r\n            Details required to deliver, sustain, and enhance the Web Services;\r\n          </li>\r\n          <li>\r\n            Information you voluntarily share; information obtained with your\r\n            approval;\r\n          </li>\r\n          <li>\r\n            Information sourced from alternative channels consistent with this\r\n            Policy (for instance, third-party providers or social media sites).\r\n          </li>\r\n        </ul>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          "Personal Information" refers to any data, accurate or otherwise,\r\n          relating to an identifiable individual that (a) enables identification\r\n          directly from that data alone; or (b) allows identification when\r\n          combined with other data we hold or are reasonably likely to hold,\r\n          including details in our records that may be refreshed over time.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>\r\n            2.1.2 By creating an account on the Web Services, or by visiting or\r\n            utilizing the Web Services (whether or not you have a user account),\r\n            you agree to furnish us with the essential details outlined here,\r\n            including your personal information.\r\n          </b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          The categories of personal information we might gather from users\r\n          encompass, without limitation:\r\n        </p>\r\n        <ul>\r\n          <li>Email address;</li>\r\n          <li>Username;</li>\r\n          <li>Uploaded images or entered text;</li>\r\n          <li>Transaction and billing history;</li>\r\n          <li>Device details;</li>\r\n          <li>Activity logs;</li>\r\n          <li>Accurate location data;</li>\r\n          <li>Your contact list.</li>\r\n        </ul>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          The sections below outline the ways in which your personal information\r\n          could be necessary and obtained.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>2.1.2.1 Registration</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          You have the option to sign in using your existing Google or Apple\r\n          account. Upon doing so, a Web Services account will be generated\r\n          automatically. Alternatively, you can set up a fresh account using\r\n          your email address by completing our signup process.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Keep in mind that without registering, you might face restrictions on\r\n          accessing select features of the Web Services, though you can still\r\n          explore content and engage with the Chatting tools under limited\r\n          conditions.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>2.1.2.2 Profile Setup</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          For a more enjoyable interaction with the Web Services, you are\r\n          welcome—but not obligated—to supply a username for setting up a\r\n          profile. Even if you skip adding optional profile details, you\'ll\r\n          continue to access core functionalities without issue.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>2.1.2.3 Chatting</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          When engaging the "Chatting" function, you can start a conversation\r\n          directly with a real person through our one-on-one chat service.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>2.1.2.4 Online Transactions</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          We provide enhanced premium offerings that require payment via one of\r\n          these two methods:\r\n        </p>\r\n        <ul>\r\n          <li>Direct purchase on the website using a credit card; or</li>\r\n          <li>\r\n            Via a third-party processor (e.g., Apple Pay, Google Pay, and\r\n            similar).\r\n          </li>\r\n        </ul>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          As part of processing your transaction, we could gather certain\r\n          financial details (such as billing records or other\r\n          transaction-related data).\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>2.1.2.5 Support Interactions</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          If you reach out to our support team, you may be asked to share\r\n          account details for authentication purposes. Additionally, providing\r\n          supporting materials (such as images or text descriptions) and contact\r\n          details might be necessary. Lacking these, we may struggle to address\r\n          your inquiry swiftly or in the manner you prefer.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>2.1.2.6 Permissions Granted by Users</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          You will be prompted to authorize the following:\r\n        </p>\r\n        <ul>\r\n          <li>Microphone: To enable voice-to-text input;</li>\r\n          <li>\r\n            Internet Access: To monitor Wi-Fi status and connectivity for\r\n            improved cellular data performance;\r\n          </li>\r\n          <li>\r\n            Camera: To snap photos or record videos in response to your queries;\r\n          </li>\r\n          <li>\r\n            Identity: To connect and authenticate via a third-party account\r\n            (e.g., Google or Apple);\r\n          </li>\r\n          <li>\r\n            Contacts: To simplify checking if your connections are active on Web\r\n            Services and facilitate in-app networking.\r\n          </li>\r\n        </ul>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          The Web Services may also seek access to flashlight and alarm wake\r\n          lock features, which involve no collection of personal data.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>2.2 Information Gathered Automatically from Users</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          To protect your account\'s integrity and enhance our support, we will\r\n          acquire and apply the data generated from your Web Services\r\n          interactions, limited strictly to what laws allow.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>2.2.1 Device Details</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          During your use of the Web Services, we collect select device\r\n          attributes, such as device ID, IMEI, OAID, MAC address, browser\r\n          variety, carrier details and usage patterns, location indicators (like\r\n          IP address), model type, OS version, IDFA (iOS-specific), IDFV\r\n          (iOS-specific), and Android ID (Android-specific). These serve as\r\n          unique device markers, which we may link with other personal data we\r\n          obtain to ensure uniform service delivery.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>2.2.2 Activity Logs</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          The Web Services will routinely log and store user session data,\r\n          including browser specifications, navigation history, and network\r\n          diagnostics. This helps us assess platform engagement, refine\r\n          operations, and elevate service quality.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>2.3 Information Sourced from External Providers</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>2.3.1</b>\r\n          With your approval, we may obtain and process personal information\r\n          about you from third-party sources. We handle such data per our\r\n          agreements with those providers and governing regulations, and we\r\n          advise reviewing their terms of service and privacy statements\r\n          closely. Declining a third party\'s handling or transmission of your\r\n          data could prevent full access to Web Services. That said, we never\r\n          mandate sharing more personal details than what\'s reasonably needed\r\n          for our offerings.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>2.3.2</b>\r\n          Upon signing into Web Services via a social media integration, you\'ll\r\n          be directed to the external platform to authenticate or create an\r\n          account there. Linking through an approved third-party account will\r\n          tie its profile to a newly generated Web Services account. At present,\r\n          we support sign-ins for Google and Apple users. Via this integration,\r\n          we solely retrieve your username and profile image from the\r\n          third-party profile. Note that while the provider might track elements\r\n          like device model, system edition, generated identifiers, handset\r\n          type, device label, ICCID (iOS-only), BSSID (iOS-only), MAC\r\n          (iOS-only), IMSI (iOS-only), or IMEI (iOS-only) for their own needs,\r\n          none of this is shared with or required by us.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>\r\n            WE EXERT NO CONTROL OVER AND DISCLAIM LIABILITY FOR THE MATERIALS,\r\n            PRIVACY PRACTICES, OR OPERATIONS OF ANY EXTERNAL WEBSITES, APPS, OR\r\n            THIRD-PARTY SERVICES. YOU ACKNOWLEDGE THAT WE BEAR NO RESPONSIBILITY\r\n            FOR VIOLATIONS OF YOUR PERSONAL DATA PRIVACY OR ANY DAMAGES ARISING\r\n            FROM YOUR ENGAGEMENT WITH SUCH THIRD-PARTY OFFERINGS.\r\n          </b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>2.3.3</b>\r\n          For premium service payments routed through third parties, we will\r\n          retrieve your username, profile image, and transaction records from\r\n          them.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>2.4 Situations Where User Approval Is Not Required</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Under relevant legal frameworks, we may collect and process your\r\n          personal information without prior consent in these scenarios,\r\n          provided they apply:\r\n        </p>\r\n        <ul>\r\n          <li>When fulfilling duties imposed by law;</li>\r\n          <li>\r\n            If it pertains directly to national defense, public order, health\r\n            emergencies, or vital societal benefits;\r\n          </li>\r\n          <li>\r\n            In matters tied to criminal probes, legal proceedings, judgments, or\r\n            demands from authorities, including responses to judicial directives\r\n            or summonses;\r\n          </li>\r\n          <li>\r\n            To avert risks to a user\'s safety, assets, or key rights where\r\n            gaining consent proves impractical, or if we suspect harm to our\r\n            assets, other users, or third parties from such actions;\r\n          </li>\r\n          <li>Where you\'ve already disclosed the information publicly;</li>\r\n          <li>As needed to fulfill a contract we\'ve entered at your behest;</li>\r\n          <li>\r\n            Sourced from lawful public outlets, like official reports,\r\n            government publications, or similar;\r\n          </li>\r\n          <li>\r\n            Essential for Web Services upkeep, such as diagnosing faults,\r\n            detecting, and fixing platform-related problems; or\r\n          </li>\r\n          <li>Any other instances outlined or allowed by law.</li>\r\n        </ul>\r\n        <h4 class="qtext_para u-ltr u-text-align--start">\r\n          Cookies, SDKs, and Similar Technologies\r\n        </h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>Cookies</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          A cookie refers to a small data packet, typically containing a unique\r\n          identifier, transmitted from a web server to your browser and\r\n          subsequently saved on your device\'s storage.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          We exclusively employ cookies that are strictly essential. These are\r\n          vital for allowing navigation within the Web Services and accessing\r\n          its core features, such as maintaining your authentication session and\r\n          entering protected sections. Absent these cookies, some requested\r\n          functionalities would be unavailable. They hold no personal data\r\n          themselves. Our use of them focuses on recalling your login method\r\n          (via email, Google, or Apple account) to deliver services seamlessly.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>SDKs</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          A Software Development Kit (SDK) comprises a suite of tools,\r\n          libraries, guides, sample code, and occasionally APIs that aid\r\n          developers in building apps for targeted platforms, frameworks, or\r\n          hardware. SDKs streamline the addition of specialized capabilities\r\n          into applications without starting from zero.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Our app incorporates third-party SDKs to boost performance and unlock\r\n          specific tools. These may gather data on an automated basis,\r\n          including:\r\n        </p>\r\n        <ul>\r\n          <li>Device markers (e.g., IMEI, MAC address, ad ID);</li>\r\n          <li>\r\n            Interaction metrics (e.g., app usage patterns, time spent in\r\n            sessions);\r\n          </li>\r\n          <li>\r\n            System specs (e.g., IP address, OS details, hardware model, carrier\r\n            network data);\r\n          </li>\r\n          <li>Location details, should you authorize it.</li>\r\n        </ul>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Such data from SDKs supports refinements to user interactions,\r\n          performance insights, ad delivery, or elements like in-app\r\n          transactions. We verify that integrated third-party SDKs align with\r\n          data protection regulations and maintain strong privacy frameworks for\r\n          data handling.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Keep in mind that we lack oversight of these third parties\' privacy\r\n          approaches—please consult their policies for specifics.\r\n        </p>\r\n        <h4 class="qtext_para u-ltr u-text-align--start">Advertising</h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          We permit external ad networks to deploy cookies or comparable\r\n          trackers on your device—be it computer, phone, or otherwise—to track\r\n          your engagement with the Services. This enables (a) tailoring and\r\n          delivering promotional materials informed by your prior site visits\r\n          and interactions across digital platforms, and (b) analyzing\r\n          connections between ad exposures, user responses, and traffic to our\r\n          online properties.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Our external partners might serve ads drawing from your details, such\r\n          as GAID (Google Advertising ID for Android) or IDFA (iOS Advertising\r\n          Identifier), regional data, location indicators, and IP address. This\r\n          Policy does not apply to these Third-party Operators, who operate\r\n          under their separate privacy rules (e.g., TopOn:\r\n          https://help.toponad.com/docs/Privacy-Policy).\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Ads may appear in your browser on desktops. Cookies could tie into\r\n          anonymized aggregates derived from data you\'ve optionally shared with\r\n          us (e.g., hashed versions of your email), which we might pass to\r\n          vendors in non-readable formats.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          You can choose to "opt out" of personalized ads, though this may lead\r\n          to generic ones less aligned with your preferences. To request an\r\n          opt-out, reach us via the "Contact Us" methods below, marking the\r\n          subject as "Opt-out Request."\r\n        </p>\r\n        <h4 class="qtext_para u-ltr u-text-align--start">\r\n          Reasons for Collection, Processing, and Use of User Information\r\n        </h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Broadly speaking, we gather, handle, and apply your data for these\r\n          aims and legal justifications.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          We leverage information captured via Web Services to:\r\n        </p>\r\n        <ul>\r\n          <li>Deliver our offerings;</li>\r\n          <li>Refine the Web Services platform;</li>\r\n          <li>Address your inquiries and preferences;</li>\r\n          <li>Offer a secure, streamlined, and tailored user journey; and</li>\r\n          <li>\r\n            Collaborate with partners (including the Chat-GPT system) to enable\r\n            robust features.\r\n          </li>\r\n        </ul>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>5.2</b>\r\n          We draw on summarized user and non-personal data to examine platform\r\n          dynamics and behaviors, generating consolidated insights.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>5.3</b>\r\n          We apply user data to identify, counter, and probe fraud, security\r\n          incidents, or disallowed/illicit actions; to assert, uphold, or\r\n          contest legal positions; and to enforce our Terms of Use [Insert\r\n          hyperlink] or this Policy. This extends to fulfilling demands from\r\n          governmental or enforcement bodies, or managing grievances under\r\n          regulatory mandates.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>5.4</b>\r\n          We employ user data to reach out for platform maintenance, align with\r\n          your opted communication settings, deliver ancillary services as noted\r\n          during data intake, or pursue other lawful outreach.\r\n        </p>\r\n        <h4 class="qtext_para u-ltr u-text-align--start">\r\n          Share, Transfer, Selling, and Disclosure of User Information\r\n        </h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>6.1 Sharing of User Information</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          You are entitled to know if your data has been shared. Beyond what\'s\r\n          explicitly noted here or allowed by law, we refrain from sharing\r\n          personal user data with outsiders, except when:\r\n        </p>\r\n        <ul>\r\n          <li>You initiate or explicitly approve the sharing;</li>\r\n          <li>It\'s tied to legal duties we must fulfill;</li>\r\n          <li>\r\n            It concerns national defense, public welfare, health crises, or key\r\n            societal priorities;\r\n          </li>\r\n          <li>\r\n            It supports probes, prosecutions, trials, judgments, or authority\r\n            directives, including judicial summonses;\r\n          </li>\r\n          <li>\r\n            It\'s essential to shield your safety, assets, or vital rights where\r\n            consent is unfeasible, or we detect threats to our holdings, other\r\n            users, or at-risk parties;\r\n          </li>\r\n          <li>You\'ve publicly released the data;</li>\r\n          <li>\r\n            It\'s drawn from open, lawful sources like official bulletins or\r\n            reports;\r\n          </li>\r\n          <li>\r\n            It\'s exchanged with affiliates, subsidiaries, partners, vendors, or\r\n            collaborators to sustain services per this Policy, as required.\r\n          </li>\r\n        </ul>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          For seamless, high-caliber support, certain tools rely on our tech\r\n          vendors, so we may delegate data handling to them. We\'ll secure\r\n          binding confidentiality and processing pacts outlining duties, data\r\n          scope, timelines, and objectives. Vendors must adhere solely to our\r\n          directives, this Policy, and security protocols.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          These vendors act as standalone processors seeking your direct nod.\r\n          They may have their own terms and policies—review them to decide on\r\n          consent. Note: Denying access could limit contractor-supported\r\n          features.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          For confirmation on sharing, contact us per "Contact Us" below.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          To "opt out" of sharing, submit a request via "Contact Us," labeling\r\n          the subject "Opt-out Request." Be aware this might restrict certain\r\n          features, as outlined.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>6.2 Transfer of Control Over User Information</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Fundamentally, we won\'t cede control of personal user data to others,\r\n          barring scenarios like mergers, buyouts, insolvency, or wind-downs. In\r\n          those cases, we\'ll alert you to the transfer\'s intent, data\r\n          categories, and recipient.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>6.3 Selling of User Information</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          We DO NOT sell user data to any entity. If you suspect commodification\r\n          of your info, alert our Data Protection Officer (DPO) right\r\n          away—details in "Contact Us" below.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>6.4 Disclosure of User Information</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Typically, we withhold user personal data from public view, save for:\r\n        </p>\r\n        <ul>\r\n          <li>\r\n            Fulfilling duties under Terms of Use [Insert hyperlink], this\r\n            Policy, or laws;\r\n          </li>\r\n          <li>Your explicit permission;</li>\r\n          <li>\r\n            Legal mandates from regulations, officials, courts, or summonses; or\r\n          </li>\r\n          <li>\r\n            Necessity to probe, avert, or address unlawful acts, suspected\r\n            scams, safety risks, policy breaches, or as litigation proof.\r\n          </li>\r\n        </ul>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>\r\n            6.5 Transfer of Select User Information on Subscription Termination\r\n          </b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          You\'re free to end your paid plan anytime, but note that opting out\r\n          means we\'ll forward some data to your payment processor (e.g., Apple\r\n          Pay, Google Pay, Stripe) for verification. This ensures proper\r\n          handling and includes, without limit: account signup date, activity\r\n          duration, virtual item buys, usage stats, and purchase values.\r\n        </p>\r\n        <h4 class="qtext_para u-ltr u-text-align--start">\r\n          Management of User Information\r\n        </h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>7.1 Access, Updates, and Transferability</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Keep your profile data current and accurate. You can access your\r\n          account anytime to review details like profiles and settings. Spot\r\n          inaccuracies or outdated info? Reach us for fixes, per legal\r\n          allowances.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Need a duplicate of held data? We\'ll assist. If feasible and\r\n          reasonable, we can forward it to a third party of your choice.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>7.2 Revoking or Adjusting Consent</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Basic info is key for full access—revoke specifics via "Settings," or\r\n          contact us.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Post-revocation, we halt related collection/use, potentially pausing\r\n          services. Prior consents remain valid for existing data unless\r\n          deleted.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>7.3 Account Removal</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>7.3.1</b>\r\n          To erase your account, navigate "Profile" > "Settings" > "Delete My\r\n          Account," or request via us.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>7.3.2</b>\r\n          Per laws, we might delay full erasure from backups until system\r\n          refreshes.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>7.3.3</b>\r\n          Deletion is final—no restoring access to content/functions. Proceed\r\n          thoughtfully.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>7.4 Handling User Inquiries</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>7.4.1</b>\r\n          Exercising rights under 7.1–7.3? We\'ll verify identity first, replying\r\n          promptly—within 30 days max post-verification.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>7.4.2</b>\r\n          Requests are free if practical. We may deny those that:\r\n        </p>\r\n        <ul>\r\n          <li>Don\'t pertain to you/your child;</li>\r\n          <li>Are redundant sans justification;</li>\r\n          <li>Demand heavy tech overhauls;</li>\r\n          <li>Jeopardize others\' rights;</li>\r\n          <li>Prove unworkable/unreasonable; or</li>\r\n          <li>Breach Terms [Insert hyperlink], Policy, or laws.</li>\r\n        </ul>\r\n        <h4 class="qtext_para u-ltr u-text-align--start">\r\n          Retention of User Information\r\n        </h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>8.1</b>\r\n          We\'ll hold personal data only as long as needed for stated/authorized\r\n          aims, or per Terms/law.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>8.2</b>\r\n          Usage logs stay for analysis, shorter-term unless bolstering\r\n          security/functionality or legally extended.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>8.3</b>\r\n          We retain anonymized aggregates from user data for any suitable\r\n          (business/non-) purpose.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Such data, if untraceable to you/child, isn\'t "personal" legally.\r\n        </p>\r\n        <h4 class="qtext_para u-ltr u-text-align--start">\r\n          Security of User Information\r\n        </h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>9.1</b>\r\n          We deploy fitting organizational, tech, and physical defenses for user\r\n          data. Multi-tier safeguards (e.g., standard encryption, structures,\r\n          oversight) minimize risks like leaks, damage, abuse, or unauthorized\r\n          handling.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>9.2</b>\r\n          USER DATA SECURITY MATTERS DEEPLY, YET NO ONLINE TRANSMISSION OR\r\n          STORAGE IS FOOLPROOF. WE EMPLOY ROBUST COMMERCIAL PROTECTS, BUT\r\n          ABSOLUTE SAFETY ISN\'T GUARANTEED.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>9.3</b>\r\n          Breach detected? We\'ll assess fast. If high-risk or large-scale, we\'ll\r\n          alert authorities/users ASAP, no later than legal deadlines.\r\n        </p>\r\n        <h4 class="qtext_para u-ltr u-text-align--start">\r\n          International Transfer of User Information\r\n        </h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Per laws, your data may cross borders for handling. We\'ll implement\r\n          apt protections to uphold this Policy and regulations.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Reasonable steps ensure secure treatment—no transfers sans sufficient\r\n          safeguards.\r\n        </p>\r\n        <h4 class="qtext_para u-ltr u-text-align--start">\r\n          Protection of Children\'s Personal Information\r\n        </h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Services target not under-14s; Terms ban under-14s (or under-16s in\r\n          EEA). Spotting COPPA-defined data from under-14s? We\'ll suspend\r\n          accounts and purge as required, retaining minimally for Policy aims if\r\n          lawful.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          You affirm you\'re the parent of any child user or a qualifying adult.\r\n          Disagree with Policy? Avoid Services—we won\'t collect from you/child.\r\n        </p>\r\n        <h4 class="qtext_para u-ltr u-text-align--start">\r\n          Regional Privacy Disclosures\r\n        </h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>Residents of the European Economic Area and United Kingdom</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Web Services acts as "data controller" for "personal data"\r\n          (GDPR-defined) under this Policy, dictating collection/use/disclosure\r\n          per law. EEA/UK rules mandate disclosing legal bases:\r\n        </p>\r\n        <ul>\r\n          <li>\r\n            <b>Contractual Duties:</b>\r\n            Processing to meet our pacts with you.\r\n          </li>\r\n          <li>\r\n            <b>Consent:</b>\r\n            Where law demands, or otherwise per your approval.\r\n          </li>\r\n          <li>\r\n            <b>Legitimate Interests:</b>\r\n            Advancing business goals (e.g., support, promos, analytics,\r\n            security, fraud prevention, legal management) without overriding\r\n            your rights.\r\n          </li>\r\n          <li>\r\n            <b>Legal Obligations:</b>\r\n            Compliance-driven uses/disclosures.\r\n          </li>\r\n        </ul>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Beyond core rights, complain to watchdogs—but try us first; we\'ll\r\n          resolve earnestly.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>Residents of California</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          From January 1, 2020, CCPA (amended by CPRA, effective March 29, 2023)\r\n          oversees California personal info handling. We\'re dedicated to\r\n          subscriber CCPA alignment and support compliance.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          For subscribers, we\'re a "service provider": Processing occurs solely\r\n          via contracts for service delivery—we don\'t sell data.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          CCPA duties apply to "sales"/"shares" (in quotes: CCPA-specific). We\r\n          use analytics/ad services that may "share" identifiers (cookies, IPs,\r\n          devices, locations, usage) with partners for off-site ads. Opt out via\r\n          site/app "settings" data-sharing toggle. No knowing "sales"/"shares"\r\n          of under-17s\' data.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          For CCPA/CRPA rights, see Policy. We refresh it for CPRA fit,\r\n          detailing collection/rights.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          CCPA queries? Email:\r\n          <a href="mailto:{{email}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{email}}\r\n    </a>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>Residents of Nevada</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Nevada residents can opt out of certain personal info "sales" to\r\n          non-affiliates. Submit via "Contact Us" below, subject: "Nevada Do Not\r\n          Sell Request," with name/email. We don\'t "sell" per NRS Chapter 603A.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>Residents of Brazil</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          We adhere to LGPD for Brazilian users\' data. Beyond Policy details,\r\n          LGPD rights include: 1) Confirmation of processing; 2) Access/copy; 3)\r\n          Rectification; 4) Anonymization/blocking/deletion of excess; 5)\r\n          Portability; 6) Shared-entity info; 7) Consent revocation; 8)\r\n          Processing objections (e.g., marketing); 9) Automated-decision\r\n          reviews.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>Residents of Virginia</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Under VCDPA, Virginia rights: 1) Confirm/access data; 2) Corrections;\r\n          3) Deletions (with exceptions); 4) Portable copies; 5) Opt-outs from\r\n          targeted ads, sales, or impactful profiling.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Exercise via\r\n          <a href="mailto:{{email}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{email}}\r\n    </a>\r\n          . Response in 45 days (extendable 45 more, with notice). Denials?\r\n          Appeal in writing—we\'ll review/respond in 60 days.\r\n        </p>\r\n        <h4 class="qtext_para u-ltr u-text-align--start">\r\n          Users\' Rights to Remedies\r\n        </h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          If privacy lapses occur, seek remedies via authorities or courts. For\r\n          Web Services issues, contact us first—we prioritize swift, serious\r\n          handling. See "Contact Us" for details.\r\n        </p>\r\n        <h4 class="qtext_para u-ltr u-text-align--start">Contact Us</h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          We\'ve set up a dedicated info-protection unit, including a child-data\r\n          specialist.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>Contact Our Data Controller</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Our 24/7 data team oversees. Email:\r\n          <a href="mailto:{{email}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{email}}\r\n    </a>\r\n          , subject: "Attn: Data Controller."\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>Contact Our Data Protection Officer (DPO)</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Project lead doubles as DPO. Email:\r\n          <a href="mailto:{{email}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{email}}\r\n    </a>\r\n          , subject: "Attn: DPO."\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <b>General Inquiries</b>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Privacy/Policy questions? Use:\r\n        </p>\r\n        <ul>\r\n          <li>\r\n            <span @click="openWebsite" class="clickable-link">\r\n              {{ website }}\r\n            </span>\r\n            Feedback form; or\r\n          </li>\r\n          <li>\r\n            Email:\r\n            <a href="mailto:{{email}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{email}}\r\n    </a>\r\n          </li>\r\n        </ul>\r\n      </span>\r\n    </div>\r\n',seo:{title:"Privacy Policy - {appName}",description:"seo.description.privacyPolicy",keywords:"{appName} privacy policy, data protection, privacy",jsonLdType:"Article"}},{key:"subscription-policy",title:"Subscription Policy",titleKey:"legalInformation.items.subscriptionPolicy",path:"/about/subscriptionPolicy",routeName:"subscriptionPolicy",routeTitleKey:"route.subscriptionPolicy",htmlContent:'<span class="rendered_qtext">\r\n  <p class="qtext_para u-ltr u-text-align--start">\r\n    <i>Last Updated: February 05, 2026</i>\r\n  </p>\r\n\r\n  <h4 class="qtext_para u-ltr u-text-align--start">\r\n    1. Do I have to pay to use this app?\r\n  </h4>\r\n  <p class="qtext_para u-ltr u-text-align--start">\r\n    Subscription is not required. You can use our app for free by earning gems\r\n    through tasks such as daily check-ins. All users can enjoy chats without\r\n    content filters. Subscribing or not will not affect this freedom, but you\r\n    will be able to receive more gems to chat more per month and unlock more\r\n    advanced features.\r\n  </p>\r\n\r\n  <h4 class="qtext_para u-ltr u-text-align--start">\r\n    2. What is the difference between the free and paid plans?\r\n  </h4>\r\n  <p class="qtext_para u-ltr u-text-align--start"><b>Memory</b></p>\r\n  <ul>\r\n    <li>\r\n      <b>Free plan:</b>\r\n      4k memory. It can remember shorter parts of conversations.\r\n    </li>\r\n    <li>\r\n      <b>All Subscriber plans:</b>\r\n      at least 16k memory. It has a longer recall time for more personalized\r\n      chats.\r\n    </li>\r\n    <li>\r\n      <b>Premium Plan:</b>\r\n      Up to 32k memory.\r\n    </li>\r\n  </ul>\r\n  <p class="qtext_para u-ltr u-text-align--start">\r\n    <b>Features &amp; Benefits</b>\r\n  </p>\r\n  <ul>\r\n    <li>\r\n      <b>Free plan:</b>\r\n      No access to convenient features such as free auto-inspiration, priority\r\n      image generation, or the ability to change maximum reply length.\r\n    </li>\r\n    <li>\r\n      All Subscriber plans enjoy priority image generation, with additional\r\n      features varying by subscription tier.\r\n    </li>\r\n    <li>\r\n      <b>Premium Plan:</b>\r\n      Has free auto-inspiration and advanced features to change the length of AI\r\n      replies.\r\n    </li>\r\n  </ul>\r\n\r\n  <h4 class="qtext_para u-ltr u-text-align--start">\r\n    3. Monthly to annual upgrade refund policy\r\n  </h4>\r\n  <p class="qtext_para u-ltr u-text-align--start">\r\n    Upgrading from a monthly plan to an annual plan is highly recommended as a\r\n    way to save money, with savings of up to 50% compared to paying monthly. We\r\n    also provide tips to help you save money on the unused portion, depending on\r\n    the payment channel. PayPal is a little different, so please read the\r\n    instructions carefully to avoid potential double billing.\r\n  </p>\r\n  <ul>\r\n    <li>\r\n      <b>Apple App:</b>\r\n      When you upgrade from a lower tier monthly plan to a higher tier annual\r\n      plan, all benefits are updated immediately and you will get a partial\r\n      refund for any unused time on your current monthly plan. When you upgrade\r\n      from the same-tier monthly plan to an annual plan, we add one year of\r\n      annual plan usage after your existing plan.\r\n    </li>\r\n    <li>\r\n      <b>Google Play, PayPal &amp; Credit Card:</b>\r\n      When you upgrade from a lower-tier monthly plan to a higher-tier annual\r\n      plan, all benefits are updated immediately. You only need to pay the\r\n      difference between the two plans, and the unused time will be\r\n      automatically deducted from the price. When you upgrade from the same-tier\r\n      monthly plan to an annual plan, we add one year of annual plan usage to\r\n      your existing plan.\r\n    </li>\r\n    <li>\r\n      <b>Rustore:</b>\r\n      When you upgrade from a lower-tier monthly plan to a higher-tier monthly\r\n      plan, your benefits are upgraded immediately, the gem difference is\r\n      compensated, and a new subscription period begins from the upgrade date.\r\n      When you upgrade from the same-tier monthly plan to an annual plan, your\r\n      tier remains unchanged, the gem difference is compensated, and a new\r\n      annual subscription period begins from the upgrade date.\r\n    </li>\r\n  </ul>\r\n  <p class="qtext_para u-ltr u-text-align--start">\r\n    <b>Note:</b>\r\n    To ensure that you receive a refund or enjoy the difference in price for\r\n    upgrading, we recommend that you upgrade through the same payment method as\r\n    your monthly plan. Switching payment platforms may cause you to miss out on\r\n    these savings.\r\n  </p>\r\n\r\n  <h4 class="qtext_para u-ltr u-text-align--start">\r\n    4. Annual plan upgrade refund policy\r\n  </h4>\r\n  <p class="qtext_para u-ltr u-text-align--start">\r\n    You won\'t have any loss when upgrading from a lower annual plan to a higher\r\n    annual plan. We also help you save money on the unused portion, depending on\r\n    the channel.\r\n  </p>\r\n  <ul>\r\n    <li>\r\n      <b>Apple App:</b>\r\n      All benefits are updated immediately, and you will get a partial refund\r\n      for any unused time on your current annual plan.\r\n    </li>\r\n    <li>\r\n      <b>Google Play, Credit Card &amp; Other platforms:</b>\r\n      You only need to pay the difference between the current and new plans, and\r\n      the fee will be automatically adjusted based on the remaining annual\r\n      subscription time.\r\n    </li>\r\n    <li>\r\n      <b>Rustore:</b>\r\n      Your benefits are upgraded immediately, gem differences are compensated,\r\n      remaining future blue gems are converted into red gems at a 0.6 rate, and\r\n      a new annual subscription period begins from the upgrade date.\r\n    </li>\r\n  </ul>\r\n  <p class="qtext_para u-ltr u-text-align--start">\r\n    <b>Note:</b>\r\n    To ensure that you receive a refund or enjoy the difference in price for\r\n    upgrading, we recommend that you upgrade through the same payment method as\r\n    your previous plan. Switching payment platforms may cause you to miss out on\r\n    these savings.\r\n  </p>\r\n\r\n  <h4 class="qtext_para u-ltr u-text-align--start">\r\n    5. Monthly upgrade recommendation\r\n  </h4>\r\n  <p class="qtext_para u-ltr u-text-align--start">\r\n    This one is a little tricky for credit card and other platforms. However,\r\n    you still won\'t have any loss to upgrade from a lower annual plan to a\r\n    higher annual plan if you paid through Apple App.\r\n  </p>\r\n  <ul>\r\n    <li>\r\n      <b>Apple App:</b>\r\n      Your benefits are updated immediately, and you will get a partial refund\r\n      for any unused time on your current annual plan.\r\n    </li>\r\n    <li>\r\n      <b>Google Play &amp; Credit Card:</b>\r\n      You only need to pay the difference between the current and new plans, and\r\n      the fee is automatically adjusted based on the remaining monthly\r\n      subscription time.\r\n    </li>\r\n    <li>\r\n      <b>Rustore:</b>\r\n      Your benefits are upgraded immediately, the gem difference is compensated\r\n      in red gems, and a new annual subscription period begins from the upgrade\r\n      date.\r\n    </li>\r\n    <li>\r\n      <b>PayPal:</b>\r\n      If you want to upgrade to a higher monthly plan, your membership benefits\r\n      and remaining days will be renewed immediately according to the annual\r\n      plan. Our system will automatically compensate you with gems for the\r\n      monthly membership days lost due to the PayPal upgrade.\r\n    </li>\r\n    <li>\r\n      <b>Other platforms:</b>\r\n      We suggest you cancel the current monthly plan and buy a higher monthly\r\n      plan after the current month expires. If you have already lost the\r\n      remaining days of your previous month\'s plan due to this payment method,\r\n      contact our team via Discord or email and we will manually compensate you\r\n      for the cost of the lost gems through those platforms.\r\n    </li>\r\n  </ul>\r\n\r\n  <h4 class="qtext_para u-ltr u-text-align--start">\r\n    6. Which platforms and subscriptions will automatically renew?\r\n  </h4>\r\n  <p class="qtext_para u-ltr u-text-align--start">\r\n    Monthly subscriptions will automatically renew unless you cancel them.\r\n    Annual plans are one-time payments, except for Apple App and Google Play.\r\n  </p>\r\n\r\n  <h4 class="qtext_para u-ltr u-text-align--start">\r\n    7. What happens if I run out of gems?\r\n  </h4>\r\n  <p class="qtext_para u-ltr u-text-align--start">\r\n    If you run out of gems, you can recharge your account by upgrading your\r\n    subscription or using the gem recharge option. Subscriptions are a better\r\n    deal than paying for gems, as they also provide more features and models to\r\n    use.\r\n  </p>\r\n\r\n  <h4 class="qtext_para u-ltr u-text-align--start">\r\n    8. Why is there such a huge difference in gem usage for different models?\r\n  </h4>\r\n  <p class="qtext_para u-ltr u-text-align--start">\r\n    Because the computing power and cost of different models are too different.\r\n    To meet the needs of different types of users for role-playing and chatting,\r\n    we introduced chat models with different costs. Claude is currently the most\r\n    cutting-edge and advanced model in the world for role-playing. We also\r\n    introduced low-cost models for free users who do not have much demand for\r\n    immersion and memory. The gradient of gem usage is designed according to the\r\n    gradient between the computing power costs of different models.\r\n  </p>\r\n\r\n  <h4 class="qtext_para u-ltr u-text-align--start">\r\n    9. Why is a subscription plan being introduced?\r\n  </h4>\r\n  <p class="qtext_para u-ltr u-text-align--start">\r\n    Due to the rising costs of GPU usage and developing advanced AI models, we\r\n    decided to launch a subscription plan for sustainable development. This will\r\n    allow the app tech team to have some financial support to continue providing\r\n    smarter models and new features that enhance your experience.\r\n  </p>\r\n\r\n  <h4 class="qtext_para u-ltr u-text-align--start">\r\n    10. What is the renewal process for my subscription?\r\n  </h4>\r\n  <p class="qtext_para u-ltr u-text-align--start">\r\n    Your subscription will automatically renew at the end of each subscription\r\n    period unless you cancel it. You can cancel your subscription at any time to\r\n    stop renewal.\r\n  </p>\r\n\r\n  <h4 class="qtext_para u-ltr u-text-align--start">\r\n    11. How do I cancel my subscription?\r\n  </h4>\r\n  <p class="qtext_para u-ltr u-text-align--start">\r\n    You can cancel your subscription at any time by turning off auto-renewal in\r\n    your account settings in Apple ID, Google Play Store, or other platforms. To\r\n    avoid being charged for the next period, cancel at least 24 hours before the\r\n    end of the current subscription period.\r\n  </p>\r\n  <ul>\r\n    <li>\r\n      <b>App Store:</b>\r\n      Open Settings, tap your Apple ID, select Subscriptions, find the\r\n      subscription, then tap Cancel Subscription and confirm.\r\n    </li>\r\n    <li>\r\n      <b>Google Play:</b>\r\n      Open Google Play Store, tap the menu icon, select Subscriptions, find the\r\n      subscription, then tap Cancel Subscription and follow the prompts.\r\n    </li>\r\n    <li>\r\n      <b>Rustore:</b>\r\n      Open RuStore, go to your account page, select Subscriptions, then click\r\n      Cancel a Subscription and confirm.\r\n    </li>\r\n    <li>\r\n      <b>Credit Card:</b>\r\n      Open Settings within your app, select Subscription, then select\r\n      Unsubscribe and confirm.\r\n    </li>\r\n    <li>\r\n      <b>PayPal &amp; Other Platforms:</b>\r\n      Go to the website where you pay your bill and follow that platform\'s\r\n      process to cancel.\r\n    </li>\r\n  </ul>\r\n  <p class="qtext_para u-ltr u-text-align--start">\r\n    Please note: Deleting the app will not cancel your subscription. You need to\r\n    turn off auto-renewal through your account settings.\r\n  </p>\r\n\r\n  <h4 class="qtext_para u-ltr u-text-align--start">\r\n    12. What happens after I cancel my subscription?\r\n  </h4>\r\n  <p class="qtext_para u-ltr u-text-align--start">\r\n    You will retain access to all of your subscription benefits until the end of\r\n    your current billing cycle. After that, your subscription will not renew and\r\n    you will no longer have those benefits and features. Refund policies vary by\r\n    platform:\r\n  </p>\r\n  <ul>\r\n    <li>\r\n      <b>App Store:</b>\r\n      Visit Apple\'s support page for refunds.\r\n    </li>\r\n    <li>\r\n      <b>Google Play:</b>\r\n      Visit Google Play\'s support page for refunds.\r\n    </li>\r\n    <li>\r\n      <b>Credit Card, PayPal &amp; Other Platforms:</b>\r\n      Your current subscription period is non-refundable per our policy.\r\n    </li>\r\n  </ul>\r\n\r\n  <h4 class="qtext_para u-ltr u-text-align--start">\r\n    13. What should I do if I haven\'t received my bonus gems after subscribing?\r\n  </h4>\r\n  <p class="qtext_para u-ltr u-text-align--start">\r\n    We recommend that you try logging in using a different browser, as this may\r\n    resolve the issue immediately. If your account is still showing issues,\r\n    please contact APP Bartender in Discord for help or email support@XXX and we\r\n    will help you find and resolve the issue as soon as possible.\r\n  </p>\r\n\r\n  <h4 class="qtext_para u-ltr u-text-align--start">\r\n    14. Can the subscription fee be changed in the future?\r\n  </h4>\r\n  <p class="qtext_para u-ltr u-text-align--start">\r\n    Yes, we reserve the right to change the subscription fee at any time. We\r\n    will notify you of any price changes through the app, email, or other\r\n    important means. If you do not want to pay the new fees, you can cancel your\r\n    subscription before the price change takes effect.\r\n  </p>\r\n\r\n  <h4 class="qtext_para u-ltr u-text-align--start">\r\n    15. Where can I get more information and help with payments or\r\n    subscriptions?\r\n  </h4>\r\n  <p class="qtext_para u-ltr u-text-align--start">\r\n    For more details, please join our Discord community and visit the\r\n    #subscription-help channel. Our APP Bartender is always here to answer any\r\n    questions and help you resolve issues.\r\n  </p>\r\n</span>\r\n'},{key:"underage-policy",title:"Underage Policy",titleKey:"legalInformation.items.underagePolicy",path:"/about/underagePolicy",routeName:"underagePolicy",routeTitleKey:"route.underagePolicy",htmlContent:'<span class="rendered_qtext">\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <i>Date of Revision: [ 14/01/2026 ]</i>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          At\r\n          <a href="{{website}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{domain}}\r\n    </a>\r\n          , we are committed to ensuring that our platform\r\n          <a href="{{website}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{domain}}\r\n    </a>\r\n          ("Platform") is used in a responsible and safe manner by users who\r\n          meet the legal age requirements.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          The Platform features AI-generated adult content and interactive\r\n          simulations exclusively for registered users. Consequently, users must\r\n          be at least 18 years of age or the legal age of majority in their\r\n          country of residence to access and interact with such content. By\r\n          using the Platform, users confirm that they meet the minimum age\r\n          requirement and are legally permitted to access adult content under\r\n          their local jurisdiction.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          We have implemented various technical and procedural measures to\r\n          monitor and prevent the registration of underage users.\r\n        </p>\r\n\r\n        <h4 class="qtext_para u-ltr u-text-align--start">\r\n          Content Integrity &amp; Protection of Minors\r\n        </h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          We are strictly committed to ensuring that AI-generated content on\r\n          <a href="{{website}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{domain}}\r\n    </a>\r\n          does not resemble minors, exploit their likeness, or depict any\r\n          individual in an underage context. To this end, we have implemented\r\n          our proprietary content moderation filter and "Safety-First" LLM\r\n          protocols to ensure full adherence to our Terms and Policies.\r\n        </p>\r\n\r\n        <h4 class="qtext_para u-ltr u-text-align--start">\r\n          Registration &amp; Age Verification\r\n        </h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Upon accessing\r\n          <a href="{{website}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{domain}}\r\n    </a>\r\n          , an initial "Age Gate" landing page, specifically designed to\r\n          restrict access to individuals who are not of legal age, is presented\r\n          to the user. Before accessing the main interface or any AI\r\n          interaction, users are required to confirm their age.\r\n        </p>\r\n        <ul>\r\n          <li>\r\n            <b>Affirmation:</b>\r\n            Users are prompted to affirm that they are 18 years or older. This\r\n            information is a mandatory requirement to verify eligibility.\r\n          </li>\r\n          <li>\r\n            <b>Disclaimer:</b>\r\n            A clear disclaimer emphasizes that users must be of legal age to\r\n            access our services. Providing inaccurate or fraudulent age\r\n            information constitutes a material violation of our Terms of\r\n            Service.\r\n          </li>\r\n          <li>\r\n            <b>Liability:</b>\r\n            <a href="{{website}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{domain}}\r\n    </a>\r\n            cannot be held liable for any inaccuracies or misrepresentations\r\n            concerning user age. It is the user’s sole responsibility to ensure\r\n            compliance with their local laws regarding the access and\r\n            consumption of AI-generated adult content.\r\n          </li>\r\n        </ul>\r\n\r\n        <h4 class="qtext_para u-ltr u-text-align--start">Content Responsibility</h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          As a user of\r\n          <a href="{{website}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{domain}}\r\n    </a>\r\n          , you bear sole responsibility for the Output generated by the AI\r\n          Companions through text messages, voice messages, images, and videos\r\n          based on your inputs. The AI Companions learn and respond based on the\r\n          conversations you initiate and the parameters you define.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          You understand and agree that\r\n          <a href="{{website}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{domain}}\r\n    </a>\r\n          does not endorse specific user-generated prompts. You must ensure that\r\n          your interactions with AI Companions comply with all applicable laws\r\n          and our Blocked Content Policy. Any attempt to generate AI content\r\n          that resembles minors or depicts harmful activities involving minors\r\n          is strictly prohibited.\r\n        </p>\r\n\r\n        <h4 class="qtext_para u-ltr u-text-align--start">\r\n          Content Moderation &amp; Monitoring\r\n        </h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          At\r\n          <a href="{{website}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{domain}}\r\n    </a>\r\n          , we prioritize the safety and integrity of our community. While we\r\n          respect user privacy, we have implemented an automated content\r\n          moderation filter based on our proprietary technology to ensure\r\n          compliance with our Blocked Content Policy.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          If our system detects any content violating these terms—particularly\r\n          those relating to the protection of minors—we reserve the right to\r\n          manually review the flagged content. Appropriate actions, including\r\n          immediate account termination and potential reporting to relevant\r\n          authorities, will be taken.\r\n        </p>\r\n\r\n        <h4 class="qtext_para u-ltr u-text-align--start">Content Removal</h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Any user-generated inputs or AI-generated outputs that we believe, at\r\n          our sole discretion, violate these provisions will be promptly removed\r\n          from the Platform\'s cache and user history.\r\n        </p>\r\n\r\n        <h4 class="qtext_para u-ltr u-text-align--start">Contact Information</h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          If you observe any violation of these Terms, or if you have questions\r\n          regarding our Underage Policy, please contact our compliance team at:\r\n          <a href="mailto:{{email}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{email}}\r\n    </a>\r\n          or use the “Report” feature directly within the Platform.\r\n        </p>\r\n\r\n        <h4 class="qtext_para u-ltr u-text-align--start">Termination</h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <a href="{{website}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{domain}}\r\n    </a>\r\n          reserves the right to suspend or permanently terminate the access of\r\n          any user suspected of violating this Underage Policy or attempting to\r\n          bypass our age verification systems.\r\n        </p>\r\n      </span>\r\n    </div>\r\n'},{key:"content-removal-policy",title:"Content Removal Policy",titleKey:"legalInformation.items.contentRemovalPolicy",path:"/about/contentRemovalPolicy",routeName:"contentRemovalPolicy",routeTitleKey:"route.contentRemovalPolicy",htmlContent:'<span class="rendered_qtext">\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <i>Date of Revision: April 14, 2025</i>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          At\r\n          <a href="{{website}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{domain}}\r\n    </a>\r\n          , our priority is to maintain a secure and respectful environment for\r\n          all users. This Content Removal Policy details our procedure for\r\n          addressing concerns regarding content that may unintentionally\r\n          resemble real persons. All content available on the\r\n          <a href="{{website}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{domain}}\r\n    </a>\r\n          is generated solely through artificial intelligence, enabling users to\r\n          create and interact with AI-generated characters. It is crucial to\r\n          understand that any resemblance to actual individuals is unintentional\r\n          and purely coincidental.\r\n        </p>\r\n\r\n        <h4 class="qtext_para u-ltr u-text-align--start">\r\n          1. Unintentional Resemblance to Actual Persons\r\n        </h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          While all content on the\r\n          <a href="{{website}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{domain}}\r\n    </a>\r\n          is generated by artificial intelligence, we acknowledge that there may\r\n          be instances of unintentional resemblance to real individuals.\r\n          Acknowledging the potential concerns in such cases, we are committed\r\n          to addressing them swiftly and responsibly.\r\n        </p>\r\n\r\n        <h4 class="qtext_para u-ltr u-text-align--start">\r\n          2. Content Removal Process\r\n        </h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Individuals who believe that content on the\r\n          <a href="{{website}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{domain}}\r\n    </a>\r\n          resembles them or another real person may request its removal by\r\n          contacting our compliance team at\r\n          <a href="mailto:{{email}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{email}}\r\n    </a>\r\n          or by reporting their concern directly via the “Contact” or “Support”\r\n          section on the\r\n          <a href="{{website}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{domain}}\r\n    </a>\r\n          . We will thoroughly review each request and take appropriate action\r\n          within a reasonable timeframe.\r\n        </p>\r\n\r\n        <h4 class="qtext_para u-ltr u-text-align--start">3. User Verification</h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          To ensure the validity and accuracy of content removal requests, we\r\n          may ask individuals to provide suitable proof of their identity or\r\n          their legal relationship to the individual depicted in the content.\r\n          This verification process is in place to handle requests responsibly\r\n          and protect the rights and interests of all parties involved.\r\n        </p>\r\n\r\n        <h4 class="qtext_para u-ltr u-text-align--start">4. Content Removal</h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Upon verifying and confirming a legitimate content removal request,\r\n          the specified AI-generated content will be promptly removed from the\r\n          <a href="{{website}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{domain}}\r\n    </a>\r\n          . Our aim is to complete this process efficiently while adhering to\r\n          applicable laws and regulations regarding digital privacy and\r\n          personality rights.\r\n        </p>\r\n\r\n        <h4 class="qtext_para u-ltr u-text-align--start">5. Privacy</h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Respecting privacy is our utmost priority throughout the content\r\n          removal process. All requests are treated with strict confidentiality.\r\n          We will not disclose any personal information or details of the\r\n          requests to third parties without explicit consent, unless legally\r\n          obligated to do so by relevant authorities.\r\n        </p>\r\n\r\n        <h4 class="qtext_para u-ltr u-text-align--start">6. Contact Information</h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          If you have any questions or require further clarification regarding\r\n          our Content Removal Policy, please contact us at:\r\n          <a href="mailto:{{email}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{email}}\r\n    </a>\r\n          or report it directly within the\r\n          <a href="{{website}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{domain}}\r\n    </a>\r\n          . We are dedicated to addressing concerns promptly and ensuring a\r\n          positive experience for our community.\r\n        </p>\r\n      </span>\r\n    </div>\r\n'},{key:"blocked-content-policy",title:"Blocked Content Policy",titleKey:"legalInformation.items.blockedContentPolicy",path:"/about/blockedContentPolicy",routeName:"blockedContentPolicy",routeTitleKey:"route.blockedContentPolicy",htmlContent:'<span class="rendered_qtext">\r\n  <p class="qtext_para u-ltr u-text-align--start">\r\n    <i>Date of Revision: April 14, 2025</i>\r\n  </p>\r\n  <p class="qtext_para u-ltr u-text-align--start">\r\n    At\r\n    <a\r\n      href="{{website}}"\r\n      target="_blank"\r\n      rel="noopener noreferrer"\r\n      class="clickable-link"\r\n    >\r\n      {{domain}}\r\n    </a>\r\n    , our commitment is to provide a secure, respectful, and lawful online\r\n    environment for all users. While users cannot upload content directly to our\r\n    <a\r\n      href="{{website}}"\r\n      target="_blank"\r\n      rel="noopener noreferrer"\r\n      class="clickable-link"\r\n    >\r\n      {{domain}}\r\n    </a>\r\n    , their interactions primarily involve chatting and initiating the creation\r\n    of AI-generated content. This content is accessible only to the individual\r\n    user within their private space and is not publicly available. Nevertheless,\r\n    certain categories of content are strictly prohibited on our\r\n    <a\r\n      href="{{website}}"\r\n      target="_blank"\r\n      rel="noopener noreferrer"\r\n      class="clickable-link"\r\n    >\r\n      {{domain}}\r\n    </a>\r\n    , as detailed in this Blocked Content Policy.\r\n  </p>\r\n\r\n  <h4 class="qtext_para u-ltr u-text-align--start">1. Prohibited Content</h4>\r\n  <p class="qtext_para u-ltr u-text-align--start">\r\n    This policy applies to all content, including but not limited to text,\r\n    images, voices, and any other AI-generated content produced on the\r\n    <a\r\n      href="{{website}}"\r\n      target="_blank"\r\n      rel="noopener noreferrer"\r\n      class="clickable-link"\r\n    >\r\n      {{domain}}\r\n    </a>\r\n    .\r\n  </p>\r\n  <ul>\r\n    <li>\r\n      <b>a. Illegal Content:</b>\r\n      Content that violates local, national, or international laws and\r\n      regulations is strictly forbidden. This includes, but is not limited to,\r\n      content related to illegal drugs, weapons, violence, or activities that\r\n      advocate for or endorse illegal actions.\r\n    </li>\r\n    <li>\r\n      <b>b. Hate Speech and Discrimination:</b>\r\n      We have a zero-tolerance policy towards content that promotes hate speech,\r\n      discrimination, or harassment based on factors such as race, ethnicity,\r\n      nationality, religion, gender, sexual orientation, disability, or any\r\n      other protected characteristic.\r\n    </li>\r\n    <li>\r\n      <b>c. Violence and Harm:</b>\r\n      Content that encourages, glorifies, or promotes violence, self-harm, or\r\n      harm to others is strictly prohibited.\r\n    </li>\r\n    <li>\r\n      <b>d. Child Exploitation:</b>\r\n      We unequivocally prohibit content that exploits or endangers minors,\r\n      including but not limited to sexual exploitation, harm, or harassment\r\n      towards minors.\r\n    </li>\r\n    <li>\r\n      <b>e. Content Resembling Minors and Explicit Imagery:</b>\r\n      Attempts to generate AI content resembling minors are strictly forbidden.\r\n      Furthermore, in accordance with our platform standards, the generation or\r\n      solicitation of any imagery containing sexually explicit acts or sexually\r\n      explicit content is strictly prohibited.\r\n    </li>\r\n    <li>\r\n      <b>f. Infringement on Privacy and Copyright:</b>\r\n      Any content that infringes upon the privacy, copyrights, or intellectual\r\n      property rights of individuals or entities is not permitted.\r\n    </li>\r\n    <li>\r\n      <b>g. Impersonation:</b>\r\n      Deceptive or malicious impersonation of real individuals, public figures,\r\n      or celebrities is prohibited.\r\n    </li>\r\n  </ul>\r\n\r\n  <h4 class="qtext_para u-ltr u-text-align--start">\r\n    2. Content Responsibility\r\n  </h4>\r\n  <p class="qtext_para u-ltr u-text-align--start">\r\n    As a user of the\r\n    <a\r\n      href="{{website}}"\r\n      target="_blank"\r\n      rel="noopener noreferrer"\r\n      class="clickable-link"\r\n    >\r\n      {{domain}}\r\n    </a>\r\n    , you are solely responsible for the Output generated by the AI Companions.\r\n    The AI Companions learn and respond based on the conversations you initiate.\r\n    You understand and agree that\r\n    <a\r\n      href="{{website}}"\r\n      target="_blank"\r\n      rel="noopener noreferrer"\r\n      class="clickable-link"\r\n    >\r\n      {{domain}}\r\n    </a>\r\n    does not control or endorse the specific content generated by the AI.\r\n    Therefore, you acknowledge full responsibility for your actions while using\r\n    the\r\n    <a\r\n      href="{{website}}"\r\n      target="_blank"\r\n      rel="noopener noreferrer"\r\n      class="clickable-link"\r\n    >\r\n      {{domain}}\r\n    </a>\r\n    .\r\n  </p>\r\n\r\n  <h4 class="qtext_para u-ltr u-text-align--start">3. Content Moderation</h4>\r\n  <p class="qtext_para u-ltr u-text-align--start">\r\n    While conversations are generally private, we have implemented a content\r\n    moderation filter, utilizing our proprietary LLM technology, to ensure\r\n    adherence to this Blocked Content Policy. If the filter detects a violation,\r\n    we reserve the right to manually review the flagged content and take\r\n    appropriate action, including account termination.\r\n  </p>\r\n\r\n  <h4 class="qtext_para u-ltr u-text-align--start">4. Contact Information</h4>\r\n  <p class="qtext_para u-ltr u-text-align--start">\r\n    If you observe any violation of these Terms, please contact us at:\r\n    <a\r\n      href="mailto:{{email}}"\r\n      target="_blank"\r\n      rel="noopener noreferrer"\r\n      class="clickable-link"\r\n    >\r\n      {{email}}\r\n    </a>\r\n    or report it directly via the "Report" section on the\r\n    <a\r\n      href="{{website}}"\r\n      target="_blank"\r\n      rel="noopener noreferrer"\r\n      class="clickable-link"\r\n    >\r\n      {{domain}}\r\n    </a>\r\n    .\r\n  </p>\r\n</span>\r\n'},{key:"dmca-policy",title:"DMCA",titleKey:"legalInformation.items.dmcaPolicy",path:"/about/dmcaPolicy",routeName:"dmcaPolicy",routeTitleKey:"route.dmcaPolicy",htmlContent:'<span class="rendered_qtext">\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <i>Date of Revision: April 14, 2025</i>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <a href="{{website}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{domain}}\r\n    </a>\r\n          values and upholds the intellectual property rights of others, and we\r\n          are dedicated to adhering to the Digital Millennium Copyright Act\r\n          (DMCA) and other applicable copyright laws. Our DMCA Policy outlines\r\n          the procedures we undertake to address notifications of copyright\r\n          infringement and provides instructions on how to contact us if you\r\n          believe your copyrighted material has been used on our platform\r\n          without proper authorization.\r\n        </p>\r\n\r\n        <h4 class="qtext_para u-ltr u-text-align--start">\r\n          1. Reporting Copyright Infringement\r\n        </h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          If you have a good-faith belief that materials transmitted, displayed,\r\n          or created through\r\n          <a href="{{website}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{domain}}\r\n    </a>\r\n          ("Platform") infringe your copyright, you (or your authorized agent)\r\n          may send us a notice requesting the removal of the material or the\r\n          blocking of access to it. Please provide the following information in\r\n          writing:\r\n        </p>\r\n        <ol>\r\n          <li>\r\n            An electronic or physical signature of the copyright owner (or an\r\n            individual authorized to act on their behalf);\r\n          </li>\r\n          <li>\r\n            A description of the copyrighted work you claim has been infringed,\r\n            including sufficient details (such as a URL or specific Character\r\n            ID) for us to locate the material on the Platform;\r\n          </li>\r\n          <li>Your address, telephone number, and email address;</li>\r\n          <li>\r\n            A statement by you indicating a good-faith belief that the disputed\r\n            use is not authorized by the copyright owner, its agent, or\r\n            applicable law;\r\n          </li>\r\n          <li>\r\n            A statement by you, made under penalty of perjury, confirming that\r\n            the information in your notice is accurate and that you are the\r\n            copyright owner or duly authorized to act on the copyright owner`s\r\n            behalf.\r\n          </li>\r\n        </ol>\r\n\r\n        <h4 class="qtext_para u-ltr u-text-align--start">\r\n          2. DMCA Notices Response\r\n        </h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Upon receiving a complete and valid infringement notice,\r\n          <a href="{{website}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{domain}}\r\n    </a>\r\n          will undertake the following actions:\r\n        </p>\r\n        <ol>\r\n          <li>\r\n            Review and verify that the submitted documents meet DMCA legal\r\n            requirements;\r\n          </li>\r\n          <li>\r\n            Take appropriate preliminary measures against the alleged\r\n            infringement within 1-3 business days of receiving the information,\r\n            including, but not limited to, removing the specific AI-generated\r\n            content or blocking the offending account/link;\r\n          </li>\r\n          <li>\r\n            Notify the user who generated or uploaded the content, requesting an\r\n            explanation and supporting evidence if applicable.\r\n          </li>\r\n        </ol>\r\n\r\n        <h4 class="qtext_para u-ltr u-text-align--start">\r\n          3. Counter Notification\r\n        </h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          If you believe in good faith that a notice of copyright infringement\r\n          has been wrongly filed against you (for example, if you believe the\r\n          AI-generated output is original and non-infringing), you may submit a\r\n          counter-notice to us. Upon receipt, we will notify the original\r\n          claimant. According to DMCA guidelines, your content may be re-enabled\r\n          within 10-14 business days unless the copyright owner initiates legal\r\n          action against you within this timeframe.\r\n        </p>\r\n\r\n        <h4 class="qtext_para u-ltr u-text-align--start">4. Contact Information</h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          All notices and counter-notices should be sent to our designated\r\n          Compliance Officer via email at:\r\n          <a href="mailto:{{email}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{email}}\r\n    </a>\r\n          . We are committed to addressing concerns promptly to ensure a secure\r\n          environment for all creators and users.\r\n        </p>\r\n\r\n        <h4 class="qtext_para u-ltr u-text-align--start">\r\n          5. Repeat Infringer Policy\r\n        </h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <a href="{{website}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{domain}}\r\n    </a>\r\n          reserves the right to suspend or permanently terminate access to the\r\n          Platform for any user who is determined to be a "repeat infringer."\r\n          We define a repeat infringer as any user who has been notified of\r\n          infringing activity more than twice and/or has had content removed\r\n          from the Platform on multiple occasions.\r\n        </p>\r\n        <h4 class="qtext_para u-ltr u-text-align--start">\r\n          6. Deepfake Prohibitions in Terms and Conditions\r\n        </h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Clarification Statement:\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Please note that our platform does NOT permit the creation of deepfakes under any circumstances. The unauthorized creation, upload, or processing of deepfake content, or the non-consensual use of any real human individual\'s likeness, is strictly prohibited on our platform.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          To maintain full alignment with card brand compliance and global digital safety standards, SYNAPSE FLOW LIMITED explicitly outlaws this behavior within our official legal framework.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Below are the exact clauses and locations within our Terms and Conditions (Terms of Service) where these strict prohibitions are mandated:\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          1) Prohibited User Conduct & Content Restrictions\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          "Users are expressly prohibited from utilizing the platform’s interactive text or system architectures to simulate, request, or attempt to generate content that replicates, mimics, or counterfeits the identity, voice, or likeness of any real human individual, living or deceased. The platform is designed strictly for purely fictional, stylized digital narrative engagement."\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          2) Intellectual Property & Synthetic Content Material Controls\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          "All graphical avatars, visual designs, and media materials provided by the company are entirely synthetic, artistic assets generated via compliant third-party foundational models in strict conformity with upstream licensing rules. Users do not possess the right, and are programmatically barred, from uploading real human photographs or external biometrics to generate deepfakes or non-consensual synthetic depictions. Any attempt to bypass these architectural guardrails constitutes a material breach of these Terms."\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          3)Termination of Service & Enforcement Zero-Tolerance\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          "This Website retains an absolute, zero-tolerance enforcement policy against the facilitation of deepfakes, non-consensual imagery, or impersonation. Any user account flagged by our real-time semantic firewalls or automated post-generation output scrubbing for attempting to engineer deepfake content or simulate real-person likenesses will face immediate, permanent service termination, forfeiture of subscription remaining balances, and a permanent ban from our digital networks."\r\n        </p>\r\n      </span>\r\n    </div>\r\n'},{key:"complaint-policy",title:"Complaint Policy",titleKey:"legalInformation.items.complaintPolicy",path:"/about/complaintPolicy",routeName:"complaintPolicy",routeTitleKey:"route.complaintPolicy",htmlContent:'<span class="rendered_qtext">\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <i>Date of Revision: April 14, 2025</i>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          At\r\n          <a href="{{website}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{domain}}\r\n    </a>\r\n          , we value our users and strive to provide a positive experience. We\r\n          understand that concerns or complaints may arise from time to time,\r\n          and we are committed to addressing them promptly and effectively. This\r\n          Complaint Policy outlines the process for users to file complaints\r\n          regarding any issues encountered while using our platform.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          The\r\n          <a href="{{website}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{domain}}\r\n    </a>\r\n          and/or any of our online channels, affiliated platforms, products, or\r\n          services, including all content contained therein, are referred to\r\n          herein as “Services.”\r\n        </p>\r\n\r\n        <h4 class="qtext_para u-ltr u-text-align--start">1. Customer Support</h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          We have a dedicated support team to assist our users with any concerns\r\n          or complaints. Our support team is committed to providing prompt and\r\n          effective assistance. Users can contact our support team should they\r\n          come across any issues or have inquiries regarding our Services. All\r\n          inquiries are managed with professionalism, confidentiality, and\r\n          impartiality.\r\n        </p>\r\n\r\n        <h4 class="qtext_para u-ltr u-text-align--start">\r\n          2. Submitting a Complaint\r\n        </h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Users who wish to file a complaint can do so by contacting our\r\n          customer support team through\r\n          <a href="mailto:{{email}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{email}}\r\n    </a>\r\n          , or via the “Contact Us” area on the\r\n          <a href="{{website}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{domain}}\r\n    </a>\r\n          .\r\n        </p>\r\n\r\n        <h4 class="qtext_para u-ltr u-text-align--start">\r\n          3. Information to Include in the Complaint\r\n        </h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          When submitting a complaint, users are encouraged to provide the\r\n          following details to help us investigate and address the issue\r\n          promptly:\r\n        </p>\r\n        <ul>\r\n          <li><b>a)</b> User’s full name and email address;</li>\r\n          <li>\r\n            <b>b)</b>\r\n            Description of the complaint, including relevant details such as the\r\n            date and time of the incident;\r\n          </li>\r\n          <li>\r\n            <b>c)</b>\r\n            Any supporting documentation or screenshots, if applicable.\r\n          </li>\r\n        </ul>\r\n\r\n        <h4 class="qtext_para u-ltr u-text-align--start">\r\n          4. Documentation of Complaint Review Process\r\n        </h4>\r\n        <ul>\r\n          <li>\r\n            <b>a) Receipt and Acknowledgment:</b>\r\n            Upon receiving a complaint, we will acknowledge receipt within 24\r\n            hours. This acknowledgment will include a reference number and the\r\n            name of the representative handling the case.\r\n          </li>\r\n          <li>\r\n            <b>b) Investigation:</b>\r\n            Each complaint will be thoroughly investigated. This involves\r\n            reviewing the complaint details, gathering relevant information,\r\n            and, if necessary, contacting the complainant for additional\r\n            information.\r\n          </li>\r\n          <li>\r\n            <b>c) Decision-Making:</b>\r\n            The process will be carried out by a designated Complaints Officer\r\n            or a relevant team. This includes an evaluation of gathered\r\n            information and the application of relevant policies or legal\r\n            requirements to reach a fair conclusion.\r\n          </li>\r\n          <li>\r\n            <b>d) Documentation:</b>\r\n            Every step of the process, from receipt to resolution, will be fully\r\n            documented, including dates, actions taken, and the rationale\r\n            behind the final decision.\r\n          </li>\r\n        </ul>\r\n\r\n        <h4 class="qtext_para u-ltr u-text-align--start">5. Duration of Each Step</h4>\r\n        <ul>\r\n          <li>\r\n            <b>a) Overall Resolution Timeline:</b>\r\n            The entire resolution process, from receipt to the communication of\r\n            the outcome, will not exceed 7 calendar days.\r\n          </li>\r\n          <li>\r\n            <b>b) Immediate Action on Illegal Content:</b>\r\n            <ol>\r\n              <li>\r\n                <b>Detection:</b>\r\n                If a complaint pertains to illegal content, particularly that\r\n                flagged by our safety filters, it will be immediately escalated.\r\n              </li>\r\n              <li>\r\n                <b>Removal:</b>\r\n                Illegal content will be removed immediately once identified and\r\n                reviewed, in compliance with legal standards and our internal\r\n                policies.\r\n              </li>\r\n            </ol>\r\n          </li>\r\n          <li>\r\n            <b>c) Updates:</b>\r\n            Complainants will be updated regularly. If a resolution is expected\r\n            to take longer than the stipulated timeframe, the user will be\r\n            informed of the reasons for the delay.\r\n          </li>\r\n        </ul>\r\n\r\n        <h4 class="qtext_para u-ltr u-text-align--start">6. Escalation</h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          If a user is dissatisfied with the resolution provided, they may\r\n          request further escalation. The case will be reviewed by individuals\r\n          or teams not initially involved in the original resolution process to\r\n          ensure an impartial reassessment.\r\n        </p>\r\n\r\n        <h4 class="qtext_para u-ltr u-text-align--start">7. Chargebacks</h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          To uphold the integrity of transactions, our payment processing team\r\n          thoroughly investigates any disputed charges. Users found to be\r\n          engaging in wrongful or fraudulent chargeback practices risk being\r\n          placed on a blacklist, which may result in a permanent ban from the\r\n          <a href="{{website}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{domain}}\r\n    </a>\r\n          and future services. We strongly encourage users to contact our\r\n          Customer Support Center first to resolve any uncertainties or billing\r\n          concerns to avoid unfounded disputes.\r\n        </p>\r\n\r\n        <h4 class="qtext_para u-ltr u-text-align--start">8. Fraud Mitigation</h4>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Our goal is to provide secure, reliable payment processing in\r\n          compliance with payment card industry standards. To prevent\r\n          unauthorized transactions, we implement rigorous customer verification\r\n          measures and promptly investigate any suspected fraudulent activity to\r\n          protect our community and the\r\n          <a href="{{website}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{domain}}\r\n    </a>\r\n          .\r\n        </p>\r\n      </span>\r\n    </div>\r\n'},{key:"2257-exemption",title:"18 U.S.C. 2257 Exemption",titleKey:"legalInformation.items.exemption2257",path:"/about/exemption2257",routeName:"exemption2257",routeTitleKey:"route.exemption2257",htmlContent:'<span class="rendered_qtext">\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <i>Date of Revision: April 14, 2025</i>\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          <a href="{{website}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{domain}}\r\n    </a>\r\n          operates as a purely AI-generated content platform where no real\r\n          individuals are portrayed or engaged in any content creation. Every\r\n          piece of content accessible on\r\n          <a href="{{website}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{domain}}\r\n    </a>\r\n          and/or any of our online channels, affiliated websites, products, or\r\n          services, including all content contained therein ("Services"), is\r\n          exclusively generated through artificial intelligence (AI)\r\n          technology.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Furthermore,\r\n          <a href="{{website}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{domain}}\r\n    </a>\r\n          strictly prohibits and does not feature any images, videos, or visual\r\n          depictions containing sexually explicit content or sexually explicit\r\n          acts.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          While our advanced AI technology creates realistic visual outputs,\r\n          these are strictly non-sexual, computer-generated entities. This\r\n          method fundamentally eliminates the participation or involvement of\r\n          real human beings in the creation of any material available on our\r\n          Services.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          Accordingly, the Federal Labeling and Record-Keeping Law (18 U.S.C. §\r\n          2257), which pertains to the depiction of actual human beings engaged\r\n          in sexually explicit conduct, is not applicable to our Services.\r\n        </p>\r\n        <p class="qtext_para u-ltr u-text-align--start">\r\n          If you have any questions or require further clarification regarding\r\n          our 18 U.S.C. 2257 Exemption and our content policies, please contact\r\n          us at:\r\n          <a href="mailto:{{email}}" target="_blank" rel="noopener noreferrer" class="clickable-link">\r\n      {{email}}\r\n    </a>\r\n          or directly report via the “Contact” or “Support” section within the\r\n          Platform.\r\n        </p>\r\n      </span>\r\n    </div>\r\n'}],ah=Object.fromEntries(th.map(e=>[e.path,e])),rh=()=>Qs(()=>import("./index.B0uR7iRX.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35])),nh=[{path:"/vipGuidePreview",component:()=>Qs(()=>import("./index.wRZ0H7BA.js"),__vite__mapDeps([36,31,2,18,32,33,8,13,34,37])),name:"VipGuidePreview",meta:{hidden:!0,title:""}},{path:"/redirect",component:rh,meta:{hidden:!0},children:[{path:"/redirect/:path(.*)",component:()=>Qs(()=>import("./index.BGoa5rFj.js"),__vite__mapDeps([38,2]))}]},{path:"/about",name:"/about",children:[...th.map(e=>({path:e.path.replace("/about/",""),component:()=>Qs(()=>import("./legalDocumentDetail.D2M33aPA.js"),__vite__mapDeps([39,2,22,23,24,8,18,13,34,40])),name:e.routeName,meta:{title:e.routeTitleKey,...e.seo?{seo:e.seo}:{}}})),{path:"ipAccess",component:()=>Qs(()=>import("./ipAccess.s9jfLqum.js"),__vite__mapDeps([41,2,8,18,13,34,42])),name:"ipAccess",meta:{title:"errorPage.ipAccess"}}]},{path:"/auth",name:"/auth",children:[{path:"google-callback",component:()=>Qs(()=>import("./google-callback.C90XJTs-.js"),__vite__mapDeps([43,2,44,45,8,18,13,34,46])),name:"GoogleCallback",meta:{title:""}},{path:"email",component:()=>Qs(()=>import("./email-callback._gxeDlRe.js"),__vite__mapDeps([47,2,18,44,45,8,13,34,48])),name:"EmailCallback",meta:{title:""}}]},{path:"/",name:"/",component:rh,redirect:"/home",children:[{path:"home",component:()=>Qs(()=>import("./index.CapQ_WRo.js"),__vite__mapDeps([49,50,2,13,29,30,18,51,8,52,15,53,5,25,26,54,55,56,34,57,58,59,60,44,45,61,20,21,62,63,64])),name:"Home",meta:{title:"",tabs:!0,navbar:!0,keepAlive:!0,seo:{title:"OnlyGF - AI Live Interaction & Chat",description:"OnlyGF: 24/7 live your story with a 1-on-1 AI companion, heartfelt conversation, and narrative interaction.",keywords:"OnlyGF, AI companion, AI live interaction, AI chat, virtual companion",canonical:"/home"}}},{path:"characterList",component:()=>Qs(()=>import("./index.CJUf2tx_.js"),__vite__mapDeps([65,66,53,2,67,8,52,15,5,13,25,26,54,18,55,56,34,57,58,59,60,68,69,44,45,61,20,21,62,70,22,23,24,71,63,72])),name:"Character",meta:{title:"",navbar:!0,showBack:!0,seo:{title:"AI Character List - {appName}",description:"seo.description.characterList",keywords:"AI character list, AI companion, virtual AI chat, {appName} characters",jsonLdType:"ItemList"}}},{path:"characterSearch",component:()=>Qs(()=>import("./index.xkKCpbS0.js"),__vite__mapDeps([73,66,53,2,67,8,17,18,19,68,69,44,45,63,13,34,74])),name:"CharacterSearch",meta:{title:"",navbar:!0,showBack:!0,seo:{title:"Search AI Characters - {appName}",description:"seo.description.characterSearch",keywords:"search AI characters, find AI companion, {appName} search"}}},{path:"characterDetail/:id",component:()=>Qs(()=>import("./index.GcClUw8a.js"),__vite__mapDeps([75,56,34,8,2,57,54,18,55,17,19,22,23,24,76,13,67,63,77,68,69,59,58,78])),name:"CharacterDetail",meta:{title:""}},{path:"characterChat/:id",component:()=>Qs(()=>import("./index.usRs3Wiz.js"),__vite__mapDeps([79,76,2,13,67,8,63,77,11,12,6,14,4,5,7,15,16,56,34,57,58,59,3,80,44,45,27,81,18,82,17,19,9,22,23,24,83])),name:"CharacterChat",meta:{title:""}},{path:"characterInteract",component:()=>Qs(()=>import("./index.BSvPJon1.js"),__vite__mapDeps([84,2,18,85,8,17,19,59,80,44,45,27,81,23,9,13,34,86])),name:"CharacterInteract",meta:{title:"",navbar:!1,seo:{robots:"noindex,follow"}}},{path:"chatHistory",component:()=>Qs(()=>import("./index.8yl-fN5u.js"),__vite__mapDeps([87,66,53,2,67,8,1,3,4,5,6,7,9,10,25,26,17,18,19,58,68,69,44,45,13,34,88])),name:"ChatHistory",meta:{title:"",tabs:!0,navbar:!0,seo:{title:"Chat History - {appName}",description:"seo.description.chatHistory",keywords:"AI chat history, continue AI chat, {appName} messages",robots:"noindex,follow"}}},{path:"userCenter",component:()=>Qs(()=>import("./index.C-dzUsea.js"),__vite__mapDeps([89,52,2,15,53,5,13,25,26,54,18,55,56,34,8,57,58,59,60,66,67,68,69,44,45,4,6,7,9,17,19,28,90,29,30,91,82,32,92])),name:"UserCenter",meta:{title:"",auth:!0,tabs:!0,navbar:!0,hideMobileNavbar:!0,seo:{title:"User Center - {appName}",description:"seo.description.userCenter",keywords:"{appName} user center, profile settings, AI companion account",robots:"noindex,follow"}}},{path:"userCenterEdit",component:()=>Qs(()=>import("./index.2Golr5nk.js"),__vite__mapDeps([93,17,18,2,19,70,22,23,24,71,28,90,29,30,91,8,13,34,94])),name:"UserCenterEdit",meta:{title:"route.userCenterEdit",auth:!0,seo:{robots:"noindex,follow"}}},{path:"rechargeCenter",component:()=>Qs(()=>import("./index.Hs8EEkxs.js"),__vite__mapDeps([95,2,28,8,18,13,34,96])),name:"RechargeCenter",meta:{title:"",tabs:!0,seo:{title:"Recharge Center - {appName}",description:"seo.description.rechargeCenter",keywords:"recharge coins, subscribe, {appName} premium",jsonLdType:"Product",robots:"noindex,follow"}}},{path:"rechargeHistory",component:()=>Qs(()=>import("./index.B2V-H67G.js"),__vite__mapDeps([97,66,53,2,67,8,18,68,69,44,45,70,22,23,24,71,13,34,98])),name:"RechargeHistory",meta:{title:"",seo:{robots:"noindex,follow"}}},{path:"webTutorial",component:()=>Qs(()=>import("./index.BHB_DWXB.js"),__vite__mapDeps([99,22,2,23,24,18,8,13,34,100])),name:"WebTutorial",meta:{title:"",seo:{title:"Web Tutorial - {appName}",description:"seo.description.webTutorial",keywords:"{appName} tutorial, how to use {appName}, AI chat guide",jsonLdType:"Article"}}},{path:"contactUs",component:()=>Qs(()=>import("./index.NhIPTc8z.js"),__vite__mapDeps([101,70,22,2,23,24,71,18,8,13,34,102])),name:"ContactUs",meta:{title:"route.contactUs",seo:{title:"Contact Us - {appName}",description:"seo.description.contactUs",keywords:"{appName} contact, AI companion support, {appName} help",canonical:"/contactUs",jsonLdType:"ContactPage"}}},{path:"faq",component:()=>Qs(()=>import("./index.xZL7hYno.js"),__vite__mapDeps([103,50,2,13,29,30,18,51,68,69,8,34,104])),name:"Faq",meta:{title:"home.faq.title",navbar:!0}},{path:"about/legalInformation",component:()=>Qs(()=>import("./legalInformation.Dt9vJZDJ.js"),__vite__mapDeps([105,22,2,23,24,18,8,13,34,106])),name:"legalInformation",meta:{title:"route.legalInformation",navbar:!0}},{path:"m3u8Player",component:()=>Qs(()=>import("./m3u8-player.C7cz-O-O.js"),__vite__mapDeps([107,2,59,8,18,13,34,108])),name:"M3u8Player",meta:{title:"M3U8 Video Player Test"}},{path:"401",component:()=>Qs(()=>import("./401.Brmuwkq6.js"),__vite__mapDeps([109,12,13,2,6,14,8,18,34,110])),meta:{hidden:!0}},{path:"404",component:()=>Qs(()=>import("./404.w7Ia3UKv.js"),__vite__mapDeps([111,2,8,18,13,34,112])),meta:{hidden:!0}}]}],ih=ne({history:ie(),routes:nh,scrollBehavior:()=>({left:0,top:0})});ih.afterEach(e=>{"CharacterInteract"!==e.name&&eh()}),ih.onError(()=>{eh(!0)});const oh=re("user",()=>{const e=w({}),t=w(!1),a=w({}),r=w(!1);function n(e){if(null==e||""===e)return 0;const t=Number(e);if(!Number.isFinite(t)||t<=0)return 0;const a=t-Math.floor(Date.now()/1e3);return a>0?Math.ceil(a/86400):0}const i=x(()=>{var t;return"temp_guest"===(null==(t=e.value)?void 0:t.loginChannel)}),o={guest:"guest",oagp:"gp",oafb:"fb",oaline:"line"};function s(e){if(!(null==e?void 0:e.userUniqId))return;const t={version:1,cachedAt:Date.now(),userUniqId:e.userUniqId,data:e};Vs(js,t)}function l(){Gs(js)}function c(e){const t=String((null==e?void 0:e.message)||"");return function(e){var t,a;const r=(null==e?void 0:e.code)??(null==(a=null==(t=null==e?void 0:e.response)?void 0:t.data)?void 0:a.code);return Number(r)}(e)===rl.REFRESH_TOKEN_EXPIRED||"Token refresh failed"===t}function u(){var t;const a=Hs(js);return a&&"string"!=typeof a&&1===a.version&&(null==(t=a.data)?void 0:t.userUniqId)?Date.now()-Number(a.cachedAt||0)>864e5?(l(),!1):(e.value=a.data,!0):(l(),!1)}function d(t){var a;e.value={...e.value||{},...t},(null==(a=e.value)?void 0:a.userUniqId)&&s(e.value)}const p=()=>new Promise(async(e,t)=>{try{gm("get_main_cfg");const t=await Mm.configInit();a.value=t,r.value=!0,gm("get_main_cfg_success");const n=null==t?void 0:t.ipLanguage;if(n){$s().autoSwitchLanguageByIp(n)}e()}catch(n){a.value={},r.value=!1,gm("get_main_cfg_fail"),t(n)}});function m(){return new Promise(async(a,r)=>{try{const i=await Rm.getUserInfo();if(!i||!i.userUniqId)return e.value={},t.value=!1,l(),void r(new Error("Invalid user data"));const c=(o=i)?{...o,vipRemainDays:n(o.subscribeExpireAt)}:o;if(e.value=c,t.value=!0,s(c),null==c?void 0:c.userLang){$s().applyUserLanguage(c.userLang)}!1===(null==c?void 0:c.isProfileCompleted)&&!0!==(null==c?void 0:c.isTempGuest)&&setTimeout(async()=>{const{useDialogStoreHook:e}=await Qs(async()=>{const{useDialogStoreHook:e}=await Promise.resolve().then(()=>al);return{useDialogStoreHook:e}},void 0);e().showProfileCompleteDialog=!0,gm("profile_complete_popup_show")},500);const{useChatStore:u}=await Qs(async()=>{const{useChatStore:e}=await Promise.resolve().then(()=>Sh);return{useChatStore:e}},void 0);u().loadCurrentUserUnreadList(),a()}catch(d){c(d)?(e.value={},t.value=!1,l()):(null==(i=e.value)?void 0:i.userUniqId)?t.value=!0:t.value=u(),r(d)}var i,o})}async function h(e){try{const t=await Em.bindAccount(e),{token:a,refreshToken:r}=t;Vs(Rs,a),Vs(Ms,r),Gs(Bs),Gs(Ws),await m();const n=o[e.loginChannel]||e.loginChannel||"unknown";return gm("guest_bind_account_success"),gm(`${n}_guest_bind`),t}catch(t){throw t}}async function g(){Vs(Rs,""),Vs(Ms,""),l();try{Gs(Fs)}catch(n){}try{Gs(Bs),Gs(Ws)}catch(n){}try{const e="intimacy-scene-selection:";for(let t=localStorage.length-1;t>=0;t--){const a=localStorage.key(t);a&&a.startsWith(e)&&Gs(a)}}catch(n){}e.value={},t.value=!1,a.value={},r.value=!1;try{const{useOrderStoreHook:e}=await Qs(async()=>{const{useOrderStoreHook:e}=await Promise.resolve().then(()=>Mh);return{useOrderStoreHook:e}},void 0),t=e();t.clearCurrentUserOrder(),t.stopPolling()}catch(i){}}return{userInfo:e,isHasUserInfo:t,isHasConfig:r,userConfig:a,isTempGuest:i,getConfigDownloadOptions:e=>{var t;const r=(null==(t=a.value)?void 0:t.downLoadAddress)||{},{android_apk:n,apple_store:i,google_play:o,web_app:s}=r,l=window.__APP_CONFIG__,c=(null==l?void 0:l.downloadIcons)||{};return[{platform:"google-play",name:e("download.googlePlay.name"),description:e("download.googlePlay.description"),subtitle:e("download.googlePlay.subtitle"),icon:c.googlePlay,url:o,open:!!o,deviceType:"android",classes:"bg-white text-gray-800",textColor:"text-white"},{platform:"app-store",name:e("download.appStore.name"),description:e("download.appStore.description"),subtitle:e("download.appStore.subtitle"),icon:c.appStore,url:i,open:!!i,deviceType:"ios",classes:"bg-[rgba(255,255,255,0.1)] text-white border border-[rgba(255,255,255,0.1)]",textColor:"text-white"},{platform:"android-apk",name:e("download.androidApk.name"),description:e("download.androidApk.description"),subtitle:e("download.androidApk.subtitle"),icon:c.androidApk,url:n,open:!!n,deviceType:"android",classes:"bg-[rgba(255,255,255,0.1)] text-white border border-[rgba(255,255,255,0.1)]",textColor:"text-white"},{platform:"web-app",name:e("download.webApp.name"),description:e("download.webApp.description"),subtitle:e("download.webApp.subtitle"),icon:c.webApp,url:s,open:!0,classes:"bg-[rgba(255,255,255,0.1)] text-white border border-[rgba(255,255,255,0.1)]",textColor:"text-white"}]},getConfigSidebarFooterOptions:e=>{var t,r,n,i,o,s,l,c;const u=[];return(null==(r=null==(t=a.value)?void 0:t.interfaceConfig)?void 0:r.AffiliateUrl)&&u.push({name:e("sidebar.footer.affiliate"),icon:"trophy-line",path:null==(i=null==(n=a.value)?void 0:n.interfaceConfig)?void 0:i.AffiliateUrl}),(null==(s=null==(o=a.value)?void 0:o.supportConfigVo)?void 0:s.freshchat_script_url)&&u.push({name:e("sidebar.footer.support"),icon:"customer-service-line",path:null==(c=null==(l=a.value)?void 0:l.supportConfigVo)?void 0:c.freshchat_script_url}),u},getConfigContactUsOptions:e=>{var t,r,n,i,o,s,l,c,u,d,p,m,h,g,f,v,y,b,w,C,k,A,x,P,S,_,I,T,z,E,D,R,M,j,q,L,O,N,U,F,B,W,V,H,G,Y,$,K,Z,J,Q,X,ee,te;const ae=window.__APP_CONFIG__,re=(null==ae?void 0:ae.contactUsIcons)||{},ne=[];return(null==(r=null==(t=a.value)?void 0:t.contactUsVo)?void 0:r.service_email)&&ne.push({name:e("contactUs.email"),subtitle:null==(i=null==(n=a.value)?void 0:n.contactUsVo)?void 0:i.service_email,icon:re.email,url:`mailto:${null==(s=null==(o=a.value)?void 0:o.contactUsVo)?void 0:s.service_email}`}),(null==(c=null==(l=a.value)?void 0:l.contactUsVo)?void 0:c.youtube_code)&&(null==(d=null==(u=a.value)?void 0:u.contactUsVo)?void 0:d.youtube_url)&&ne.push({name:e("contactUs.youtube"),subtitle:null==(m=null==(p=a.value)?void 0:p.contactUsVo)?void 0:m.youtube_code,icon:re.youtube,url:null==(g=null==(h=a.value)?void 0:h.contactUsVo)?void 0:g.youtube_url}),(null==(v=null==(f=a.value)?void 0:f.contactUsVo)?void 0:v.facebook)&&(null==(b=null==(y=a.value)?void 0:y.contactUsVo)?void 0:b.facebook_url)&&ne.push({name:e("contactUs.facebook"),subtitle:null==(C=null==(w=a.value)?void 0:w.contactUsVo)?void 0:C.facebook,icon:re.facebook,url:null==(A=null==(k=a.value)?void 0:k.contactUsVo)?void 0:A.facebook_url}),(null==(P=null==(x=a.value)?void 0:x.contactUsVo)?void 0:P.whatapp_help)&&(null==(_=null==(S=a.value)?void 0:S.contactUsVo)?void 0:_.whatapp_url)&&ne.push({name:e("contactUs.whatsapp"),subtitle:null==(T=null==(I=a.value)?void 0:I.contactUsVo)?void 0:T.whatapp_help,icon:re.whatsapp,url:null==(E=null==(z=a.value)?void 0:z.contactUsVo)?void 0:E.whatapp_url}),(null==(R=null==(D=a.value)?void 0:D.contactUsVo)?void 0:R.telegram)&&(null==(j=null==(M=a.value)?void 0:M.contactUsVo)?void 0:j.telegram_url)&&ne.push({name:e("contactUs.telegram"),subtitle:null==(L=null==(q=a.value)?void 0:q.contactUsVo)?void 0:L.telegram,icon:re.telegram,url:null==(N=null==(O=a.value)?void 0:O.contactUsVo)?void 0:N.telegram_url}),(null==(F=null==(U=a.value)?void 0:U.contactUsVo)?void 0:F.instagram)&&(null==(W=null==(B=a.value)?void 0:B.contactUsVo)?void 0:W.instagram_url)&&ne.push({name:e("contactUs.instagram"),subtitle:null==(H=null==(V=a.value)?void 0:V.contactUsVo)?void 0:H.instagram,icon:re.instagram,url:null==(Y=null==(G=a.value)?void 0:G.contactUsVo)?void 0:Y.instagram_url}),(null==(K=null==($=a.value)?void 0:$.contactUsVo)?void 0:K.discord)&&(null==(J=null==(Z=a.value)?void 0:Z.contactUsVo)?void 0:J.discord_url)&&ne.push({name:e("contactUs.discord"),subtitle:null==(X=null==(Q=a.value)?void 0:Q.contactUsVo)?void 0:X.discord,icon:re.discord,url:null==(te=null==(ee=a.value)?void 0:ee.contactUsVo)?void 0:te.discord_url}),ne},getSupportEmailMailto:()=>{var e,t,r;const n=null==(r=null==(t=null==(e=a.value)?void 0:e.contactUsVo)?void 0:t.service_email)?void 0:r.trim();return n?`mailto:${n}`:""},login:function(t){return new Promise(async(a,n)=>{var i,s;const{userName:l,loginChannel:c,deviceToken:u,userEmail:d,valCode:h,valAppId:g,valState:f}=t;try{const t=await Em.userLogin({userName:l,loginChannel:c,deviceToken:u,userEmail:d,valCode:h,valAppId:g,valState:f}),{token:n,refreshToken:v,isRegister:y,isProfileCompleted:b,isTempGuest:w}=t;Vs(Rs,n),Vs(Ms,v);const C=o[c]||c||"guest";y||(gm("login"),gm(`${C}_login`)),await m(),r.value||await p();const k=(null==(i=e.value)?void 0:i.userId)||(null==(s=e.value)?void 0:s.userUniqId);k&&(e=>{pm.setUserId(e)})(String(k)),y?(gm("register_success"),gm(`${C}_register_success`)):(gm("login_success"),gm(`${C}_login_success`)),!1===b&&!0!==w&&setTimeout(async()=>{const{useDialogStoreHook:e}=await Qs(async()=>{const{useDialogStoreHook:e}=await Promise.resolve().then(()=>al);return{useDialogStoreHook:e}},void 0);e().showProfileCompleteDialog=!0,gm("profile_complete_popup_show")},500),a()}catch(v){const e=o[c]||c||"guest";gm("login_fail"),gm(`${e}_login_fail`),n(v)}})},updateDiamondCount:function(e){d({diamondCount:e})},hydrateUserInfoFromCache:u,patchUserInfo:d,getUserInfo:m,logout:function(){return new Promise(async(e,t)=>{try{await Em.logout();await g(),window.location.href="/",e()}catch(a){await g(),window.location.href="/",e()}})},resetToken:function(e=!0){return(async()=>{try{await g(),e&&ih.replace({path:"/"})}catch(t){}})()},getUserConfig:()=>r.value?a.value:p(),getUserConfigData:p,redirectToLoginAfterRedirect:function(){(async()=>{await pm.flush()})().catch(()=>{});const e=Hs(Ns);e?(Gs(Ns),window.location.href=e):window.location.reload()},createTempGuest:async function(e){try{const t=await Em.createTempGuest({deviceToken:e}),{token:a,refreshToken:r}=t;return Vs(Rs,a),Vs(Ms,r),Vs(Bs,"true"),Vs(Ws,a),await m(),gm("temp_guest_create"),t}catch(t){throw t}},bindAccount:h,upgradeTempGuest:async function(e){return h(e)},clearTempGuestFlag:function(){Gs(Bs),Gs(Ws)}}});function sh(){return oh(jh)}const lh=re("route",()=>{const e=w(null);return{currentRoute:e,setRoute:function(t){e.value=t}}}),ch="/chat";class uh{static chat(e){return Pm({url:`${ch}/aggregate`,method:"post",data:e,hiddenToast:!0})}static chatMessageList(e,t){return Pm({url:`${ch}/messageList/${e}`,method:"get",params:t})}static chatRemoveHistory(e){return Pm({url:`${ch}/removeHistory`,method:"post",data:e})}static chatRemoveOneHistory(e){return Pm({url:`${ch}/removeOneHistory`,method:"post",data:e})}static chatHide(e){return Pm({url:`${ch}/hide`,method:"post",data:e})}static chatSessionList(e){return Pm({url:`${ch}/sessionList`,method:"post",data:e})}static chatSessionRemove(e){return Pm({url:`${ch}/sessionRemove`,method:"post",data:e})}static chatSuggest(e){return Pm({url:`${ch}/suggest`,method:"post",data:e,hiddenToast:!0})}}const dh=Object.freeze(Object.defineProperty({__proto__:null,default:uh},Symbol.toStringTag,{value:"Module"}));!function(e){function t(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var a=t(e),r={name:"zh-cn",weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"周日_周一_周二_周三_周四_周五_周六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),ordinal:function(e,t){return"W"===t?e+"周":e+"日"},weekStart:1,yearStart:4,formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日Ah点mm分",LLLL:"YYYY年M月D日ddddAh点mm分",l:"YYYY/M/D",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日dddd HH:mm"},relativeTime:{future:"%s内",past:"%s前",s:"几秒",m:"1 分钟",mm:"%d 分钟",h:"1 小时",hh:"%d 小时",d:"1 天",dd:"%d 天",M:"1 个月",MM:"%d 个月",y:"1 年",yy:"%d 年"},meridiem:function(e,t){var a=100*e+t;return a<600?"凌晨":a<900?"早上":a<1100?"上午":a<1300?"中午":a<1800?"下午":"晚上"}};a.default.locale(r,null,!0)}(ye);"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),"January_February_March_April_May_June_July_August_September_October_November_December".split("_");const ph=(e,t)=>{let a="YYYY-MM-DD";if(t===_s.ZH)a="YYYY年M月D日";else a="MMM D, YYYY";return be(e).locale(t).format(a)},mh=()=>Math.floor(Date.now()/1e3),hh=e=>be(e).isSame(be(),"day"),gh=e=>be(e).isSame(be().subtract(1,"day"),"day"),fh=(e,t)=>{const a=be(1e3*e);return hh(a)?a.locale(t).format("HH:mm"):ph(a,t)},vh=(e,t)=>{const a=be(1e3*e);return ph(a,t)},yh=e=>e>=1e6?`${(e/1e6).toFixed(1)}m`:e>=1e3?`${(e/1e3).toFixed(1)}k`:`${e}`,bh=e=>/^[\u4e00-\u9fa5]+$/.test(e),wh=()=>/Android/i.test(navigator.userAgent)?"android":/iPhone|iPad|iPod/i.test(navigator.userAgent)?"ios":"pc",Ch=()=>`${window.location.protocol}//${window.location.hostname}:${window.location.port}`,kh=e=>{const{host:t,path:a}=e;return t&&a?`${t}/${a}`:""};var Ah=(e=>(e.AVATAR="avatar",e.ALBUM="album",e.COVER="cover",e))(Ah||{});const xh=(e,t="avatar",a,r=!1)=>{var n,i,o;if(!e)return"";if(!e.startsWith("http://")&&!e.startsWith("https://"))return e;if(r)return e;const s=`x-process=fit_in,w_${{avatar:(null==(n=window.__APP_CONFIG__)?void 0:n.avatarImageWidth)||80,cover:(null==(i=window.__APP_CONFIG__)?void 0:i.coverImageWidth)||300,album:(null==(o=window.__APP_CONFIG__)?void 0:o.albumImageWidth)||480}[t]||300}`,l=e.includes("?")?"&":"?";return`${e}${l}${s}`},Ph=re("chat",()=>{const e=w({}),t=w([]),a=w(12),r=w([]),n=w({});let i=null;function o(){var e;return(null==(e=sh().userInfo)?void 0:e.userUniqId)||""}function l(){const e=Hs(Ls);return Array.isArray(e)?{}:e||{}}function c(){const e=o();if(!e)return;const t=l();t[e]=r.value,Vs(Ls,t)}function u(){const e=o();if(!e)return;const a=Hs(Os)||{};a[e]=t.value,Vs(Os,a)}function d(e){const t=r.value.find(t=>t.userId==e);return t?t.unreadCount:0}function p(e){const t=r.value.find(t=>t.userId===e);t?t.unreadCount+=1:r.value.push({userId:e,unreadCount:1}),c()}function m(e){const t=r.value.findIndex(t=>t.userId===e);t>-1&&(r.value.splice(t,1),c())}function h(){return new Promise(async(e,r)=>{try{const r={page:1,size:a.value},{list:n}=await uh.chatSessionList(r);t.value=(null==n?void 0:n.map(e=>{const t=d(e.userId);return{userAvatar:e.userAvatar||e.headerUrl,nickName:e.nickName||e.personName,userId:Number(e.userId),lastUpdateAt:e.lastUpdateAt,chatStatus:e.chatStatus,unreadCount:t,isLive:e.isLive}}))||[],t.value.length>0&&u(),e()}catch(n){t.value=[],r(n)}})}function g(e){const r=t.value.findIndex(t=>t.userId==e.userId);if(-1===r)t.value=[{...e,lastUpdateAt:mh()},...t.value].slice(0,a.value);else{const a={...t.value[r],...e,lastUpdateAt:mh()},n=t.value.filter(t=>t.userId!=e.userId);t.value=[a,...n]}u()}async function f(){try{if($s().isIpAccess)return;if(!sh().isHasUserInfo)return;try{const t={chatType:7};e.value&&e.value.userId&&(t.userId=e.value.userId),gm("greet_init");const a=await uh.chat(t);a.personInfo&&a.personInfo.userId&&(g(a.personInfo),p(a.personInfo.userId),gm("greet_success"))}catch(t){gm("greet_fail")}}catch(t){}}function v(){i&&(clearTimeout(i),i=null)}return s(()=>r.value,()=>{t.value=t.value.map(e=>({...e,unreadCount:d(e.userId)}))},{deep:!0}),{chats:t,getChats:h,delChat:function(e){return new Promise(async(a,r)=>{try{const r=uh.chatRemoveHistory;await r({userId:e});const n=function(e){return t.value.find(t=>t.userId==e)}(e);n&&await h(),m(e),a()}catch(n){r(n)}})},editChat:g,currentChat:e,setCurrentChat:t=>{e.value=t},unreadList:r,getUnreadCount:d,getTotalUnreadCount:function(){return r.value.reduce((e,t)=>e+t.unreadCount,0)},increaseUnreadCount:p,clearUnreadCount:m,loadCurrentUserUnreadList:function(){const e=o();if(!e)return void(r.value=[]);const t=l();r.value=t[e]||[]},loadChatsFromCache:function(){const e=o();if(!e)return;const a=(Hs(Os)||{})[e];Array.isArray(a)&&a.length>0&&(t.value=a)},startAutoGreet:function(){v();const e=()=>{const t=function(){const e=3e6;return Math.floor(600001*Math.random())+e}();i=setTimeout(async()=>{await f(),e()},t)};e()},stopAutoGreet:v,executeAutoGreet:f,consumePendingMessages:function(e){const t=n.value[e]||[];return delete n.value[e],t},hasPendingMessages:function(e){var t;return((null==(t=n.value[e])?void 0:t.length)||0)>0},addPendingMessage:function(e,t){n.value[e]||(n.value[e]=[]),n.value[e].push(t),p(e)}}}),Sh=Object.freeze(Object.defineProperty({__proto__:null,useChatStore:Ph},Symbol.toStringTag,{value:"Module"}));class _h{static goodsList(){return Pm({url:"/goods/v2/list",method:"post"})}static payCreateOrder(e){return Pm({url:"/pay/createOrder",method:"post",data:e})}static rechargeHistoryList(e){return Pm({url:"/pay/rechargeHistory",method:"post",data:e})}static expenseHistoryList(e){return Pm({url:"/pay/expenseHistory",method:"post",data:e})}}const Ih=vm.global.t;var Th=(e=>(e.COMPLETED="1",e.PENDING="0",e.FAILED="2",e))(Th||{});const zh="order.status",Eh={1:{icon:"checkbox-circle-line",color:"rgba(var(--order-status-completed-rgb), 1)",type:Ih(`${zh}.completed.type`),title:Ih(`${zh}.completed.title`),description:Ih(`${zh}.completed.description`)},0:{icon:"time-line",color:"rgba(var(--order-status-pending-rgb), 1)",type:Ih(`${zh}.pending.type`),title:Ih(`${zh}.pending.title`),description:Ih(`${zh}.pending.description`)},2:{icon:"error-warning-line",color:"rgba(var(--order-status-failed-rgb), 1)",type:Ih(`${zh}.failed.type`),title:Ih(`${zh}.failed.title`),description:Ih(`${zh}.failed.description`)}},Dh=re("order",()=>{const e=w(null),t=w(!1),a=w(!1),r=w(""),n=w(null),i=w(null);let o=null,l=0;function c(){var e;return(null==(e=sh().userInfo)?void 0:e.userUniqId)||""}function u(){return Hs(Us)||{}}function d(){const t=c();if(!t)return;const a=u();delete a[t],Vs(Us,a),e.value=null}const p=x(()=>!!e.value&&(!(Date.now()>e.value.expiresAt)||(d(),!1)));function m(){return!!sh().isHasUserInfo&&(!!e.value&&(!(Date.now()>e.value.expiresAt)||(d(),!1)))}async function h(){if(!e.value)return null;try{const{list:t}=await _h.rechargeHistoryList({page:1,orderSn:e.value.orderSn});if(t&&Array.isArray(t)&&t.length>0){const e=t[0];return i.value=e,String(e.status)}return null}catch(t){return null}}async function g(){if(!m())return void v();const e=await h();if(e){if(e===Th.COMPLETED||e===Th.FAILED)return void(await y(e));e===Th.PENDING&&(a.value||(t.value=!1,n.value=e,a.value=!0))}l++;let r=3e3;l>20?r=1e4:l>10&&(r=5e3),o=setTimeout(()=>{g()},r)}function f(){m()&&(v(),l=0,g())}function v(){o&&(clearTimeout(o),o=null),l=0}async function y(e){v(),d();const r=sh();if(await r.getUserInfo(),e===Th.COMPLETED){const e={},t=c();t&&(e.userId=String(t)),i.value&&(i.value.userMoney&&(e.amount=String(i.value.userMoney),e.value=i.value.userMoney),i.value.currencyType&&(e.currency=i.value.currencyType,e.currencyUnit=i.value.currencyType),i.value.orderSn&&(e.orderId=i.value.orderSn,e.transaction_id=i.value.orderSn)),gm("coin_order_success",e),i.value=null}else e===Th.FAILED&&(gm("coin_order_fail"),i.value=null);t.value=!1,n.value=e,a.value=!0}function b(){v(),d(),t.value=!1,a.value=!1,i.value=null,n.value=null,r.value="",gm("coin_order_cancel")}return s(()=>e.value,e=>{e&&p.value?f():v()},{immediate:!0}),{currentOrder:e,hasPendingOrder:p,showPayDialog:t,showStatusDialog:a,payUrl:r,orderStatus:n,loadCurrentUserOrder:function(){const t=c();if(!t)return void(e.value=null);const a=u()[t];a&&Date.now()>a.expiresAt?d():e.value=a||null},saveOrder:function(t){const a=c();if(!a)return;const r=u(),n=Date.now()+6e5;r[a]={orderSn:t,expiresAt:n},Vs(Us,r),e.value={orderSn:t,expiresAt:n}},clearCurrentUserOrder:d,openPayDialog:function(e){r.value=e,n.value=Th.PENDING,a.value=!0,t.value=!0},handlePayDialogClose:function(){t.value=!1,b()},handleStatusDialogClose:function(){a.value=!1,n.value===Th.PENDING&&b()},cancelOrder:b,stopPolling:v,triggerImmediateCheck:async function(){if(!m())return;const e=await h();e&&(e===Th.COMPLETED||e===Th.FAILED?await y(e):e===Th.PENDING&&(t.value=!1,n.value=e,a.value=!0))}}});function Rh(){return Dh(jh)}const Mh=Object.freeze(Object.defineProperty({__proto__:null,useOrderStore:Dh,useOrderStoreHook:Rh},Symbol.toStringTag,{value:"Module"})),jh=oe();const qh={DocumentCopy:Be,ArrowDown:Fe,ArrowUp:Ue,Close:Pe,Check:Ne,Upload:Oe,Delete:Le,Edit:qe,Search:je,Plus:Me,Minus:Re,Loading:xe,Star:De,Warning:Ee,InfoFilled:Se,SuccessFilled:Te,CircleClose:ke,CircleCheck:Ae,QuestionFilled:ze};const Lh={"arrow-right-up-line":ea,"arrow-left-s-line":Xt,"compass-3-line":Qt,"vip-crown-line":Jt,"vip-diamond-fill":Zt,"coins-line":Kt,"message-3-line":$t,"download-2-line":Yt,"chat-3-line":Gt,"heart-line":Ht,"shield-check-line":Vt,"lock-line":Wt,"check-line":Bt,"sparkling-2-line":Ft,"logout-box-line":Ut,"more-2-line":Nt,"send-plane-fill":Ot,"pencil-fill":Lt,"global-line":qt,"menu-line":jt,"download-line":Mt,"edit-line":Rt,"safari-line":Dt,"share-line":Et,"share-2-line":zt,"add-box-line":Tt,"more-fill":It,"mobile-download-fill":_t,"file-shield-2-line":St,"file-list-2-line":Pt,"hand-heart-line":xt,"add-line":At,"arrow-right-s-line":kt,"arrow-left-line":Ct,"delete-bin-line":wt,"close-fill":bt,"bard-fill":yt,"chat-smile-ai-line":vt,"information-line":ft,"heart-fill":gt,"chat-3-fill":ht,link:mt,"search-line":pt,"user-line":dt,"facebook-line":ut,"twitter-fill":ct,"instagram-fill":lt,"arrow-right-line":st,"flag-line":ot,"lightbulb-line":it,"lightbulb-fill":nt,"subtract-line":rt,"coin-line":at,"send-plane-line":tt,"delete-bin-2-line":et,"chat-1-line":Xe,"trophy-line":Qe,"customer-service-line":Je,"mail-line":Ze,"arrow-up-s-line":Ke,"arrow-down-s-line":$e,"checkbox-circle-line":Ye,"error-warning-line":Ge,"time-line":He,"file-copy-line":Ve,"eye-off-line":We};const Oh=T({__name:"index",props:{name:{},size:{default:16},color:{default:"var(--font-color)"}},setup(e){const t=e,a=x(()=>function(e){const t=e.startsWith("ri-")?e.slice(3):e;return Lh[t]}(t.name)),r=x(()=>`${parseInt(t.size)}px`);return(t,n)=>(z(),H(G(a.value),{size:r.value,color:e.color},null,8,["size","color"]))}}),Nh={key:0,class:"dialog-common-container-title"},Uh={key:1,class:"dialog-common-container-description"},Fh=T({__name:"index",props:{visible:{type:Boolean,default:!1},width:{type:Number,default:635},title:{type:String,default:""},description:{type:String,default:""},noOverflow:{type:Boolean,default:!1}},emits:["closed"],setup(e,{emit:t}){const a=t,r=()=>{a("closed")},n=Ys(),i=x(()=>n.device===Es.MOBILE);return(t,a)=>{const n=Oh,o=ds;return z(),H(o,R({"model-value":e.visible,width:A(i)?"85%":e.width,"show-close":!1,onClosed:r},t.$attrs,{class:"dialog-common"}),{footer:q(()=>[D(t.$slots,"footer")]),default:q(()=>[V("div",{class:O(["dialog-common-container",{"no-overflow":e.noOverflow}])},[j(n,{class:"dialog-common-container-close",name:"close-fill",size:"20",color:"#9CA3AF",onClick:ee(r,["stop","prevent"])}),e.title?(z(),E("div",Nh,U(e.title),1)):F("",!0),e.description?(z(),E("div",Uh,U(e.description),1)):F("",!0),D(t.$slots,"default")],2)]),_:3},16,["model-value","width"])}}}),Bh={class:"dialogPay"},Wh=["src"],Vh=T({__name:"index",props:{visible:{type:Boolean},url:{}},emits:["closed"],setup(e,{emit:t}){const a=t,r=Rh(),n=w(null),i=()=>{try{if(n.value&&n.value.contentWindow){const e=n.value.contentWindow.location.href;(e=>{try{return new URL(e).searchParams.get("mchOrderNo")}catch(t){return null}})(e)&&r.triggerImmediateCheck()}}catch(e){}},o=e=>{if(e.data&&"paymentCallback"===e.data.type){e.data.orderSn&&r.triggerImmediateCheck()}};g(()=>{window.addEventListener("message",o)}),se(()=>{window.removeEventListener("message",o)});const s=()=>{a("closed")};return(t,a)=>{const r=Fh;return z(),H(r,{visible:e.visible,onClosed:s,width:375,"close-on-click-modal":!1,"z-index":"9999",class:"dialogPay"},{default:q(()=>[V("div",Bh,[V("iframe",{ref_key:"payIframeRef",ref:n,src:e.url,frameborder:"0",width:"100%",height:"100%",class:"pay-iframe",onLoad:i},null,40,Wh)])]),_:1},8,["visible"])}}}),Hh={class:"order-status-view"},Gh={class:"order-status-view-icon"},Yh={class:"order-status-view-title"},$h={class:"order-status-view-description"},Kh=(e,t)=>{const a=e.__vccOpts||e;for(const[r,n]of t)a[r]=n;return a},Zh=Kh(T({__name:"OrderStatusView",props:{status:{}},setup(e){const t=e,a=x(()=>Eh[t.status]);return(e,t)=>{const r=Oh;return z(),E("div",Hh,[V("div",Gh,[j(r,{name:A(a).icon,size:"60",color:A(a).color},null,8,["name","color"])]),V("div",Yh,U(A(a).title),1),V("div",$h,U(A(a).description),1)])}}}),[["__scopeId","data-v-72e84d24"]]),Jh={class:"dialogPayCallback"},Qh=T({__name:"index",props:{visible:{type:Boolean},status:{}},emits:["closed"],setup(e,{emit:t}){const a=e,r=t,n=x(()=>a.status),i=()=>{r("closed")};return(t,a)=>{const r=Zh,o=Fh;return z(),H(o,{visible:e.visible,onClosed:i,width:375,"z-index":"9998","close-on-click-modal":!1,class:"dialogPayCallback"},{default:q(()=>[V("div",Jh,[j(r,{status:A(n)},null,8,["status"])])]),_:1},8,["visible"])}}}),Xh={class:"webview-guide-content"},eg={class:"webview-guide-title"},tg={class:"webview-guide-desc"},ag={class:"webview-guide-url-section"},rg={class:"webview-guide-url-label"},ng={class:"webview-guide-url-box"},ig={class:"webview-guide-url-text"},og={class:"webview-guide-steps"},sg={class:"webview-guide-step"},lg={class:"webview-guide-step-text"},cg={class:"webview-guide-step"},ug={class:"webview-guide-step-text"},dg={class:"webview-guide-step"},pg={class:"webview-guide-step-text"},mg=Kh(T({name:"DialogWebViewGuide",__name:"index",props:{visible:{type:Boolean}},emits:["closed"],setup(e,{emit:t}){const{t:a}=Ce(),r=el(),n=t,i=w(!1),o=x(()=>window.location.href),s=()=>{r.closeWebViewGuide(),n("closed")},l=async()=>{try{await navigator.clipboard.writeText(o.value),i.value=!0,Ps.success(a("dialogWebViewGuide.copied")),setTimeout(()=>{i.value=!1},2e3)}catch(e){try{const e=document.createElement("textarea");e.value=o.value,e.style.position="fixed",e.style.left="-9999px",document.body.appendChild(e),e.select(),document.execCommand("copy"),document.body.removeChild(e),i.value=!0,Ps.success(a("dialogWebViewGuide.copied")),setTimeout(()=>{i.value=!1},2e3)}catch(t){Ps.error(a("dialogWebViewGuide.copyFailed"))}}};return(t,a)=>{const r=Fh;return z(),H(r,{visible:e.visible,onClosed:s,width:400,class:"webview-guide-dialog-wrapper"},{default:q(()=>[V("div",Xh,[a[3]||(a[3]=V("div",{class:"webview-guide-icon"},[V("i",{class:"ri-error-warning-line"})],-1)),V("div",eg,U(t.$t("dialogWebViewGuide.title")),1),V("div",tg,U(t.$t("dialogWebViewGuide.desc")),1),V("div",ag,[V("div",rg,U(t.$t("dialogWebViewGuide.currentUrl")),1),V("div",ng,[V("span",ig,U(o.value),1)])]),V("button",{class:O(["webview-guide-copy-btn",{copied:i.value}]),onClick:l},[V("i",{class:O(i.value?"ri-check-line":"ri-file-copy-line")},null,2),V("span",null,U(i.value?t.$t("dialogWebViewGuide.copied"):t.$t("dialogWebViewGuide.copyLink")),1)],2),V("div",og,[V("div",sg,[a[0]||(a[0]=V("span",{class:"webview-guide-step-number"},"1",-1)),V("span",lg,U(t.$t("dialogWebViewGuide.steps.step1")),1)]),V("div",cg,[a[1]||(a[1]=V("span",{class:"webview-guide-step-number"},"2",-1)),V("span",ug,U(t.$t("dialogWebViewGuide.steps.step2")),1)]),V("div",dg,[a[2]||(a[2]=V("span",{class:"webview-guide-step-number"},"3",-1)),V("span",pg,U(t.$t("dialogWebViewGuide.steps.step3")),1)])])])]),_:1},8,["visible"])}}}),[["__scopeId","data-v-7a46408c"]]),hg={class:"gender-selector"},gg=["onClick"],fg=["src","alt"],vg={class:"gender-label"},yg=Kh(T({__name:"index",props:{modelValue:{default:null},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},initialValue:{default:null}},emits:["update:modelValue"],setup(e,{emit:t}){const a=e,r=t,{t:n}=Ce(),i=x(()=>[{value:1,label:n("profileComplete.genderOptions.male"),icon:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAHqADAAQAAAABAAAAHgAAAADKQTcFAAADDUlEQVRIDa2Wu2tUQRTG7y5GVHwQFyMa0IgGfBRRwUJBSEBFGwuxExvBwj/H1lZSaGFAiwgWCTYSBGMKjaCSRAiiEoPr+4Hr77t3Rubuzj37PPDN63znnJlzZ+ZOKemx1Gq1jbjcbLhdKZVKP0sGoW0VQXdgdBWUDeNv6K5bBMO2K9UGrCs9XbGmE0m1snAOrJHeyY2w4we7qvl+X3AgaBJDVGeB4vxxNZX9LVJCp4ULegn7PvAbTIa+er5iOY8EHWf4V1uBcbIOgwGwCWiiSuMqKf1I3SDwdzEYrnQc7iLjO0Ny4YohHoJ4FOwBDbsf/Qrjz8EjHOuIeBml4dObBvWKsG4IjMPtEM6DwZAYaVcYOwmOYTNF8BnHeeLqacbeuLaqKvjr+tXcccLBfhQXwFpH+EA9B16DT0CbRDeTJnUQHADeh3j3CKbdGxX862glcN56I20IpfQyUFoV4D6YheRnSTcv2NRnZw7+RJ4V76WBcaC79RpYD/S9bmpW1E0FW31PZUmrl0xiO5M1i0u/acagKKhWd6vVoHILV9m5A5bVR8aYjK5FU8qQ+mEcdqzHOFoyLSJKF/wuqhrQ8TseoeWGtGKlSCnXah+CjoTg7zCcd8baeKYo8LBjLGH81WQ3V+pcSypkcmvWjJcKrFRL/DfKep2VoQ/vN+pJgXUuJekfJWt2XIY+vN+oMwXWrpT0ZVVXZeij8CJRBAX2s9zSVcjMOPTx2fKnwP6i2GsRW9R5Hzoh7y0bBX7hCP3sxCGLbOmwla8Rx1nghPyw+CK/BD4tp50Dy6ZIdwTFNqf0f6giblJmZtpc044xSH3KtVuumKz+OnpbSZbx+SxrFpdasWQWvEpbSXICR2daXTm83djpr6YdreeNrs6mkv6dxMKB7tgrYEB9RJfBA2a/qE69wNc5TR8C1FqANtRt+H7P0C2W/4FFccEv0twXmKzSjj0EtFKfse+0FXQhsDObucBiElzOtFFGgR54luhv9BTo6VO1iPW6hsCewAT0zYaBnkPaPLlXJn2dhnkCKiNtyz99lN3q3p2cbAAAAABJRU5ErkJggg=="},{value:2,label:n("profileComplete.genderOptions.female"),icon:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB8AAAAeCAYAAADU8sWcAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAH6ADAAQAAAABAAAAHgAAAABN5/xGAAACzklEQVRIDc2XzUtVQRTAvZnRhyiZFVlSbcJdBgVJyFtYm4SEFvUXCBEVtZJahbTRIKhoUzuDoCJSiGppZB8QfSxKi0AsCEmKkoI0yufvvOY85t03d968d1104Pfm3PM5d2buoFFVBZLNZheT1gFdsBOaYCVMwScYhsEoip4yLozQNIID8B5C5AlB7UndoyRH3E6RFdgGYL/lm0F/AOPwDdZAC7RBNaj0oZxiJebUEDzSuB5egMokyiGQCRUJ9kY4DT9A5RbKoqJgn0ES4K5WYLwDdb4c9RG3EV6Byln1BY1kndBMxptQ1uyJr4WXoLI7tLEs91eTNcq4PCgxFkReM3w3dZ4zlj5rBB03CTJ0xmqW9Uj+SauWfKZ+IXjYJLzzR5b2UqcOZk29C94MgpbAHxPc7w0OdFLrvqn3RlJ8h2cdfv1Wc8GBPXxhWmeDBPmay4WhItfmQshnU0S2YKmv+bTVrd7S06haZ5bbbsbXfNLqssnS06ibTbJd212PpXlrDojc36mEOtXwxdS7IcV8by7+QflBdpG05Z9a8e8+MleZ7KGSVWjYAvq53S6ZkBBAjRoYA5EpqC0IxSCNHkEv5K8/9CugcrQgKfCBZH8NAo5pB8bLkJsA42r4ACKyCocDe1YRK/t8HlRGUGqK8jE2wGuNYrQn0MrzT8t3HV1PblEtMeDfAQ+tnAl0++4ozBMnJE1gG76PoPIb5R4cgb3QBl3QA7J9c6DyDGV9YTfHE0HxCVzFpluwFn0A/kKI/CKoD5Y5WrlNBMsb2A3yWyAZ+LbCRbBXgse8yOqdgWZ3hwQrCRnQ/bWXTk5s/ivQdGxNsB32gJyNRvWVNZKYAW0sJ7sb5C1UnBMoq4krmOoZsBsflDhs8TNwyZVfsY0G7a7GWjA2AdkKvSY1pPKRYo9BRJY698bxathlBa7Bubgv1TMF5Q/FMbD/G0lV879PngdfnsxQ/KyVWQAAAABJRU5ErkJggg=="},{value:3,label:n("profileComplete.genderOptions.other"),icon:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAAWCAYAAAA1vze2AAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAGaADAAQAAAABAAAAFgAAAADaowCPAAACOElEQVRIDY2UXUsVURSGZ8wvhFQsgzQQPxAvDL1IEEo4F55O3njtT/DGC/+dx8NBUCMCg8gu8sJCjESFQJEoK8fnHdeWcWb2jAvWrHevtd619p79EQQeiaKoFX3kCd9xk9eJdt9xJgYtCZyGizhWIFfSgeSYeBfjZXQVPJCMOVzUpN2S5iAXrahCXi8aog/QjBQ12SQ7QkWsZZgKRtETzAuLfQvD8DAvz9sEwg8IH400TsGxnAJv8KmGJrOWE49d3iZGaGL/GK7R6PZ3gCfwj1hsh0kdG86YwiYQL2BsGqsfOyNMg1bMa2HkN7oRI8+nsIlx3mN/Gq7QQKdpFu0z3waT+WU415Q2ocA/mHVjd2K1gjkbn2J3DHtNaRMxabSH2bcqU9gOw2vE/hv2mpDlq9ES+sybdRNQnlbiRMXdoXC+tP2Lo6EN1EUaT0fvMdZJ0/6UyaRuqU6LfkHZSrTRo8o30Sp2Ud0Rn1wS+BA38WU4P5NoA6+gegRV3O1Jkz3ZYlwo99p4KrxC3StbB59YVb1rDw17TWkTivTAfmkVjrB6atwT0g6et5jXlDaBWUV1QCQ6slfoV/CX2BMEU0xk0HCuKWwCeQjWpDE/U/wgUWUd7O7IArne/fU2gaSYXlmJbn0jRvahoZ6adzbUyXxuOGO8TcicRp8aY5uiZxl2EOhk6RGVVJmY9igjRU10dyTn6NsYpT401nFumlunbDiVEg/dhubFPuHUzLTZeh58otOm3/UY/Z6XdA3EP5CyQOwdlQAAAABJRU5ErkJggg=="}]),o=x(()=>a.readonly&&a.modelValue&&0!==a.modelValue?i.value.filter(e=>e.value===a.modelValue):i.value);return(t,n)=>(z(),E("div",hg,[(z(!0),E(X,null,le(o.value,t=>(z(),E("div",{key:t.value,class:O(["gender-card",{active:e.modelValue===t.value,disabled:e.disabled||e.readonly}]),onClick:e=>{return n=t.value,void(a.disabled||a.readonly||r("update:modelValue",n));var n}},[V("img",{src:t.icon,alt:t.label,class:"gender-icon"},null,8,fg),V("span",vg,U(t.label),1)],10,gg))),128))]))}}),[["__scopeId","data-v-bef86bf5"]]),bg=["value","placeholder","disabled"],wg={class:"calendar-header"},Cg={class:"header-selectors"},kg=["value"],Ag=["value"],xg={class:"header-arrows"},Pg=["src"],Sg=["src"],_g={class:"calendar-weekdays"},Ig={class:"calendar-days"},Tg=["onClick"],zg={class:"day-number"},Eg=Kh(T({__name:"index",props:{modelValue:{default:null},placeholder:{default:"MM/DD/YYYY"},disabled:{type:Boolean,default:!1},minAge:{default:0}},emits:["update:modelValue"],setup(e,{emit:t}){var a,r;const n=e,i=t,{t:o}=Ce(),l=w(null),c=w(null),u=w(!1),d=w(n.modelValue?be.unix(n.modelValue):null),p=w((null==(a=d.value)?void 0:a.month())??be().month()),m=w((null==(r=d.value)?void 0:r.year())??be().year()),h=x(()=>d.value?d.value.format("MM/DD/YYYY"):""),f=x(()=>{if(!l.value)return{};const e=l.value.getBoundingClientRect();return{position:"fixed",top:e.top-450-8+"px",left:`${e.left+e.width/2}px`,transform:"translateX(-50%)"}}),v=x(()=>[{value:0,label:o("common.months.january")||"January"},{value:1,label:o("common.months.february")||"February"},{value:2,label:o("common.months.march")||"March"},{value:3,label:o("common.months.april")||"April"},{value:4,label:o("common.months.may")||"May"},{value:5,label:o("common.months.june")||"June"},{value:6,label:o("common.months.july")||"July"},{value:7,label:o("common.months.august")||"August"},{value:8,label:o("common.months.september")||"September"},{value:9,label:o("common.months.october")||"October"},{value:10,label:o("common.months.november")||"November"},{value:11,label:o("common.months.december")||"December"}]),y=x(()=>{const e=be().year(),t=[];for(let a=e-100;a<=e+10;a++)t.push(a);return t}),b=x(()=>["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]),C=x(()=>{const e=[],t=be().year(m.value).month(p.value).date(1),a=t.endOf("month"),r=t.day(),i=a.date(),o=t.subtract(1,"day");for(let n=r-1;n>=0;n--){const t=o.subtract(n,"day");e.push({key:t.format("YYYY-MM-DD"),day:t.date(),date:t,isCurrentMonth:!1,isSelected:!1,isToday:!1,isDisabled:!1})}const s=be().startOf("day"),l=n.minAge>0?s.subtract(n.minAge,"year"):null;for(let n=1;n<=i;n++){const a=t.date(n);e.push({key:a.format("YYYY-MM-DD"),day:n,date:a,isCurrentMonth:!0,isSelected:!!d.value&&a.isSame(d.value,"day"),isToday:a.isSame(s,"day"),isDisabled:a.isAfter(s)||!!l&&a.isAfter(l)})}const c=42-e.length;for(let n=1;n<=c;n++){const t=a.add(n,"day");e.push({key:t.format("YYYY-MM-DD"),day:t.date(),date:t,isCurrentMonth:!1,isSelected:!1,isToday:!1,isDisabled:!1})}return e}),k=()=>{n.disabled||(u.value=!u.value)},P=e=>{const t=e.target,a=c.value;!l.value||l.value===t||l.value.contains(t)||a&&(a===t||a.contains(t))||(u.value=!1)},S=()=>{const e=be().year(m.value).month(p.value).subtract(1,"month");p.value=e.month(),m.value=e.year()},_=()=>{const e=be().year(m.value).month(p.value).add(1,"month");p.value=e.month(),m.value=e.year()};s(()=>n.modelValue,e=>{e?(d.value=be.unix(e),p.value=d.value.month(),m.value=d.value.year()):d.value=null}),g(()=>{window.addEventListener("scroll",I,!0),window.addEventListener("resize",I)}),se(()=>{window.removeEventListener("scroll",I,!0),window.removeEventListener("resize",I)});const I=()=>{u.value&&(u.value=!1)},T={mounted(e,t){e._clickOutside=e=>{t.value(e)},document.addEventListener("click",e._clickOutside)},unmounted(e){e._clickOutside&&(document.removeEventListener("click",e._clickOutside),delete e._clickOutside)}};return(t,a)=>$((z(),E("div",{class:"date-picker",ref_key:"datePickerRef",ref:l},[V("div",{class:"date-input",onClick:k},[V("input",{type:"text",value:h.value,placeholder:e.placeholder,readonly:"",disabled:e.disabled,class:"input-field"},null,8,bg),a[2]||(a[2]=V("i",{class:"ri-calendar-line input-icon"},null,-1))]),(z(),H(J,{to:"body"},[j(B,{name:"calendar-fade"},{default:q(()=>[u.value?(z(),E("div",{key:0,class:"calendar-popup",style:L(f.value),ref_key:"calendarRef",ref:c},[V("div",wg,[V("div",Cg,[$(V("select",{"onUpdate:modelValue":a[0]||(a[0]=e=>p.value=e),class:"month-selector"},[(z(!0),E(X,null,le(v.value,e=>(z(),E("option",{key:e.value,value:e.value},U(e.label),9,kg))),128))],512),[[ce,p.value]]),$(V("select",{"onUpdate:modelValue":a[1]||(a[1]=e=>m.value=e),class:"year-selector"},[(z(!0),E(X,null,le(y.value,e=>(z(),E("option",{key:e,value:e},U(e),9,Ag))),128))],512),[[ce,m.value]])]),V("div",xg,[V("img",{src:A("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAIKADAAQAAAABAAAAIAAAAACshmLzAAACRElEQVRYCcWXzU4UQRSF7QEzIDEx8BAm8gS8ARsTlyZuNPEnkSdwg2HBM5AQtoStvoQbtpi4d+EKNCEoo8DwfT3VnZlMzwxVPd2e5DA9TNU9p+6trr6d3bsj+v1+xtAuXIKLcAF2oLiB1/AKXsJelmV9PmfCoFOBsEIP4TKcOT4EU/wPPMeIxiZiYsCwYoVX4MRxEyMPftDIBdRIZUYqA4dVrzLx/iBO7b//iHBWlY0xA4grugaL+tZWDwHcJ6eY0EyJEZGw8ibEFVRrLWiMG+AHs2HaR0yVI+dzYezVoJVHHBZzw82r5tPsqqFWjtxASIu7vS2sFKUoMqCjsQ3ZoBu18ix0Qj08ZNrGstpmwOO17uofE+NJ5ArU7GrAs70ONpj8Ce7BoqR3jbfkBB8sqXjKxEPoA2gLetjEYFEDPmxS8IZJrvo71MgJjMWCq49NmyLb8B08hq/gT5iCTkr6P6L0Fn6Fz6HpT4arj63bPnO+wXX4GtbBjQamNgwV0X/wv2fwC/wAd2HqbXytAduoWJwz4QX8DF/CA5hyO19pILWGf5n7HlqSTXgEjReDSzdhD9oupaZxh7mWxUYjZj+p2ctFOZMf8eUBbBO/6Y5+FSmzppVNY0OO1FJzULPQLNq9toWLokEtMqCwjkYaxobcqJGv3vilARyZljMYs5GMEQNj256X5S4NGCWk5ZTLJkwY07Z85OCrvPVCv/Z/XkzMhAitmn2bzWqlUcfNgKmOfzUbDhqyoZF2X06HTXgdMtLlcq6v57f0Pp3M/7w2NAAAAABJRU5ErkJggg=="),class:"arrow-btn",alt:"prev",onClick:S},null,8,Pg),V("img",{src:A("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAIKADAAQAAAABAAAAIAAAAACshmLzAAACQklEQVRYCcWXTU4UURSFqQYCSEgITNiBCa7AHTgxYUjCBInGRPaADNgD8WdqnMomGDmUhLkOnAAmnVZUoPm+x6sKna5ueFXdxUlOU6TevefUfT91K5u4J7rdbsbQGTgLp+AkbEFxBS/hBTyHf7Ms6/L3Tph0KBBWaAHOwTvHx2SK/4FtjGhsIAYmjE+s8DwcOG5g5psbGulAjZRWpDRxfOolAqdv8tT+/U+G07Jq9BlAXNFlmM9vbfWYwHVyggnNFOgRiU8+DnEF1VqOGv0GuGE1LHuPqWLkaC7MvRS1QsbbYi64Uc35MLtqqBUQDMSyuNqbwnw+FXkFdNS3IMfoRq1QhVacDw+ZpjGnthXweE19+lViHtd0rOaMBjzbU2DMPvwCn6YEloydNZkvlhR4oGxDXzqf4HNYFVMa8GWTim8EKPwdWo1XsAomNSCr4AdBa/Ar3IU7MBWtquK50BkX6/AIvoZvYRI04JzWwUuCn8Bj+C4x0ZUL0IahyjpwG+3BTXgIt2AbpuDSCthGpcKt+xFuwgO4AVPFCZm40IDbKQXGfIbP4Hv4Bv6DVXCexaN4heiU0/AF452+D1VUY4wt2s8giolF/nlUI1mV0N90R78sp3D+SpvGcHf0P2qFNRMMxGbR7rUpdPIGNa+AwjrqaRjH5EaNYscUBnBkWU5h3YNpmG9z254X010YMCqW5YTLcZgwp215z5dS6dZjV3gyPsyHCcIB8Xywb2v+0yx6yI1YDY00+3F624TXsSL2jyP9PL8G+cWcb/rrceYAAAAASUVORK5CYII="),class:"arrow-btn",alt:"next",onClick:_},null,8,Sg)])]),V("div",_g,[(z(!0),E(X,null,le(b.value,e=>(z(),E("div",{key:e,class:"weekday"},U(e),1))),128))]),V("div",Ig,[(z(!0),E(X,null,le(C.value,e=>(z(),E("div",{key:e.key,class:O(["day-cell",{"other-month":!e.isCurrentMonth,selected:e.isSelected,today:e.isToday,disabled:e.isDisabled}]),onClick:t=>(e=>{if(!e.isDisabled){if(!e.isCurrentMonth)return p.value=e.date.month(),void(m.value=e.date.year());d.value=e.date,i("update:modelValue",e.date.unix()),u.value=!1}})(e)},[V("span",zg,U(e.day),1)],10,Tg))),128))])],4)):F("",!0)]),_:1})]))])),[[T,P]])}}),[["__scopeId","data-v-23f42713"]]),Dg={class:"profile-complete-container"},Rg={class:"header"},Mg={class:"title"},jg={class:"subtitle"},qg={class:"form-item"},Lg={class:"form-label"},Og=["placeholder"],Ng={class:"form-item"},Ug={class:"form-label-row"},Fg={class:"form-label"},Bg={class:"form-hint"},Wg={class:"form-item"},Vg={class:"form-label"},Hg=["disabled"],Gg={key:0},Yg={key:1},$g=Kh(T({__name:"index",props:{visible:{type:Boolean}},emits:["closed"],setup(e,{emit:t}){const a=e,r=t,{t:n}=Ce(),i=sh(),o=x(()=>window.APP_NAME||"OnlyGF"),l=k({nickName:"",sex:null,birthday:null}),c=w(null),u=w(!1),d=x(()=>null!==c.value&&0!==c.value&&null!==l.sex&&0!==l.sex);s(()=>a.visible,e=>{e&&(()=>{const e=i.userInfo;e&&(e.nickName&&(l.nickName=e.nickName),e.sex&&0!==e.sex?(l.sex=e.sex,c.value=e.sex):(l.sex=e.sex||null,c.value=0),e.birthday&&0!==e.birthday&&(l.birthday=e.birthday))})()},{immediate:!0});const p=async()=>{if(!l.nickName||!l.nickName.trim())return void Ps.warning(n("profileComplete.nicknameRequired"));if(!l.sex)return void Ps.warning(n("profileComplete.genderRequired"));if(!l.birthday)return void Ps.warning(n("profileComplete.birthdayRequired"));const e=be.unix(l.birthday);if(be().startOf("day").diff(e,"year")<18)Ps.warning(n("profileComplete.birthdayUnderAge"));else{u.value=!0;try{await Rm.updateUserInfo({nickName:l.nickName.trim(),sex:l.sex,birthday:l.birthday}),await i.getUserInfo(),Ps.success(n("profileComplete.submitSuccess")),gm("profile_complete_success",{nickName:l.nickName.trim(),sex:l.sex,birthday:l.birthday}),r("closed")}catch(t){Ps.error((null==t?void 0:t.message)||n("profileComplete.submitFailed")),gm("profile_complete_fail",{error:(null==t?void 0:t.message)||"Unknown error"})}finally{u.value=!1}}},m=()=>{r("closed")};return(t,a)=>{const r=Fh;return z(),H(r,{visible:e.visible,width:592,"no-overflow":!0,onClosed:m},{default:q(()=>[V("div",Dg,[V("div",Rg,[V("h1",Mg,U(A(n)("profileComplete.title",{appName:o.value})),1),V("p",jg,U(A(n)("profileComplete.subtitle")),1)]),V("div",qg,[V("label",Lg,U(A(n)("profileComplete.nicknameLabel")),1),$(V("input",{"onUpdate:modelValue":a[0]||(a[0]=e=>l.nickName=e),type:"text",class:"nickname-input",placeholder:A(n)("profileComplete.nicknamePlaceholder"),maxlength:"50"},null,8,Og),[[ue,l.nickName]])]),V("div",Ng,[V("div",Ug,[V("label",Fg,U(A(n)("profileComplete.genderLabel")),1),V("span",Bg,U(A(n)("profileComplete.genderHint")),1)]),j(yg,{modelValue:l.sex,"onUpdate:modelValue":a[1]||(a[1]=e=>l.sex=e),readonly:d.value,"initial-value":c.value},null,8,["modelValue","readonly","initial-value"])]),V("div",Wg,[V("label",Vg,U(A(n)("profileComplete.birthdayLabel")),1),j(Eg,{modelValue:l.birthday,"onUpdate:modelValue":a[2]||(a[2]=e=>l.birthday=e),placeholder:A(n)("profileComplete.birthdayPlaceholder"),"min-age":18},null,8,["modelValue","placeholder"])]),V("button",{class:"submit-button",disabled:u.value,onClick:p},[u.value?(z(),E("span",Yg,[a[3]||(a[3]=V("i",{class:"ri-loader-4-line rotating"},null,-1)),N(" "+U(A(n)("common.submitting")||"Submitting..."),1)])):(z(),E("span",Gg,U(A(n)("profileComplete.submitButton")),1))],8,Hg)])]),_:1},8,["visible"])}}}),[["__scopeId","data-v-25f28f75"]]),Kg={key:0,class:"route-loading-overlay"},Zg={class:"route-loading-content"},Jg=["src"],Qg={key:0,class:"route-loading-avatar-live"},Xg={class:"route-loading-title"},ef={class:"route-loading-subtitle"},tf=Kh(T({__name:"index",setup(e){const t=Ys(),a=Zm(),{t:r}=Ce(),n=new Set,i=x(()=>a.skipInitialTransition?"":"route-loading-fade"),o=w(""),l=w(""),c=x(()=>t.device===Es.MOBILE),u=x(()=>a.avatarSize||(c.value?45:80)),d=x(()=>({width:`${u.value}px`,height:`${u.value}px`})),p=x(()=>({width:`${u.value}px`,height:`${u.value}px`})),m=x(()=>a.avatarUrl||""),h=x(()=>l.value),f=x(()=>a.backgroundUrl||Om()),v=x(()=>l.value?{backgroundImage:`url("${l.value}")`}:{}),y=x(()=>o.value||h.value),b=x(()=>String(a.title||"Please wait...").trim().replace(/\.+$/g,"")||"Please wait"),C=x(()=>a.subtitle||r("loading.title"));return s([()=>a.visible,m,h],([e,t,r])=>{if(!e)return void(o.value="");if(!t)return void(o.value=r);if(n.has(t))return void(o.value=t);o.value=r||t;const i=new Image;i.decoding="async",i.onload=()=>{n.add(t),a.visible&&m.value===t&&(o.value=t)},i.onerror=()=>{},i.src=t},{immediate:!0}),s([()=>a.visible,f],([e,t])=>{if(!e)return;const r=Om();if(!t)return void(l.value=r);const n=Um(t);!0!==n?!1!==n?(l.value="",Nm(t).then(e=>{a.visible&&f.value===t&&(l.value=e?t:t===r?"":r)})):l.value=t===r?"":r:l.value=t},{immediate:!0}),g(()=>{a.skipInitialTransition&&requestAnimationFrame(()=>{a.skipInitialTransition=!1})}),(e,t)=>(z(),H(B,{name:A(i)},{default:q(()=>[A(a).visible?(z(),E("div",Kg,[V("div",{class:"route-loading-backdrop",style:L(A(v))},null,4),V("div",Zg,[A(y)?(z(),E("div",{key:0,class:"route-loading-avatar-wrap",style:L(A(d))},[V("img",{src:A(y),alt:"avatar",class:"route-loading-avatar-img",style:L(A(p))},null,12,Jg),A(a).showLiveAvatar?(z(),E("span",Qg," Live ")):F("",!0)],4)):F("",!0),V("p",Xg,[N(U(A(b))+" ",1),t[0]||(t[0]=V("span",{class:"route-loading-dots","aria-hidden":"true"},[V("span",{class:"route-loading-dot"},"."),V("span",{class:"route-loading-dot"},"."),V("span",{class:"route-loading-dot"},".")],-1))]),V("p",ef,U(A(C)),1)])])):F("",!0)]),_:1},8,["name"]))}}),[["__scopeId","data-v-e55ebd32"]]),af=T({__name:"App",setup(e){const t=Ys();Zs(),Ph();const a=oh(),r=Dh(),n=el(),i=x(()=>t.locale);return s(()=>a.isHasUserInfo,e=>{e&&r.loadCurrentUserOrder()},{immediate:!0}),(e,t)=>{const a=de("router-view"),o=Qo;return z(),H(o,{locale:A(i)},{default:q(()=>[j(a),j(tf),A(r).showPayDialog?(z(),H(Vh,{key:0,visible:A(r).showPayDialog,url:A(r).payUrl,onClosed:A(r).handlePayDialogClose},null,8,["visible","url","onClosed"])):F("",!0),A(r).showStatusDialog?(z(),H(Qh,{key:1,visible:A(r).showStatusDialog,status:A(r).orderStatus||void 0,onClosed:A(r).handleStatusDialogClose},null,8,["visible","status","onClosed"])):F("",!0),A(n).showWebViewGuide?(z(),H(mg,{key:2,visible:A(n).showWebViewGuide,onClosed:A(n).closeWebViewGuide},null,8,["visible","onClosed"])):F("",!0),A(n).showProfileCompleteDialog?(z(),H($g,{key:3,visible:A(n).showProfileCompleteDialog,onClosed:t[0]||(t[0]=e=>A(n).showProfileCompleteDialog=!1)},null,8,["visible"])):F("",!0)]),_:1},8,["locale"])}}}),rf=["input","textarea","[contenteditable='true']","[contenteditable='']","[data-allow-contextmenu]"],nf=["img","video","[data-restrict-contextmenu]",".message-item",".message-content",".message-list",".message-wrapper",".right-messages",".chat-history-content",".character-chat-content-box-content-container",".photo-gallery-message",".other-image-message",".other-video-message",".upgradable-photo-message",".register-guide-message"],of="__restrictContextMenuHandler__",sf="__restrictContextMenuBinding__";let lf=!1;const cf=e=>{if("function"==typeof e.composedPath){const t=e.composedPath().filter(e=>e instanceof Element);if(t.length>0)return t}return e.target instanceof Element?[e.target]:[]},uf=(e,t)=>e.some(e=>t.some(t=>e.matches(t))),df=(e,t)=>{const a=cf(e);return 0!==a.length&&uf(a,t)},pf={mounted(e,t){e[sf]=t.value;const a=t=>{const a=e[sf],{enabled:r,allowSelectors:n}="boolean"==typeof(i=a)?{enabled:i,allowSelectors:rf}:{enabled:(null==i?void 0:i.enabled)??!0,allowSelectors:(null==i?void 0:i.allowSelectors)??rf};var i;r&&(df(t,n)||t.preventDefault())};e[of]=a,e.addEventListener("contextmenu",a,!0)},updated(e,t){e[sf]=t.value},unmounted(e){const t=e[of];t&&(e.removeEventListener("contextmenu",t,!0),delete e[of],delete e[sf])}};function mf(e){e.directive("restrict-contextmenu",pf),lf||"undefined"==typeof document||(document.addEventListener("contextmenu",e=>{df(e,rf)||((e,t)=>{const a=cf(e);return 0!==a.length&&uf(a,t)})(e,nf)&&e.preventDefault()},!0),lf=!0)}ta.configure({easing:"ease",speed:500,showSpinner:!1,trickleSpeed:200,minimum:.3});const hf="app-canonical-link",gf="app-seo-jsonld",ff=["id","type"],vf={home:"Home",characterList:"AI Characters",characterSearch:"Search",characterDetail:"Character",characterChat:"AI Chat",characterInteract:"Live Interaction",chatHistory:"Chat History",userCenter:"User Center",rechargeCenter:"Recharge Center",rechargeHistory:"Recharge History",webTutorial:"Web Tutorial",contactUs:"Contact Us",privacyPolicy:"Privacy Policy",termsService:"Terms of Service"};let yf=null;const bf=e=>e?e.replace(/\{appName\}/g,(()=>{var e,t,a;const r=null==(t=null==(e=window.__APP_CONFIG__)?void 0:e.seo)?void 0:t.title;return(null==(a=null==r?void 0:r.split(" - ")[0])?void 0:a.trim())||"OnlyGF"})()):e,wf=e=>{if(!e)return"/";if("/home"===e.path)return"/home";const t=new URLSearchParams;for(const r of ff){const a=e.query[r];"string"==typeof a&&a&&t.set(r,a)}const a=t.toString();return a?`${e.path}?${a}`:e.path},Cf=e=>{var t;return`${(null==(t=window.location)?void 0:t.origin)||""}${e.startsWith("/")?e:`/${e}`}`},kf=(e,t)=>{if(!t)return;let a=document.querySelector(`meta[name="${e}"]`);a?a.setAttribute("content",t):(a=document.createElement("meta"),a.setAttribute("name",e),a.setAttribute("content",t),document.head.appendChild(a))},Af=e=>{if(!e)return;let t=document.querySelector(`link[data-seo="${hf}"]`);t||(t=document.createElement("link"),t.setAttribute("rel","canonical"),t.setAttribute("data-seo",hf),document.head.appendChild(t)),t.setAttribute("href",e)},xf=e=>{var t;const a=(()=>{var e,t;const a=null==(e=window.__APP_CONFIG__)?void 0:e.seo;if((null==a?void 0:a.title)||(null==a?void 0:a.description)||(null==a?void 0:a.keywords))return{title:a.title,description:a.description,keywords:a.keywords};const r=null==(t=sh().userConfig)?void 0:t.interfaceConfig;return r?{title:r.title,description:r.description,keywords:r.keywords}:{}})(),r=(null==(t=null==e?void 0:e.meta)?void 0:t.seo)||{};return{title:r.title||a.title,description:r.description||a.description,keywords:r.keywords||a.keywords,canonical:r.canonical,jsonLdType:r.jsonLdType}},Pf=e=>{if(!e)return e;if(e.startsWith("seo.")){const{global:t}=vm,a=t.t(e);if(a===e){const a=t.messages.en;if(a){const t=e.split(".");let r=a;for(const e of t)r=null==r?void 0:r[e];if("string"==typeof r)return bf(r)}}return bf(a)}return bf(e)},Sf=(e,t)=>{if((()=>{const e=document.getElementById(gf);e&&e.remove()})(),!e||0===e.length)return;const a=(null==t?void 0:t.skipBreadcrumb)?null:(e=>{var t;if(!yf)return null;const a=(null==(t=window.location)?void 0:t.origin)||"",r=yf.path.split("/").filter(Boolean),n=r[r.length-1]||"home";return{"@context":"https://schema.org","@type":"BreadcrumbList",itemListElement:[{"@type":"ListItem",position:1,name:"Home",item:`${a}/home`},{"@type":"ListItem",position:2,name:e||vf[n]||n,item:Cf(wf(yf))}]}})(null==t?void 0:t.breadcrumbLeaf),r=a?[...e,a]:e,n=document.createElement("script");n.type="application/ld+json",n.id=gf,n.textContent=JSON.stringify(r),document.head.appendChild(n)},_f=e=>{const t=bf(e.title);t&&(document.title=t),kf("description",Pf(e.description)),kf("keywords",bf(e.keywords)),e.canonical&&Af(Cf(e.canonical))},If=e=>{yf=e??null;const t=xf(e),a=bf(t.title);a&&(document.title=a),kf("description",Pf(t.description)),kf("keywords",bf(t.keywords));const r=t.robots||"index,follow";kf("robots",r),Af(Cf(t.canonical||wf(e)));const n=((e,t)=>{if(!e||!t.jsonLdType)return null;if("Article"!==t.jsonLdType&&"ContactPage"!==t.jsonLdType)return null;const a=bf(t.title),r={"@context":"https://schema.org","@type":t.jsonLdType,name:a,description:bf(t.description),url:Cf(wf(e))};return"Article"===t.jsonLdType&&(r.headline=a),r})(e,t);Sf(n?[n]:null)};const Tf={async install(e){!function(e){e.use(jh)}(e);const t=window.__APP_CONFIG__;$s().appConfig=t;try{await mm(t)}catch(a){}!function(e){e.use(ih)}(e),function(e){e.use(vm)}(e),function(e){Object.entries(qh).forEach(([t,a])=>{e.component(t,a)})}(e),function(e){Object.entries(Lh).forEach(([t,a])=>{e.component(`ri-${t}`,a)})}(e),mf(e),function(){const e=["UserCenter","UserCenterEdit","CharacterDetail","RechargeCenter"],t=["privacyPolicy","termsService","subscriptionPolicy","ipAccess"];ih.beforeEach(async(r,n,i)=>{ta.start();const o=oh();try{o.isHasConfig||await o.getUserConfigData()}catch(a){}const s=$s().isIpAccess;if(s&&!t.includes(r.name))return ta.done(),void i("/about/ipAccess");const l=Hs(Rs);if(e.includes(r.name)&&!l&&!s)return ta.done(),el().showLoginDialog=!0,Vs(Ns,r.fullPath),0===n.matched.length&&i("/home"),void i(!1);try{const e=[];!l||o.isHasUserInfo||s||(o.hydrateUserInfoFromCache(),e.push(o.getUserInfo().catch(e=>{}))),await Promise.all(e)}catch(a){}l&&o.isHasUserInfo&&!s&&(el(),o.userInfo),i(),ta.done()}),ih.afterEach(e=>{const t=lh();If(e),t.setRoute(e),ta.done()})}()}},zf=Ps.error,Ef=["ERROR","Error","error","undefined","null","[object Object]"];function Df(e){if(!e)return!0;const t=String(e).trim();return!t||(!!Ef.includes(t)||""===t.replace(/\s/g,""))}function Rf(e){if("string"==typeof e){if(Df(e))return;return zf(e)}if("object"==typeof e&&null!==e){if(Df(e.message))return;return zf(e)}return zf(e)}(async()=>{const e=pe(af);Ps.error=Rf,await Tf.install(e),e.mount("#app"),requestAnimationFrame(()=>{(()=>{if("undefined"==typeof document)return;const e=document.querySelector(".bootstrap-loading");e&&(e.remove(),document.documentElement.classList.add("bootstrap-live-hidden"),document.documentElement.classList.remove("bootstrap-live-route","bootstrap-live-has-avatar"))})()})})();export{Wi as $,Ns as A,Qa as B,na as C,Eg as D,aa as E,Zr as F,qs as G,mn as H,ia as I,Mn as J,fr as K,_s as L,Bn as M,Wn as N,Eh as O,Oi as P,$r as Q,Ms as R,ln as S,Rs as T,ra as U,bo as V,dh as W,Jn as X,sn as Y,oa as Z,Qs as _,Em as a,Gs as a$,Yn as a0,Gn as a1,Fn as a2,Ka as a3,wi as a4,Fo as a5,vh as a6,fh as a7,yh as a8,Dn as a9,Ci as aA,bi as aB,Ja as aC,ar as aD,Rn as aE,Ln as aF,Ia as aG,ya as aH,on as aI,ir as aJ,hh as aK,jn as aL,Xs as aM,gh as aN,Ir as aO,Nn as aP,ah as aQ,th as aR,gm as aS,Bo as aT,Xm as aU,wr as aV,ci as aW,Fm as aX,Li as aY,_m as aZ,xi as a_,hn as aa,kh as ab,Ch as ac,Ks as ad,mh as ae,wh as af,Vi as ag,Om as ah,Xr as ai,Ui as aj,Hs as ak,Pi as al,pn as am,In as an,xh as ao,eh as ap,vm as aq,go as ar,ur as as,Ca as at,rr as au,qn as av,hr as aw,bh as ax,Kn as ay,On as az,uh as b,ca as b0,ih as b1,Pm as b2,Sf as b3,_f as b4,Vs as b5,Jm as b6,cn as b7,Hn as b8,Kr as b9,ri as bA,If as bB,oh as bC,gi as bD,ro as bE,uo as bF,mo as bG,po as bH,ho as bI,Ra as ba,$n as bb,oi as bc,Qm as bd,Ys as be,$s as bf,Ph as bg,fi as bh,el as bi,pi as bj,hi as bk,si as bl,ji as bm,Yo as bn,Go as bo,oo as bp,Zi as bq,Ki as br,Di as bs,Bi as bt,qi as bu,Dh as bv,mi as bw,Zm as bx,Zs as by,no as bz,Zc as c,Es as d,ds as e,wo as f,Ps as g,yg as h,_h as i,Ah as j,Is as k,rl as l,ua as m,yo as n,js as o,Tn as p,Rm as q,Kh as r,Oh as s,Fh as t,Ai as u,Si as v,xr as w,wa as x,Qr as y,tr as z};