face-age 2.1.2 → 2.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/faceage.js +1 -1
  2. package/package.json +1 -1
package/dist/faceage.js CHANGED
@@ -1,2 +1,2 @@
1
1
  /*! For license information please see faceage.js.LICENSE.txt */
2
- !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.FaceAge=t():e.FaceAge=t()}(this,(()=>(()=>{var e={866:function(e,t,n){(function(){"use strict";function e(e){var t=0;return function(){return t<e.length?{done:!1,value:e[t++]}:{done:!0}}}var t="function"==typeof Object.defineProperties?Object.defineProperty:function(e,t,n){return e==Array.prototype||e==Object.prototype||(e[t]=n.value),e},i=function(e){e=["object"==typeof globalThis&&globalThis,e,"object"==typeof window&&window,"object"==typeof self&&self,"object"==typeof n.g&&n.g];for(var t=0;t<e.length;++t){var i=e[t];if(i&&i.Math==Math)return i}throw Error("Cannot find global object")}(this);function r(e,n){if(n)e:{var r=i;e=e.split(".");for(var a=0;a<e.length-1;a++){var o=e[a];if(!(o in r))break e;r=r[o]}(n=n(a=r[e=e[e.length-1]]))!=a&&null!=n&&t(r,e,{configurable:!0,writable:!0,value:n})}}function a(e){return(e={next:e})[Symbol.iterator]=function(){return this},e}function o(t){var n="undefined"!=typeof Symbol&&Symbol.iterator&&t[Symbol.iterator];return n?n.call(t):{next:e(t)}}function s(){this.i=!1,this.g=null,this.o=void 0,this.j=1,this.m=0,this.h=null}function l(e){if(e.i)throw new TypeError("Generator is already running");e.i=!0}function u(e,t){e.h={F:t,G:!0},e.j=e.m}function c(e){this.g=new s,this.h=e}function d(e,t,n,i){try{var r=t.call(e.g.g,n);if(!(r instanceof Object))throw new TypeError("Iterator result "+r+" is not an object");if(!r.done)return e.g.i=!1,r;var a=r.value}catch(t){return e.g.g=null,u(e.g,t),p(e)}return e.g.g=null,i.call(e.g,a),p(e)}function p(e){for(;e.g.j;)try{var t=e.h(e.g);if(t)return e.g.i=!1,{value:t.value,done:!1}}catch(t){e.g.o=void 0,u(e.g,t)}if(e.g.i=!1,e.g.h){if(t=e.g.h,e.g.h=null,t.G)throw t.F;return{value:t.return,done:!0}}return{value:void 0,done:!0}}function h(e){this.next=function(t){return l(e.g),e.g.g?t=d(e,e.g.g.next,t,e.g.l):(e.g.l(t),t=p(e)),t},this.throw=function(t){return l(e.g),e.g.g?t=d(e,e.g.g.throw,t,e.g.l):(u(e.g,t),t=p(e)),t},this.return=function(t){return function(e,t){l(e.g);var n=e.g.g;return n?d(e,"return"in n?n.return:function(e){return{value:e,done:!0}},t,e.g.return):(e.g.return(t),p(e))}(e,t)},this[Symbol.iterator]=function(){return this}}function m(e){function t(t){return e.next(t)}function n(t){return e.throw(t)}return new Promise((function(i,r){!function e(a){a.done?i(a.value):Promise.resolve(a.value).then(t,n).then(e,r)}(e.next())}))}r("Symbol",(function(e){function n(e,n){this.g=e,t(this,"description",{configurable:!0,writable:!0,value:n})}if(e)return e;n.prototype.toString=function(){return this.g};var i="jscomp_symbol_"+(1e9*Math.random()>>>0)+"_",r=0;return function e(t){if(this instanceof e)throw new TypeError("Symbol is not a constructor");return new n(i+(t||"")+"_"+r++,t)}})),r("Symbol.iterator",(function(n){if(n)return n;n=Symbol("Symbol.iterator");for(var r="Array Int8Array Uint8Array Uint8ClampedArray Int16Array Uint16Array Int32Array Uint32Array Float32Array Float64Array".split(" "),o=0;o<r.length;o++){var s=i[r[o]];"function"==typeof s&&"function"!=typeof s.prototype[n]&&t(s.prototype,n,{configurable:!0,writable:!0,value:function(){return a(e(this))}})}return n})),s.prototype.l=function(e){this.o=e},s.prototype.return=function(e){this.h={return:e},this.j=this.m},r("Promise",(function(e){function t(e){this.h=0,this.i=void 0,this.g=[],this.o=!1;var t=this.j();try{e(t.resolve,t.reject)}catch(e){t.reject(e)}}function n(){this.g=null}function r(e){return e instanceof t?e:new t((function(t){t(e)}))}if(e)return e;n.prototype.h=function(e){if(null==this.g){this.g=[];var t=this;this.i((function(){t.l()}))}this.g.push(e)};var a=i.setTimeout;n.prototype.i=function(e){a(e,0)},n.prototype.l=function(){for(;this.g&&this.g.length;){var e=this.g;this.g=[];for(var t=0;t<e.length;++t){var n=e[t];e[t]=null;try{n()}catch(e){this.j(e)}}}this.g=null},n.prototype.j=function(e){this.i((function(){throw e}))},t.prototype.j=function(){function e(e){return function(i){n||(n=!0,e.call(t,i))}}var t=this,n=!1;return{resolve:e(this.A),reject:e(this.l)}},t.prototype.A=function(e){if(e===this)this.l(new TypeError("A Promise cannot resolve to itself"));else if(e instanceof t)this.C(e);else{e:switch(typeof e){case"object":var n=null!=e;break e;case"function":n=!0;break e;default:n=!1}n?this.v(e):this.m(e)}},t.prototype.v=function(e){var t=void 0;try{t=e.then}catch(e){return void this.l(e)}"function"==typeof t?this.D(t,e):this.m(e)},t.prototype.l=function(e){this.u(2,e)},t.prototype.m=function(e){this.u(1,e)},t.prototype.u=function(e,t){if(0!=this.h)throw Error("Cannot settle("+e+", "+t+"): Promise already settled in state"+this.h);this.h=e,this.i=t,2===this.h&&this.B(),this.H()},t.prototype.B=function(){var e=this;a((function(){if(e.I()){var t=i.console;void 0!==t&&t.error(e.i)}}),1)},t.prototype.I=function(){if(this.o)return!1;var e=i.CustomEvent,t=i.Event,n=i.dispatchEvent;return void 0===n||("function"==typeof e?e=new e("unhandledrejection",{cancelable:!0}):"function"==typeof t?e=new t("unhandledrejection",{cancelable:!0}):(e=i.document.createEvent("CustomEvent")).initCustomEvent("unhandledrejection",!1,!0,e),e.promise=this,e.reason=this.i,n(e))},t.prototype.H=function(){if(null!=this.g){for(var e=0;e<this.g.length;++e)s.h(this.g[e]);this.g=null}};var s=new n;return t.prototype.C=function(e){var t=this.j();e.s(t.resolve,t.reject)},t.prototype.D=function(e,t){var n=this.j();try{e.call(t,n.resolve,n.reject)}catch(e){n.reject(e)}},t.prototype.then=function(e,n){function i(e,t){return"function"==typeof e?function(t){try{r(e(t))}catch(e){a(e)}}:t}var r,a,o=new t((function(e,t){r=e,a=t}));return this.s(i(e,r),i(n,a)),o},t.prototype.catch=function(e){return this.then(void 0,e)},t.prototype.s=function(e,t){function n(){switch(i.h){case 1:e(i.i);break;case 2:t(i.i);break;default:throw Error("Unexpected state: "+i.h)}}var i=this;null==this.g?s.h(n):this.g.push(n),this.o=!0},t.resolve=r,t.reject=function(e){return new t((function(t,n){n(e)}))},t.race=function(e){return new t((function(t,n){for(var i=o(e),a=i.next();!a.done;a=i.next())r(a.value).s(t,n)}))},t.all=function(e){var n=o(e),i=n.next();return i.done?r([]):new t((function(e,t){function a(t){return function(n){o[t]=n,0==--s&&e(o)}}var o=[],s=0;do{o.push(void 0),s++,r(i.value).s(a(o.length-1),t),i=n.next()}while(!i.done)}))},t}));var f="function"==typeof Object.assign?Object.assign:function(e,t){for(var n=1;n<arguments.length;n++){var i=arguments[n];if(i)for(var r in i)Object.prototype.hasOwnProperty.call(i,r)&&(e[r]=i[r])}return e};r("Object.assign",(function(e){return e||f}));var g=this||self,y={facingMode:"user",width:640,height:480};function v(e,t){this.video=e,this.i=0,this.h=Object.assign(Object.assign({},y),t)}function b(e){window.requestAnimationFrame((function(){!function(e){var t=null;e.video.paused||e.video.currentTime===e.i||(e.i=e.video.currentTime,t=e.h.onFrame()),t?t.then((function(){b(e)})):b(e)}(e)}))}v.prototype.stop=function(){var e,t,n,i=this;return m(new h(new c((function(r){if(i.g){for(e=i.g.getTracks(),t=o(e),n=t.next();!n.done;n=t.next())n.value.stop();i.g=void 0}r.j=0}))))},v.prototype.start=function(){var e,t=this;return m(new h(new c((function(n){return navigator.mediaDevices&&navigator.mediaDevices.getUserMedia||alert("No navigator.mediaDevices.getUserMedia exists."),e=t.h,n.return(navigator.mediaDevices.getUserMedia({video:{facingMode:e.facingMode,width:e.width,height:e.height}}).then((function(e){!function(e,t){e.g=t,e.video.srcObject=t,e.video.onloadedmetadata=function(){e.video.play(),b(e)}}(t,e)})).catch((function(e){var t="Failed to acquire camera feed: "+e;throw console.error(t),alert(t),e})))}))))};var k,w=["Camera"],S=g;w[0]in S||void 0===S.execScript||S.execScript("var "+w[0]);for(;w.length&&(k=w.shift());)w.length||void 0===v?S=S[k]&&S[k]!==Object.prototype[k]?S[k]:S[k]={}:S[k]=v}).call(this)},610:function(e,t,n){(function(){"use strict";var e;function t(e){var t=0;return function(){return t<e.length?{done:!1,value:e[t++]}:{done:!0}}}var i,r="function"==typeof Object.defineProperties?Object.defineProperty:function(e,t,n){return e==Array.prototype||e==Object.prototype||(e[t]=n.value),e},a=function(e){e=["object"==typeof globalThis&&globalThis,e,"object"==typeof window&&window,"object"==typeof self&&self,"object"==typeof n.g&&n.g];for(var t=0;t<e.length;++t){var i=e[t];if(i&&i.Math==Math)return i}throw Error("Cannot find global object")}(this);function o(e,t){if(t)e:{var n=a;e=e.split(".");for(var i=0;i<e.length-1;i++){var o=e[i];if(!(o in n))break e;n=n[o]}(t=t(i=n[e=e[e.length-1]]))!=i&&null!=t&&r(n,e,{configurable:!0,writable:!0,value:t})}}function s(e){return(e={next:e})[Symbol.iterator]=function(){return this},e}function l(e){var n="undefined"!=typeof Symbol&&Symbol.iterator&&e[Symbol.iterator];return n?n.call(e):{next:t(e)}}function u(e){if(!(e instanceof Array)){e=l(e);for(var t,n=[];!(t=e.next()).done;)n.push(t.value);e=n}return e}if(o("Symbol",(function(e){function t(e,t){this.g=e,r(this,"description",{configurable:!0,writable:!0,value:t})}if(e)return e;t.prototype.toString=function(){return this.g};var n="jscomp_symbol_"+(1e9*Math.random()>>>0)+"_",i=0;return function e(r){if(this instanceof e)throw new TypeError("Symbol is not a constructor");return new t(n+(r||"")+"_"+i++,r)}})),o("Symbol.iterator",(function(e){if(e)return e;e=Symbol("Symbol.iterator");for(var n="Array Int8Array Uint8Array Uint8ClampedArray Int16Array Uint16Array Int32Array Uint32Array Float32Array Float64Array".split(" "),i=0;i<n.length;i++){var o=a[n[i]];"function"==typeof o&&"function"!=typeof o.prototype[e]&&r(o.prototype,e,{configurable:!0,writable:!0,value:function(){return s(t(this))}})}return e})),"function"==typeof Object.setPrototypeOf)i=Object.setPrototypeOf;else{var c;e:{var d={};try{d.__proto__={a:!0},c=d.a;break e}catch(e){}c=!1}i=c?function(e,t){if(e.__proto__=t,e.__proto__!==t)throw new TypeError(e+" is not extensible");return e}:null}var p=i;function h(){this.l=!1,this.h=null,this.j=void 0,this.g=1,this.s=this.m=0,this.i=null}function m(e){if(e.l)throw new TypeError("Generator is already running");e.l=!0}function f(e,t){e.i={K:t,L:!0},e.g=e.m||e.s}function g(e,t,n){return e.g=n,{value:t}}function y(e){this.g=new h,this.h=e}function v(e,t,n,i){try{var r=t.call(e.g.h,n);if(!(r instanceof Object))throw new TypeError("Iterator result "+r+" is not an object");if(!r.done)return e.g.l=!1,r;var a=r.value}catch(t){return e.g.h=null,f(e.g,t),b(e)}return e.g.h=null,i.call(e.g,a),b(e)}function b(e){for(;e.g.g;)try{var t=e.h(e.g);if(t)return e.g.l=!1,{value:t.value,done:!1}}catch(t){e.g.j=void 0,f(e.g,t)}if(e.g.l=!1,e.g.i){if(t=e.g.i,e.g.i=null,t.L)throw t.K;return{value:t.return,done:!0}}return{value:void 0,done:!0}}function k(e){this.next=function(t){return m(e.g),e.g.h?t=v(e,e.g.h.next,t,e.g.o):(e.g.o(t),t=b(e)),t},this.throw=function(t){return m(e.g),e.g.h?t=v(e,e.g.h.throw,t,e.g.o):(f(e.g,t),t=b(e)),t},this.return=function(t){return function(e,t){m(e.g);var n=e.g.h;return n?v(e,"return"in n?n.return:function(e){return{value:e,done:!0}},t,e.g.return):(e.g.return(t),b(e))}(e,t)},this[Symbol.iterator]=function(){return this}}function w(e,t){return t=new k(new y(t)),p&&e.prototype&&p(t,e.prototype),t}h.prototype.o=function(e){this.j=e},h.prototype.return=function(e){this.i={return:e},this.g=this.s};var S="function"==typeof Object.assign?Object.assign:function(e,t){for(var n=1;n<arguments.length;n++){var i=arguments[n];if(i)for(var r in i)Object.prototype.hasOwnProperty.call(i,r)&&(e[r]=i[r])}return e};o("Object.assign",(function(e){return e||S})),o("Promise",(function(e){function t(e){this.h=0,this.i=void 0,this.g=[],this.o=!1;var t=this.j();try{e(t.resolve,t.reject)}catch(e){t.reject(e)}}function n(){this.g=null}function i(e){return e instanceof t?e:new t((function(t){t(e)}))}if(e)return e;n.prototype.h=function(e){if(null==this.g){this.g=[];var t=this;this.i((function(){t.l()}))}this.g.push(e)};var r=a.setTimeout;n.prototype.i=function(e){r(e,0)},n.prototype.l=function(){for(;this.g&&this.g.length;){var e=this.g;this.g=[];for(var t=0;t<e.length;++t){var n=e[t];e[t]=null;try{n()}catch(e){this.j(e)}}}this.g=null},n.prototype.j=function(e){this.i((function(){throw e}))},t.prototype.j=function(){function e(e){return function(i){n||(n=!0,e.call(t,i))}}var t=this,n=!1;return{resolve:e(this.D),reject:e(this.l)}},t.prototype.D=function(e){if(e===this)this.l(new TypeError("A Promise cannot resolve to itself"));else if(e instanceof t)this.I(e);else{e:switch(typeof e){case"object":var n=null!=e;break e;case"function":n=!0;break e;default:n=!1}n?this.C(e):this.m(e)}},t.prototype.C=function(e){var t=void 0;try{t=e.then}catch(e){return void this.l(e)}"function"==typeof t?this.J(t,e):this.m(e)},t.prototype.l=function(e){this.s(2,e)},t.prototype.m=function(e){this.s(1,e)},t.prototype.s=function(e,t){if(0!=this.h)throw Error("Cannot settle("+e+", "+t+"): Promise already settled in state"+this.h);this.h=e,this.i=t,2===this.h&&this.H(),this.A()},t.prototype.H=function(){var e=this;r((function(){if(e.B()){var t=a.console;void 0!==t&&t.error(e.i)}}),1)},t.prototype.B=function(){if(this.o)return!1;var e=a.CustomEvent,t=a.Event,n=a.dispatchEvent;return void 0===n||("function"==typeof e?e=new e("unhandledrejection",{cancelable:!0}):"function"==typeof t?e=new t("unhandledrejection",{cancelable:!0}):(e=a.document.createEvent("CustomEvent")).initCustomEvent("unhandledrejection",!1,!0,e),e.promise=this,e.reason=this.i,n(e))},t.prototype.A=function(){if(null!=this.g){for(var e=0;e<this.g.length;++e)o.h(this.g[e]);this.g=null}};var o=new n;return t.prototype.I=function(e){var t=this.j();e.F(t.resolve,t.reject)},t.prototype.J=function(e,t){var n=this.j();try{e.call(t,n.resolve,n.reject)}catch(e){n.reject(e)}},t.prototype.then=function(e,n){function i(e,t){return"function"==typeof e?function(t){try{r(e(t))}catch(e){a(e)}}:t}var r,a,o=new t((function(e,t){r=e,a=t}));return this.F(i(e,r),i(n,a)),o},t.prototype.catch=function(e){return this.then(void 0,e)},t.prototype.F=function(e,t){function n(){switch(i.h){case 1:e(i.i);break;case 2:t(i.i);break;default:throw Error("Unexpected state: "+i.h)}}var i=this;null==this.g?o.h(n):this.g.push(n),this.o=!0},t.resolve=i,t.reject=function(e){return new t((function(t,n){n(e)}))},t.race=function(e){return new t((function(t,n){for(var r=l(e),a=r.next();!a.done;a=r.next())i(a.value).F(t,n)}))},t.all=function(e){var n=l(e),r=n.next();return r.done?i([]):new t((function(e,t){function a(t){return function(n){o[t]=n,0==--s&&e(o)}}var o=[],s=0;do{o.push(void 0),s++,i(r.value).F(a(o.length-1),t),r=n.next()}while(!r.done)}))},t})),o("Array.prototype.keys",(function(e){return e||function(){return function(e,t){e instanceof String&&(e+="");var n=0,i=!1,r={next:function(){if(!i&&n<e.length){var r=n++;return{value:t(r,e[r]),done:!1}}return i=!0,{done:!0,value:void 0}}};return r[Symbol.iterator]=function(){return r},r}(this,(function(e){return e}))}}));var P=this||self;function x(e,t){e=e.split(".");var n,i=P;e[0]in i||void 0===i.execScript||i.execScript("var "+e[0]);for(;e.length&&(n=e.shift());)e.length||void 0===t?i=i[n]&&i[n]!==Object.prototype[n]?i[n]:i[n]={}:i[n]=t}function C(e,t){var n=void 0;return new(n||(n=Promise))((function(i,r){function a(e){try{s(t.next(e))}catch(e){r(e)}}function o(e){try{s(t.throw(e))}catch(e){r(e)}}function s(e){e.done?i(e.value):new n((function(t){t(e.value)})).then(a,o)}s((t=t.apply(e,void 0)).next())}))}var A=[[61,146],[146,91],[91,181],[181,84],[84,17],[17,314],[314,405],[405,321],[321,375],[375,291],[61,185],[185,40],[40,39],[39,37],[37,0],[0,267],[267,269],[269,270],[270,409],[409,291],[78,95],[95,88],[88,178],[178,87],[87,14],[14,317],[317,402],[402,318],[318,324],[324,308],[78,191],[191,80],[80,81],[81,82],[82,13],[13,312],[312,311],[311,310],[310,415],[415,308]],T=[[263,249],[249,390],[390,373],[373,374],[374,380],[380,381],[381,382],[382,362],[263,466],[466,388],[388,387],[387,386],[386,385],[385,384],[384,398],[398,362]],j=[[276,283],[283,282],[282,295],[295,285],[300,293],[293,334],[334,296],[296,336]],_=[[33,7],[7,163],[163,144],[144,145],[145,153],[153,154],[154,155],[155,133],[33,246],[246,161],[161,160],[160,159],[159,158],[158,157],[157,173],[173,133]],R=[[46,53],[53,52],[52,65],[65,55],[70,63],[63,105],[105,66],[66,107]],E=[[10,338],[338,297],[297,332],[332,284],[284,251],[251,389],[389,356],[356,454],[454,323],[323,361],[361,288],[288,397],[397,365],[365,379],[379,378],[378,400],[400,377],[377,152],[152,148],[148,176],[176,149],[149,150],[150,136],[136,172],[172,58],[58,132],[132,93],[93,234],[234,127],[127,162],[162,21],[21,54],[54,103],[103,67],[67,109],[109,10]],I=[].concat(u(A),u(T),u(j),u(_),u(R),u(E));function z(e,t,n){if(n=e.createShader(0===n?e.VERTEX_SHADER:e.FRAGMENT_SHADER),e.shaderSource(n,t),e.compileShader(n),!e.getShaderParameter(n,e.COMPILE_STATUS))throw Error("Could not compile WebGL shader.\n\n"+e.getShaderInfoLog(n));return n}function L(e,t){this.g=e,this.i=t,this.j=0}function O(e,t){var n=e.i;if(void 0===e.l){var i=z(n,"\n attribute vec2 aVertex;\n attribute vec2 aTex;\n varying vec2 vTex;\n void main(void) {\n gl_Position = vec4(aVertex, 0.0, 1.0);\n vTex = aTex;\n }",0),r=z(n,"\n precision highp float;\n varying vec2 vTex;\n uniform sampler2D sampler0;\n void main(){\n gl_FragColor = texture2D(sampler0, vTex);\n }",1),a=n.createProgram();if(n.attachShader(a,i),n.attachShader(a,r),n.linkProgram(a),!n.getProgramParameter(a,n.LINK_STATUS))throw Error("Could not compile WebGL program.\n\n"+n.getProgramInfoLog(a));i=e.l=a,n.useProgram(i),r=n.getUniformLocation(i,"sampler0"),e.h={v:n.getAttribLocation(i,"aVertex"),u:n.getAttribLocation(i,"aTex"),M:r},e.o=n.createBuffer(),n.bindBuffer(n.ARRAY_BUFFER,e.o),n.enableVertexAttribArray(e.h.v),n.vertexAttribPointer(e.h.v,2,n.FLOAT,!1,0,0),n.bufferData(n.ARRAY_BUFFER,new Float32Array([-1,-1,-1,1,1,1,1,-1]),n.STATIC_DRAW),n.bindBuffer(n.ARRAY_BUFFER,null),e.m=n.createBuffer(),n.bindBuffer(n.ARRAY_BUFFER,e.m),n.enableVertexAttribArray(e.h.u),n.vertexAttribPointer(e.h.u,2,n.FLOAT,!1,0,0),n.bufferData(n.ARRAY_BUFFER,new Float32Array([0,1,0,0,1,0,1,1]),n.STATIC_DRAW),n.bindBuffer(n.ARRAY_BUFFER,null),n.uniform1i(r,0)}i=e.h,n.useProgram(e.l),n.canvas.width=t.width,n.canvas.height=t.height,n.viewport(0,0,t.width,t.height),n.activeTexture(n.TEXTURE0),e.g.bindTexture2d(t.glName),n.enableVertexAttribArray(i.v),n.bindBuffer(n.ARRAY_BUFFER,e.o),n.vertexAttribPointer(i.v,2,n.FLOAT,!1,0,0),n.enableVertexAttribArray(i.u),n.bindBuffer(n.ARRAY_BUFFER,e.m),n.vertexAttribPointer(i.u,2,n.FLOAT,!1,0,0),n.bindFramebuffer(n.DRAW_FRAMEBUFFER?n.DRAW_FRAMEBUFFER:n.FRAMEBUFFER,null),n.drawArrays(n.TRIANGLE_FAN,0,4),n.disableVertexAttribArray(i.v),n.disableVertexAttribArray(i.u),n.bindBuffer(n.ARRAY_BUFFER,null),e.g.bindTexture2d(0)}function M(e){this.g=e}var F=new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,9,1,7,0,65,0,253,15,26,11]);function D(e,t){return t+e}function B(e,t){window[e]=t}function N(e){for(var t=[],n=e.size(),i=0;i<n;++i){var r=e.get(i);t.push({x:r.x,y:r.y,z:r.z,visibility:r.hasVisibility?r.visibility:void 0})}return t}function G(e){for(var t=[],n=e.size(),i=0;i<n;++i){var r=e.get(i);t.push({index:r.index,score:r.score,label:r.hasLabel?r.label:void 0,displayName:r.hasDisplayName?r.displayName:void 0})}return t}function U(e,t,n){this.graph=e,this.locateFile=t,this.g=n}function H(e){if(this.h=e,this.listeners={},this.j={},this.l={},this.s=this.D=!0,this.B=Promise.resolve(),this.locateFile=e&&e.locateFile||D,"object"==typeof window)e=window.location.pathname.toString().substring(0,window.location.pathname.toString().lastIndexOf("/"))+"/";else{if("undefined"==typeof location)throw Error("solutions can only be loaded on a web page or in a web worker");e=location.pathname.toString().substring(0,location.pathname.toString().lastIndexOf("/"))+"/"}this.C=e}function W(e,t,n){if(n.isNumber())return n.getNumber();if(n.isRect())return n.getRect();if(n.isLandmarks())return n.getLandmarks();if(n.isLandmarksList())return n.getLandmarksList();if(n.isClassificationsList())return n.getClassificationsList();if(n.isObjectDetectionList())return n.getObjectDetectionList();if(n.isTexture2d()){var i=e.l[t];return i||(i=new L(e.g,e.o),e.l[t]=i),O(e=i,n=n.getTexture2d()),e.i.canvas}}function V(e,t){for(var n=t.name||"$",i=[].concat(u(t.wants)),r=new e.g.StringList,a=l(t.wants),o=a.next();!o.done;o=a.next())r.push_back(o.value);a=e.g.PacketListener.implement({onResults:function(r){return C(e,(function e(){var a,o,s,u,c,d=this;return w(e,(function(e){if(1==e.g){for(a={},o=0;o<t.wants.length;++o)a[i[o]]=r.get(o);var p;if(p=t.outs){for(var h={},m=l(Object.keys(p)),f=m.next();!f.done;f=m.next()){var y=p[f=f.value];if("string"==typeof y)h[f]=W(d,f,a[y]);else{var v=a[y.stream];if(void 0!==v){if("detection_list"===y.type){var b=v.getRectList(),k=v.getLandmarksList();v=v.getClassificationsList();var w=[];if(b)for(var S=0;S<b.size();++S){var P={boundingBox:b.get(S),landmarks:N(k.get(S)),G:G(v.get(S))};w.push(P)}h[f]=w}else if("landmarks"===y.type)b=v.getLandmarks(),h[f]=b?N(b):void 0;else if("landmarks_list"===y.type){if(b=v.getLandmarksList()){for(k=[],v=b.size(),w=0;w<v;++w)S=b.get(w),k.push(N(S));b=k}else b=void 0;h[f]=b}else if("rect_list"===y.type){if(b=v.getRectList()){for(k=[],v=b.size(),w=0;w<v;++w)S=b.get(w),k.push(S);b=k}else b=void 0;h[f]=b}else if("classifications_list"===y.type){if(b=v.getClassificationsList()){for(k=[],v=b.size(),w=0;w<v;++w)S=b.get(w),k.push(G(S));b=k}else b=void 0;h[f]=b}else if("object_detection_list"===y.type){if(b=v.getObjectDetectionList()){for(k=[],v=b.size(),w=0;w<v;++w){var x=b.get(w);P=(S=k).push;for(var C=x.id,A=x.keypoints,T=[],j=A.size(),_=0;_<j;++_){var R=A.get(_);T.push({id:R.id,point3d:{x:R.point3d.x,y:R.point3d.y,z:R.point3d.z},point2d:{x:R.point2d.x,y:R.point2d.y,depth:R.point2d.depth}})}P.call(S,{id:C,keypoints:T,visibility:x.visibility})}b=k}else b=void 0;h[f]=b}else{if("texture"!==y.type)throw Error("Unknown output config type: '"+y.type+"'");(b=d.l[f])||(b=new L(d.g,d.o),d.l[f]=b),O(b,k=v.getTexture2d()),h[f]=b.i.canvas}y.transform&&h[f]&&(h[f]=y.transform(h[f]))}}}p=h}else p=a;return s=p,(u=d.listeners[n])?e=g(e,d.B,3):(e.g=0,e=void 0),e}if(c=u(s))return d.B=c,e.return(c);e.g=0}))}))}}),e.i.attachMultiListener(r,a),r.delete()}function q(e){e=e||{},this.g=new H({locateFile:e.locateFile,files:[{url:"face_detection_solution_packed_assets_loader.js"},{simd:!0,url:"face_detection_solution_simd_wasm_bin.js"},{simd:!1,url:"face_detection_solution_wasm_bin.js"}],graph:{url:"face_detection.binarypb"},listeners:[{wants:["detections","image_transformed"],outs:{image:"image_transformed",detections:{type:"detection_list",stream:"detections"}}}],inputs:{image:{type:"video",stream:"input_frames_gpu"}},options:{selfieMode:{type:1,graphOptionXref:{calculatorType:"GlScalerCalculator",calculatorIndex:1,fieldName:"flip_horizontal"}},minDetectionConfidence:{type:0,graphOptionXref:{calculatorType:"TensorsToDetectionsCalculator",calculatorName:"facedetectionfrontgpu__facedetectionfrontcommon__TensorsToDetectionsCalculator",fieldName:"min_score_thresh"}}}})}U.prototype.toArrayBuffer=function(){return C(this,(function e(){var t,n=this;return w(e,(function(e){return 1==e.g?(n.graph.url?e=g(e,fetch(n.locateFile(n.graph.url,n.g)),3):(e.g=2,e=void 0),e):2!=e.g&&(t=e.j).body?e.return(t.arrayBuffer()):e.return(new ArrayBuffer(0))}))}))},(e=H.prototype).close=function(){return this.i&&this.i.delete(),Promise.resolve()},e.reset=function(){return C(this,(function e(){var t=this;return w(e,(function(e){t.i&&(t.i.reset(),t.j={},t.l={}),e.g=0}))}))},e.setOptions=function(e){if(this.h.options){for(var t=[],n=l(Object.keys(e)),i=n.next();!i.done;i=n.next()){var r=i.value;(i=this.h.options[r])&&i.graphOptionXref&&(r={valueNumber:0===i.type?e[r]:0,valueBoolean:1===i.type&&e[r]},i=Object.assign(Object.assign(Object.assign({},{calculatorName:"",calculatorIndex:0}),i.graphOptionXref),r),t.push(i))}0!==t.length&&(this.s=!0,this.A=t)}},e.initialize=function(){return C(this,(function e(){var t=this;return w(e,(function(e){return 1==e.g?g(e,C(t,(function e(){var t,n,i,r,a,o,s,u,c,d=this;return w(e,(function(e){switch(e.g){case 1:return t=d,d.D?(B("createMediapipeSolutionsWasm",{locateFile:d.locateFile}),B("createMediapipeSolutionsPackedAssets",{locateFile:d.locateFile}),n=d.h.files||[],g(e,function(){return C(this,(function e(){return w(e,(function(e){switch(e.g){case 1:return e.m=2,g(e,WebAssembly.instantiate(F),4);case 4:e.g=3,e.m=0;break;case 2:return e.m=0,e.i=null,e.return(!1);case 3:return e.return(!0)}}))}))}(),2)):e.return();case 2:return i=e.j,g(e,Promise.all(n.map((function(e){return void 0===e.simd||e.simd&&i||!e.simd&&!i?function(e){var t=document.createElement("script");return t.setAttribute("src",e),t.setAttribute("crossorigin","anonymous"),document.body.appendChild(t),new Promise((function(e){t.addEventListener("load",(function(){e()}),!1)}))}(t.locateFile(e.url,t.C)):Promise.resolve()}))),3);case 3:return r=window.createMediapipeSolutionsWasm,a=window.createMediapipeSolutionsPackedAssets,g(e,r(a),4);case 4:return d.g=e.j,d.m=document.createElement("canvas"),d.g.canvas=d.m,d.g.createContext(d.m,!0,!0,{}),d.i=new d.g.SolutionWasm,o=new U(d.h.graph,d.locateFile,d.C),g(e,d.loadGraph(o),5);case 5:if(d.h.listeners)for(s=l(d.h.listeners),u=s.next();!u.done;u=s.next())c=u.value,V(d,c);d.D=!1,e.g=0}}))})),2):g(e,C(t,(function e(){var t,n,i,r,a,o=this;return w(e,(function(e){if(!o.s)return e.return();if(!(t=o.m.getContext("webgl2"))&&!(t=o.m.getContext("webgl")))return alert("Failed to create WebGL canvas context when passing video frame."),e.return();if(o.o=t,o.A){for(n=new o.g.GraphOptionChangeRequestList,i=l(o.A),r=i.next();!r.done;r=i.next())a=r.value,n.push_back(a);o.i.changeOptions(n),n.delete(),o.A=void 0}o.s=!1,e.g=0}))})),0)}))}))},e.loadGraph=function(e){return C(this,(function t(){var n,i=this;return w(t,(function(t){if(1==t.g)return g(t,e.toArrayBuffer(),2);n=t.j,i.i.loadGraph(n),t.g=0}))}))},e.send=function(e,t){return C(this,(function n(){var i,r,a,o,s,u,c,d,p,h=this;return w(n,(function(n){if(1==n.g)return h.h.inputs?(i=1e3*(t||performance.now()),g(n,h.B,2)):n.return();if(3!=n.g)return g(n,h.initialize(),3);for(r=new h.g.PacketDataList,a=l(Object.keys(e)),o=a.next();!o.done;o=a.next())if(s=o.value,u=h.h.inputs[s]){e:{var m=h,f=e[s];switch(u.type){case"video":var y=m.j[u.stream];if(y||(y=new L(m.g,m.o),m.j[u.stream]=y),0===(m=y).j&&(m.j=m.g.createTexture()),f instanceof HTMLVideoElement){var v=f.videoWidth;y=f.videoHeight}else f instanceof HTMLImageElement?(v=f.naturalWidth,y=f.naturalHeight):(v=f.width,y=f.height);y={glName:m.j,width:v,height:y},(v=m.i).canvas.width=y.width,v.canvas.height=y.height,v.activeTexture(v.TEXTURE0),m.g.bindTexture2d(m.j),v.texImage2D(v.TEXTURE_2D,0,v.RGBA,v.RGBA,v.UNSIGNED_BYTE,f),m.g.bindTexture2d(0),m=y;break e;case"detections":for((y=m.j[u.stream])||(y=new M(m.g),m.j[u.stream]=y),(m=y).data||(m.data=new m.g.DetectionListData),m.data.reset(f.length),y=0;y<f.length;++y){v=f[y],m.data.setBoundingBox(y,v.boundingBox);for(var b=0;b<v.landmarks.length;++b){var k=v.landmarks[b],w=!!k.visibility;m.data.addNormalizedLandmark(y,Object.assign(Object.assign({},k),{hasVisibility:w,visibility:w?k.visibility:0}))}for(b=0;b<v.G.length;++b){w=!!(k=v.G[b]).index;var S=!!k.label,P=!!k.displayName;m.data.addClassification(y,{score:k.score,hasIndex:w,index:w?k.index:-1,hasLabel:S,label:S?k.label:"",hasDisplayName:P,displayName:P?k.displayName:""})}}m=m.data;break e;default:m={}}}switch(c=m,d=u.stream,u.type){case"video":r.pushTexture2d(Object.assign(Object.assign({},c),{stream:d,timestamp:i}));break;case"detections":(p=c).stream=d,p.timestamp=i,r.pushDetectionList(p);break;default:throw Error("Unknown input config type: '"+u.type+"'")}}h.i.send(r),r.delete(),n.g=0}))}))},e.onResults=function(e,t){this.listeners[t||"$"]=e},x("Solution",H),x("OptionType",{NUMBER:0,BOOL:1,0:"NUMBER",1:"BOOL"}),(e=q.prototype).close=function(){return this.g.close(),Promise.resolve()},e.onResults=function(e){this.g.onResults(e)},e.initialize=function(){return C(this,(function e(){var t=this;return w(e,(function(e){return g(e,t.g.initialize(),0)}))}))},e.reset=function(){this.g.reset()},e.send=function(e){return C(this,(function t(){var n=this;return w(t,(function(t){return g(t,n.g.send(e),0)}))}))},e.setOptions=function(e){this.g.setOptions(e)},x("FaceDetection",q),x("FACEDETECTION_LIPS",A),x("FACEDETECTION_LEFT_EYE",T),x("FACEDETECTION_LEFT_EYEBROW",j),x("FACEDETECTION_RIGHT_EYE",_),x("FACEDETECTION_RIGHT_EYEBROW",R),x("FACEDETECTION_FACE_OVAL",E),x("FACEDETECTION_CONTOURS",I),x("FACEDETECTION_TESSELATION",[[127,34],[34,139],[139,127],[11,0],[0,37],[37,11],[232,231],[231,120],[120,232],[72,37],[37,39],[39,72],[128,121],[121,47],[47,128],[232,121],[121,128],[128,232],[104,69],[69,67],[67,104],[175,171],[171,148],[148,175],[118,50],[50,101],[101,118],[73,39],[39,40],[40,73],[9,151],[151,108],[108,9],[48,115],[115,131],[131,48],[194,204],[204,211],[211,194],[74,40],[40,185],[185,74],[80,42],[42,183],[183,80],[40,92],[92,186],[186,40],[230,229],[229,118],[118,230],[202,212],[212,214],[214,202],[83,18],[18,17],[17,83],[76,61],[61,146],[146,76],[160,29],[29,30],[30,160],[56,157],[157,173],[173,56],[106,204],[204,194],[194,106],[135,214],[214,192],[192,135],[203,165],[165,98],[98,203],[21,71],[71,68],[68,21],[51,45],[45,4],[4,51],[144,24],[24,23],[23,144],[77,146],[146,91],[91,77],[205,50],[50,187],[187,205],[201,200],[200,18],[18,201],[91,106],[106,182],[182,91],[90,91],[91,181],[181,90],[85,84],[84,17],[17,85],[206,203],[203,36],[36,206],[148,171],[171,140],[140,148],[92,40],[40,39],[39,92],[193,189],[189,244],[244,193],[159,158],[158,28],[28,159],[247,246],[246,161],[161,247],[236,3],[3,196],[196,236],[54,68],[68,104],[104,54],[193,168],[168,8],[8,193],[117,228],[228,31],[31,117],[189,193],[193,55],[55,189],[98,97],[97,99],[99,98],[126,47],[47,100],[100,126],[166,79],[79,218],[218,166],[155,154],[154,26],[26,155],[209,49],[49,131],[131,209],[135,136],[136,150],[150,135],[47,126],[126,217],[217,47],[223,52],[52,53],[53,223],[45,51],[51,134],[134,45],[211,170],[170,140],[140,211],[67,69],[69,108],[108,67],[43,106],[106,91],[91,43],[230,119],[119,120],[120,230],[226,130],[130,247],[247,226],[63,53],[53,52],[52,63],[238,20],[20,242],[242,238],[46,70],[70,156],[156,46],[78,62],[62,96],[96,78],[46,53],[53,63],[63,46],[143,34],[34,227],[227,143],[123,117],[117,111],[111,123],[44,125],[125,19],[19,44],[236,134],[134,51],[51,236],[216,206],[206,205],[205,216],[154,153],[153,22],[22,154],[39,37],[37,167],[167,39],[200,201],[201,208],[208,200],[36,142],[142,100],[100,36],[57,212],[212,202],[202,57],[20,60],[60,99],[99,20],[28,158],[158,157],[157,28],[35,226],[226,113],[113,35],[160,159],[159,27],[27,160],[204,202],[202,210],[210,204],[113,225],[225,46],[46,113],[43,202],[202,204],[204,43],[62,76],[76,77],[77,62],[137,123],[123,116],[116,137],[41,38],[38,72],[72,41],[203,129],[129,142],[142,203],[64,98],[98,240],[240,64],[49,102],[102,64],[64,49],[41,73],[73,74],[74,41],[212,216],[216,207],[207,212],[42,74],[74,184],[184,42],[169,170],[170,211],[211,169],[170,149],[149,176],[176,170],[105,66],[66,69],[69,105],[122,6],[6,168],[168,122],[123,147],[147,187],[187,123],[96,77],[77,90],[90,96],[65,55],[55,107],[107,65],[89,90],[90,180],[180,89],[101,100],[100,120],[120,101],[63,105],[105,104],[104,63],[93,137],[137,227],[227,93],[15,86],[86,85],[85,15],[129,102],[102,49],[49,129],[14,87],[87,86],[86,14],[55,8],[8,9],[9,55],[100,47],[47,121],[121,100],[145,23],[23,22],[22,145],[88,89],[89,179],[179,88],[6,122],[122,196],[196,6],[88,95],[95,96],[96,88],[138,172],[172,136],[136,138],[215,58],[58,172],[172,215],[115,48],[48,219],[219,115],[42,80],[80,81],[81,42],[195,3],[3,51],[51,195],[43,146],[146,61],[61,43],[171,175],[175,199],[199,171],[81,82],[82,38],[38,81],[53,46],[46,225],[225,53],[144,163],[163,110],[110,144],[52,65],[65,66],[66,52],[229,228],[228,117],[117,229],[34,127],[127,234],[234,34],[107,108],[108,69],[69,107],[109,108],[108,151],[151,109],[48,64],[64,235],[235,48],[62,78],[78,191],[191,62],[129,209],[209,126],[126,129],[111,35],[35,143],[143,111],[117,123],[123,50],[50,117],[222,65],[65,52],[52,222],[19,125],[125,141],[141,19],[221,55],[55,65],[65,221],[3,195],[195,197],[197,3],[25,7],[7,33],[33,25],[220,237],[237,44],[44,220],[70,71],[71,139],[139,70],[122,193],[193,245],[245,122],[247,130],[130,33],[33,247],[71,21],[21,162],[162,71],[170,169],[169,150],[150,170],[188,174],[174,196],[196,188],[216,186],[186,92],[92,216],[2,97],[97,167],[167,2],[141,125],[125,241],[241,141],[164,167],[167,37],[37,164],[72,38],[38,12],[12,72],[38,82],[82,13],[13,38],[63,68],[68,71],[71,63],[226,35],[35,111],[111,226],[101,50],[50,205],[205,101],[206,92],[92,165],[165,206],[209,198],[198,217],[217,209],[165,167],[167,97],[97,165],[220,115],[115,218],[218,220],[133,112],[112,243],[243,133],[239,238],[238,241],[241,239],[214,135],[135,169],[169,214],[190,173],[173,133],[133,190],[171,208],[208,32],[32,171],[125,44],[44,237],[237,125],[86,87],[87,178],[178,86],[85,86],[86,179],[179,85],[84,85],[85,180],[180,84],[83,84],[84,181],[181,83],[201,83],[83,182],[182,201],[137,93],[93,132],[132,137],[76,62],[62,183],[183,76],[61,76],[76,184],[184,61],[57,61],[61,185],[185,57],[212,57],[57,186],[186,212],[214,207],[207,187],[187,214],[34,143],[143,156],[156,34],[79,239],[239,237],[237,79],[123,137],[137,177],[177,123],[44,1],[1,4],[4,44],[201,194],[194,32],[32,201],[64,102],[102,129],[129,64],[213,215],[215,138],[138,213],[59,166],[166,219],[219,59],[242,99],[99,97],[97,242],[2,94],[94,141],[141,2],[75,59],[59,235],[235,75],[24,110],[110,228],[228,24],[25,130],[130,226],[226,25],[23,24],[24,229],[229,23],[22,23],[23,230],[230,22],[26,22],[22,231],[231,26],[112,26],[26,232],[232,112],[189,190],[190,243],[243,189],[221,56],[56,190],[190,221],[28,56],[56,221],[221,28],[27,28],[28,222],[222,27],[29,27],[27,223],[223,29],[30,29],[29,224],[224,30],[247,30],[30,225],[225,247],[238,79],[79,20],[20,238],[166,59],[59,75],[75,166],[60,75],[75,240],[240,60],[147,177],[177,215],[215,147],[20,79],[79,166],[166,20],[187,147],[147,213],[213,187],[112,233],[233,244],[244,112],[233,128],[128,245],[245,233],[128,114],[114,188],[188,128],[114,217],[217,174],[174,114],[131,115],[115,220],[220,131],[217,198],[198,236],[236,217],[198,131],[131,134],[134,198],[177,132],[132,58],[58,177],[143,35],[35,124],[124,143],[110,163],[163,7],[7,110],[228,110],[110,25],[25,228],[356,389],[389,368],[368,356],[11,302],[302,267],[267,11],[452,350],[350,349],[349,452],[302,303],[303,269],[269,302],[357,343],[343,277],[277,357],[452,453],[453,357],[357,452],[333,332],[332,297],[297,333],[175,152],[152,377],[377,175],[347,348],[348,330],[330,347],[303,304],[304,270],[270,303],[9,336],[336,337],[337,9],[278,279],[279,360],[360,278],[418,262],[262,431],[431,418],[304,408],[408,409],[409,304],[310,415],[415,407],[407,310],[270,409],[409,410],[410,270],[450,348],[348,347],[347,450],[422,430],[430,434],[434,422],[313,314],[314,17],[17,313],[306,307],[307,375],[375,306],[387,388],[388,260],[260,387],[286,414],[414,398],[398,286],[335,406],[406,418],[418,335],[364,367],[367,416],[416,364],[423,358],[358,327],[327,423],[251,284],[284,298],[298,251],[281,5],[5,4],[4,281],[373,374],[374,253],[253,373],[307,320],[320,321],[321,307],[425,427],[427,411],[411,425],[421,313],[313,18],[18,421],[321,405],[405,406],[406,321],[320,404],[404,405],[405,320],[315,16],[16,17],[17,315],[426,425],[425,266],[266,426],[377,400],[400,369],[369,377],[322,391],[391,269],[269,322],[417,465],[465,464],[464,417],[386,257],[257,258],[258,386],[466,260],[260,388],[388,466],[456,399],[399,419],[419,456],[284,332],[332,333],[333,284],[417,285],[285,8],[8,417],[346,340],[340,261],[261,346],[413,441],[441,285],[285,413],[327,460],[460,328],[328,327],[355,371],[371,329],[329,355],[392,439],[439,438],[438,392],[382,341],[341,256],[256,382],[429,420],[420,360],[360,429],[364,394],[394,379],[379,364],[277,343],[343,437],[437,277],[443,444],[444,283],[283,443],[275,440],[440,363],[363,275],[431,262],[262,369],[369,431],[297,338],[338,337],[337,297],[273,375],[375,321],[321,273],[450,451],[451,349],[349,450],[446,342],[342,467],[467,446],[293,334],[334,282],[282,293],[458,461],[461,462],[462,458],[276,353],[353,383],[383,276],[308,324],[324,325],[325,308],[276,300],[300,293],[293,276],[372,345],[345,447],[447,372],[352,345],[345,340],[340,352],[274,1],[1,19],[19,274],[456,248],[248,281],[281,456],[436,427],[427,425],[425,436],[381,256],[256,252],[252,381],[269,391],[391,393],[393,269],[200,199],[199,428],[428,200],[266,330],[330,329],[329,266],[287,273],[273,422],[422,287],[250,462],[462,328],[328,250],[258,286],[286,384],[384,258],[265,353],[353,342],[342,265],[387,259],[259,257],[257,387],[424,431],[431,430],[430,424],[342,353],[353,276],[276,342],[273,335],[335,424],[424,273],[292,325],[325,307],[307,292],[366,447],[447,345],[345,366],[271,303],[303,302],[302,271],[423,266],[266,371],[371,423],[294,455],[455,460],[460,294],[279,278],[278,294],[294,279],[271,272],[272,304],[304,271],[432,434],[434,427],[427,432],[272,407],[407,408],[408,272],[394,430],[430,431],[431,394],[395,369],[369,400],[400,395],[334,333],[333,299],[299,334],[351,417],[417,168],[168,351],[352,280],[280,411],[411,352],[325,319],[319,320],[320,325],[295,296],[296,336],[336,295],[319,403],[403,404],[404,319],[330,348],[348,349],[349,330],[293,298],[298,333],[333,293],[323,454],[454,447],[447,323],[15,16],[16,315],[315,15],[358,429],[429,279],[279,358],[14,15],[15,316],[316,14],[285,336],[336,9],[9,285],[329,349],[349,350],[350,329],[374,380],[380,252],[252,374],[318,402],[402,403],[403,318],[6,197],[197,419],[419,6],[318,319],[319,325],[325,318],[367,364],[364,365],[365,367],[435,367],[367,397],[397,435],[344,438],[438,439],[439,344],[272,271],[271,311],[311,272],[195,5],[5,281],[281,195],[273,287],[287,291],[291,273],[396,428],[428,199],[199,396],[311,271],[271,268],[268,311],[283,444],[444,445],[445,283],[373,254],[254,339],[339,373],[282,334],[334,296],[296,282],[449,347],[347,346],[346,449],[264,447],[447,454],[454,264],[336,296],[296,299],[299,336],[338,10],[10,151],[151,338],[278,439],[439,455],[455,278],[292,407],[407,415],[415,292],[358,371],[371,355],[355,358],[340,345],[345,372],[372,340],[346,347],[347,280],[280,346],[442,443],[443,282],[282,442],[19,94],[94,370],[370,19],[441,442],[442,295],[295,441],[248,419],[419,197],[197,248],[263,255],[255,359],[359,263],[440,275],[275,274],[274,440],[300,383],[383,368],[368,300],[351,412],[412,465],[465,351],[263,467],[467,466],[466,263],[301,368],[368,389],[389,301],[395,378],[378,379],[379,395],[412,351],[351,419],[419,412],[436,426],[426,322],[322,436],[2,164],[164,393],[393,2],[370,462],[462,461],[461,370],[164,0],[0,267],[267,164],[302,11],[11,12],[12,302],[268,12],[12,13],[13,268],[293,300],[300,301],[301,293],[446,261],[261,340],[340,446],[330,266],[266,425],[425,330],[426,423],[423,391],[391,426],[429,355],[355,437],[437,429],[391,327],[327,326],[326,391],[440,457],[457,438],[438,440],[341,382],[382,362],[362,341],[459,457],[457,461],[461,459],[434,430],[430,394],[394,434],[414,463],[463,362],[362,414],[396,369],[369,262],[262,396],[354,461],[461,457],[457,354],[316,403],[403,402],[402,316],[315,404],[404,403],[403,315],[314,405],[405,404],[404,314],[313,406],[406,405],[405,313],[421,418],[418,406],[406,421],[366,401],[401,361],[361,366],[306,408],[408,407],[407,306],[291,409],[409,408],[408,291],[287,410],[410,409],[409,287],[432,436],[436,410],[410,432],[434,416],[416,411],[411,434],[264,368],[368,383],[383,264],[309,438],[438,457],[457,309],[352,376],[376,401],[401,352],[274,275],[275,4],[4,274],[421,428],[428,262],[262,421],[294,327],[327,358],[358,294],[433,416],[416,367],[367,433],[289,455],[455,439],[439,289],[462,370],[370,326],[326,462],[2,326],[326,370],[370,2],[305,460],[460,455],[455,305],[254,449],[449,448],[448,254],[255,261],[261,446],[446,255],[253,450],[450,449],[449,253],[252,451],[451,450],[450,252],[256,452],[452,451],[451,256],[341,453],[453,452],[452,341],[413,464],[464,463],[463,413],[441,413],[413,414],[414,441],[258,442],[442,441],[441,258],[257,443],[443,442],[442,257],[259,444],[444,443],[443,259],[260,445],[445,444],[444,260],[467,342],[342,445],[445,467],[459,458],[458,250],[250,459],[289,392],[392,290],[290,289],[290,328],[328,460],[460,290],[376,433],[433,435],[435,376],[250,290],[290,392],[392,250],[411,416],[416,433],[433,411],[341,463],[463,464],[464,341],[453,464],[464,465],[465,453],[357,465],[465,412],[412,357],[343,412],[412,399],[399,343],[360,363],[363,440],[440,360],[437,399],[399,456],[456,437],[420,456],[456,363],[363,420],[401,435],[435,288],[288,401],[372,383],[383,353],[353,372],[339,255],[255,249],[249,339],[448,261],[261,255],[255,448],[133,243],[243,190],[190,133],[133,155],[155,112],[112,133],[33,246],[246,247],[247,33],[33,130],[130,25],[25,33],[398,384],[384,286],[286,398],[362,398],[398,414],[414,362],[362,463],[463,341],[341,362],[263,359],[359,467],[467,263],[263,249],[249,255],[255,263],[466,467],[467,260],[260,466],[75,60],[60,166],[166,75],[238,239],[239,79],[79,238],[162,127],[127,139],[139,162],[72,11],[11,37],[37,72],[121,232],[232,120],[120,121],[73,72],[72,39],[39,73],[114,128],[128,47],[47,114],[233,232],[232,128],[128,233],[103,104],[104,67],[67,103],[152,175],[175,148],[148,152],[119,118],[118,101],[101,119],[74,73],[73,40],[40,74],[107,9],[9,108],[108,107],[49,48],[48,131],[131,49],[32,194],[194,211],[211,32],[184,74],[74,185],[185,184],[191,80],[80,183],[183,191],[185,40],[40,186],[186,185],[119,230],[230,118],[118,119],[210,202],[202,214],[214,210],[84,83],[83,17],[17,84],[77,76],[76,146],[146,77],[161,160],[160,30],[30,161],[190,56],[56,173],[173,190],[182,106],[106,194],[194,182],[138,135],[135,192],[192,138],[129,203],[203,98],[98,129],[54,21],[21,68],[68,54],[5,51],[51,4],[4,5],[145,144],[144,23],[23,145],[90,77],[77,91],[91,90],[207,205],[205,187],[187,207],[83,201],[201,18],[18,83],[181,91],[91,182],[182,181],[180,90],[90,181],[181,180],[16,85],[85,17],[17,16],[205,206],[206,36],[36,205],[176,148],[148,140],[140,176],[165,92],[92,39],[39,165],[245,193],[193,244],[244,245],[27,159],[159,28],[28,27],[30,247],[247,161],[161,30],[174,236],[236,196],[196,174],[103,54],[54,104],[104,103],[55,193],[193,8],[8,55],[111,117],[117,31],[31,111],[221,189],[189,55],[55,221],[240,98],[98,99],[99,240],[142,126],[126,100],[100,142],[219,166],[166,218],[218,219],[112,155],[155,26],[26,112],[198,209],[209,131],[131,198],[169,135],[135,150],[150,169],[114,47],[47,217],[217,114],[224,223],[223,53],[53,224],[220,45],[45,134],[134,220],[32,211],[211,140],[140,32],[109,67],[67,108],[108,109],[146,43],[43,91],[91,146],[231,230],[230,120],[120,231],[113,226],[226,247],[247,113],[105,63],[63,52],[52,105],[241,238],[238,242],[242,241],[124,46],[46,156],[156,124],[95,78],[78,96],[96,95],[70,46],[46,63],[63,70],[116,143],[143,227],[227,116],[116,123],[123,111],[111,116],[1,44],[44,19],[19,1],[3,236],[236,51],[51,3],[207,216],[216,205],[205,207],[26,154],[154,22],[22,26],[165,39],[39,167],[167,165],[199,200],[200,208],[208,199],[101,36],[36,100],[100,101],[43,57],[57,202],[202,43],[242,20],[20,99],[99,242],[56,28],[28,157],[157,56],[124,35],[35,113],[113,124],[29,160],[160,27],[27,29],[211,204],[204,210],[210,211],[124,113],[113,46],[46,124],[106,43],[43,204],[204,106],[96,62],[62,77],[77,96],[227,137],[137,116],[116,227],[73,41],[41,72],[72,73],[36,203],[203,142],[142,36],[235,64],[64,240],[240,235],[48,49],[49,64],[64,48],[42,41],[41,74],[74,42],[214,212],[212,207],[207,214],[183,42],[42,184],[184,183],[210,169],[169,211],[211,210],[140,170],[170,176],[176,140],[104,105],[105,69],[69,104],[193,122],[122,168],[168,193],[50,123],[123,187],[187,50],[89,96],[96,90],[90,89],[66,65],[65,107],[107,66],[179,89],[89,180],[180,179],[119,101],[101,120],[120,119],[68,63],[63,104],[104,68],[234,93],[93,227],[227,234],[16,15],[15,85],[85,16],[209,129],[129,49],[49,209],[15,14],[14,86],[86,15],[107,55],[55,9],[9,107],[120,100],[100,121],[121,120],[153,145],[145,22],[22,153],[178,88],[88,179],[179,178],[197,6],[6,196],[196,197],[89,88],[88,96],[96,89],[135,138],[138,136],[136,135],[138,215],[215,172],[172,138],[218,115],[115,219],[219,218],[41,42],[42,81],[81,41],[5,195],[195,51],[51,5],[57,43],[43,61],[61,57],[208,171],[171,199],[199,208],[41,81],[81,38],[38,41],[224,53],[53,225],[225,224],[24,144],[144,110],[110,24],[105,52],[52,66],[66,105],[118,229],[229,117],[117,118],[227,34],[34,234],[234,227],[66,107],[107,69],[69,66],[10,109],[109,151],[151,10],[219,48],[48,235],[235,219],[183,62],[62,191],[191,183],[142,129],[129,126],[126,142],[116,111],[111,143],[143,116],[118,117],[117,50],[50,118],[223,222],[222,52],[52,223],[94,19],[19,141],[141,94],[222,221],[221,65],[65,222],[196,3],[3,197],[197,196],[45,220],[220,44],[44,45],[156,70],[70,139],[139,156],[188,122],[122,245],[245,188],[139,71],[71,162],[162,139],[149,170],[170,150],[150,149],[122,188],[188,196],[196,122],[206,216],[216,92],[92,206],[164,2],[2,167],[167,164],[242,141],[141,241],[241,242],[0,164],[164,37],[37,0],[11,72],[72,12],[12,11],[12,38],[38,13],[13,12],[70,63],[63,71],[71,70],[31,226],[226,111],[111,31],[36,101],[101,205],[205,36],[203,206],[206,165],[165,203],[126,209],[209,217],[217,126],[98,165],[165,97],[97,98],[237,220],[220,218],[218,237],[237,239],[239,241],[241,237],[210,214],[214,169],[169,210],[140,171],[171,32],[32,140],[241,125],[125,237],[237,241],[179,86],[86,178],[178,179],[180,85],[85,179],[179,180],[181,84],[84,180],[180,181],[182,83],[83,181],[181,182],[194,201],[201,182],[182,194],[177,137],[137,132],[132,177],[184,76],[76,183],[183,184],[185,61],[61,184],[184,185],[186,57],[57,185],[185,186],[216,212],[212,186],[186,216],[192,214],[214,187],[187,192],[139,34],[34,156],[156,139],[218,79],[79,237],[237,218],[147,123],[123,177],[177,147],[45,44],[44,4],[4,45],[208,201],[201,32],[32,208],[98,64],[64,129],[129,98],[192,213],[213,138],[138,192],[235,59],[59,219],[219,235],[141,242],[242,97],[97,141],[97,2],[2,141],[141,97],[240,75],[75,235],[235,240],[229,24],[24,228],[228,229],[31,25],[25,226],[226,31],[230,23],[23,229],[229,230],[231,22],[22,230],[230,231],[232,26],[26,231],[231,232],[233,112],[112,232],[232,233],[244,189],[189,243],[243,244],[189,221],[221,190],[190,189],[222,28],[28,221],[221,222],[223,27],[27,222],[222,223],[224,29],[29,223],[223,224],[225,30],[30,224],[224,225],[113,247],[247,225],[225,113],[99,60],[60,240],[240,99],[213,147],[147,215],[215,213],[60,20],[20,166],[166,60],[192,187],[187,213],[213,192],[243,112],[112,244],[244,243],[244,233],[233,245],[245,244],[245,128],[128,188],[188,245],[188,114],[114,174],[174,188],[134,131],[131,220],[220,134],[174,217],[217,236],[236,174],[236,198],[198,134],[134,236],[215,177],[177,58],[58,215],[156,143],[143,124],[124,156],[25,110],[110,7],[7,25],[31,228],[228,25],[25,31],[264,356],[356,368],[368,264],[0,11],[11,267],[267,0],[451,452],[452,349],[349,451],[267,302],[302,269],[269,267],[350,357],[357,277],[277,350],[350,452],[452,357],[357,350],[299,333],[333,297],[297,299],[396,175],[175,377],[377,396],[280,347],[347,330],[330,280],[269,303],[303,270],[270,269],[151,9],[9,337],[337,151],[344,278],[278,360],[360,344],[424,418],[418,431],[431,424],[270,304],[304,409],[409,270],[272,310],[310,407],[407,272],[322,270],[270,410],[410,322],[449,450],[450,347],[347,449],[432,422],[422,434],[434,432],[18,313],[313,17],[17,18],[291,306],[306,375],[375,291],[259,387],[387,260],[260,259],[424,335],[335,418],[418,424],[434,364],[364,416],[416,434],[391,423],[423,327],[327,391],[301,251],[251,298],[298,301],[275,281],[281,4],[4,275],[254,373],[373,253],[253,254],[375,307],[307,321],[321,375],[280,425],[425,411],[411,280],[200,421],[421,18],[18,200],[335,321],[321,406],[406,335],[321,320],[320,405],[405,321],[314,315],[315,17],[17,314],[423,426],[426,266],[266,423],[396,377],[377,369],[369,396],[270,322],[322,269],[269,270],[413,417],[417,464],[464,413],[385,386],[386,258],[258,385],[248,456],[456,419],[419,248],[298,284],[284,333],[333,298],[168,417],[417,8],[8,168],[448,346],[346,261],[261,448],[417,413],[413,285],[285,417],[326,327],[327,328],[328,326],[277,355],[355,329],[329,277],[309,392],[392,438],[438,309],[381,382],[382,256],[256,381],[279,429],[429,360],[360,279],[365,364],[364,379],[379,365],[355,277],[277,437],[437,355],[282,443],[443,283],[283,282],[281,275],[275,363],[363,281],[395,431],[431,369],[369,395],[299,297],[297,337],[337,299],[335,273],[273,321],[321,335],[348,450],[450,349],[349,348],[359,446],[446,467],[467,359],[283,293],[293,282],[282,283],[250,458],[458,462],[462,250],[300,276],[276,383],[383,300],[292,308],[308,325],[325,292],[283,276],[276,293],[293,283],[264,372],[372,447],[447,264],[346,352],[352,340],[340,346],[354,274],[274,19],[19,354],[363,456],[456,281],[281,363],[426,436],[436,425],[425,426],[380,381],[381,252],[252,380],[267,269],[269,393],[393,267],[421,200],[200,428],[428,421],[371,266],[266,329],[329,371],[432,287],[287,422],[422,432],[290,250],[250,328],[328,290],[385,258],[258,384],[384,385],[446,265],[265,342],[342,446],[386,387],[387,257],[257,386],[422,424],[424,430],[430,422],[445,342],[342,276],[276,445],[422,273],[273,424],[424,422],[306,292],[292,307],[307,306],[352,366],[366,345],[345,352],[268,271],[271,302],[302,268],[358,423],[423,371],[371,358],[327,294],[294,460],[460,327],[331,279],[279,294],[294,331],[303,271],[271,304],[304,303],[436,432],[432,427],[427,436],[304,272],[272,408],[408,304],[395,394],[394,431],[431,395],[378,395],[395,400],[400,378],[296,334],[334,299],[299,296],[6,351],[351,168],[168,6],[376,352],[352,411],[411,376],[307,325],[325,320],[320,307],[285,295],[295,336],[336,285],[320,319],[319,404],[404,320],[329,330],[330,349],[349,329],[334,293],[293,333],[333,334],[366,323],[323,447],[447,366],[316,15],[15,315],[315,316],[331,358],[358,279],[279,331],[317,14],[14,316],[316,317],[8,285],[285,9],[9,8],[277,329],[329,350],[350,277],[253,374],[374,252],[252,253],[319,318],[318,403],[403,319],[351,6],[6,419],[419,351],[324,318],[318,325],[325,324],[397,367],[367,365],[365,397],[288,435],[435,397],[397,288],[278,344],[344,439],[439,278],[310,272],[272,311],[311,310],[248,195],[195,281],[281,248],[375,273],[273,291],[291,375],[175,396],[396,199],[199,175],[312,311],[311,268],[268,312],[276,283],[283,445],[445,276],[390,373],[373,339],[339,390],[295,282],[282,296],[296,295],[448,449],[449,346],[346,448],[356,264],[264,454],[454,356],[337,336],[336,299],[299,337],[337,338],[338,151],[151,337],[294,278],[278,455],[455,294],[308,292],[292,415],[415,308],[429,358],[358,355],[355,429],[265,340],[340,372],[372,265],[352,346],[346,280],[280,352],[295,442],[442,282],[282,295],[354,19],[19,370],[370,354],[285,441],[441,295],[295,285],[195,248],[248,197],[197,195],[457,440],[440,274],[274,457],[301,300],[300,368],[368,301],[417,351],[351,465],[465,417],[251,301],[301,389],[389,251],[394,395],[395,379],[379,394],[399,412],[412,419],[419,399],[410,436],[436,322],[322,410],[326,2],[2,393],[393,326],[354,370],[370,461],[461,354],[393,164],[164,267],[267,393],[268,302],[302,12],[12,268],[312,268],[268,13],[13,312],[298,293],[293,301],[301,298],[265,446],[446,340],[340,265],[280,330],[330,425],[425,280],[322,426],[426,391],[391,322],[420,429],[429,437],[437,420],[393,391],[391,326],[326,393],[344,440],[440,438],[438,344],[458,459],[459,461],[461,458],[364,434],[434,394],[394,364],[428,396],[396,262],[262,428],[274,354],[354,457],[457,274],[317,316],[316,402],[402,317],[316,315],[315,403],[403,316],[315,314],[314,404],[404,315],[314,313],[313,405],[405,314],[313,421],[421,406],[406,313],[323,366],[366,361],[361,323],[292,306],[306,407],[407,292],[306,291],[291,408],[408,306],[291,287],[287,409],[409,291],[287,432],[432,410],[410,287],[427,434],[434,411],[411,427],[372,264],[264,383],[383,372],[459,309],[309,457],[457,459],[366,352],[352,401],[401,366],[1,274],[274,4],[4,1],[418,421],[421,262],[262,418],[331,294],[294,358],[358,331],[435,433],[433,367],[367,435],[392,289],[289,439],[439,392],[328,462],[462,326],[326,328],[94,2],[2,370],[370,94],[289,305],[305,455],[455,289],[339,254],[254,448],[448,339],[359,255],[255,446],[446,359],[254,253],[253,449],[449,254],[253,252],[252,450],[450,253],[252,256],[256,451],[451,252],[256,341],[341,452],[452,256],[414,413],[413,463],[463,414],[286,441],[441,414],[414,286],[286,258],[258,441],[441,286],[258,257],[257,442],[442,258],[257,259],[259,443],[443,257],[259,260],[260,444],[444,259],[260,467],[467,445],[445,260],[309,459],[459,250],[250,309],[305,289],[289,290],[290,305],[305,290],[290,460],[460,305],[401,376],[376,435],[435,401],[309,250],[250,392],[392,309],[376,411],[411,433],[433,376],[453,341],[341,464],[464,453],[357,453],[453,465],[465,357],[343,357],[357,412],[412,343],[437,343],[343,399],[399,437],[344,360],[360,440],[440,344],[420,437],[437,456],[456,420],[360,420],[420,363],[363,360],[361,401],[401,288],[288,361],[265,372],[372,353],[353,265],[390,339],[339,249],[249,390],[339,448],[448,255],[255,339]])}).call(this)},643:function(e){e.exports=function(){"use strict";function e(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function t(t){for(var i=1;i<arguments.length;i++){var r=null!=arguments[i]?arguments[i]:{};i%2?e(Object(r),!0).forEach((function(e){var i,a,o;i=t,a=e,o=r[e],(a=n(a))in i?Object.defineProperty(i,a,{value:o,enumerable:!0,configurable:!0,writable:!0}):i[a]=o})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):e(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}))}return t}function n(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var i=n.call(e,t||"default");if("object"!=typeof i)return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}function i(e){return i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i(e)}function r(e,t){for(var i=0;i<t.length;i++){var r=t[i];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,n(r.key),r)}}function a(e){return function(e){if(Array.isArray(e))return o(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return o(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?o(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function o(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,i=new Array(t);n<t;n++)i[n]=e[n];return i}var s="undefined"!=typeof window&&void 0!==window.document,l=s?window:{},u=!(!s||!l.document.documentElement)&&"ontouchstart"in l.document.documentElement,c=!!s&&"PointerEvent"in l,d="cropper",p="all",h="crop",m="move",f="zoom",g="e",y="w",v="s",b="n",k="ne",w="nw",S="se",P="sw",x="".concat(d,"-crop"),C="".concat(d,"-disabled"),A="".concat(d,"-hidden"),T="".concat(d,"-hide"),j="".concat(d,"-invisible"),_="".concat(d,"-modal"),R="".concat(d,"-move"),E="".concat(d,"Action"),I="".concat(d,"Preview"),z="crop",L="move",O="none",M="crop",F="cropend",D="cropmove",B="cropstart",N="dblclick",G=c?"pointerdown":u?"touchstart":"mousedown",U=c?"pointermove":u?"touchmove":"mousemove",H=c?"pointerup pointercancel":u?"touchend touchcancel":"mouseup",W="ready",V="resize",q="wheel",J="zoom",Y="image/jpeg",K=/^e|w|s|n|se|sw|ne|nw|all|crop|move|zoom$/,$=/^data:/,Z=/^data:image\/jpeg;base64,/,X=/^img|canvas$/i,Q={viewMode:0,dragMode:z,initialAspectRatio:NaN,aspectRatio:NaN,data:null,preview:"",responsive:!0,restore:!0,checkCrossOrigin:!0,checkOrientation:!0,modal:!0,guides:!0,center:!0,highlight:!0,background:!0,autoCrop:!0,autoCropArea:.8,movable:!0,rotatable:!0,scalable:!0,zoomable:!0,zoomOnTouch:!0,zoomOnWheel:!0,wheelZoomRatio:.1,cropBoxMovable:!0,cropBoxResizable:!0,toggleDragModeOnDblclick:!0,minCanvasWidth:0,minCanvasHeight:0,minCropBoxWidth:0,minCropBoxHeight:0,minContainerWidth:200,minContainerHeight:100,ready:null,cropstart:null,cropmove:null,cropend:null,crop:null,zoom:null},ee=Number.isNaN||l.isNaN;function te(e){return"number"==typeof e&&!ee(e)}var ne=function(e){return e>0&&e<1/0};function ie(e){return void 0===e}function re(e){return"object"===i(e)&&null!==e}var ae=Object.prototype.hasOwnProperty;function oe(e){if(!re(e))return!1;try{var t=e.constructor,n=t.prototype;return t&&n&&ae.call(n,"isPrototypeOf")}catch(e){return!1}}function se(e){return"function"==typeof e}var le=Array.prototype.slice;function ue(e){return Array.from?Array.from(e):le.call(e)}function ce(e,t){return e&&se(t)&&(Array.isArray(e)||te(e.length)?ue(e).forEach((function(n,i){t.call(e,n,i,e)})):re(e)&&Object.keys(e).forEach((function(n){t.call(e,e[n],n,e)}))),e}var de=Object.assign||function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];return re(e)&&n.length>0&&n.forEach((function(t){re(t)&&Object.keys(t).forEach((function(n){e[n]=t[n]}))})),e},pe=/\.\d*(?:0|9){12}\d*$/;function he(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1e11;return pe.test(e)?Math.round(e*t)/t:e}var me=/^width|height|left|top|marginLeft|marginTop$/;function fe(e,t){var n=e.style;ce(t,(function(e,t){me.test(t)&&te(e)&&(e="".concat(e,"px")),n[t]=e}))}function ge(e,t){if(t)if(te(e.length))ce(e,(function(e){ge(e,t)}));else if(e.classList)e.classList.add(t);else{var n=e.className.trim();n?n.indexOf(t)<0&&(e.className="".concat(n," ").concat(t)):e.className=t}}function ye(e,t){t&&(te(e.length)?ce(e,(function(e){ye(e,t)})):e.classList?e.classList.remove(t):e.className.indexOf(t)>=0&&(e.className=e.className.replace(t,"")))}function ve(e,t,n){t&&(te(e.length)?ce(e,(function(e){ve(e,t,n)})):n?ge(e,t):ye(e,t))}var be=/([a-z\d])([A-Z])/g;function ke(e){return e.replace(be,"$1-$2").toLowerCase()}function we(e,t){return re(e[t])?e[t]:e.dataset?e.dataset[t]:e.getAttribute("data-".concat(ke(t)))}function Se(e,t,n){re(n)?e[t]=n:e.dataset?e.dataset[t]=n:e.setAttribute("data-".concat(ke(t)),n)}var Pe=/\s\s*/,xe=function(){var e=!1;if(s){var t=!1,n=function(){},i=Object.defineProperty({},"once",{get:function(){return e=!0,t},set:function(e){t=e}});l.addEventListener("test",n,i),l.removeEventListener("test",n,i)}return e}();function Ce(e,t,n){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},r=n;t.trim().split(Pe).forEach((function(t){if(!xe){var a=e.listeners;a&&a[t]&&a[t][n]&&(r=a[t][n],delete a[t][n],0===Object.keys(a[t]).length&&delete a[t],0===Object.keys(a).length&&delete e.listeners)}e.removeEventListener(t,r,i)}))}function Ae(e,t,n){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},r=n;t.trim().split(Pe).forEach((function(t){if(i.once&&!xe){var a=e.listeners,o=void 0===a?{}:a;r=function(){delete o[t][n],e.removeEventListener(t,r,i);for(var a=arguments.length,s=new Array(a),l=0;l<a;l++)s[l]=arguments[l];n.apply(e,s)},o[t]||(o[t]={}),o[t][n]&&e.removeEventListener(t,o[t][n],i),o[t][n]=r,e.listeners=o}e.addEventListener(t,r,i)}))}function Te(e,t,n){var i;return se(Event)&&se(CustomEvent)?i=new CustomEvent(t,{detail:n,bubbles:!0,cancelable:!0}):(i=document.createEvent("CustomEvent")).initCustomEvent(t,!0,!0,n),e.dispatchEvent(i)}function je(e){var t=e.getBoundingClientRect();return{left:t.left+(window.pageXOffset-document.documentElement.clientLeft),top:t.top+(window.pageYOffset-document.documentElement.clientTop)}}var _e=l.location,Re=/^(\w+:)\/\/([^:/?#]*):?(\d*)/i;function Ee(e){var t=e.match(Re);return null!==t&&(t[1]!==_e.protocol||t[2]!==_e.hostname||t[3]!==_e.port)}function Ie(e){var t="timestamp=".concat((new Date).getTime());return e+(-1===e.indexOf("?")?"?":"&")+t}function ze(e){var t=e.rotate,n=e.scaleX,i=e.scaleY,r=e.translateX,a=e.translateY,o=[];te(r)&&0!==r&&o.push("translateX(".concat(r,"px)")),te(a)&&0!==a&&o.push("translateY(".concat(a,"px)")),te(t)&&0!==t&&o.push("rotate(".concat(t,"deg)")),te(n)&&1!==n&&o.push("scaleX(".concat(n,")")),te(i)&&1!==i&&o.push("scaleY(".concat(i,")"));var s=o.length?o.join(" "):"none";return{WebkitTransform:s,msTransform:s,transform:s}}function Le(e,n){var i=e.pageX,r=e.pageY,a={endX:i,endY:r};return n?a:t({startX:i,startY:r},a)}function Oe(e){var t=e.aspectRatio,n=e.height,i=e.width,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"contain",a=ne(i),o=ne(n);if(a&&o){var s=n*t;"contain"===r&&s>i||"cover"===r&&s<i?n=i/t:i=n*t}else a?n=i/t:o&&(i=n*t);return{width:i,height:n}}var Me=String.fromCharCode;var Fe=/^data:.*,/;function De(e){var t,n=new DataView(e);try{var i,r,a;if(255===n.getUint8(0)&&216===n.getUint8(1))for(var o=n.byteLength,s=2;s+1<o;){if(255===n.getUint8(s)&&225===n.getUint8(s+1)){r=s;break}s+=1}if(r){var l=r+10;if("Exif"===function(e,t,n){var i="";n+=t;for(var r=t;r<n;r+=1)i+=Me(e.getUint8(r));return i}(n,r+4,4)){var u=n.getUint16(l);if(((i=18761===u)||19789===u)&&42===n.getUint16(l+2,i)){var c=n.getUint32(l+4,i);c>=8&&(a=l+c)}}}if(a){var d,p,h=n.getUint16(a,i);for(p=0;p<h;p+=1)if(d=a+12*p+2,274===n.getUint16(d,i)){d+=8,t=n.getUint16(d,i),n.setUint16(d,1,i);break}}}catch(e){t=1}return t}var Be={render:function(){this.initContainer(),this.initCanvas(),this.initCropBox(),this.renderCanvas(),this.cropped&&this.renderCropBox()},initContainer:function(){var e=this.element,t=this.options,n=this.container,i=this.cropper,r=Number(t.minContainerWidth),a=Number(t.minContainerHeight);ge(i,A),ye(e,A);var o={width:Math.max(n.offsetWidth,r>=0?r:200),height:Math.max(n.offsetHeight,a>=0?a:100)};this.containerData=o,fe(i,{width:o.width,height:o.height}),ge(e,A),ye(i,A)},initCanvas:function(){var e=this.containerData,t=this.imageData,n=this.options.viewMode,i=Math.abs(t.rotate)%180==90,r=i?t.naturalHeight:t.naturalWidth,a=i?t.naturalWidth:t.naturalHeight,o=r/a,s=e.width,l=e.height;e.height*o>e.width?3===n?s=e.height*o:l=e.width/o:3===n?l=e.width/o:s=e.height*o;var u={aspectRatio:o,naturalWidth:r,naturalHeight:a,width:s,height:l};this.canvasData=u,this.limited=1===n||2===n,this.limitCanvas(!0,!0),u.width=Math.min(Math.max(u.width,u.minWidth),u.maxWidth),u.height=Math.min(Math.max(u.height,u.minHeight),u.maxHeight),u.left=(e.width-u.width)/2,u.top=(e.height-u.height)/2,u.oldLeft=u.left,u.oldTop=u.top,this.initialCanvasData=de({},u)},limitCanvas:function(e,t){var n=this.options,i=this.containerData,r=this.canvasData,a=this.cropBoxData,o=n.viewMode,s=r.aspectRatio,l=this.cropped&&a;if(e){var u=Number(n.minCanvasWidth)||0,c=Number(n.minCanvasHeight)||0;o>1?(u=Math.max(u,i.width),c=Math.max(c,i.height),3===o&&(c*s>u?u=c*s:c=u/s)):o>0&&(u?u=Math.max(u,l?a.width:0):c?c=Math.max(c,l?a.height:0):l&&(u=a.width,(c=a.height)*s>u?u=c*s:c=u/s));var d=Oe({aspectRatio:s,width:u,height:c});u=d.width,c=d.height,r.minWidth=u,r.minHeight=c,r.maxWidth=1/0,r.maxHeight=1/0}if(t)if(o>(l?0:1)){var p=i.width-r.width,h=i.height-r.height;r.minLeft=Math.min(0,p),r.minTop=Math.min(0,h),r.maxLeft=Math.max(0,p),r.maxTop=Math.max(0,h),l&&this.limited&&(r.minLeft=Math.min(a.left,a.left+(a.width-r.width)),r.minTop=Math.min(a.top,a.top+(a.height-r.height)),r.maxLeft=a.left,r.maxTop=a.top,2===o&&(r.width>=i.width&&(r.minLeft=Math.min(0,p),r.maxLeft=Math.max(0,p)),r.height>=i.height&&(r.minTop=Math.min(0,h),r.maxTop=Math.max(0,h))))}else r.minLeft=-r.width,r.minTop=-r.height,r.maxLeft=i.width,r.maxTop=i.height},renderCanvas:function(e,t){var n=this.canvasData,i=this.imageData;if(t){var r=function(e){var t=e.width,n=e.height,i=e.degree;if(90==(i=Math.abs(i)%180))return{width:n,height:t};var r=i%90*Math.PI/180,a=Math.sin(r),o=Math.cos(r),s=t*o+n*a,l=t*a+n*o;return i>90?{width:l,height:s}:{width:s,height:l}}({width:i.naturalWidth*Math.abs(i.scaleX||1),height:i.naturalHeight*Math.abs(i.scaleY||1),degree:i.rotate||0}),a=r.width,o=r.height,s=n.width*(a/n.naturalWidth),l=n.height*(o/n.naturalHeight);n.left-=(s-n.width)/2,n.top-=(l-n.height)/2,n.width=s,n.height=l,n.aspectRatio=a/o,n.naturalWidth=a,n.naturalHeight=o,this.limitCanvas(!0,!1)}(n.width>n.maxWidth||n.width<n.minWidth)&&(n.left=n.oldLeft),(n.height>n.maxHeight||n.height<n.minHeight)&&(n.top=n.oldTop),n.width=Math.min(Math.max(n.width,n.minWidth),n.maxWidth),n.height=Math.min(Math.max(n.height,n.minHeight),n.maxHeight),this.limitCanvas(!1,!0),n.left=Math.min(Math.max(n.left,n.minLeft),n.maxLeft),n.top=Math.min(Math.max(n.top,n.minTop),n.maxTop),n.oldLeft=n.left,n.oldTop=n.top,fe(this.canvas,de({width:n.width,height:n.height},ze({translateX:n.left,translateY:n.top}))),this.renderImage(e),this.cropped&&this.limited&&this.limitCropBox(!0,!0)},renderImage:function(e){var t=this.canvasData,n=this.imageData,i=n.naturalWidth*(t.width/t.naturalWidth),r=n.naturalHeight*(t.height/t.naturalHeight);de(n,{width:i,height:r,left:(t.width-i)/2,top:(t.height-r)/2}),fe(this.image,de({width:n.width,height:n.height},ze(de({translateX:n.left,translateY:n.top},n)))),e&&this.output()},initCropBox:function(){var e=this.options,t=this.canvasData,n=e.aspectRatio||e.initialAspectRatio,i=Number(e.autoCropArea)||.8,r={width:t.width,height:t.height};n&&(t.height*n>t.width?r.height=r.width/n:r.width=r.height*n),this.cropBoxData=r,this.limitCropBox(!0,!0),r.width=Math.min(Math.max(r.width,r.minWidth),r.maxWidth),r.height=Math.min(Math.max(r.height,r.minHeight),r.maxHeight),r.width=Math.max(r.minWidth,r.width*i),r.height=Math.max(r.minHeight,r.height*i),r.left=t.left+(t.width-r.width)/2,r.top=t.top+(t.height-r.height)/2,r.oldLeft=r.left,r.oldTop=r.top,this.initialCropBoxData=de({},r)},limitCropBox:function(e,t){var n=this.options,i=this.containerData,r=this.canvasData,a=this.cropBoxData,o=this.limited,s=n.aspectRatio;if(e){var l=Number(n.minCropBoxWidth)||0,u=Number(n.minCropBoxHeight)||0,c=o?Math.min(i.width,r.width,r.width+r.left,i.width-r.left):i.width,d=o?Math.min(i.height,r.height,r.height+r.top,i.height-r.top):i.height;l=Math.min(l,i.width),u=Math.min(u,i.height),s&&(l&&u?u*s>l?u=l/s:l=u*s:l?u=l/s:u&&(l=u*s),d*s>c?d=c/s:c=d*s),a.minWidth=Math.min(l,c),a.minHeight=Math.min(u,d),a.maxWidth=c,a.maxHeight=d}t&&(o?(a.minLeft=Math.max(0,r.left),a.minTop=Math.max(0,r.top),a.maxLeft=Math.min(i.width,r.left+r.width)-a.width,a.maxTop=Math.min(i.height,r.top+r.height)-a.height):(a.minLeft=0,a.minTop=0,a.maxLeft=i.width-a.width,a.maxTop=i.height-a.height))},renderCropBox:function(){var e=this.options,t=this.containerData,n=this.cropBoxData;(n.width>n.maxWidth||n.width<n.minWidth)&&(n.left=n.oldLeft),(n.height>n.maxHeight||n.height<n.minHeight)&&(n.top=n.oldTop),n.width=Math.min(Math.max(n.width,n.minWidth),n.maxWidth),n.height=Math.min(Math.max(n.height,n.minHeight),n.maxHeight),this.limitCropBox(!1,!0),n.left=Math.min(Math.max(n.left,n.minLeft),n.maxLeft),n.top=Math.min(Math.max(n.top,n.minTop),n.maxTop),n.oldLeft=n.left,n.oldTop=n.top,e.movable&&e.cropBoxMovable&&Se(this.face,E,n.width>=t.width&&n.height>=t.height?m:p),fe(this.cropBox,de({width:n.width,height:n.height},ze({translateX:n.left,translateY:n.top}))),this.cropped&&this.limited&&this.limitCanvas(!0,!0),this.disabled||this.output()},output:function(){this.preview(),Te(this.element,M,this.getData())}},Ne={initPreview:function(){var e=this.element,t=this.crossOrigin,n=this.options.preview,i=t?this.crossOriginUrl:this.url,r=e.alt||"The image to preview",a=document.createElement("img");if(t&&(a.crossOrigin=t),a.src=i,a.alt=r,this.viewBox.appendChild(a),this.viewBoxImage=a,n){var o=n;"string"==typeof n?o=e.ownerDocument.querySelectorAll(n):n.querySelector&&(o=[n]),this.previews=o,ce(o,(function(e){var n=document.createElement("img");Se(e,I,{width:e.offsetWidth,height:e.offsetHeight,html:e.innerHTML}),t&&(n.crossOrigin=t),n.src=i,n.alt=r,n.style.cssText='display:block;width:100%;height:auto;min-width:0!important;min-height:0!important;max-width:none!important;max-height:none!important;image-orientation:0deg!important;"',e.innerHTML="",e.appendChild(n)}))}},resetPreview:function(){ce(this.previews,(function(e){var t=we(e,I);fe(e,{width:t.width,height:t.height}),e.innerHTML=t.html,function(e,t){if(re(e[t]))try{delete e[t]}catch(n){e[t]=void 0}else if(e.dataset)try{delete e.dataset[t]}catch(n){e.dataset[t]=void 0}else e.removeAttribute("data-".concat(ke(t)))}(e,I)}))},preview:function(){var e=this.imageData,t=this.canvasData,n=this.cropBoxData,i=n.width,r=n.height,a=e.width,o=e.height,s=n.left-t.left-e.left,l=n.top-t.top-e.top;this.cropped&&!this.disabled&&(fe(this.viewBoxImage,de({width:a,height:o},ze(de({translateX:-s,translateY:-l},e)))),ce(this.previews,(function(t){var n=we(t,I),u=n.width,c=n.height,d=u,p=c,h=1;i&&(p=r*(h=u/i)),r&&p>c&&(d=i*(h=c/r),p=c),fe(t,{width:d,height:p}),fe(t.getElementsByTagName("img")[0],de({width:a*h,height:o*h},ze(de({translateX:-s*h,translateY:-l*h},e))))})))}},Ge={bind:function(){var e=this.element,t=this.options,n=this.cropper;se(t.cropstart)&&Ae(e,B,t.cropstart),se(t.cropmove)&&Ae(e,D,t.cropmove),se(t.cropend)&&Ae(e,F,t.cropend),se(t.crop)&&Ae(e,M,t.crop),se(t.zoom)&&Ae(e,J,t.zoom),Ae(n,G,this.onCropStart=this.cropStart.bind(this)),t.zoomable&&t.zoomOnWheel&&Ae(n,q,this.onWheel=this.wheel.bind(this),{passive:!1,capture:!0}),t.toggleDragModeOnDblclick&&Ae(n,N,this.onDblclick=this.dblclick.bind(this)),Ae(e.ownerDocument,U,this.onCropMove=this.cropMove.bind(this)),Ae(e.ownerDocument,H,this.onCropEnd=this.cropEnd.bind(this)),t.responsive&&Ae(window,V,this.onResize=this.resize.bind(this))},unbind:function(){var e=this.element,t=this.options,n=this.cropper;se(t.cropstart)&&Ce(e,B,t.cropstart),se(t.cropmove)&&Ce(e,D,t.cropmove),se(t.cropend)&&Ce(e,F,t.cropend),se(t.crop)&&Ce(e,M,t.crop),se(t.zoom)&&Ce(e,J,t.zoom),Ce(n,G,this.onCropStart),t.zoomable&&t.zoomOnWheel&&Ce(n,q,this.onWheel,{passive:!1,capture:!0}),t.toggleDragModeOnDblclick&&Ce(n,N,this.onDblclick),Ce(e.ownerDocument,U,this.onCropMove),Ce(e.ownerDocument,H,this.onCropEnd),t.responsive&&Ce(window,V,this.onResize)}},Ue={resize:function(){if(!this.disabled){var e,t,n=this.options,i=this.container,r=this.containerData,a=i.offsetWidth/r.width,o=i.offsetHeight/r.height,s=Math.abs(a-1)>Math.abs(o-1)?a:o;1!==s&&(n.restore&&(e=this.getCanvasData(),t=this.getCropBoxData()),this.render(),n.restore&&(this.setCanvasData(ce(e,(function(t,n){e[n]=t*s}))),this.setCropBoxData(ce(t,(function(e,n){t[n]=e*s})))))}},dblclick:function(){var e,t;this.disabled||this.options.dragMode===O||this.setDragMode((e=this.dragBox,t=x,(e.classList?e.classList.contains(t):e.className.indexOf(t)>-1)?L:z))},wheel:function(e){var t=this,n=Number(this.options.wheelZoomRatio)||.1,i=1;this.disabled||(e.preventDefault(),this.wheeling||(this.wheeling=!0,setTimeout((function(){t.wheeling=!1}),50),e.deltaY?i=e.deltaY>0?1:-1:e.wheelDelta?i=-e.wheelDelta/120:e.detail&&(i=e.detail>0?1:-1),this.zoom(-i*n,e)))},cropStart:function(e){var t=e.buttons,n=e.button;if(!(this.disabled||("mousedown"===e.type||"pointerdown"===e.type&&"mouse"===e.pointerType)&&(te(t)&&1!==t||te(n)&&0!==n||e.ctrlKey))){var i,r=this.options,a=this.pointers;e.changedTouches?ce(e.changedTouches,(function(e){a[e.identifier]=Le(e)})):a[e.pointerId||0]=Le(e),i=Object.keys(a).length>1&&r.zoomable&&r.zoomOnTouch?f:we(e.target,E),K.test(i)&&!1!==Te(this.element,B,{originalEvent:e,action:i})&&(e.preventDefault(),this.action=i,this.cropping=!1,i===h&&(this.cropping=!0,ge(this.dragBox,_)))}},cropMove:function(e){var t=this.action;if(!this.disabled&&t){var n=this.pointers;e.preventDefault(),!1!==Te(this.element,D,{originalEvent:e,action:t})&&(e.changedTouches?ce(e.changedTouches,(function(e){de(n[e.identifier]||{},Le(e,!0))})):de(n[e.pointerId||0]||{},Le(e,!0)),this.change(e))}},cropEnd:function(e){if(!this.disabled){var t=this.action,n=this.pointers;e.changedTouches?ce(e.changedTouches,(function(e){delete n[e.identifier]})):delete n[e.pointerId||0],t&&(e.preventDefault(),Object.keys(n).length||(this.action=""),this.cropping&&(this.cropping=!1,ve(this.dragBox,_,this.cropped&&this.options.modal)),Te(this.element,F,{originalEvent:e,action:t}))}}},He={change:function(e){var n,i=this.options,r=this.canvasData,a=this.containerData,o=this.cropBoxData,s=this.pointers,l=this.action,u=i.aspectRatio,c=o.left,d=o.top,x=o.width,C=o.height,T=c+x,j=d+C,_=0,R=0,E=a.width,I=a.height,z=!0;!u&&e.shiftKey&&(u=x&&C?x/C:1),this.limited&&(_=o.minLeft,R=o.minTop,E=_+Math.min(a.width,r.width,r.left+r.width),I=R+Math.min(a.height,r.height,r.top+r.height));var L=s[Object.keys(s)[0]],O={x:L.endX-L.startX,y:L.endY-L.startY},M=function(e){switch(e){case g:T+O.x>E&&(O.x=E-T);break;case y:c+O.x<_&&(O.x=_-c);break;case b:d+O.y<R&&(O.y=R-d);break;case v:j+O.y>I&&(O.y=I-j)}};switch(l){case p:c+=O.x,d+=O.y;break;case g:if(O.x>=0&&(T>=E||u&&(d<=R||j>=I))){z=!1;break}M(g),(x+=O.x)<0&&(l=y,c-=x=-x),u&&(C=x/u,d+=(o.height-C)/2);break;case b:if(O.y<=0&&(d<=R||u&&(c<=_||T>=E))){z=!1;break}M(b),C-=O.y,d+=O.y,C<0&&(l=v,d-=C=-C),u&&(x=C*u,c+=(o.width-x)/2);break;case y:if(O.x<=0&&(c<=_||u&&(d<=R||j>=I))){z=!1;break}M(y),x-=O.x,c+=O.x,x<0&&(l=g,c-=x=-x),u&&(C=x/u,d+=(o.height-C)/2);break;case v:if(O.y>=0&&(j>=I||u&&(c<=_||T>=E))){z=!1;break}M(v),(C+=O.y)<0&&(l=b,d-=C=-C),u&&(x=C*u,c+=(o.width-x)/2);break;case k:if(u){if(O.y<=0&&(d<=R||T>=E)){z=!1;break}M(b),C-=O.y,d+=O.y,x=C*u}else M(b),M(g),O.x>=0?T<E?x+=O.x:O.y<=0&&d<=R&&(z=!1):x+=O.x,O.y<=0?d>R&&(C-=O.y,d+=O.y):(C-=O.y,d+=O.y);x<0&&C<0?(l=P,d-=C=-C,c-=x=-x):x<0?(l=w,c-=x=-x):C<0&&(l=S,d-=C=-C);break;case w:if(u){if(O.y<=0&&(d<=R||c<=_)){z=!1;break}M(b),C-=O.y,d+=O.y,x=C*u,c+=o.width-x}else M(b),M(y),O.x<=0?c>_?(x-=O.x,c+=O.x):O.y<=0&&d<=R&&(z=!1):(x-=O.x,c+=O.x),O.y<=0?d>R&&(C-=O.y,d+=O.y):(C-=O.y,d+=O.y);x<0&&C<0?(l=S,d-=C=-C,c-=x=-x):x<0?(l=k,c-=x=-x):C<0&&(l=P,d-=C=-C);break;case P:if(u){if(O.x<=0&&(c<=_||j>=I)){z=!1;break}M(y),x-=O.x,c+=O.x,C=x/u}else M(v),M(y),O.x<=0?c>_?(x-=O.x,c+=O.x):O.y>=0&&j>=I&&(z=!1):(x-=O.x,c+=O.x),O.y>=0?j<I&&(C+=O.y):C+=O.y;x<0&&C<0?(l=k,d-=C=-C,c-=x=-x):x<0?(l=S,c-=x=-x):C<0&&(l=w,d-=C=-C);break;case S:if(u){if(O.x>=0&&(T>=E||j>=I)){z=!1;break}M(g),C=(x+=O.x)/u}else M(v),M(g),O.x>=0?T<E?x+=O.x:O.y>=0&&j>=I&&(z=!1):x+=O.x,O.y>=0?j<I&&(C+=O.y):C+=O.y;x<0&&C<0?(l=w,d-=C=-C,c-=x=-x):x<0?(l=P,c-=x=-x):C<0&&(l=k,d-=C=-C);break;case m:this.move(O.x,O.y),z=!1;break;case f:this.zoom(function(e){var n=t({},e),i=0;return ce(e,(function(e,t){delete n[t],ce(n,(function(t){var n=Math.abs(e.startX-t.startX),r=Math.abs(e.startY-t.startY),a=Math.abs(e.endX-t.endX),o=Math.abs(e.endY-t.endY),s=Math.sqrt(n*n+r*r),l=(Math.sqrt(a*a+o*o)-s)/s;Math.abs(l)>Math.abs(i)&&(i=l)}))})),i}(s),e),z=!1;break;case h:if(!O.x||!O.y){z=!1;break}n=je(this.cropper),c=L.startX-n.left,d=L.startY-n.top,x=o.minWidth,C=o.minHeight,O.x>0?l=O.y>0?S:k:O.x<0&&(c-=x,l=O.y>0?P:w),O.y<0&&(d-=C),this.cropped||(ye(this.cropBox,A),this.cropped=!0,this.limited&&this.limitCropBox(!0,!0))}z&&(o.width=x,o.height=C,o.left=c,o.top=d,this.action=l,this.renderCropBox()),ce(s,(function(e){e.startX=e.endX,e.startY=e.endY}))}},We={crop:function(){return!this.ready||this.cropped||this.disabled||(this.cropped=!0,this.limitCropBox(!0,!0),this.options.modal&&ge(this.dragBox,_),ye(this.cropBox,A),this.setCropBoxData(this.initialCropBoxData)),this},reset:function(){return this.ready&&!this.disabled&&(this.imageData=de({},this.initialImageData),this.canvasData=de({},this.initialCanvasData),this.cropBoxData=de({},this.initialCropBoxData),this.renderCanvas(),this.cropped&&this.renderCropBox()),this},clear:function(){return this.cropped&&!this.disabled&&(de(this.cropBoxData,{left:0,top:0,width:0,height:0}),this.cropped=!1,this.renderCropBox(),this.limitCanvas(!0,!0),this.renderCanvas(),ye(this.dragBox,_),ge(this.cropBox,A)),this},replace:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return!this.disabled&&e&&(this.isImg&&(this.element.src=e),t?(this.url=e,this.image.src=e,this.ready&&(this.viewBoxImage.src=e,ce(this.previews,(function(t){t.getElementsByTagName("img")[0].src=e})))):(this.isImg&&(this.replaced=!0),this.options.data=null,this.uncreate(),this.load(e))),this},enable:function(){return this.ready&&this.disabled&&(this.disabled=!1,ye(this.cropper,C)),this},disable:function(){return this.ready&&!this.disabled&&(this.disabled=!0,ge(this.cropper,C)),this},destroy:function(){var e=this.element;return e[d]?(e[d]=void 0,this.isImg&&this.replaced&&(e.src=this.originalUrl),this.uncreate(),this):this},move:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e,n=this.canvasData,i=n.left,r=n.top;return this.moveTo(ie(e)?e:i+Number(e),ie(t)?t:r+Number(t))},moveTo:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e,n=this.canvasData,i=!1;return e=Number(e),t=Number(t),this.ready&&!this.disabled&&this.options.movable&&(te(e)&&(n.left=e,i=!0),te(t)&&(n.top=t,i=!0),i&&this.renderCanvas(!0)),this},zoom:function(e,t){var n=this.canvasData;return e=(e=Number(e))<0?1/(1-e):1+e,this.zoomTo(n.width*e/n.naturalWidth,null,t)},zoomTo:function(e,t,n){var i=this.options,r=this.canvasData,a=r.width,o=r.height,s=r.naturalWidth,l=r.naturalHeight;if((e=Number(e))>=0&&this.ready&&!this.disabled&&i.zoomable){var u=s*e,c=l*e;if(!1===Te(this.element,J,{ratio:e,oldRatio:a/s,originalEvent:n}))return this;if(n){var d=this.pointers,p=je(this.cropper),h=d&&Object.keys(d).length?function(e){var t=0,n=0,i=0;return ce(e,(function(e){var r=e.startX,a=e.startY;t+=r,n+=a,i+=1})),{pageX:t/=i,pageY:n/=i}}(d):{pageX:n.pageX,pageY:n.pageY};r.left-=(u-a)*((h.pageX-p.left-r.left)/a),r.top-=(c-o)*((h.pageY-p.top-r.top)/o)}else oe(t)&&te(t.x)&&te(t.y)?(r.left-=(u-a)*((t.x-r.left)/a),r.top-=(c-o)*((t.y-r.top)/o)):(r.left-=(u-a)/2,r.top-=(c-o)/2);r.width=u,r.height=c,this.renderCanvas(!0)}return this},rotate:function(e){return this.rotateTo((this.imageData.rotate||0)+Number(e))},rotateTo:function(e){return te(e=Number(e))&&this.ready&&!this.disabled&&this.options.rotatable&&(this.imageData.rotate=e%360,this.renderCanvas(!0,!0)),this},scaleX:function(e){var t=this.imageData.scaleY;return this.scale(e,te(t)?t:1)},scaleY:function(e){var t=this.imageData.scaleX;return this.scale(te(t)?t:1,e)},scale:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e,n=this.imageData,i=!1;return e=Number(e),t=Number(t),this.ready&&!this.disabled&&this.options.scalable&&(te(e)&&(n.scaleX=e,i=!0),te(t)&&(n.scaleY=t,i=!0),i&&this.renderCanvas(!0,!0)),this},getData:function(){var e,t=arguments.length>0&&void 0!==arguments[0]&&arguments[0],n=this.options,i=this.imageData,r=this.canvasData,a=this.cropBoxData;if(this.ready&&this.cropped){e={x:a.left-r.left,y:a.top-r.top,width:a.width,height:a.height};var o=i.width/i.naturalWidth;if(ce(e,(function(t,n){e[n]=t/o})),t){var s=Math.round(e.y+e.height),l=Math.round(e.x+e.width);e.x=Math.round(e.x),e.y=Math.round(e.y),e.width=l-e.x,e.height=s-e.y}}else e={x:0,y:0,width:0,height:0};return n.rotatable&&(e.rotate=i.rotate||0),n.scalable&&(e.scaleX=i.scaleX||1,e.scaleY=i.scaleY||1),e},setData:function(e){var t=this.options,n=this.imageData,i=this.canvasData,r={};if(this.ready&&!this.disabled&&oe(e)){var a=!1;t.rotatable&&te(e.rotate)&&e.rotate!==n.rotate&&(n.rotate=e.rotate,a=!0),t.scalable&&(te(e.scaleX)&&e.scaleX!==n.scaleX&&(n.scaleX=e.scaleX,a=!0),te(e.scaleY)&&e.scaleY!==n.scaleY&&(n.scaleY=e.scaleY,a=!0)),a&&this.renderCanvas(!0,!0);var o=n.width/n.naturalWidth;te(e.x)&&(r.left=e.x*o+i.left),te(e.y)&&(r.top=e.y*o+i.top),te(e.width)&&(r.width=e.width*o),te(e.height)&&(r.height=e.height*o),this.setCropBoxData(r)}return this},getContainerData:function(){return this.ready?de({},this.containerData):{}},getImageData:function(){return this.sized?de({},this.imageData):{}},getCanvasData:function(){var e=this.canvasData,t={};return this.ready&&ce(["left","top","width","height","naturalWidth","naturalHeight"],(function(n){t[n]=e[n]})),t},setCanvasData:function(e){var t=this.canvasData,n=t.aspectRatio;return this.ready&&!this.disabled&&oe(e)&&(te(e.left)&&(t.left=e.left),te(e.top)&&(t.top=e.top),te(e.width)?(t.width=e.width,t.height=e.width/n):te(e.height)&&(t.height=e.height,t.width=e.height*n),this.renderCanvas(!0)),this},getCropBoxData:function(){var e,t=this.cropBoxData;return this.ready&&this.cropped&&(e={left:t.left,top:t.top,width:t.width,height:t.height}),e||{}},setCropBoxData:function(e){var t,n,i=this.cropBoxData,r=this.options.aspectRatio;return this.ready&&this.cropped&&!this.disabled&&oe(e)&&(te(e.left)&&(i.left=e.left),te(e.top)&&(i.top=e.top),te(e.width)&&e.width!==i.width&&(t=!0,i.width=e.width),te(e.height)&&e.height!==i.height&&(n=!0,i.height=e.height),r&&(t?i.height=i.width/r:n&&(i.width=i.height*r)),this.renderCropBox()),this},getCroppedCanvas:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(!this.ready||!window.HTMLCanvasElement)return null;var t=this.canvasData,n=function(e,t,n,i){var r=t.aspectRatio,o=t.naturalWidth,s=t.naturalHeight,l=t.rotate,u=void 0===l?0:l,c=t.scaleX,d=void 0===c?1:c,p=t.scaleY,h=void 0===p?1:p,m=n.aspectRatio,f=n.naturalWidth,g=n.naturalHeight,y=i.fillColor,v=void 0===y?"transparent":y,b=i.imageSmoothingEnabled,k=void 0===b||b,w=i.imageSmoothingQuality,S=void 0===w?"low":w,P=i.maxWidth,x=void 0===P?1/0:P,C=i.maxHeight,A=void 0===C?1/0:C,T=i.minWidth,j=void 0===T?0:T,_=i.minHeight,R=void 0===_?0:_,E=document.createElement("canvas"),I=E.getContext("2d"),z=Oe({aspectRatio:m,width:x,height:A}),L=Oe({aspectRatio:m,width:j,height:R},"cover"),O=Math.min(z.width,Math.max(L.width,f)),M=Math.min(z.height,Math.max(L.height,g)),F=Oe({aspectRatio:r,width:x,height:A}),D=Oe({aspectRatio:r,width:j,height:R},"cover"),B=Math.min(F.width,Math.max(D.width,o)),N=Math.min(F.height,Math.max(D.height,s)),G=[-B/2,-N/2,B,N];return E.width=he(O),E.height=he(M),I.fillStyle=v,I.fillRect(0,0,O,M),I.save(),I.translate(O/2,M/2),I.rotate(u*Math.PI/180),I.scale(d,h),I.imageSmoothingEnabled=k,I.imageSmoothingQuality=S,I.drawImage.apply(I,[e].concat(a(G.map((function(e){return Math.floor(he(e))}))))),I.restore(),E}(this.image,this.imageData,t,e);if(!this.cropped)return n;var i=this.getData(e.rounded),r=i.x,o=i.y,s=i.width,l=i.height,u=n.width/Math.floor(t.naturalWidth);1!==u&&(r*=u,o*=u,s*=u,l*=u);var c=s/l,d=Oe({aspectRatio:c,width:e.maxWidth||1/0,height:e.maxHeight||1/0}),p=Oe({aspectRatio:c,width:e.minWidth||0,height:e.minHeight||0},"cover"),h=Oe({aspectRatio:c,width:e.width||(1!==u?n.width:s),height:e.height||(1!==u?n.height:l)}),m=h.width,f=h.height;m=Math.min(d.width,Math.max(p.width,m)),f=Math.min(d.height,Math.max(p.height,f));var g=document.createElement("canvas"),y=g.getContext("2d");g.width=he(m),g.height=he(f),y.fillStyle=e.fillColor||"transparent",y.fillRect(0,0,m,f);var v=e.imageSmoothingEnabled,b=void 0===v||v,k=e.imageSmoothingQuality;y.imageSmoothingEnabled=b,k&&(y.imageSmoothingQuality=k);var w,S,P,x,C,A,T=n.width,j=n.height,_=r,R=o;_<=-s||_>T?(_=0,w=0,P=0,C=0):_<=0?(P=-_,_=0,C=w=Math.min(T,s+_)):_<=T&&(P=0,C=w=Math.min(s,T-_)),w<=0||R<=-l||R>j?(R=0,S=0,x=0,A=0):R<=0?(x=-R,R=0,A=S=Math.min(j,l+R)):R<=j&&(x=0,A=S=Math.min(l,j-R));var E=[_,R,w,S];if(C>0&&A>0){var I=m/s;E.push(P*I,x*I,C*I,A*I)}return y.drawImage.apply(y,[n].concat(a(E.map((function(e){return Math.floor(he(e))}))))),g},setAspectRatio:function(e){var t=this.options;return this.disabled||ie(e)||(t.aspectRatio=Math.max(0,e)||NaN,this.ready&&(this.initCropBox(),this.cropped&&this.renderCropBox())),this},setDragMode:function(e){var t=this.options,n=this.dragBox,i=this.face;if(this.ready&&!this.disabled){var r=e===z,a=t.movable&&e===L;e=r||a?e:O,t.dragMode=e,Se(n,E,e),ve(n,x,r),ve(n,R,a),t.cropBoxMovable||(Se(i,E,e),ve(i,x,r),ve(i,R,a))}return this}},Ve=l.Cropper,qe=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),!t||!X.test(t.tagName))throw new Error("The first argument is required and must be an <img> or <canvas> element.");this.element=t,this.options=de({},Q,oe(n)&&n),this.cropped=!1,this.disabled=!1,this.pointers={},this.ready=!1,this.reloading=!1,this.replaced=!1,this.sized=!1,this.sizing=!1,this.init()}return t=e,i=[{key:"noConflict",value:function(){return window.Cropper=Ve,e}},{key:"setDefaults",value:function(e){de(Q,oe(e)&&e)}}],(n=[{key:"init",value:function(){var e,t=this.element,n=t.tagName.toLowerCase();if(!t[d]){if(t[d]=this,"img"===n){if(this.isImg=!0,e=t.getAttribute("src")||"",this.originalUrl=e,!e)return;e=t.src}else"canvas"===n&&window.HTMLCanvasElement&&(e=t.toDataURL());this.load(e)}}},{key:"load",value:function(e){var t,n,i,r,a=this;if(e){this.url=e,this.imageData={};var o=this.element,s=this.options;if(s.rotatable||s.scalable||(s.checkOrientation=!1),s.checkOrientation&&window.ArrayBuffer)if($.test(e))Z.test(e)?this.read((t=e.replace(Fe,""),n=atob(t),i=new ArrayBuffer(n.length),ce(r=new Uint8Array(i),(function(e,t){r[t]=n.charCodeAt(t)})),i)):this.clone();else{var l=new XMLHttpRequest,u=this.clone.bind(this);this.reloading=!0,this.xhr=l,l.onabort=u,l.onerror=u,l.ontimeout=u,l.onprogress=function(){l.getResponseHeader("content-type")!==Y&&l.abort()},l.onload=function(){a.read(l.response)},l.onloadend=function(){a.reloading=!1,a.xhr=null},s.checkCrossOrigin&&Ee(e)&&o.crossOrigin&&(e=Ie(e)),l.open("GET",e,!0),l.responseType="arraybuffer",l.withCredentials="use-credentials"===o.crossOrigin,l.send()}else this.clone()}}},{key:"read",value:function(e){var t=this.options,n=this.imageData,i=De(e),r=0,a=1,o=1;if(i>1){this.url=function(e,t){for(var n=[],i=new Uint8Array(e);i.length>0;)n.push(Me.apply(null,ue(i.subarray(0,8192)))),i=i.subarray(8192);return"data:".concat(t,";base64,").concat(btoa(n.join("")))}(e,Y);var s=function(e){var t=0,n=1,i=1;switch(e){case 2:n=-1;break;case 3:t=-180;break;case 4:i=-1;break;case 5:t=90,i=-1;break;case 6:t=90;break;case 7:t=90,n=-1;break;case 8:t=-90}return{rotate:t,scaleX:n,scaleY:i}}(i);r=s.rotate,a=s.scaleX,o=s.scaleY}t.rotatable&&(n.rotate=r),t.scalable&&(n.scaleX=a,n.scaleY=o),this.clone()}},{key:"clone",value:function(){var e=this.element,t=this.url,n=e.crossOrigin,i=t;this.options.checkCrossOrigin&&Ee(t)&&(n||(n="anonymous"),i=Ie(t)),this.crossOrigin=n,this.crossOriginUrl=i;var r=document.createElement("img");n&&(r.crossOrigin=n),r.src=i||t,r.alt=e.alt||"The image to crop",this.image=r,r.onload=this.start.bind(this),r.onerror=this.stop.bind(this),ge(r,T),e.parentNode.insertBefore(r,e.nextSibling)}},{key:"start",value:function(){var e=this,t=this.image;t.onload=null,t.onerror=null,this.sizing=!0;var n=l.navigator&&/(?:iPad|iPhone|iPod).*?AppleWebKit/i.test(l.navigator.userAgent),i=function(t,n){de(e.imageData,{naturalWidth:t,naturalHeight:n,aspectRatio:t/n}),e.initialImageData=de({},e.imageData),e.sizing=!1,e.sized=!0,e.build()};if(!t.naturalWidth||n){var r=document.createElement("img"),a=document.body||document.documentElement;this.sizingImage=r,r.onload=function(){i(r.width,r.height),n||a.removeChild(r)},r.src=t.src,n||(r.style.cssText="left:0;max-height:none!important;max-width:none!important;min-height:0!important;min-width:0!important;opacity:0;position:absolute;top:0;z-index:-1;",a.appendChild(r))}else i(t.naturalWidth,t.naturalHeight)}},{key:"stop",value:function(){var e=this.image;e.onload=null,e.onerror=null,e.parentNode.removeChild(e),this.image=null}},{key:"build",value:function(){if(this.sized&&!this.ready){var e=this.element,t=this.options,n=this.image,i=e.parentNode,r=document.createElement("div");r.innerHTML='<div class="cropper-container" touch-action="none"><div class="cropper-wrap-box"><div class="cropper-canvas"></div></div><div class="cropper-drag-box"></div><div class="cropper-crop-box"><span class="cropper-view-box"></span><span class="cropper-dashed dashed-h"></span><span class="cropper-dashed dashed-v"></span><span class="cropper-center"></span><span class="cropper-face"></span><span class="cropper-line line-e" data-cropper-action="e"></span><span class="cropper-line line-n" data-cropper-action="n"></span><span class="cropper-line line-w" data-cropper-action="w"></span><span class="cropper-line line-s" data-cropper-action="s"></span><span class="cropper-point point-e" data-cropper-action="e"></span><span class="cropper-point point-n" data-cropper-action="n"></span><span class="cropper-point point-w" data-cropper-action="w"></span><span class="cropper-point point-s" data-cropper-action="s"></span><span class="cropper-point point-ne" data-cropper-action="ne"></span><span class="cropper-point point-nw" data-cropper-action="nw"></span><span class="cropper-point point-sw" data-cropper-action="sw"></span><span class="cropper-point point-se" data-cropper-action="se"></span></div></div>';var a=r.querySelector(".".concat(d,"-container")),o=a.querySelector(".".concat(d,"-canvas")),s=a.querySelector(".".concat(d,"-drag-box")),l=a.querySelector(".".concat(d,"-crop-box")),u=l.querySelector(".".concat(d,"-face"));this.container=i,this.cropper=a,this.canvas=o,this.dragBox=s,this.cropBox=l,this.viewBox=a.querySelector(".".concat(d,"-view-box")),this.face=u,o.appendChild(n),ge(e,A),i.insertBefore(a,e.nextSibling),ye(n,T),this.initPreview(),this.bind(),t.initialAspectRatio=Math.max(0,t.initialAspectRatio)||NaN,t.aspectRatio=Math.max(0,t.aspectRatio)||NaN,t.viewMode=Math.max(0,Math.min(3,Math.round(t.viewMode)))||0,ge(l,A),t.guides||ge(l.getElementsByClassName("".concat(d,"-dashed")),A),t.center||ge(l.getElementsByClassName("".concat(d,"-center")),A),t.background&&ge(a,"".concat(d,"-bg")),t.highlight||ge(u,j),t.cropBoxMovable&&(ge(u,R),Se(u,E,p)),t.cropBoxResizable||(ge(l.getElementsByClassName("".concat(d,"-line")),A),ge(l.getElementsByClassName("".concat(d,"-point")),A)),this.render(),this.ready=!0,this.setDragMode(t.dragMode),t.autoCrop&&this.crop(),this.setData(t.data),se(t.ready)&&Ae(e,W,t.ready,{once:!0}),Te(e,W)}}},{key:"unbuild",value:function(){if(this.ready){this.ready=!1,this.unbind(),this.resetPreview();var e=this.cropper.parentNode;e&&e.removeChild(this.cropper),ye(this.element,A)}}},{key:"uncreate",value:function(){this.ready?(this.unbuild(),this.ready=!1,this.cropped=!1):this.sizing?(this.sizingImage.onload=null,this.sizing=!1,this.sized=!1):this.reloading?(this.xhr.onabort=null,this.xhr.abort()):this.image&&this.stop()}}])&&r(t.prototype,n),i&&r(t,i),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,n,i}();return de(qe.prototype,Be,Ne,Ge,Ue,He,We),qe}()},543:function(e,t,n){var i;e=n.nmd(e),function(){var r,a="Expected a function",o="__lodash_hash_undefined__",s="__lodash_placeholder__",l=32,u=128,c=1/0,d=9007199254740991,p=NaN,h=4294967295,m=[["ary",u],["bind",1],["bindKey",2],["curry",8],["curryRight",16],["flip",512],["partial",l],["partialRight",64],["rearg",256]],f="[object Arguments]",g="[object Array]",y="[object Boolean]",v="[object Date]",b="[object Error]",k="[object Function]",w="[object GeneratorFunction]",S="[object Map]",P="[object Number]",x="[object Object]",C="[object Promise]",A="[object RegExp]",T="[object Set]",j="[object String]",_="[object Symbol]",R="[object WeakMap]",E="[object ArrayBuffer]",I="[object DataView]",z="[object Float32Array]",L="[object Float64Array]",O="[object Int8Array]",M="[object Int16Array]",F="[object Int32Array]",D="[object Uint8Array]",B="[object Uint8ClampedArray]",N="[object Uint16Array]",G="[object Uint32Array]",U=/\b__p \+= '';/g,H=/\b(__p \+=) '' \+/g,W=/(__e\(.*?\)|\b__t\)) \+\n'';/g,V=/&(?:amp|lt|gt|quot|#39);/g,q=/[&<>"']/g,J=RegExp(V.source),Y=RegExp(q.source),K=/<%-([\s\S]+?)%>/g,$=/<%([\s\S]+?)%>/g,Z=/<%=([\s\S]+?)%>/g,X=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Q=/^\w*$/,ee=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,te=/[\\^$.*+?()[\]{}|]/g,ne=RegExp(te.source),ie=/^\s+/,re=/\s/,ae=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,oe=/\{\n\/\* \[wrapped with (.+)\] \*/,se=/,? & /,le=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,ue=/[()=,{}\[\]\/\s]/,ce=/\\(\\)?/g,de=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,pe=/\w*$/,he=/^[-+]0x[0-9a-f]+$/i,me=/^0b[01]+$/i,fe=/^\[object .+?Constructor\]$/,ge=/^0o[0-7]+$/i,ye=/^(?:0|[1-9]\d*)$/,ve=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,be=/($^)/,ke=/['\n\r\u2028\u2029\\]/g,we="\\ud800-\\udfff",Se="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",Pe="\\u2700-\\u27bf",xe="a-z\\xdf-\\xf6\\xf8-\\xff",Ce="A-Z\\xc0-\\xd6\\xd8-\\xde",Ae="\\ufe0e\\ufe0f",Te="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",je="["+we+"]",_e="["+Te+"]",Re="["+Se+"]",Ee="\\d+",Ie="["+Pe+"]",ze="["+xe+"]",Le="[^"+we+Te+Ee+Pe+xe+Ce+"]",Oe="\\ud83c[\\udffb-\\udfff]",Me="[^"+we+"]",Fe="(?:\\ud83c[\\udde6-\\uddff]){2}",De="[\\ud800-\\udbff][\\udc00-\\udfff]",Be="["+Ce+"]",Ne="\\u200d",Ge="(?:"+ze+"|"+Le+")",Ue="(?:"+Be+"|"+Le+")",He="(?:['’](?:d|ll|m|re|s|t|ve))?",We="(?:['’](?:D|LL|M|RE|S|T|VE))?",Ve="(?:"+Re+"|"+Oe+")?",qe="["+Ae+"]?",Je=qe+Ve+"(?:"+Ne+"(?:"+[Me,Fe,De].join("|")+")"+qe+Ve+")*",Ye="(?:"+[Ie,Fe,De].join("|")+")"+Je,Ke="(?:"+[Me+Re+"?",Re,Fe,De,je].join("|")+")",$e=RegExp("['’]","g"),Ze=RegExp(Re,"g"),Xe=RegExp(Oe+"(?="+Oe+")|"+Ke+Je,"g"),Qe=RegExp([Be+"?"+ze+"+"+He+"(?="+[_e,Be,"$"].join("|")+")",Ue+"+"+We+"(?="+[_e,Be+Ge,"$"].join("|")+")",Be+"?"+Ge+"+"+He,Be+"+"+We,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Ee,Ye].join("|"),"g"),et=RegExp("["+Ne+we+Se+Ae+"]"),tt=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,nt=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],it=-1,rt={};rt[z]=rt[L]=rt[O]=rt[M]=rt[F]=rt[D]=rt[B]=rt[N]=rt[G]=!0,rt[f]=rt[g]=rt[E]=rt[y]=rt[I]=rt[v]=rt[b]=rt[k]=rt[S]=rt[P]=rt[x]=rt[A]=rt[T]=rt[j]=rt[R]=!1;var at={};at[f]=at[g]=at[E]=at[I]=at[y]=at[v]=at[z]=at[L]=at[O]=at[M]=at[F]=at[S]=at[P]=at[x]=at[A]=at[T]=at[j]=at[_]=at[D]=at[B]=at[N]=at[G]=!0,at[b]=at[k]=at[R]=!1;var ot={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},st=parseFloat,lt=parseInt,ut="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g,ct="object"==typeof self&&self&&self.Object===Object&&self,dt=ut||ct||Function("return this")(),pt=t&&!t.nodeType&&t,ht=pt&&e&&!e.nodeType&&e,mt=ht&&ht.exports===pt,ft=mt&&ut.process,gt=function(){try{return ht&&ht.require&&ht.require("util").types||ft&&ft.binding&&ft.binding("util")}catch(e){}}(),yt=gt&&gt.isArrayBuffer,vt=gt&&gt.isDate,bt=gt&&gt.isMap,kt=gt&&gt.isRegExp,wt=gt&&gt.isSet,St=gt&&gt.isTypedArray;function Pt(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}function xt(e,t,n,i){for(var r=-1,a=null==e?0:e.length;++r<a;){var o=e[r];t(i,o,n(o),e)}return i}function Ct(e,t){for(var n=-1,i=null==e?0:e.length;++n<i&&!1!==t(e[n],n,e););return e}function At(e,t){for(var n=null==e?0:e.length;n--&&!1!==t(e[n],n,e););return e}function Tt(e,t){for(var n=-1,i=null==e?0:e.length;++n<i;)if(!t(e[n],n,e))return!1;return!0}function jt(e,t){for(var n=-1,i=null==e?0:e.length,r=0,a=[];++n<i;){var o=e[n];t(o,n,e)&&(a[r++]=o)}return a}function _t(e,t){return!(null==e||!e.length)&&Bt(e,t,0)>-1}function Rt(e,t,n){for(var i=-1,r=null==e?0:e.length;++i<r;)if(n(t,e[i]))return!0;return!1}function Et(e,t){for(var n=-1,i=null==e?0:e.length,r=Array(i);++n<i;)r[n]=t(e[n],n,e);return r}function It(e,t){for(var n=-1,i=t.length,r=e.length;++n<i;)e[r+n]=t[n];return e}function zt(e,t,n,i){var r=-1,a=null==e?0:e.length;for(i&&a&&(n=e[++r]);++r<a;)n=t(n,e[r],r,e);return n}function Lt(e,t,n,i){var r=null==e?0:e.length;for(i&&r&&(n=e[--r]);r--;)n=t(n,e[r],r,e);return n}function Ot(e,t){for(var n=-1,i=null==e?0:e.length;++n<i;)if(t(e[n],n,e))return!0;return!1}var Mt=Ht("length");function Ft(e,t,n){var i;return n(e,(function(e,n,r){if(t(e,n,r))return i=n,!1})),i}function Dt(e,t,n,i){for(var r=e.length,a=n+(i?1:-1);i?a--:++a<r;)if(t(e[a],a,e))return a;return-1}function Bt(e,t,n){return t==t?function(e,t,n){for(var i=n-1,r=e.length;++i<r;)if(e[i]===t)return i;return-1}(e,t,n):Dt(e,Gt,n)}function Nt(e,t,n,i){for(var r=n-1,a=e.length;++r<a;)if(i(e[r],t))return r;return-1}function Gt(e){return e!=e}function Ut(e,t){var n=null==e?0:e.length;return n?qt(e,t)/n:p}function Ht(e){return function(t){return null==t?r:t[e]}}function Wt(e){return function(t){return null==e?r:e[t]}}function Vt(e,t,n,i,r){return r(e,(function(e,r,a){n=i?(i=!1,e):t(n,e,r,a)})),n}function qt(e,t){for(var n,i=-1,a=e.length;++i<a;){var o=t(e[i]);o!==r&&(n=n===r?o:n+o)}return n}function Jt(e,t){for(var n=-1,i=Array(e);++n<e;)i[n]=t(n);return i}function Yt(e){return e?e.slice(0,pn(e)+1).replace(ie,""):e}function Kt(e){return function(t){return e(t)}}function $t(e,t){return Et(t,(function(t){return e[t]}))}function Zt(e,t){return e.has(t)}function Xt(e,t){for(var n=-1,i=e.length;++n<i&&Bt(t,e[n],0)>-1;);return n}function Qt(e,t){for(var n=e.length;n--&&Bt(t,e[n],0)>-1;);return n}var en=Wt({À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"IJ",ij:"ij",Œ:"Oe",œ:"oe",ʼn:"'n",ſ:"s"}),tn=Wt({"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"});function nn(e){return"\\"+ot[e]}function rn(e){return et.test(e)}function an(e){var t=-1,n=Array(e.size);return e.forEach((function(e,i){n[++t]=[i,e]})),n}function on(e,t){return function(n){return e(t(n))}}function sn(e,t){for(var n=-1,i=e.length,r=0,a=[];++n<i;){var o=e[n];o!==t&&o!==s||(e[n]=s,a[r++]=n)}return a}function ln(e){var t=-1,n=Array(e.size);return e.forEach((function(e){n[++t]=e})),n}function un(e){var t=-1,n=Array(e.size);return e.forEach((function(e){n[++t]=[e,e]})),n}function cn(e){return rn(e)?function(e){for(var t=Xe.lastIndex=0;Xe.test(e);)++t;return t}(e):Mt(e)}function dn(e){return rn(e)?function(e){return e.match(Xe)||[]}(e):function(e){return e.split("")}(e)}function pn(e){for(var t=e.length;t--&&re.test(e.charAt(t)););return t}var hn=Wt({"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'"}),mn=function e(t){var n,i=(t=null==t?dt:mn.defaults(dt.Object(),t,mn.pick(dt,nt))).Array,re=t.Date,we=t.Error,Se=t.Function,Pe=t.Math,xe=t.Object,Ce=t.RegExp,Ae=t.String,Te=t.TypeError,je=i.prototype,_e=Se.prototype,Re=xe.prototype,Ee=t["__core-js_shared__"],Ie=_e.toString,ze=Re.hasOwnProperty,Le=0,Oe=(n=/[^.]+$/.exec(Ee&&Ee.keys&&Ee.keys.IE_PROTO||""))?"Symbol(src)_1."+n:"",Me=Re.toString,Fe=Ie.call(xe),De=dt._,Be=Ce("^"+Ie.call(ze).replace(te,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Ne=mt?t.Buffer:r,Ge=t.Symbol,Ue=t.Uint8Array,He=Ne?Ne.allocUnsafe:r,We=on(xe.getPrototypeOf,xe),Ve=xe.create,qe=Re.propertyIsEnumerable,Je=je.splice,Ye=Ge?Ge.isConcatSpreadable:r,Ke=Ge?Ge.iterator:r,Xe=Ge?Ge.toStringTag:r,et=function(){try{var e=la(xe,"defineProperty");return e({},"",{}),e}catch(e){}}(),ot=t.clearTimeout!==dt.clearTimeout&&t.clearTimeout,ut=re&&re.now!==dt.Date.now&&re.now,ct=t.setTimeout!==dt.setTimeout&&t.setTimeout,pt=Pe.ceil,ht=Pe.floor,ft=xe.getOwnPropertySymbols,gt=Ne?Ne.isBuffer:r,Mt=t.isFinite,Wt=je.join,fn=on(xe.keys,xe),gn=Pe.max,yn=Pe.min,vn=re.now,bn=t.parseInt,kn=Pe.random,wn=je.reverse,Sn=la(t,"DataView"),Pn=la(t,"Map"),xn=la(t,"Promise"),Cn=la(t,"Set"),An=la(t,"WeakMap"),Tn=la(xe,"create"),jn=An&&new An,_n={},Rn=Ma(Sn),En=Ma(Pn),In=Ma(xn),zn=Ma(Cn),Ln=Ma(An),On=Ge?Ge.prototype:r,Mn=On?On.valueOf:r,Fn=On?On.toString:r;function Dn(e){if(es(e)&&!Ho(e)&&!(e instanceof Un)){if(e instanceof Gn)return e;if(ze.call(e,"__wrapped__"))return Fa(e)}return new Gn(e)}var Bn=function(){function e(){}return function(t){if(!Qo(t))return{};if(Ve)return Ve(t);e.prototype=t;var n=new e;return e.prototype=r,n}}();function Nn(){}function Gn(e,t){this.__wrapped__=e,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=r}function Un(e){this.__wrapped__=e,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=h,this.__views__=[]}function Hn(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var i=e[t];this.set(i[0],i[1])}}function Wn(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var i=e[t];this.set(i[0],i[1])}}function Vn(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var i=e[t];this.set(i[0],i[1])}}function qn(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new Vn;++t<n;)this.add(e[t])}function Jn(e){var t=this.__data__=new Wn(e);this.size=t.size}function Yn(e,t){var n=Ho(e),i=!n&&Uo(e),r=!n&&!i&&Jo(e),a=!n&&!i&&!r&&ls(e),o=n||i||r||a,s=o?Jt(e.length,Ae):[],l=s.length;for(var u in e)!t&&!ze.call(e,u)||o&&("length"==u||r&&("offset"==u||"parent"==u)||a&&("buffer"==u||"byteLength"==u||"byteOffset"==u)||fa(u,l))||s.push(u);return s}function Kn(e){var t=e.length;return t?e[Vi(0,t-1)]:r}function $n(e,t){return Ea(Ar(e),ai(t,0,e.length))}function Zn(e){return Ea(Ar(e))}function Xn(e,t,n){(n!==r&&!Bo(e[t],n)||n===r&&!(t in e))&&ii(e,t,n)}function Qn(e,t,n){var i=e[t];ze.call(e,t)&&Bo(i,n)&&(n!==r||t in e)||ii(e,t,n)}function ei(e,t){for(var n=e.length;n--;)if(Bo(e[n][0],t))return n;return-1}function ti(e,t,n,i){return ci(e,(function(e,r,a){t(i,e,n(e),a)})),i}function ni(e,t){return e&&Tr(t,Rs(t),e)}function ii(e,t,n){"__proto__"==t&&et?et(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}function ri(e,t){for(var n=-1,a=t.length,o=i(a),s=null==e;++n<a;)o[n]=s?r:Cs(e,t[n]);return o}function ai(e,t,n){return e==e&&(n!==r&&(e=e<=n?e:n),t!==r&&(e=e>=t?e:t)),e}function oi(e,t,n,i,a,o){var s,l=1&t,u=2&t,c=4&t;if(n&&(s=a?n(e,i,a,o):n(e)),s!==r)return s;if(!Qo(e))return e;var d=Ho(e);if(d){if(s=function(e){var t=e.length,n=new e.constructor(t);return t&&"string"==typeof e[0]&&ze.call(e,"index")&&(n.index=e.index,n.input=e.input),n}(e),!l)return Ar(e,s)}else{var p=da(e),h=p==k||p==w;if(Jo(e))return kr(e,l);if(p==x||p==f||h&&!a){if(s=u||h?{}:ha(e),!l)return u?function(e,t){return Tr(e,ca(e),t)}(e,function(e,t){return e&&Tr(t,Es(t),e)}(s,e)):function(e,t){return Tr(e,ua(e),t)}(e,ni(s,e))}else{if(!at[p])return a?e:{};s=function(e,t,n){var i,r=e.constructor;switch(t){case E:return wr(e);case y:case v:return new r(+e);case I:return function(e,t){var n=t?wr(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.byteLength)}(e,n);case z:case L:case O:case M:case F:case D:case B:case N:case G:return Sr(e,n);case S:return new r;case P:case j:return new r(e);case A:return function(e){var t=new e.constructor(e.source,pe.exec(e));return t.lastIndex=e.lastIndex,t}(e);case T:return new r;case _:return i=e,Mn?xe(Mn.call(i)):{}}}(e,p,l)}}o||(o=new Jn);var m=o.get(e);if(m)return m;o.set(e,s),as(e)?e.forEach((function(i){s.add(oi(i,t,n,i,e,o))})):ts(e)&&e.forEach((function(i,r){s.set(r,oi(i,t,n,r,e,o))}));var g=d?r:(c?u?ta:ea:u?Es:Rs)(e);return Ct(g||e,(function(i,r){g&&(i=e[r=i]),Qn(s,r,oi(i,t,n,r,e,o))})),s}function si(e,t,n){var i=n.length;if(null==e)return!i;for(e=xe(e);i--;){var a=n[i],o=t[a],s=e[a];if(s===r&&!(a in e)||!o(s))return!1}return!0}function li(e,t,n){if("function"!=typeof e)throw new Te(a);return Ta((function(){e.apply(r,n)}),t)}function ui(e,t,n,i){var r=-1,a=_t,o=!0,s=e.length,l=[],u=t.length;if(!s)return l;n&&(t=Et(t,Kt(n))),i?(a=Rt,o=!1):t.length>=200&&(a=Zt,o=!1,t=new qn(t));e:for(;++r<s;){var c=e[r],d=null==n?c:n(c);if(c=i||0!==c?c:0,o&&d==d){for(var p=u;p--;)if(t[p]===d)continue e;l.push(c)}else a(t,d,i)||l.push(c)}return l}Dn.templateSettings={escape:K,evaluate:$,interpolate:Z,variable:"",imports:{_:Dn}},Dn.prototype=Nn.prototype,Dn.prototype.constructor=Dn,Gn.prototype=Bn(Nn.prototype),Gn.prototype.constructor=Gn,Un.prototype=Bn(Nn.prototype),Un.prototype.constructor=Un,Hn.prototype.clear=function(){this.__data__=Tn?Tn(null):{},this.size=0},Hn.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},Hn.prototype.get=function(e){var t=this.__data__;if(Tn){var n=t[e];return n===o?r:n}return ze.call(t,e)?t[e]:r},Hn.prototype.has=function(e){var t=this.__data__;return Tn?t[e]!==r:ze.call(t,e)},Hn.prototype.set=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=Tn&&t===r?o:t,this},Wn.prototype.clear=function(){this.__data__=[],this.size=0},Wn.prototype.delete=function(e){var t=this.__data__,n=ei(t,e);return!(n<0||(n==t.length-1?t.pop():Je.call(t,n,1),--this.size,0))},Wn.prototype.get=function(e){var t=this.__data__,n=ei(t,e);return n<0?r:t[n][1]},Wn.prototype.has=function(e){return ei(this.__data__,e)>-1},Wn.prototype.set=function(e,t){var n=this.__data__,i=ei(n,e);return i<0?(++this.size,n.push([e,t])):n[i][1]=t,this},Vn.prototype.clear=function(){this.size=0,this.__data__={hash:new Hn,map:new(Pn||Wn),string:new Hn}},Vn.prototype.delete=function(e){var t=oa(this,e).delete(e);return this.size-=t?1:0,t},Vn.prototype.get=function(e){return oa(this,e).get(e)},Vn.prototype.has=function(e){return oa(this,e).has(e)},Vn.prototype.set=function(e,t){var n=oa(this,e),i=n.size;return n.set(e,t),this.size+=n.size==i?0:1,this},qn.prototype.add=qn.prototype.push=function(e){return this.__data__.set(e,o),this},qn.prototype.has=function(e){return this.__data__.has(e)},Jn.prototype.clear=function(){this.__data__=new Wn,this.size=0},Jn.prototype.delete=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n},Jn.prototype.get=function(e){return this.__data__.get(e)},Jn.prototype.has=function(e){return this.__data__.has(e)},Jn.prototype.set=function(e,t){var n=this.__data__;if(n instanceof Wn){var i=n.__data__;if(!Pn||i.length<199)return i.push([e,t]),this.size=++n.size,this;n=this.__data__=new Vn(i)}return n.set(e,t),this.size=n.size,this};var ci=Rr(vi),di=Rr(bi,!0);function pi(e,t){var n=!0;return ci(e,(function(e,i,r){return n=!!t(e,i,r)})),n}function hi(e,t,n){for(var i=-1,a=e.length;++i<a;){var o=e[i],s=t(o);if(null!=s&&(l===r?s==s&&!ss(s):n(s,l)))var l=s,u=o}return u}function mi(e,t){var n=[];return ci(e,(function(e,i,r){t(e,i,r)&&n.push(e)})),n}function fi(e,t,n,i,r){var a=-1,o=e.length;for(n||(n=ma),r||(r=[]);++a<o;){var s=e[a];t>0&&n(s)?t>1?fi(s,t-1,n,i,r):It(r,s):i||(r[r.length]=s)}return r}var gi=Er(),yi=Er(!0);function vi(e,t){return e&&gi(e,t,Rs)}function bi(e,t){return e&&yi(e,t,Rs)}function ki(e,t){return jt(t,(function(t){return $o(e[t])}))}function wi(e,t){for(var n=0,i=(t=gr(t,e)).length;null!=e&&n<i;)e=e[Oa(t[n++])];return n&&n==i?e:r}function Si(e,t,n){var i=t(e);return Ho(e)?i:It(i,n(e))}function Pi(e){return null==e?e===r?"[object Undefined]":"[object Null]":Xe&&Xe in xe(e)?function(e){var t=ze.call(e,Xe),n=e[Xe];try{e[Xe]=r;var i=!0}catch(e){}var a=Me.call(e);return i&&(t?e[Xe]=n:delete e[Xe]),a}(e):function(e){return Me.call(e)}(e)}function xi(e,t){return e>t}function Ci(e,t){return null!=e&&ze.call(e,t)}function Ai(e,t){return null!=e&&t in xe(e)}function Ti(e,t,n){for(var a=n?Rt:_t,o=e[0].length,s=e.length,l=s,u=i(s),c=1/0,d=[];l--;){var p=e[l];l&&t&&(p=Et(p,Kt(t))),c=yn(p.length,c),u[l]=!n&&(t||o>=120&&p.length>=120)?new qn(l&&p):r}p=e[0];var h=-1,m=u[0];e:for(;++h<o&&d.length<c;){var f=p[h],g=t?t(f):f;if(f=n||0!==f?f:0,!(m?Zt(m,g):a(d,g,n))){for(l=s;--l;){var y=u[l];if(!(y?Zt(y,g):a(e[l],g,n)))continue e}m&&m.push(g),d.push(f)}}return d}function ji(e,t,n){var i=null==(e=xa(e,t=gr(t,e)))?e:e[Oa(Ya(t))];return null==i?r:Pt(i,e,n)}function _i(e){return es(e)&&Pi(e)==f}function Ri(e,t,n,i,a){return e===t||(null==e||null==t||!es(e)&&!es(t)?e!=e&&t!=t:function(e,t,n,i,a,o){var s=Ho(e),l=Ho(t),u=s?g:da(e),c=l?g:da(t),d=(u=u==f?x:u)==x,p=(c=c==f?x:c)==x,h=u==c;if(h&&Jo(e)){if(!Jo(t))return!1;s=!0,d=!1}if(h&&!d)return o||(o=new Jn),s||ls(e)?Xr(e,t,n,i,a,o):function(e,t,n,i,r,a,o){switch(n){case I:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case E:return!(e.byteLength!=t.byteLength||!a(new Ue(e),new Ue(t)));case y:case v:case P:return Bo(+e,+t);case b:return e.name==t.name&&e.message==t.message;case A:case j:return e==t+"";case S:var s=an;case T:var l=1&i;if(s||(s=ln),e.size!=t.size&&!l)return!1;var u=o.get(e);if(u)return u==t;i|=2,o.set(e,t);var c=Xr(s(e),s(t),i,r,a,o);return o.delete(e),c;case _:if(Mn)return Mn.call(e)==Mn.call(t)}return!1}(e,t,u,n,i,a,o);if(!(1&n)){var m=d&&ze.call(e,"__wrapped__"),k=p&&ze.call(t,"__wrapped__");if(m||k){var w=m?e.value():e,C=k?t.value():t;return o||(o=new Jn),a(w,C,n,i,o)}}return!!h&&(o||(o=new Jn),function(e,t,n,i,a,o){var s=1&n,l=ea(e),u=l.length;if(u!=ea(t).length&&!s)return!1;for(var c=u;c--;){var d=l[c];if(!(s?d in t:ze.call(t,d)))return!1}var p=o.get(e),h=o.get(t);if(p&&h)return p==t&&h==e;var m=!0;o.set(e,t),o.set(t,e);for(var f=s;++c<u;){var g=e[d=l[c]],y=t[d];if(i)var v=s?i(y,g,d,t,e,o):i(g,y,d,e,t,o);if(!(v===r?g===y||a(g,y,n,i,o):v)){m=!1;break}f||(f="constructor"==d)}if(m&&!f){var b=e.constructor,k=t.constructor;b==k||!("constructor"in e)||!("constructor"in t)||"function"==typeof b&&b instanceof b&&"function"==typeof k&&k instanceof k||(m=!1)}return o.delete(e),o.delete(t),m}(e,t,n,i,a,o))}(e,t,n,i,Ri,a))}function Ei(e,t,n,i){var a=n.length,o=a,s=!i;if(null==e)return!o;for(e=xe(e);a--;){var l=n[a];if(s&&l[2]?l[1]!==e[l[0]]:!(l[0]in e))return!1}for(;++a<o;){var u=(l=n[a])[0],c=e[u],d=l[1];if(s&&l[2]){if(c===r&&!(u in e))return!1}else{var p=new Jn;if(i)var h=i(c,d,u,e,t,p);if(!(h===r?Ri(d,c,3,i,p):h))return!1}}return!0}function Ii(e){return!(!Qo(e)||(t=e,Oe&&Oe in t))&&($o(e)?Be:fe).test(Ma(e));var t}function zi(e){return"function"==typeof e?e:null==e?nl:"object"==typeof e?Ho(e)?Di(e[0],e[1]):Fi(e):dl(e)}function Li(e){if(!ka(e))return fn(e);var t=[];for(var n in xe(e))ze.call(e,n)&&"constructor"!=n&&t.push(n);return t}function Oi(e,t){return e<t}function Mi(e,t){var n=-1,r=Vo(e)?i(e.length):[];return ci(e,(function(e,i,a){r[++n]=t(e,i,a)})),r}function Fi(e){var t=sa(e);return 1==t.length&&t[0][2]?Sa(t[0][0],t[0][1]):function(n){return n===e||Ei(n,e,t)}}function Di(e,t){return ya(e)&&wa(t)?Sa(Oa(e),t):function(n){var i=Cs(n,e);return i===r&&i===t?As(n,e):Ri(t,i,3)}}function Bi(e,t,n,i,a){e!==t&&gi(t,(function(o,s){if(a||(a=new Jn),Qo(o))!function(e,t,n,i,a,o,s){var l=Ca(e,n),u=Ca(t,n),c=s.get(u);if(c)Xn(e,n,c);else{var d=o?o(l,u,n+"",e,t,s):r,p=d===r;if(p){var h=Ho(u),m=!h&&Jo(u),f=!h&&!m&&ls(u);d=u,h||m||f?Ho(l)?d=l:qo(l)?d=Ar(l):m?(p=!1,d=kr(u,!0)):f?(p=!1,d=Sr(u,!0)):d=[]:is(u)||Uo(u)?(d=l,Uo(l)?d=gs(l):Qo(l)&&!$o(l)||(d=ha(u))):p=!1}p&&(s.set(u,d),a(d,u,i,o,s),s.delete(u)),Xn(e,n,d)}}(e,t,s,n,Bi,i,a);else{var l=i?i(Ca(e,s),o,s+"",e,t,a):r;l===r&&(l=o),Xn(e,s,l)}}),Es)}function Ni(e,t){var n=e.length;if(n)return fa(t+=t<0?n:0,n)?e[t]:r}function Gi(e,t,n){t=t.length?Et(t,(function(e){return Ho(e)?function(t){return wi(t,1===e.length?e[0]:e)}:e})):[nl];var i=-1;t=Et(t,Kt(aa()));var r=Mi(e,(function(e,n,r){var a=Et(t,(function(t){return t(e)}));return{criteria:a,index:++i,value:e}}));return function(e){var t=e.length;for(e.sort((function(e,t){return function(e,t,n){for(var i=-1,r=e.criteria,a=t.criteria,o=r.length,s=n.length;++i<o;){var l=Pr(r[i],a[i]);if(l)return i>=s?l:l*("desc"==n[i]?-1:1)}return e.index-t.index}(e,t,n)}));t--;)e[t]=e[t].value;return e}(r)}function Ui(e,t,n){for(var i=-1,r=t.length,a={};++i<r;){var o=t[i],s=wi(e,o);n(s,o)&&$i(a,gr(o,e),s)}return a}function Hi(e,t,n,i){var r=i?Nt:Bt,a=-1,o=t.length,s=e;for(e===t&&(t=Ar(t)),n&&(s=Et(e,Kt(n)));++a<o;)for(var l=0,u=t[a],c=n?n(u):u;(l=r(s,c,l,i))>-1;)s!==e&&Je.call(s,l,1),Je.call(e,l,1);return e}function Wi(e,t){for(var n=e?t.length:0,i=n-1;n--;){var r=t[n];if(n==i||r!==a){var a=r;fa(r)?Je.call(e,r,1):lr(e,r)}}return e}function Vi(e,t){return e+ht(kn()*(t-e+1))}function qi(e,t){var n="";if(!e||t<1||t>d)return n;do{t%2&&(n+=e),(t=ht(t/2))&&(e+=e)}while(t);return n}function Ji(e,t){return ja(Pa(e,t,nl),e+"")}function Yi(e){return Kn(Bs(e))}function Ki(e,t){var n=Bs(e);return Ea(n,ai(t,0,n.length))}function $i(e,t,n,i){if(!Qo(e))return e;for(var a=-1,o=(t=gr(t,e)).length,s=o-1,l=e;null!=l&&++a<o;){var u=Oa(t[a]),c=n;if("__proto__"===u||"constructor"===u||"prototype"===u)return e;if(a!=s){var d=l[u];(c=i?i(d,u,l):r)===r&&(c=Qo(d)?d:fa(t[a+1])?[]:{})}Qn(l,u,c),l=l[u]}return e}var Zi=jn?function(e,t){return jn.set(e,t),e}:nl,Xi=et?function(e,t){return et(e,"toString",{configurable:!0,enumerable:!1,value:Qs(t),writable:!0})}:nl;function Qi(e){return Ea(Bs(e))}function er(e,t,n){var r=-1,a=e.length;t<0&&(t=-t>a?0:a+t),(n=n>a?a:n)<0&&(n+=a),a=t>n?0:n-t>>>0,t>>>=0;for(var o=i(a);++r<a;)o[r]=e[r+t];return o}function tr(e,t){var n;return ci(e,(function(e,i,r){return!(n=t(e,i,r))})),!!n}function nr(e,t,n){var i=0,r=null==e?i:e.length;if("number"==typeof t&&t==t&&r<=2147483647){for(;i<r;){var a=i+r>>>1,o=e[a];null!==o&&!ss(o)&&(n?o<=t:o<t)?i=a+1:r=a}return r}return ir(e,t,nl,n)}function ir(e,t,n,i){var a=0,o=null==e?0:e.length;if(0===o)return 0;for(var s=(t=n(t))!=t,l=null===t,u=ss(t),c=t===r;a<o;){var d=ht((a+o)/2),p=n(e[d]),h=p!==r,m=null===p,f=p==p,g=ss(p);if(s)var y=i||f;else y=c?f&&(i||h):l?f&&h&&(i||!m):u?f&&h&&!m&&(i||!g):!m&&!g&&(i?p<=t:p<t);y?a=d+1:o=d}return yn(o,4294967294)}function rr(e,t){for(var n=-1,i=e.length,r=0,a=[];++n<i;){var o=e[n],s=t?t(o):o;if(!n||!Bo(s,l)){var l=s;a[r++]=0===o?0:o}}return a}function ar(e){return"number"==typeof e?e:ss(e)?p:+e}function or(e){if("string"==typeof e)return e;if(Ho(e))return Et(e,or)+"";if(ss(e))return Fn?Fn.call(e):"";var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function sr(e,t,n){var i=-1,r=_t,a=e.length,o=!0,s=[],l=s;if(n)o=!1,r=Rt;else if(a>=200){var u=t?null:qr(e);if(u)return ln(u);o=!1,r=Zt,l=new qn}else l=t?[]:s;e:for(;++i<a;){var c=e[i],d=t?t(c):c;if(c=n||0!==c?c:0,o&&d==d){for(var p=l.length;p--;)if(l[p]===d)continue e;t&&l.push(d),s.push(c)}else r(l,d,n)||(l!==s&&l.push(d),s.push(c))}return s}function lr(e,t){return null==(e=xa(e,t=gr(t,e)))||delete e[Oa(Ya(t))]}function ur(e,t,n,i){return $i(e,t,n(wi(e,t)),i)}function cr(e,t,n,i){for(var r=e.length,a=i?r:-1;(i?a--:++a<r)&&t(e[a],a,e););return n?er(e,i?0:a,i?a+1:r):er(e,i?a+1:0,i?r:a)}function dr(e,t){var n=e;return n instanceof Un&&(n=n.value()),zt(t,(function(e,t){return t.func.apply(t.thisArg,It([e],t.args))}),n)}function pr(e,t,n){var r=e.length;if(r<2)return r?sr(e[0]):[];for(var a=-1,o=i(r);++a<r;)for(var s=e[a],l=-1;++l<r;)l!=a&&(o[a]=ui(o[a]||s,e[l],t,n));return sr(fi(o,1),t,n)}function hr(e,t,n){for(var i=-1,a=e.length,o=t.length,s={};++i<a;){var l=i<o?t[i]:r;n(s,e[i],l)}return s}function mr(e){return qo(e)?e:[]}function fr(e){return"function"==typeof e?e:nl}function gr(e,t){return Ho(e)?e:ya(e,t)?[e]:La(ys(e))}var yr=Ji;function vr(e,t,n){var i=e.length;return n=n===r?i:n,!t&&n>=i?e:er(e,t,n)}var br=ot||function(e){return dt.clearTimeout(e)};function kr(e,t){if(t)return e.slice();var n=e.length,i=He?He(n):new e.constructor(n);return e.copy(i),i}function wr(e){var t=new e.constructor(e.byteLength);return new Ue(t).set(new Ue(e)),t}function Sr(e,t){var n=t?wr(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}function Pr(e,t){if(e!==t){var n=e!==r,i=null===e,a=e==e,o=ss(e),s=t!==r,l=null===t,u=t==t,c=ss(t);if(!l&&!c&&!o&&e>t||o&&s&&u&&!l&&!c||i&&s&&u||!n&&u||!a)return 1;if(!i&&!o&&!c&&e<t||c&&n&&a&&!i&&!o||l&&n&&a||!s&&a||!u)return-1}return 0}function xr(e,t,n,r){for(var a=-1,o=e.length,s=n.length,l=-1,u=t.length,c=gn(o-s,0),d=i(u+c),p=!r;++l<u;)d[l]=t[l];for(;++a<s;)(p||a<o)&&(d[n[a]]=e[a]);for(;c--;)d[l++]=e[a++];return d}function Cr(e,t,n,r){for(var a=-1,o=e.length,s=-1,l=n.length,u=-1,c=t.length,d=gn(o-l,0),p=i(d+c),h=!r;++a<d;)p[a]=e[a];for(var m=a;++u<c;)p[m+u]=t[u];for(;++s<l;)(h||a<o)&&(p[m+n[s]]=e[a++]);return p}function Ar(e,t){var n=-1,r=e.length;for(t||(t=i(r));++n<r;)t[n]=e[n];return t}function Tr(e,t,n,i){var a=!n;n||(n={});for(var o=-1,s=t.length;++o<s;){var l=t[o],u=i?i(n[l],e[l],l,n,e):r;u===r&&(u=e[l]),a?ii(n,l,u):Qn(n,l,u)}return n}function jr(e,t){return function(n,i){var r=Ho(n)?xt:ti,a=t?t():{};return r(n,e,aa(i,2),a)}}function _r(e){return Ji((function(t,n){var i=-1,a=n.length,o=a>1?n[a-1]:r,s=a>2?n[2]:r;for(o=e.length>3&&"function"==typeof o?(a--,o):r,s&&ga(n[0],n[1],s)&&(o=a<3?r:o,a=1),t=xe(t);++i<a;){var l=n[i];l&&e(t,l,i,o)}return t}))}function Rr(e,t){return function(n,i){if(null==n)return n;if(!Vo(n))return e(n,i);for(var r=n.length,a=t?r:-1,o=xe(n);(t?a--:++a<r)&&!1!==i(o[a],a,o););return n}}function Er(e){return function(t,n,i){for(var r=-1,a=xe(t),o=i(t),s=o.length;s--;){var l=o[e?s:++r];if(!1===n(a[l],l,a))break}return t}}function Ir(e){return function(t){var n=rn(t=ys(t))?dn(t):r,i=n?n[0]:t.charAt(0),a=n?vr(n,1).join(""):t.slice(1);return i[e]()+a}}function zr(e){return function(t){return zt($s(Us(t).replace($e,"")),e,"")}}function Lr(e){return function(){var t=arguments;switch(t.length){case 0:return new e;case 1:return new e(t[0]);case 2:return new e(t[0],t[1]);case 3:return new e(t[0],t[1],t[2]);case 4:return new e(t[0],t[1],t[2],t[3]);case 5:return new e(t[0],t[1],t[2],t[3],t[4]);case 6:return new e(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new e(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}var n=Bn(e.prototype),i=e.apply(n,t);return Qo(i)?i:n}}function Or(e){return function(t,n,i){var a=xe(t);if(!Vo(t)){var o=aa(n,3);t=Rs(t),n=function(e){return o(a[e],e,a)}}var s=e(t,n,i);return s>-1?a[o?t[s]:s]:r}}function Mr(e){return Qr((function(t){var n=t.length,i=n,o=Gn.prototype.thru;for(e&&t.reverse();i--;){var s=t[i];if("function"!=typeof s)throw new Te(a);if(o&&!l&&"wrapper"==ia(s))var l=new Gn([],!0)}for(i=l?i:n;++i<n;){var u=ia(s=t[i]),c="wrapper"==u?na(s):r;l=c&&va(c[0])&&424==c[1]&&!c[4].length&&1==c[9]?l[ia(c[0])].apply(l,c[3]):1==s.length&&va(s)?l[u]():l.thru(s)}return function(){var e=arguments,i=e[0];if(l&&1==e.length&&Ho(i))return l.plant(i).value();for(var r=0,a=n?t[r].apply(this,e):i;++r<n;)a=t[r].call(this,a);return a}}))}function Fr(e,t,n,a,o,s,l,c,d,p){var h=t&u,m=1&t,f=2&t,g=24&t,y=512&t,v=f?r:Lr(e);return function u(){for(var b=arguments.length,k=i(b),w=b;w--;)k[w]=arguments[w];if(g)var S=ra(u),P=function(e,t){for(var n=e.length,i=0;n--;)e[n]===t&&++i;return i}(k,S);if(a&&(k=xr(k,a,o,g)),s&&(k=Cr(k,s,l,g)),b-=P,g&&b<p){var x=sn(k,S);return Wr(e,t,Fr,u.placeholder,n,k,x,c,d,p-b)}var C=m?n:this,A=f?C[e]:e;return b=k.length,c?k=function(e,t){for(var n=e.length,i=yn(t.length,n),a=Ar(e);i--;){var o=t[i];e[i]=fa(o,n)?a[o]:r}return e}(k,c):y&&b>1&&k.reverse(),h&&d<b&&(k.length=d),this&&this!==dt&&this instanceof u&&(A=v||Lr(A)),A.apply(C,k)}}function Dr(e,t){return function(n,i){return function(e,t,n,i){return vi(e,(function(e,r,a){t(i,n(e),r,a)})),i}(n,e,t(i),{})}}function Br(e,t){return function(n,i){var a;if(n===r&&i===r)return t;if(n!==r&&(a=n),i!==r){if(a===r)return i;"string"==typeof n||"string"==typeof i?(n=or(n),i=or(i)):(n=ar(n),i=ar(i)),a=e(n,i)}return a}}function Nr(e){return Qr((function(t){return t=Et(t,Kt(aa())),Ji((function(n){var i=this;return e(t,(function(e){return Pt(e,i,n)}))}))}))}function Gr(e,t){var n=(t=t===r?" ":or(t)).length;if(n<2)return n?qi(t,e):t;var i=qi(t,pt(e/cn(t)));return rn(t)?vr(dn(i),0,e).join(""):i.slice(0,e)}function Ur(e){return function(t,n,a){return a&&"number"!=typeof a&&ga(t,n,a)&&(n=a=r),t=ps(t),n===r?(n=t,t=0):n=ps(n),function(e,t,n,r){for(var a=-1,o=gn(pt((t-e)/(n||1)),0),s=i(o);o--;)s[r?o:++a]=e,e+=n;return s}(t,n,a=a===r?t<n?1:-1:ps(a),e)}}function Hr(e){return function(t,n){return"string"==typeof t&&"string"==typeof n||(t=fs(t),n=fs(n)),e(t,n)}}function Wr(e,t,n,i,a,o,s,u,c,d){var p=8&t;t|=p?l:64,4&(t&=~(p?64:l))||(t&=-4);var h=[e,t,a,p?o:r,p?s:r,p?r:o,p?r:s,u,c,d],m=n.apply(r,h);return va(e)&&Aa(m,h),m.placeholder=i,_a(m,e,t)}function Vr(e){var t=Pe[e];return function(e,n){if(e=fs(e),(n=null==n?0:yn(hs(n),292))&&Mt(e)){var i=(ys(e)+"e").split("e");return+((i=(ys(t(i[0]+"e"+(+i[1]+n)))+"e").split("e"))[0]+"e"+(+i[1]-n))}return t(e)}}var qr=Cn&&1/ln(new Cn([,-0]))[1]==c?function(e){return new Cn(e)}:sl;function Jr(e){return function(t){var n=da(t);return n==S?an(t):n==T?un(t):function(e,t){return Et(t,(function(t){return[t,e[t]]}))}(t,e(t))}}function Yr(e,t,n,o,c,d,p,h){var m=2&t;if(!m&&"function"!=typeof e)throw new Te(a);var f=o?o.length:0;if(f||(t&=-97,o=c=r),p=p===r?p:gn(hs(p),0),h=h===r?h:hs(h),f-=c?c.length:0,64&t){var g=o,y=c;o=c=r}var v=m?r:na(e),b=[e,t,n,o,c,g,y,d,p,h];if(v&&function(e,t){var n=e[1],i=t[1],r=n|i,a=r<131,o=i==u&&8==n||i==u&&256==n&&e[7].length<=t[8]||384==i&&t[7].length<=t[8]&&8==n;if(!a&&!o)return e;1&i&&(e[2]=t[2],r|=1&n?0:4);var l=t[3];if(l){var c=e[3];e[3]=c?xr(c,l,t[4]):l,e[4]=c?sn(e[3],s):t[4]}(l=t[5])&&(c=e[5],e[5]=c?Cr(c,l,t[6]):l,e[6]=c?sn(e[5],s):t[6]),(l=t[7])&&(e[7]=l),i&u&&(e[8]=null==e[8]?t[8]:yn(e[8],t[8])),null==e[9]&&(e[9]=t[9]),e[0]=t[0],e[1]=r}(b,v),e=b[0],t=b[1],n=b[2],o=b[3],c=b[4],!(h=b[9]=b[9]===r?m?0:e.length:gn(b[9]-f,0))&&24&t&&(t&=-25),t&&1!=t)k=8==t||16==t?function(e,t,n){var a=Lr(e);return function o(){for(var s=arguments.length,l=i(s),u=s,c=ra(o);u--;)l[u]=arguments[u];var d=s<3&&l[0]!==c&&l[s-1]!==c?[]:sn(l,c);return(s-=d.length)<n?Wr(e,t,Fr,o.placeholder,r,l,d,r,r,n-s):Pt(this&&this!==dt&&this instanceof o?a:e,this,l)}}(e,t,h):t!=l&&33!=t||c.length?Fr.apply(r,b):function(e,t,n,r){var a=1&t,o=Lr(e);return function t(){for(var s=-1,l=arguments.length,u=-1,c=r.length,d=i(c+l),p=this&&this!==dt&&this instanceof t?o:e;++u<c;)d[u]=r[u];for(;l--;)d[u++]=arguments[++s];return Pt(p,a?n:this,d)}}(e,t,n,o);else var k=function(e,t,n){var i=1&t,r=Lr(e);return function t(){return(this&&this!==dt&&this instanceof t?r:e).apply(i?n:this,arguments)}}(e,t,n);return _a((v?Zi:Aa)(k,b),e,t)}function Kr(e,t,n,i){return e===r||Bo(e,Re[n])&&!ze.call(i,n)?t:e}function $r(e,t,n,i,a,o){return Qo(e)&&Qo(t)&&(o.set(t,e),Bi(e,t,r,$r,o),o.delete(t)),e}function Zr(e){return is(e)?r:e}function Xr(e,t,n,i,a,o){var s=1&n,l=e.length,u=t.length;if(l!=u&&!(s&&u>l))return!1;var c=o.get(e),d=o.get(t);if(c&&d)return c==t&&d==e;var p=-1,h=!0,m=2&n?new qn:r;for(o.set(e,t),o.set(t,e);++p<l;){var f=e[p],g=t[p];if(i)var y=s?i(g,f,p,t,e,o):i(f,g,p,e,t,o);if(y!==r){if(y)continue;h=!1;break}if(m){if(!Ot(t,(function(e,t){if(!Zt(m,t)&&(f===e||a(f,e,n,i,o)))return m.push(t)}))){h=!1;break}}else if(f!==g&&!a(f,g,n,i,o)){h=!1;break}}return o.delete(e),o.delete(t),h}function Qr(e){return ja(Pa(e,r,Ha),e+"")}function ea(e){return Si(e,Rs,ua)}function ta(e){return Si(e,Es,ca)}var na=jn?function(e){return jn.get(e)}:sl;function ia(e){for(var t=e.name+"",n=_n[t],i=ze.call(_n,t)?n.length:0;i--;){var r=n[i],a=r.func;if(null==a||a==e)return r.name}return t}function ra(e){return(ze.call(Dn,"placeholder")?Dn:e).placeholder}function aa(){var e=Dn.iteratee||il;return e=e===il?zi:e,arguments.length?e(arguments[0],arguments[1]):e}function oa(e,t){var n,i,r=e.__data__;return("string"==(i=typeof(n=t))||"number"==i||"symbol"==i||"boolean"==i?"__proto__"!==n:null===n)?r["string"==typeof t?"string":"hash"]:r.map}function sa(e){for(var t=Rs(e),n=t.length;n--;){var i=t[n],r=e[i];t[n]=[i,r,wa(r)]}return t}function la(e,t){var n=function(e,t){return null==e?r:e[t]}(e,t);return Ii(n)?n:r}var ua=ft?function(e){return null==e?[]:(e=xe(e),jt(ft(e),(function(t){return qe.call(e,t)})))}:ml,ca=ft?function(e){for(var t=[];e;)It(t,ua(e)),e=We(e);return t}:ml,da=Pi;function pa(e,t,n){for(var i=-1,r=(t=gr(t,e)).length,a=!1;++i<r;){var o=Oa(t[i]);if(!(a=null!=e&&n(e,o)))break;e=e[o]}return a||++i!=r?a:!!(r=null==e?0:e.length)&&Xo(r)&&fa(o,r)&&(Ho(e)||Uo(e))}function ha(e){return"function"!=typeof e.constructor||ka(e)?{}:Bn(We(e))}function ma(e){return Ho(e)||Uo(e)||!!(Ye&&e&&e[Ye])}function fa(e,t){var n=typeof e;return!!(t=null==t?d:t)&&("number"==n||"symbol"!=n&&ye.test(e))&&e>-1&&e%1==0&&e<t}function ga(e,t,n){if(!Qo(n))return!1;var i=typeof t;return!!("number"==i?Vo(n)&&fa(t,n.length):"string"==i&&t in n)&&Bo(n[t],e)}function ya(e,t){if(Ho(e))return!1;var n=typeof e;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=e&&!ss(e))||Q.test(e)||!X.test(e)||null!=t&&e in xe(t)}function va(e){var t=ia(e),n=Dn[t];if("function"!=typeof n||!(t in Un.prototype))return!1;if(e===n)return!0;var i=na(n);return!!i&&e===i[0]}(Sn&&da(new Sn(new ArrayBuffer(1)))!=I||Pn&&da(new Pn)!=S||xn&&da(xn.resolve())!=C||Cn&&da(new Cn)!=T||An&&da(new An)!=R)&&(da=function(e){var t=Pi(e),n=t==x?e.constructor:r,i=n?Ma(n):"";if(i)switch(i){case Rn:return I;case En:return S;case In:return C;case zn:return T;case Ln:return R}return t});var ba=Ee?$o:fl;function ka(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||Re)}function wa(e){return e==e&&!Qo(e)}function Sa(e,t){return function(n){return null!=n&&n[e]===t&&(t!==r||e in xe(n))}}function Pa(e,t,n){return t=gn(t===r?e.length-1:t,0),function(){for(var r=arguments,a=-1,o=gn(r.length-t,0),s=i(o);++a<o;)s[a]=r[t+a];a=-1;for(var l=i(t+1);++a<t;)l[a]=r[a];return l[t]=n(s),Pt(e,this,l)}}function xa(e,t){return t.length<2?e:wi(e,er(t,0,-1))}function Ca(e,t){if(("constructor"!==t||"function"!=typeof e[t])&&"__proto__"!=t)return e[t]}var Aa=Ra(Zi),Ta=ct||function(e,t){return dt.setTimeout(e,t)},ja=Ra(Xi);function _a(e,t,n){var i=t+"";return ja(e,function(e,t){var n=t.length;if(!n)return e;var i=n-1;return t[i]=(n>1?"& ":"")+t[i],t=t.join(n>2?", ":" "),e.replace(ae,"{\n/* [wrapped with "+t+"] */\n")}(i,function(e,t){return Ct(m,(function(n){var i="_."+n[0];t&n[1]&&!_t(e,i)&&e.push(i)})),e.sort()}(function(e){var t=e.match(oe);return t?t[1].split(se):[]}(i),n)))}function Ra(e){var t=0,n=0;return function(){var i=vn(),a=16-(i-n);if(n=i,a>0){if(++t>=800)return arguments[0]}else t=0;return e.apply(r,arguments)}}function Ea(e,t){var n=-1,i=e.length,a=i-1;for(t=t===r?i:t;++n<t;){var o=Vi(n,a),s=e[o];e[o]=e[n],e[n]=s}return e.length=t,e}var Ia,za,La=(Ia=zo((function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(ee,(function(e,n,i,r){t.push(i?r.replace(ce,"$1"):n||e)})),t}),(function(e){return 500===za.size&&za.clear(),e})),za=Ia.cache,Ia);function Oa(e){if("string"==typeof e||ss(e))return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function Ma(e){if(null!=e){try{return Ie.call(e)}catch(e){}try{return e+""}catch(e){}}return""}function Fa(e){if(e instanceof Un)return e.clone();var t=new Gn(e.__wrapped__,e.__chain__);return t.__actions__=Ar(e.__actions__),t.__index__=e.__index__,t.__values__=e.__values__,t}var Da=Ji((function(e,t){return qo(e)?ui(e,fi(t,1,qo,!0)):[]})),Ba=Ji((function(e,t){var n=Ya(t);return qo(n)&&(n=r),qo(e)?ui(e,fi(t,1,qo,!0),aa(n,2)):[]})),Na=Ji((function(e,t){var n=Ya(t);return qo(n)&&(n=r),qo(e)?ui(e,fi(t,1,qo,!0),r,n):[]}));function Ga(e,t,n){var i=null==e?0:e.length;if(!i)return-1;var r=null==n?0:hs(n);return r<0&&(r=gn(i+r,0)),Dt(e,aa(t,3),r)}function Ua(e,t,n){var i=null==e?0:e.length;if(!i)return-1;var a=i-1;return n!==r&&(a=hs(n),a=n<0?gn(i+a,0):yn(a,i-1)),Dt(e,aa(t,3),a,!0)}function Ha(e){return null!=e&&e.length?fi(e,1):[]}function Wa(e){return e&&e.length?e[0]:r}var Va=Ji((function(e){var t=Et(e,mr);return t.length&&t[0]===e[0]?Ti(t):[]})),qa=Ji((function(e){var t=Ya(e),n=Et(e,mr);return t===Ya(n)?t=r:n.pop(),n.length&&n[0]===e[0]?Ti(n,aa(t,2)):[]})),Ja=Ji((function(e){var t=Ya(e),n=Et(e,mr);return(t="function"==typeof t?t:r)&&n.pop(),n.length&&n[0]===e[0]?Ti(n,r,t):[]}));function Ya(e){var t=null==e?0:e.length;return t?e[t-1]:r}var Ka=Ji($a);function $a(e,t){return e&&e.length&&t&&t.length?Hi(e,t):e}var Za=Qr((function(e,t){var n=null==e?0:e.length,i=ri(e,t);return Wi(e,Et(t,(function(e){return fa(e,n)?+e:e})).sort(Pr)),i}));function Xa(e){return null==e?e:wn.call(e)}var Qa=Ji((function(e){return sr(fi(e,1,qo,!0))})),eo=Ji((function(e){var t=Ya(e);return qo(t)&&(t=r),sr(fi(e,1,qo,!0),aa(t,2))})),to=Ji((function(e){var t=Ya(e);return t="function"==typeof t?t:r,sr(fi(e,1,qo,!0),r,t)}));function no(e){if(!e||!e.length)return[];var t=0;return e=jt(e,(function(e){if(qo(e))return t=gn(e.length,t),!0})),Jt(t,(function(t){return Et(e,Ht(t))}))}function io(e,t){if(!e||!e.length)return[];var n=no(e);return null==t?n:Et(n,(function(e){return Pt(t,r,e)}))}var ro=Ji((function(e,t){return qo(e)?ui(e,t):[]})),ao=Ji((function(e){return pr(jt(e,qo))})),oo=Ji((function(e){var t=Ya(e);return qo(t)&&(t=r),pr(jt(e,qo),aa(t,2))})),so=Ji((function(e){var t=Ya(e);return t="function"==typeof t?t:r,pr(jt(e,qo),r,t)})),lo=Ji(no),uo=Ji((function(e){var t=e.length,n=t>1?e[t-1]:r;return n="function"==typeof n?(e.pop(),n):r,io(e,n)}));function co(e){var t=Dn(e);return t.__chain__=!0,t}function po(e,t){return t(e)}var ho=Qr((function(e){var t=e.length,n=t?e[0]:0,i=this.__wrapped__,a=function(t){return ri(t,e)};return!(t>1||this.__actions__.length)&&i instanceof Un&&fa(n)?((i=i.slice(n,+n+(t?1:0))).__actions__.push({func:po,args:[a],thisArg:r}),new Gn(i,this.__chain__).thru((function(e){return t&&!e.length&&e.push(r),e}))):this.thru(a)})),mo=jr((function(e,t,n){ze.call(e,n)?++e[n]:ii(e,n,1)})),fo=Or(Ga),go=Or(Ua);function yo(e,t){return(Ho(e)?Ct:ci)(e,aa(t,3))}function vo(e,t){return(Ho(e)?At:di)(e,aa(t,3))}var bo=jr((function(e,t,n){ze.call(e,n)?e[n].push(t):ii(e,n,[t])})),ko=Ji((function(e,t,n){var r=-1,a="function"==typeof t,o=Vo(e)?i(e.length):[];return ci(e,(function(e){o[++r]=a?Pt(t,e,n):ji(e,t,n)})),o})),wo=jr((function(e,t,n){ii(e,n,t)}));function So(e,t){return(Ho(e)?Et:Mi)(e,aa(t,3))}var Po=jr((function(e,t,n){e[n?0:1].push(t)}),(function(){return[[],[]]})),xo=Ji((function(e,t){if(null==e)return[];var n=t.length;return n>1&&ga(e,t[0],t[1])?t=[]:n>2&&ga(t[0],t[1],t[2])&&(t=[t[0]]),Gi(e,fi(t,1),[])})),Co=ut||function(){return dt.Date.now()};function Ao(e,t,n){return t=n?r:t,t=e&&null==t?e.length:t,Yr(e,u,r,r,r,r,t)}function To(e,t){var n;if("function"!=typeof t)throw new Te(a);return e=hs(e),function(){return--e>0&&(n=t.apply(this,arguments)),e<=1&&(t=r),n}}var jo=Ji((function(e,t,n){var i=1;if(n.length){var r=sn(n,ra(jo));i|=l}return Yr(e,i,t,n,r)})),_o=Ji((function(e,t,n){var i=3;if(n.length){var r=sn(n,ra(_o));i|=l}return Yr(t,i,e,n,r)}));function Ro(e,t,n){var i,o,s,l,u,c,d=0,p=!1,h=!1,m=!0;if("function"!=typeof e)throw new Te(a);function f(t){var n=i,a=o;return i=o=r,d=t,l=e.apply(a,n)}function g(e){var n=e-c;return c===r||n>=t||n<0||h&&e-d>=s}function y(){var e=Co();if(g(e))return v(e);u=Ta(y,function(e){var n=t-(e-c);return h?yn(n,s-(e-d)):n}(e))}function v(e){return u=r,m&&i?f(e):(i=o=r,l)}function b(){var e=Co(),n=g(e);if(i=arguments,o=this,c=e,n){if(u===r)return function(e){return d=e,u=Ta(y,t),p?f(e):l}(c);if(h)return br(u),u=Ta(y,t),f(c)}return u===r&&(u=Ta(y,t)),l}return t=fs(t)||0,Qo(n)&&(p=!!n.leading,s=(h="maxWait"in n)?gn(fs(n.maxWait)||0,t):s,m="trailing"in n?!!n.trailing:m),b.cancel=function(){u!==r&&br(u),d=0,i=c=o=u=r},b.flush=function(){return u===r?l:v(Co())},b}var Eo=Ji((function(e,t){return li(e,1,t)})),Io=Ji((function(e,t,n){return li(e,fs(t)||0,n)}));function zo(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new Te(a);var n=function(){var i=arguments,r=t?t.apply(this,i):i[0],a=n.cache;if(a.has(r))return a.get(r);var o=e.apply(this,i);return n.cache=a.set(r,o)||a,o};return n.cache=new(zo.Cache||Vn),n}function Lo(e){if("function"!=typeof e)throw new Te(a);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}zo.Cache=Vn;var Oo=yr((function(e,t){var n=(t=1==t.length&&Ho(t[0])?Et(t[0],Kt(aa())):Et(fi(t,1),Kt(aa()))).length;return Ji((function(i){for(var r=-1,a=yn(i.length,n);++r<a;)i[r]=t[r].call(this,i[r]);return Pt(e,this,i)}))})),Mo=Ji((function(e,t){var n=sn(t,ra(Mo));return Yr(e,l,r,t,n)})),Fo=Ji((function(e,t){var n=sn(t,ra(Fo));return Yr(e,64,r,t,n)})),Do=Qr((function(e,t){return Yr(e,256,r,r,r,t)}));function Bo(e,t){return e===t||e!=e&&t!=t}var No=Hr(xi),Go=Hr((function(e,t){return e>=t})),Uo=_i(function(){return arguments}())?_i:function(e){return es(e)&&ze.call(e,"callee")&&!qe.call(e,"callee")},Ho=i.isArray,Wo=yt?Kt(yt):function(e){return es(e)&&Pi(e)==E};function Vo(e){return null!=e&&Xo(e.length)&&!$o(e)}function qo(e){return es(e)&&Vo(e)}var Jo=gt||fl,Yo=vt?Kt(vt):function(e){return es(e)&&Pi(e)==v};function Ko(e){if(!es(e))return!1;var t=Pi(e);return t==b||"[object DOMException]"==t||"string"==typeof e.message&&"string"==typeof e.name&&!is(e)}function $o(e){if(!Qo(e))return!1;var t=Pi(e);return t==k||t==w||"[object AsyncFunction]"==t||"[object Proxy]"==t}function Zo(e){return"number"==typeof e&&e==hs(e)}function Xo(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=d}function Qo(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function es(e){return null!=e&&"object"==typeof e}var ts=bt?Kt(bt):function(e){return es(e)&&da(e)==S};function ns(e){return"number"==typeof e||es(e)&&Pi(e)==P}function is(e){if(!es(e)||Pi(e)!=x)return!1;var t=We(e);if(null===t)return!0;var n=ze.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&Ie.call(n)==Fe}var rs=kt?Kt(kt):function(e){return es(e)&&Pi(e)==A},as=wt?Kt(wt):function(e){return es(e)&&da(e)==T};function os(e){return"string"==typeof e||!Ho(e)&&es(e)&&Pi(e)==j}function ss(e){return"symbol"==typeof e||es(e)&&Pi(e)==_}var ls=St?Kt(St):function(e){return es(e)&&Xo(e.length)&&!!rt[Pi(e)]},us=Hr(Oi),cs=Hr((function(e,t){return e<=t}));function ds(e){if(!e)return[];if(Vo(e))return os(e)?dn(e):Ar(e);if(Ke&&e[Ke])return function(e){for(var t,n=[];!(t=e.next()).done;)n.push(t.value);return n}(e[Ke]());var t=da(e);return(t==S?an:t==T?ln:Bs)(e)}function ps(e){return e?(e=fs(e))===c||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}function hs(e){var t=ps(e),n=t%1;return t==t?n?t-n:t:0}function ms(e){return e?ai(hs(e),0,h):0}function fs(e){if("number"==typeof e)return e;if(ss(e))return p;if(Qo(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=Qo(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=Yt(e);var n=me.test(e);return n||ge.test(e)?lt(e.slice(2),n?2:8):he.test(e)?p:+e}function gs(e){return Tr(e,Es(e))}function ys(e){return null==e?"":or(e)}var vs=_r((function(e,t){if(ka(t)||Vo(t))Tr(t,Rs(t),e);else for(var n in t)ze.call(t,n)&&Qn(e,n,t[n])})),bs=_r((function(e,t){Tr(t,Es(t),e)})),ks=_r((function(e,t,n,i){Tr(t,Es(t),e,i)})),ws=_r((function(e,t,n,i){Tr(t,Rs(t),e,i)})),Ss=Qr(ri),Ps=Ji((function(e,t){e=xe(e);var n=-1,i=t.length,a=i>2?t[2]:r;for(a&&ga(t[0],t[1],a)&&(i=1);++n<i;)for(var o=t[n],s=Es(o),l=-1,u=s.length;++l<u;){var c=s[l],d=e[c];(d===r||Bo(d,Re[c])&&!ze.call(e,c))&&(e[c]=o[c])}return e})),xs=Ji((function(e){return e.push(r,$r),Pt(zs,r,e)}));function Cs(e,t,n){var i=null==e?r:wi(e,t);return i===r?n:i}function As(e,t){return null!=e&&pa(e,t,Ai)}var Ts=Dr((function(e,t,n){null!=t&&"function"!=typeof t.toString&&(t=Me.call(t)),e[t]=n}),Qs(nl)),js=Dr((function(e,t,n){null!=t&&"function"!=typeof t.toString&&(t=Me.call(t)),ze.call(e,t)?e[t].push(n):e[t]=[n]}),aa),_s=Ji(ji);function Rs(e){return Vo(e)?Yn(e):Li(e)}function Es(e){return Vo(e)?Yn(e,!0):function(e){if(!Qo(e))return function(e){var t=[];if(null!=e)for(var n in xe(e))t.push(n);return t}(e);var t=ka(e),n=[];for(var i in e)("constructor"!=i||!t&&ze.call(e,i))&&n.push(i);return n}(e)}var Is=_r((function(e,t,n){Bi(e,t,n)})),zs=_r((function(e,t,n,i){Bi(e,t,n,i)})),Ls=Qr((function(e,t){var n={};if(null==e)return n;var i=!1;t=Et(t,(function(t){return t=gr(t,e),i||(i=t.length>1),t})),Tr(e,ta(e),n),i&&(n=oi(n,7,Zr));for(var r=t.length;r--;)lr(n,t[r]);return n})),Os=Qr((function(e,t){return null==e?{}:function(e,t){return Ui(e,t,(function(t,n){return As(e,n)}))}(e,t)}));function Ms(e,t){if(null==e)return{};var n=Et(ta(e),(function(e){return[e]}));return t=aa(t),Ui(e,n,(function(e,n){return t(e,n[0])}))}var Fs=Jr(Rs),Ds=Jr(Es);function Bs(e){return null==e?[]:$t(e,Rs(e))}var Ns=zr((function(e,t,n){return t=t.toLowerCase(),e+(n?Gs(t):t)}));function Gs(e){return Ks(ys(e).toLowerCase())}function Us(e){return(e=ys(e))&&e.replace(ve,en).replace(Ze,"")}var Hs=zr((function(e,t,n){return e+(n?"-":"")+t.toLowerCase()})),Ws=zr((function(e,t,n){return e+(n?" ":"")+t.toLowerCase()})),Vs=Ir("toLowerCase"),qs=zr((function(e,t,n){return e+(n?"_":"")+t.toLowerCase()})),Js=zr((function(e,t,n){return e+(n?" ":"")+Ks(t)})),Ys=zr((function(e,t,n){return e+(n?" ":"")+t.toUpperCase()})),Ks=Ir("toUpperCase");function $s(e,t,n){return e=ys(e),(t=n?r:t)===r?function(e){return tt.test(e)}(e)?function(e){return e.match(Qe)||[]}(e):function(e){return e.match(le)||[]}(e):e.match(t)||[]}var Zs=Ji((function(e,t){try{return Pt(e,r,t)}catch(e){return Ko(e)?e:new we(e)}})),Xs=Qr((function(e,t){return Ct(t,(function(t){t=Oa(t),ii(e,t,jo(e[t],e))})),e}));function Qs(e){return function(){return e}}var el=Mr(),tl=Mr(!0);function nl(e){return e}function il(e){return zi("function"==typeof e?e:oi(e,1))}var rl=Ji((function(e,t){return function(n){return ji(n,e,t)}})),al=Ji((function(e,t){return function(n){return ji(e,n,t)}}));function ol(e,t,n){var i=Rs(t),r=ki(t,i);null!=n||Qo(t)&&(r.length||!i.length)||(n=t,t=e,e=this,r=ki(t,Rs(t)));var a=!(Qo(n)&&"chain"in n&&!n.chain),o=$o(e);return Ct(r,(function(n){var i=t[n];e[n]=i,o&&(e.prototype[n]=function(){var t=this.__chain__;if(a||t){var n=e(this.__wrapped__);return(n.__actions__=Ar(this.__actions__)).push({func:i,args:arguments,thisArg:e}),n.__chain__=t,n}return i.apply(e,It([this.value()],arguments))})})),e}function sl(){}var ll=Nr(Et),ul=Nr(Tt),cl=Nr(Ot);function dl(e){return ya(e)?Ht(Oa(e)):function(e){return function(t){return wi(t,e)}}(e)}var pl=Ur(),hl=Ur(!0);function ml(){return[]}function fl(){return!1}var gl,yl=Br((function(e,t){return e+t}),0),vl=Vr("ceil"),bl=Br((function(e,t){return e/t}),1),kl=Vr("floor"),wl=Br((function(e,t){return e*t}),1),Sl=Vr("round"),Pl=Br((function(e,t){return e-t}),0);return Dn.after=function(e,t){if("function"!=typeof t)throw new Te(a);return e=hs(e),function(){if(--e<1)return t.apply(this,arguments)}},Dn.ary=Ao,Dn.assign=vs,Dn.assignIn=bs,Dn.assignInWith=ks,Dn.assignWith=ws,Dn.at=Ss,Dn.before=To,Dn.bind=jo,Dn.bindAll=Xs,Dn.bindKey=_o,Dn.castArray=function(){if(!arguments.length)return[];var e=arguments[0];return Ho(e)?e:[e]},Dn.chain=co,Dn.chunk=function(e,t,n){t=(n?ga(e,t,n):t===r)?1:gn(hs(t),0);var a=null==e?0:e.length;if(!a||t<1)return[];for(var o=0,s=0,l=i(pt(a/t));o<a;)l[s++]=er(e,o,o+=t);return l},Dn.compact=function(e){for(var t=-1,n=null==e?0:e.length,i=0,r=[];++t<n;){var a=e[t];a&&(r[i++]=a)}return r},Dn.concat=function(){var e=arguments.length;if(!e)return[];for(var t=i(e-1),n=arguments[0],r=e;r--;)t[r-1]=arguments[r];return It(Ho(n)?Ar(n):[n],fi(t,1))},Dn.cond=function(e){var t=null==e?0:e.length,n=aa();return e=t?Et(e,(function(e){if("function"!=typeof e[1])throw new Te(a);return[n(e[0]),e[1]]})):[],Ji((function(n){for(var i=-1;++i<t;){var r=e[i];if(Pt(r[0],this,n))return Pt(r[1],this,n)}}))},Dn.conforms=function(e){return function(e){var t=Rs(e);return function(n){return si(n,e,t)}}(oi(e,1))},Dn.constant=Qs,Dn.countBy=mo,Dn.create=function(e,t){var n=Bn(e);return null==t?n:ni(n,t)},Dn.curry=function e(t,n,i){var a=Yr(t,8,r,r,r,r,r,n=i?r:n);return a.placeholder=e.placeholder,a},Dn.curryRight=function e(t,n,i){var a=Yr(t,16,r,r,r,r,r,n=i?r:n);return a.placeholder=e.placeholder,a},Dn.debounce=Ro,Dn.defaults=Ps,Dn.defaultsDeep=xs,Dn.defer=Eo,Dn.delay=Io,Dn.difference=Da,Dn.differenceBy=Ba,Dn.differenceWith=Na,Dn.drop=function(e,t,n){var i=null==e?0:e.length;return i?er(e,(t=n||t===r?1:hs(t))<0?0:t,i):[]},Dn.dropRight=function(e,t,n){var i=null==e?0:e.length;return i?er(e,0,(t=i-(t=n||t===r?1:hs(t)))<0?0:t):[]},Dn.dropRightWhile=function(e,t){return e&&e.length?cr(e,aa(t,3),!0,!0):[]},Dn.dropWhile=function(e,t){return e&&e.length?cr(e,aa(t,3),!0):[]},Dn.fill=function(e,t,n,i){var a=null==e?0:e.length;return a?(n&&"number"!=typeof n&&ga(e,t,n)&&(n=0,i=a),function(e,t,n,i){var a=e.length;for((n=hs(n))<0&&(n=-n>a?0:a+n),(i=i===r||i>a?a:hs(i))<0&&(i+=a),i=n>i?0:ms(i);n<i;)e[n++]=t;return e}(e,t,n,i)):[]},Dn.filter=function(e,t){return(Ho(e)?jt:mi)(e,aa(t,3))},Dn.flatMap=function(e,t){return fi(So(e,t),1)},Dn.flatMapDeep=function(e,t){return fi(So(e,t),c)},Dn.flatMapDepth=function(e,t,n){return n=n===r?1:hs(n),fi(So(e,t),n)},Dn.flatten=Ha,Dn.flattenDeep=function(e){return null!=e&&e.length?fi(e,c):[]},Dn.flattenDepth=function(e,t){return null!=e&&e.length?fi(e,t=t===r?1:hs(t)):[]},Dn.flip=function(e){return Yr(e,512)},Dn.flow=el,Dn.flowRight=tl,Dn.fromPairs=function(e){for(var t=-1,n=null==e?0:e.length,i={};++t<n;){var r=e[t];i[r[0]]=r[1]}return i},Dn.functions=function(e){return null==e?[]:ki(e,Rs(e))},Dn.functionsIn=function(e){return null==e?[]:ki(e,Es(e))},Dn.groupBy=bo,Dn.initial=function(e){return null!=e&&e.length?er(e,0,-1):[]},Dn.intersection=Va,Dn.intersectionBy=qa,Dn.intersectionWith=Ja,Dn.invert=Ts,Dn.invertBy=js,Dn.invokeMap=ko,Dn.iteratee=il,Dn.keyBy=wo,Dn.keys=Rs,Dn.keysIn=Es,Dn.map=So,Dn.mapKeys=function(e,t){var n={};return t=aa(t,3),vi(e,(function(e,i,r){ii(n,t(e,i,r),e)})),n},Dn.mapValues=function(e,t){var n={};return t=aa(t,3),vi(e,(function(e,i,r){ii(n,i,t(e,i,r))})),n},Dn.matches=function(e){return Fi(oi(e,1))},Dn.matchesProperty=function(e,t){return Di(e,oi(t,1))},Dn.memoize=zo,Dn.merge=Is,Dn.mergeWith=zs,Dn.method=rl,Dn.methodOf=al,Dn.mixin=ol,Dn.negate=Lo,Dn.nthArg=function(e){return e=hs(e),Ji((function(t){return Ni(t,e)}))},Dn.omit=Ls,Dn.omitBy=function(e,t){return Ms(e,Lo(aa(t)))},Dn.once=function(e){return To(2,e)},Dn.orderBy=function(e,t,n,i){return null==e?[]:(Ho(t)||(t=null==t?[]:[t]),Ho(n=i?r:n)||(n=null==n?[]:[n]),Gi(e,t,n))},Dn.over=ll,Dn.overArgs=Oo,Dn.overEvery=ul,Dn.overSome=cl,Dn.partial=Mo,Dn.partialRight=Fo,Dn.partition=Po,Dn.pick=Os,Dn.pickBy=Ms,Dn.property=dl,Dn.propertyOf=function(e){return function(t){return null==e?r:wi(e,t)}},Dn.pull=Ka,Dn.pullAll=$a,Dn.pullAllBy=function(e,t,n){return e&&e.length&&t&&t.length?Hi(e,t,aa(n,2)):e},Dn.pullAllWith=function(e,t,n){return e&&e.length&&t&&t.length?Hi(e,t,r,n):e},Dn.pullAt=Za,Dn.range=pl,Dn.rangeRight=hl,Dn.rearg=Do,Dn.reject=function(e,t){return(Ho(e)?jt:mi)(e,Lo(aa(t,3)))},Dn.remove=function(e,t){var n=[];if(!e||!e.length)return n;var i=-1,r=[],a=e.length;for(t=aa(t,3);++i<a;){var o=e[i];t(o,i,e)&&(n.push(o),r.push(i))}return Wi(e,r),n},Dn.rest=function(e,t){if("function"!=typeof e)throw new Te(a);return Ji(e,t=t===r?t:hs(t))},Dn.reverse=Xa,Dn.sampleSize=function(e,t,n){return t=(n?ga(e,t,n):t===r)?1:hs(t),(Ho(e)?$n:Ki)(e,t)},Dn.set=function(e,t,n){return null==e?e:$i(e,t,n)},Dn.setWith=function(e,t,n,i){return i="function"==typeof i?i:r,null==e?e:$i(e,t,n,i)},Dn.shuffle=function(e){return(Ho(e)?Zn:Qi)(e)},Dn.slice=function(e,t,n){var i=null==e?0:e.length;return i?(n&&"number"!=typeof n&&ga(e,t,n)?(t=0,n=i):(t=null==t?0:hs(t),n=n===r?i:hs(n)),er(e,t,n)):[]},Dn.sortBy=xo,Dn.sortedUniq=function(e){return e&&e.length?rr(e):[]},Dn.sortedUniqBy=function(e,t){return e&&e.length?rr(e,aa(t,2)):[]},Dn.split=function(e,t,n){return n&&"number"!=typeof n&&ga(e,t,n)&&(t=n=r),(n=n===r?h:n>>>0)?(e=ys(e))&&("string"==typeof t||null!=t&&!rs(t))&&!(t=or(t))&&rn(e)?vr(dn(e),0,n):e.split(t,n):[]},Dn.spread=function(e,t){if("function"!=typeof e)throw new Te(a);return t=null==t?0:gn(hs(t),0),Ji((function(n){var i=n[t],r=vr(n,0,t);return i&&It(r,i),Pt(e,this,r)}))},Dn.tail=function(e){var t=null==e?0:e.length;return t?er(e,1,t):[]},Dn.take=function(e,t,n){return e&&e.length?er(e,0,(t=n||t===r?1:hs(t))<0?0:t):[]},Dn.takeRight=function(e,t,n){var i=null==e?0:e.length;return i?er(e,(t=i-(t=n||t===r?1:hs(t)))<0?0:t,i):[]},Dn.takeRightWhile=function(e,t){return e&&e.length?cr(e,aa(t,3),!1,!0):[]},Dn.takeWhile=function(e,t){return e&&e.length?cr(e,aa(t,3)):[]},Dn.tap=function(e,t){return t(e),e},Dn.throttle=function(e,t,n){var i=!0,r=!0;if("function"!=typeof e)throw new Te(a);return Qo(n)&&(i="leading"in n?!!n.leading:i,r="trailing"in n?!!n.trailing:r),Ro(e,t,{leading:i,maxWait:t,trailing:r})},Dn.thru=po,Dn.toArray=ds,Dn.toPairs=Fs,Dn.toPairsIn=Ds,Dn.toPath=function(e){return Ho(e)?Et(e,Oa):ss(e)?[e]:Ar(La(ys(e)))},Dn.toPlainObject=gs,Dn.transform=function(e,t,n){var i=Ho(e),r=i||Jo(e)||ls(e);if(t=aa(t,4),null==n){var a=e&&e.constructor;n=r?i?new a:[]:Qo(e)&&$o(a)?Bn(We(e)):{}}return(r?Ct:vi)(e,(function(e,i,r){return t(n,e,i,r)})),n},Dn.unary=function(e){return Ao(e,1)},Dn.union=Qa,Dn.unionBy=eo,Dn.unionWith=to,Dn.uniq=function(e){return e&&e.length?sr(e):[]},Dn.uniqBy=function(e,t){return e&&e.length?sr(e,aa(t,2)):[]},Dn.uniqWith=function(e,t){return t="function"==typeof t?t:r,e&&e.length?sr(e,r,t):[]},Dn.unset=function(e,t){return null==e||lr(e,t)},Dn.unzip=no,Dn.unzipWith=io,Dn.update=function(e,t,n){return null==e?e:ur(e,t,fr(n))},Dn.updateWith=function(e,t,n,i){return i="function"==typeof i?i:r,null==e?e:ur(e,t,fr(n),i)},Dn.values=Bs,Dn.valuesIn=function(e){return null==e?[]:$t(e,Es(e))},Dn.without=ro,Dn.words=$s,Dn.wrap=function(e,t){return Mo(fr(t),e)},Dn.xor=ao,Dn.xorBy=oo,Dn.xorWith=so,Dn.zip=lo,Dn.zipObject=function(e,t){return hr(e||[],t||[],Qn)},Dn.zipObjectDeep=function(e,t){return hr(e||[],t||[],$i)},Dn.zipWith=uo,Dn.entries=Fs,Dn.entriesIn=Ds,Dn.extend=bs,Dn.extendWith=ks,ol(Dn,Dn),Dn.add=yl,Dn.attempt=Zs,Dn.camelCase=Ns,Dn.capitalize=Gs,Dn.ceil=vl,Dn.clamp=function(e,t,n){return n===r&&(n=t,t=r),n!==r&&(n=(n=fs(n))==n?n:0),t!==r&&(t=(t=fs(t))==t?t:0),ai(fs(e),t,n)},Dn.clone=function(e){return oi(e,4)},Dn.cloneDeep=function(e){return oi(e,5)},Dn.cloneDeepWith=function(e,t){return oi(e,5,t="function"==typeof t?t:r)},Dn.cloneWith=function(e,t){return oi(e,4,t="function"==typeof t?t:r)},Dn.conformsTo=function(e,t){return null==t||si(e,t,Rs(t))},Dn.deburr=Us,Dn.defaultTo=function(e,t){return null==e||e!=e?t:e},Dn.divide=bl,Dn.endsWith=function(e,t,n){e=ys(e),t=or(t);var i=e.length,a=n=n===r?i:ai(hs(n),0,i);return(n-=t.length)>=0&&e.slice(n,a)==t},Dn.eq=Bo,Dn.escape=function(e){return(e=ys(e))&&Y.test(e)?e.replace(q,tn):e},Dn.escapeRegExp=function(e){return(e=ys(e))&&ne.test(e)?e.replace(te,"\\$&"):e},Dn.every=function(e,t,n){var i=Ho(e)?Tt:pi;return n&&ga(e,t,n)&&(t=r),i(e,aa(t,3))},Dn.find=fo,Dn.findIndex=Ga,Dn.findKey=function(e,t){return Ft(e,aa(t,3),vi)},Dn.findLast=go,Dn.findLastIndex=Ua,Dn.findLastKey=function(e,t){return Ft(e,aa(t,3),bi)},Dn.floor=kl,Dn.forEach=yo,Dn.forEachRight=vo,Dn.forIn=function(e,t){return null==e?e:gi(e,aa(t,3),Es)},Dn.forInRight=function(e,t){return null==e?e:yi(e,aa(t,3),Es)},Dn.forOwn=function(e,t){return e&&vi(e,aa(t,3))},Dn.forOwnRight=function(e,t){return e&&bi(e,aa(t,3))},Dn.get=Cs,Dn.gt=No,Dn.gte=Go,Dn.has=function(e,t){return null!=e&&pa(e,t,Ci)},Dn.hasIn=As,Dn.head=Wa,Dn.identity=nl,Dn.includes=function(e,t,n,i){e=Vo(e)?e:Bs(e),n=n&&!i?hs(n):0;var r=e.length;return n<0&&(n=gn(r+n,0)),os(e)?n<=r&&e.indexOf(t,n)>-1:!!r&&Bt(e,t,n)>-1},Dn.indexOf=function(e,t,n){var i=null==e?0:e.length;if(!i)return-1;var r=null==n?0:hs(n);return r<0&&(r=gn(i+r,0)),Bt(e,t,r)},Dn.inRange=function(e,t,n){return t=ps(t),n===r?(n=t,t=0):n=ps(n),function(e,t,n){return e>=yn(t,n)&&e<gn(t,n)}(e=fs(e),t,n)},Dn.invoke=_s,Dn.isArguments=Uo,Dn.isArray=Ho,Dn.isArrayBuffer=Wo,Dn.isArrayLike=Vo,Dn.isArrayLikeObject=qo,Dn.isBoolean=function(e){return!0===e||!1===e||es(e)&&Pi(e)==y},Dn.isBuffer=Jo,Dn.isDate=Yo,Dn.isElement=function(e){return es(e)&&1===e.nodeType&&!is(e)},Dn.isEmpty=function(e){if(null==e)return!0;if(Vo(e)&&(Ho(e)||"string"==typeof e||"function"==typeof e.splice||Jo(e)||ls(e)||Uo(e)))return!e.length;var t=da(e);if(t==S||t==T)return!e.size;if(ka(e))return!Li(e).length;for(var n in e)if(ze.call(e,n))return!1;return!0},Dn.isEqual=function(e,t){return Ri(e,t)},Dn.isEqualWith=function(e,t,n){var i=(n="function"==typeof n?n:r)?n(e,t):r;return i===r?Ri(e,t,r,n):!!i},Dn.isError=Ko,Dn.isFinite=function(e){return"number"==typeof e&&Mt(e)},Dn.isFunction=$o,Dn.isInteger=Zo,Dn.isLength=Xo,Dn.isMap=ts,Dn.isMatch=function(e,t){return e===t||Ei(e,t,sa(t))},Dn.isMatchWith=function(e,t,n){return n="function"==typeof n?n:r,Ei(e,t,sa(t),n)},Dn.isNaN=function(e){return ns(e)&&e!=+e},Dn.isNative=function(e){if(ba(e))throw new we("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return Ii(e)},Dn.isNil=function(e){return null==e},Dn.isNull=function(e){return null===e},Dn.isNumber=ns,Dn.isObject=Qo,Dn.isObjectLike=es,Dn.isPlainObject=is,Dn.isRegExp=rs,Dn.isSafeInteger=function(e){return Zo(e)&&e>=-9007199254740991&&e<=d},Dn.isSet=as,Dn.isString=os,Dn.isSymbol=ss,Dn.isTypedArray=ls,Dn.isUndefined=function(e){return e===r},Dn.isWeakMap=function(e){return es(e)&&da(e)==R},Dn.isWeakSet=function(e){return es(e)&&"[object WeakSet]"==Pi(e)},Dn.join=function(e,t){return null==e?"":Wt.call(e,t)},Dn.kebabCase=Hs,Dn.last=Ya,Dn.lastIndexOf=function(e,t,n){var i=null==e?0:e.length;if(!i)return-1;var a=i;return n!==r&&(a=(a=hs(n))<0?gn(i+a,0):yn(a,i-1)),t==t?function(e,t,n){for(var i=n+1;i--;)if(e[i]===t)return i;return i}(e,t,a):Dt(e,Gt,a,!0)},Dn.lowerCase=Ws,Dn.lowerFirst=Vs,Dn.lt=us,Dn.lte=cs,Dn.max=function(e){return e&&e.length?hi(e,nl,xi):r},Dn.maxBy=function(e,t){return e&&e.length?hi(e,aa(t,2),xi):r},Dn.mean=function(e){return Ut(e,nl)},Dn.meanBy=function(e,t){return Ut(e,aa(t,2))},Dn.min=function(e){return e&&e.length?hi(e,nl,Oi):r},Dn.minBy=function(e,t){return e&&e.length?hi(e,aa(t,2),Oi):r},Dn.stubArray=ml,Dn.stubFalse=fl,Dn.stubObject=function(){return{}},Dn.stubString=function(){return""},Dn.stubTrue=function(){return!0},Dn.multiply=wl,Dn.nth=function(e,t){return e&&e.length?Ni(e,hs(t)):r},Dn.noConflict=function(){return dt._===this&&(dt._=De),this},Dn.noop=sl,Dn.now=Co,Dn.pad=function(e,t,n){e=ys(e);var i=(t=hs(t))?cn(e):0;if(!t||i>=t)return e;var r=(t-i)/2;return Gr(ht(r),n)+e+Gr(pt(r),n)},Dn.padEnd=function(e,t,n){e=ys(e);var i=(t=hs(t))?cn(e):0;return t&&i<t?e+Gr(t-i,n):e},Dn.padStart=function(e,t,n){e=ys(e);var i=(t=hs(t))?cn(e):0;return t&&i<t?Gr(t-i,n)+e:e},Dn.parseInt=function(e,t,n){return n||null==t?t=0:t&&(t=+t),bn(ys(e).replace(ie,""),t||0)},Dn.random=function(e,t,n){if(n&&"boolean"!=typeof n&&ga(e,t,n)&&(t=n=r),n===r&&("boolean"==typeof t?(n=t,t=r):"boolean"==typeof e&&(n=e,e=r)),e===r&&t===r?(e=0,t=1):(e=ps(e),t===r?(t=e,e=0):t=ps(t)),e>t){var i=e;e=t,t=i}if(n||e%1||t%1){var a=kn();return yn(e+a*(t-e+st("1e-"+((a+"").length-1))),t)}return Vi(e,t)},Dn.reduce=function(e,t,n){var i=Ho(e)?zt:Vt,r=arguments.length<3;return i(e,aa(t,4),n,r,ci)},Dn.reduceRight=function(e,t,n){var i=Ho(e)?Lt:Vt,r=arguments.length<3;return i(e,aa(t,4),n,r,di)},Dn.repeat=function(e,t,n){return t=(n?ga(e,t,n):t===r)?1:hs(t),qi(ys(e),t)},Dn.replace=function(){var e=arguments,t=ys(e[0]);return e.length<3?t:t.replace(e[1],e[2])},Dn.result=function(e,t,n){var i=-1,a=(t=gr(t,e)).length;for(a||(a=1,e=r);++i<a;){var o=null==e?r:e[Oa(t[i])];o===r&&(i=a,o=n),e=$o(o)?o.call(e):o}return e},Dn.round=Sl,Dn.runInContext=e,Dn.sample=function(e){return(Ho(e)?Kn:Yi)(e)},Dn.size=function(e){if(null==e)return 0;if(Vo(e))return os(e)?cn(e):e.length;var t=da(e);return t==S||t==T?e.size:Li(e).length},Dn.snakeCase=qs,Dn.some=function(e,t,n){var i=Ho(e)?Ot:tr;return n&&ga(e,t,n)&&(t=r),i(e,aa(t,3))},Dn.sortedIndex=function(e,t){return nr(e,t)},Dn.sortedIndexBy=function(e,t,n){return ir(e,t,aa(n,2))},Dn.sortedIndexOf=function(e,t){var n=null==e?0:e.length;if(n){var i=nr(e,t);if(i<n&&Bo(e[i],t))return i}return-1},Dn.sortedLastIndex=function(e,t){return nr(e,t,!0)},Dn.sortedLastIndexBy=function(e,t,n){return ir(e,t,aa(n,2),!0)},Dn.sortedLastIndexOf=function(e,t){if(null!=e&&e.length){var n=nr(e,t,!0)-1;if(Bo(e[n],t))return n}return-1},Dn.startCase=Js,Dn.startsWith=function(e,t,n){return e=ys(e),n=null==n?0:ai(hs(n),0,e.length),t=or(t),e.slice(n,n+t.length)==t},Dn.subtract=Pl,Dn.sum=function(e){return e&&e.length?qt(e,nl):0},Dn.sumBy=function(e,t){return e&&e.length?qt(e,aa(t,2)):0},Dn.template=function(e,t,n){var i=Dn.templateSettings;n&&ga(e,t,n)&&(t=r),e=ys(e),t=ks({},t,i,Kr);var a,o,s=ks({},t.imports,i.imports,Kr),l=Rs(s),u=$t(s,l),c=0,d=t.interpolate||be,p="__p += '",h=Ce((t.escape||be).source+"|"+d.source+"|"+(d===Z?de:be).source+"|"+(t.evaluate||be).source+"|$","g"),m="//# sourceURL="+(ze.call(t,"sourceURL")?(t.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++it+"]")+"\n";e.replace(h,(function(t,n,i,r,s,l){return i||(i=r),p+=e.slice(c,l).replace(ke,nn),n&&(a=!0,p+="' +\n__e("+n+") +\n'"),s&&(o=!0,p+="';\n"+s+";\n__p += '"),i&&(p+="' +\n((__t = ("+i+")) == null ? '' : __t) +\n'"),c=l+t.length,t})),p+="';\n";var f=ze.call(t,"variable")&&t.variable;if(f){if(ue.test(f))throw new we("Invalid `variable` option passed into `_.template`")}else p="with (obj) {\n"+p+"\n}\n";p=(o?p.replace(U,""):p).replace(H,"$1").replace(W,"$1;"),p="function("+(f||"obj")+") {\n"+(f?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(a?", __e = _.escape":"")+(o?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+p+"return __p\n}";var g=Zs((function(){return Se(l,m+"return "+p).apply(r,u)}));if(g.source=p,Ko(g))throw g;return g},Dn.times=function(e,t){if((e=hs(e))<1||e>d)return[];var n=h,i=yn(e,h);t=aa(t),e-=h;for(var r=Jt(i,t);++n<e;)t(n);return r},Dn.toFinite=ps,Dn.toInteger=hs,Dn.toLength=ms,Dn.toLower=function(e){return ys(e).toLowerCase()},Dn.toNumber=fs,Dn.toSafeInteger=function(e){return e?ai(hs(e),-9007199254740991,d):0===e?e:0},Dn.toString=ys,Dn.toUpper=function(e){return ys(e).toUpperCase()},Dn.trim=function(e,t,n){if((e=ys(e))&&(n||t===r))return Yt(e);if(!e||!(t=or(t)))return e;var i=dn(e),a=dn(t);return vr(i,Xt(i,a),Qt(i,a)+1).join("")},Dn.trimEnd=function(e,t,n){if((e=ys(e))&&(n||t===r))return e.slice(0,pn(e)+1);if(!e||!(t=or(t)))return e;var i=dn(e);return vr(i,0,Qt(i,dn(t))+1).join("")},Dn.trimStart=function(e,t,n){if((e=ys(e))&&(n||t===r))return e.replace(ie,"");if(!e||!(t=or(t)))return e;var i=dn(e);return vr(i,Xt(i,dn(t))).join("")},Dn.truncate=function(e,t){var n=30,i="...";if(Qo(t)){var a="separator"in t?t.separator:a;n="length"in t?hs(t.length):n,i="omission"in t?or(t.omission):i}var o=(e=ys(e)).length;if(rn(e)){var s=dn(e);o=s.length}if(n>=o)return e;var l=n-cn(i);if(l<1)return i;var u=s?vr(s,0,l).join(""):e.slice(0,l);if(a===r)return u+i;if(s&&(l+=u.length-l),rs(a)){if(e.slice(l).search(a)){var c,d=u;for(a.global||(a=Ce(a.source,ys(pe.exec(a))+"g")),a.lastIndex=0;c=a.exec(d);)var p=c.index;u=u.slice(0,p===r?l:p)}}else if(e.indexOf(or(a),l)!=l){var h=u.lastIndexOf(a);h>-1&&(u=u.slice(0,h))}return u+i},Dn.unescape=function(e){return(e=ys(e))&&J.test(e)?e.replace(V,hn):e},Dn.uniqueId=function(e){var t=++Le;return ys(e)+t},Dn.upperCase=Ys,Dn.upperFirst=Ks,Dn.each=yo,Dn.eachRight=vo,Dn.first=Wa,ol(Dn,(gl={},vi(Dn,(function(e,t){ze.call(Dn.prototype,t)||(gl[t]=e)})),gl),{chain:!1}),Dn.VERSION="4.17.21",Ct(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(e){Dn[e].placeholder=Dn})),Ct(["drop","take"],(function(e,t){Un.prototype[e]=function(n){n=n===r?1:gn(hs(n),0);var i=this.__filtered__&&!t?new Un(this):this.clone();return i.__filtered__?i.__takeCount__=yn(n,i.__takeCount__):i.__views__.push({size:yn(n,h),type:e+(i.__dir__<0?"Right":"")}),i},Un.prototype[e+"Right"]=function(t){return this.reverse()[e](t).reverse()}})),Ct(["filter","map","takeWhile"],(function(e,t){var n=t+1,i=1==n||3==n;Un.prototype[e]=function(e){var t=this.clone();return t.__iteratees__.push({iteratee:aa(e,3),type:n}),t.__filtered__=t.__filtered__||i,t}})),Ct(["head","last"],(function(e,t){var n="take"+(t?"Right":"");Un.prototype[e]=function(){return this[n](1).value()[0]}})),Ct(["initial","tail"],(function(e,t){var n="drop"+(t?"":"Right");Un.prototype[e]=function(){return this.__filtered__?new Un(this):this[n](1)}})),Un.prototype.compact=function(){return this.filter(nl)},Un.prototype.find=function(e){return this.filter(e).head()},Un.prototype.findLast=function(e){return this.reverse().find(e)},Un.prototype.invokeMap=Ji((function(e,t){return"function"==typeof e?new Un(this):this.map((function(n){return ji(n,e,t)}))})),Un.prototype.reject=function(e){return this.filter(Lo(aa(e)))},Un.prototype.slice=function(e,t){e=hs(e);var n=this;return n.__filtered__&&(e>0||t<0)?new Un(n):(e<0?n=n.takeRight(-e):e&&(n=n.drop(e)),t!==r&&(n=(t=hs(t))<0?n.dropRight(-t):n.take(t-e)),n)},Un.prototype.takeRightWhile=function(e){return this.reverse().takeWhile(e).reverse()},Un.prototype.toArray=function(){return this.take(h)},vi(Un.prototype,(function(e,t){var n=/^(?:filter|find|map|reject)|While$/.test(t),i=/^(?:head|last)$/.test(t),a=Dn[i?"take"+("last"==t?"Right":""):t],o=i||/^find/.test(t);a&&(Dn.prototype[t]=function(){var t=this.__wrapped__,s=i?[1]:arguments,l=t instanceof Un,u=s[0],c=l||Ho(t),d=function(e){var t=a.apply(Dn,It([e],s));return i&&p?t[0]:t};c&&n&&"function"==typeof u&&1!=u.length&&(l=c=!1);var p=this.__chain__,h=!!this.__actions__.length,m=o&&!p,f=l&&!h;if(!o&&c){t=f?t:new Un(this);var g=e.apply(t,s);return g.__actions__.push({func:po,args:[d],thisArg:r}),new Gn(g,p)}return m&&f?e.apply(this,s):(g=this.thru(d),m?i?g.value()[0]:g.value():g)})})),Ct(["pop","push","shift","sort","splice","unshift"],(function(e){var t=je[e],n=/^(?:push|sort|unshift)$/.test(e)?"tap":"thru",i=/^(?:pop|shift)$/.test(e);Dn.prototype[e]=function(){var e=arguments;if(i&&!this.__chain__){var r=this.value();return t.apply(Ho(r)?r:[],e)}return this[n]((function(n){return t.apply(Ho(n)?n:[],e)}))}})),vi(Un.prototype,(function(e,t){var n=Dn[t];if(n){var i=n.name+"";ze.call(_n,i)||(_n[i]=[]),_n[i].push({name:t,func:n})}})),_n[Fr(r,2).name]=[{name:"wrapper",func:r}],Un.prototype.clone=function(){var e=new Un(this.__wrapped__);return e.__actions__=Ar(this.__actions__),e.__dir__=this.__dir__,e.__filtered__=this.__filtered__,e.__iteratees__=Ar(this.__iteratees__),e.__takeCount__=this.__takeCount__,e.__views__=Ar(this.__views__),e},Un.prototype.reverse=function(){if(this.__filtered__){var e=new Un(this);e.__dir__=-1,e.__filtered__=!0}else(e=this.clone()).__dir__*=-1;return e},Un.prototype.value=function(){var e=this.__wrapped__.value(),t=this.__dir__,n=Ho(e),i=t<0,r=n?e.length:0,a=function(e,t,n){for(var i=-1,r=n.length;++i<r;){var a=n[i],o=a.size;switch(a.type){case"drop":e+=o;break;case"dropRight":t-=o;break;case"take":t=yn(t,e+o);break;case"takeRight":e=gn(e,t-o)}}return{start:e,end:t}}(0,r,this.__views__),o=a.start,s=a.end,l=s-o,u=i?s:o-1,c=this.__iteratees__,d=c.length,p=0,h=yn(l,this.__takeCount__);if(!n||!i&&r==l&&h==l)return dr(e,this.__actions__);var m=[];e:for(;l--&&p<h;){for(var f=-1,g=e[u+=t];++f<d;){var y=c[f],v=y.iteratee,b=y.type,k=v(g);if(2==b)g=k;else if(!k){if(1==b)continue e;break e}}m[p++]=g}return m},Dn.prototype.at=ho,Dn.prototype.chain=function(){return co(this)},Dn.prototype.commit=function(){return new Gn(this.value(),this.__chain__)},Dn.prototype.next=function(){this.__values__===r&&(this.__values__=ds(this.value()));var e=this.__index__>=this.__values__.length;return{done:e,value:e?r:this.__values__[this.__index__++]}},Dn.prototype.plant=function(e){for(var t,n=this;n instanceof Nn;){var i=Fa(n);i.__index__=0,i.__values__=r,t?a.__wrapped__=i:t=i;var a=i;n=n.__wrapped__}return a.__wrapped__=e,t},Dn.prototype.reverse=function(){var e=this.__wrapped__;if(e instanceof Un){var t=e;return this.__actions__.length&&(t=new Un(this)),(t=t.reverse()).__actions__.push({func:po,args:[Xa],thisArg:r}),new Gn(t,this.__chain__)}return this.thru(Xa)},Dn.prototype.toJSON=Dn.prototype.valueOf=Dn.prototype.value=function(){return dr(this.__wrapped__,this.__actions__)},Dn.prototype.first=Dn.prototype.head,Ke&&(Dn.prototype[Ke]=function(){return this}),Dn}();dt._=mn,(i=function(){return mn}.call(t,n,t,e))===r||(e.exports=i)}.call(this)}},t={};function n(i){var r=t[i];if(void 0!==r)return r.exports;var a=t[i]={id:i,loaded:!1,exports:{}};return e[i].call(a.exports,a,a.exports,n),a.loaded=!0,a.exports}n.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t},n.d=(e,t)=>{for(var i in t)n.o(t,i)&&!n.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:t[i]})},n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.nmd=e=>(e.paths=[],e.children||(e.children=[]),e);var i={};return(()=>{"use strict";n.d(i,{default:()=>Ka});var e={};function t(e,t){return function(){return e.apply(t,arguments)}}n.r(e),n.d(e,{hasBrowserEnv:()=>he,hasStandardBrowserEnv:()=>fe,hasStandardBrowserWebWorkerEnv:()=>ge,navigator:()=>me,origin:()=>ye});const{toString:r}=Object.prototype,{getPrototypeOf:a}=Object,o=(s=Object.create(null),e=>{const t=r.call(e);return s[t]||(s[t]=t.slice(8,-1).toLowerCase())});var s;const l=e=>(e=e.toLowerCase(),t=>o(t)===e),u=e=>t=>typeof t===e,{isArray:c}=Array,d=u("undefined"),p=l("ArrayBuffer"),h=u("string"),m=u("function"),f=u("number"),g=e=>null!==e&&"object"==typeof e,y=e=>{if("object"!==o(e))return!1;const t=a(e);return!(null!==t&&t!==Object.prototype&&null!==Object.getPrototypeOf(t)||Symbol.toStringTag in e||Symbol.iterator in e)},v=l("Date"),b=l("File"),k=l("Blob"),w=l("FileList"),S=l("URLSearchParams"),[P,x,C,A]=["ReadableStream","Request","Response","Headers"].map(l);function T(e,t,{allOwnKeys:n=!1}={}){if(null==e)return;let i,r;if("object"!=typeof e&&(e=[e]),c(e))for(i=0,r=e.length;i<r;i++)t.call(null,e[i],i,e);else{const r=n?Object.getOwnPropertyNames(e):Object.keys(e),a=r.length;let o;for(i=0;i<a;i++)o=r[i],t.call(null,e[o],o,e)}}function j(e,t){t=t.toLowerCase();const n=Object.keys(e);let i,r=n.length;for(;r-- >0;)if(i=n[r],t===i.toLowerCase())return i;return null}const R="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:global,E=e=>!d(e)&&e!==R,I=(z="undefined"!=typeof Uint8Array&&a(Uint8Array),e=>z&&e instanceof z);var z;const L=l("HTMLFormElement"),O=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),M=l("RegExp"),F=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),i={};T(n,((n,r)=>{let a;!1!==(a=t(n,r,e))&&(i[r]=a||n)})),Object.defineProperties(e,i)},D="abcdefghijklmnopqrstuvwxyz",B="0123456789",N={DIGIT:B,ALPHA:D,ALPHA_DIGIT:D+D.toUpperCase()+B},G=l("AsyncFunction"),U=(H="function"==typeof setImmediate,W=m(R.postMessage),H?setImmediate:W?(V=`axios@${Math.random()}`,q=[],R.addEventListener("message",(({source:e,data:t})=>{e===R&&t===V&&q.length&&q.shift()()}),!1),e=>{q.push(e),R.postMessage(V,"*")}):e=>setTimeout(e));var H,W,V,q;const J="undefined"!=typeof queueMicrotask?queueMicrotask.bind(R):"undefined"!=typeof process&&process.nextTick||U,Y={isArray:c,isArrayBuffer:p,isBuffer:function(e){return null!==e&&!d(e)&&null!==e.constructor&&!d(e.constructor)&&m(e.constructor.isBuffer)&&e.constructor.isBuffer(e)},isFormData:e=>{let t;return e&&("function"==typeof FormData&&e instanceof FormData||m(e.append)&&("formdata"===(t=o(e))||"object"===t&&m(e.toString)&&"[object FormData]"===e.toString()))},isArrayBufferView:function(e){let t;return t="undefined"!=typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer&&p(e.buffer),t},isString:h,isNumber:f,isBoolean:e=>!0===e||!1===e,isObject:g,isPlainObject:y,isReadableStream:P,isRequest:x,isResponse:C,isHeaders:A,isUndefined:d,isDate:v,isFile:b,isBlob:k,isRegExp:M,isFunction:m,isStream:e=>g(e)&&m(e.pipe),isURLSearchParams:S,isTypedArray:I,isFileList:w,forEach:T,merge:function e(){const{caseless:t}=E(this)&&this||{},n={},i=(i,r)=>{const a=t&&j(n,r)||r;y(n[a])&&y(i)?n[a]=e(n[a],i):y(i)?n[a]=e({},i):c(i)?n[a]=i.slice():n[a]=i};for(let e=0,t=arguments.length;e<t;e++)arguments[e]&&T(arguments[e],i);return n},extend:(e,n,i,{allOwnKeys:r}={})=>(T(n,((n,r)=>{i&&m(n)?e[r]=t(n,i):e[r]=n}),{allOwnKeys:r}),e),trim:e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,""),stripBOM:e=>(65279===e.charCodeAt(0)&&(e=e.slice(1)),e),inherits:(e,t,n,i)=>{e.prototype=Object.create(t.prototype,i),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),n&&Object.assign(e.prototype,n)},toFlatObject:(e,t,n,i)=>{let r,o,s;const l={};if(t=t||{},null==e)return t;do{for(r=Object.getOwnPropertyNames(e),o=r.length;o-- >0;)s=r[o],i&&!i(s,e,t)||l[s]||(t[s]=e[s],l[s]=!0);e=!1!==n&&a(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},kindOf:o,kindOfTest:l,endsWith:(e,t,n)=>{e=String(e),(void 0===n||n>e.length)&&(n=e.length),n-=t.length;const i=e.indexOf(t,n);return-1!==i&&i===n},toArray:e=>{if(!e)return null;if(c(e))return e;let t=e.length;if(!f(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},forEachEntry:(e,t)=>{const n=(e&&e[Symbol.iterator]).call(e);let i;for(;(i=n.next())&&!i.done;){const n=i.value;t.call(e,n[0],n[1])}},matchAll:(e,t)=>{let n;const i=[];for(;null!==(n=e.exec(t));)i.push(n);return i},isHTMLForm:L,hasOwnProperty:O,hasOwnProp:O,reduceDescriptors:F,freezeMethods:e=>{F(e,((t,n)=>{if(m(e)&&-1!==["arguments","caller","callee"].indexOf(n))return!1;const i=e[n];m(i)&&(t.enumerable=!1,"writable"in t?t.writable=!1:t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")}))}))},toObjectSet:(e,t)=>{const n={},i=e=>{e.forEach((e=>{n[e]=!0}))};return c(e)?i(e):i(String(e).split(t)),n},toCamelCase:e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,(function(e,t,n){return t.toUpperCase()+n})),noop:()=>{},toFiniteNumber:(e,t)=>null!=e&&Number.isFinite(e=+e)?e:t,findKey:j,global:R,isContextDefined:E,ALPHABET:N,generateString:(e=16,t=N.ALPHA_DIGIT)=>{let n="";const{length:i}=t;for(;e--;)n+=t[Math.random()*i|0];return n},isSpecCompliantForm:function(e){return!!(e&&m(e.append)&&"FormData"===e[Symbol.toStringTag]&&e[Symbol.iterator])},toJSONObject:e=>{const t=new Array(10),n=(e,i)=>{if(g(e)){if(t.indexOf(e)>=0)return;if(!("toJSON"in e)){t[i]=e;const r=c(e)?[]:{};return T(e,((e,t)=>{const a=n(e,i+1);!d(a)&&(r[t]=a)})),t[i]=void 0,r}}return e};return n(e,0)},isAsyncFn:G,isThenable:e=>e&&(g(e)||m(e))&&m(e.then)&&m(e.catch),setImmediate:U,asap:J};function K(e,t,n,i,r){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=(new Error).stack,this.message=e,this.name="AxiosError",t&&(this.code=t),n&&(this.config=n),i&&(this.request=i),r&&(this.response=r,this.status=r.status?r.status:null)}Y.inherits(K,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:Y.toJSONObject(this.config),code:this.code,status:this.status}}});const $=K.prototype,Z={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach((e=>{Z[e]={value:e}})),Object.defineProperties(K,Z),Object.defineProperty($,"isAxiosError",{value:!0}),K.from=(e,t,n,i,r,a)=>{const o=Object.create($);return Y.toFlatObject(e,o,(function(e){return e!==Error.prototype}),(e=>"isAxiosError"!==e)),K.call(o,e.message,t,n,i,r),o.cause=e,o.name=e.name,a&&Object.assign(o,a),o};const X=K;function Q(e){return Y.isPlainObject(e)||Y.isArray(e)}function ee(e){return Y.endsWith(e,"[]")?e.slice(0,-2):e}function te(e,t,n){return e?e.concat(t).map((function(e,t){return e=ee(e),!n&&t?"["+e+"]":e})).join(n?".":""):t}const ne=Y.toFlatObject(Y,{},null,(function(e){return/^is[A-Z]/.test(e)})),ie=function(e,t,n){if(!Y.isObject(e))throw new TypeError("target must be an object");t=t||new FormData;const i=(n=Y.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,(function(e,t){return!Y.isUndefined(t[e])}))).metaTokens,r=n.visitor||u,a=n.dots,o=n.indexes,s=(n.Blob||"undefined"!=typeof Blob&&Blob)&&Y.isSpecCompliantForm(t);if(!Y.isFunction(r))throw new TypeError("visitor must be a function");function l(e){if(null===e)return"";if(Y.isDate(e))return e.toISOString();if(!s&&Y.isBlob(e))throw new X("Blob is not supported. Use a Buffer instead.");return Y.isArrayBuffer(e)||Y.isTypedArray(e)?s&&"function"==typeof Blob?new Blob([e]):Buffer.from(e):e}function u(e,n,r){let s=e;if(e&&!r&&"object"==typeof e)if(Y.endsWith(n,"{}"))n=i?n:n.slice(0,-2),e=JSON.stringify(e);else if(Y.isArray(e)&&function(e){return Y.isArray(e)&&!e.some(Q)}(e)||(Y.isFileList(e)||Y.endsWith(n,"[]"))&&(s=Y.toArray(e)))return n=ee(n),s.forEach((function(e,i){!Y.isUndefined(e)&&null!==e&&t.append(!0===o?te([n],i,a):null===o?n:n+"[]",l(e))})),!1;return!!Q(e)||(t.append(te(r,n,a),l(e)),!1)}const c=[],d=Object.assign(ne,{defaultVisitor:u,convertValue:l,isVisitable:Q});if(!Y.isObject(e))throw new TypeError("data must be an object");return function e(n,i){if(!Y.isUndefined(n)){if(-1!==c.indexOf(n))throw Error("Circular reference detected in "+i.join("."));c.push(n),Y.forEach(n,(function(n,a){!0===(!(Y.isUndefined(n)||null===n)&&r.call(t,n,Y.isString(a)?a.trim():a,i,d))&&e(n,i?i.concat(a):[a])})),c.pop()}}(e),t};function re(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,(function(e){return t[e]}))}function ae(e,t){this._pairs=[],e&&ie(e,this,t)}const oe=ae.prototype;oe.append=function(e,t){this._pairs.push([e,t])},oe.toString=function(e){const t=e?function(t){return e.call(this,t,re)}:re;return this._pairs.map((function(e){return t(e[0])+"="+t(e[1])}),"").join("&")};const se=ae;function le(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function ue(e,t,n){if(!t)return e;const i=n&&n.encode||le;Y.isFunction(n)&&(n={serialize:n});const r=n&&n.serialize;let a;if(a=r?r(t,n):Y.isURLSearchParams(t)?t.toString():new se(t,n).toString(i),a){const t=e.indexOf("#");-1!==t&&(e=e.slice(0,t)),e+=(-1===e.indexOf("?")?"?":"&")+a}return e}const ce=class{constructor(){this.handlers=[]}use(e,t,n){return this.handlers.push({fulfilled:e,rejected:t,synchronous:!!n&&n.synchronous,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){Y.forEach(this.handlers,(function(t){null!==t&&e(t)}))}},de={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},pe={isBrowser:!0,classes:{URLSearchParams:"undefined"!=typeof URLSearchParams?URLSearchParams:se,FormData:"undefined"!=typeof FormData?FormData:null,Blob:"undefined"!=typeof Blob?Blob:null},protocols:["http","https","file","blob","url","data"]},he="undefined"!=typeof window&&"undefined"!=typeof document,me="object"==typeof navigator&&navigator||void 0,fe=he&&(!me||["ReactNative","NativeScript","NS"].indexOf(me.product)<0),ge="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&"function"==typeof self.importScripts,ye=he&&window.location.href||"http://localhost",ve={...e,...pe},be=function(e){function t(e,n,i,r){let a=e[r++];if("__proto__"===a)return!0;const o=Number.isFinite(+a),s=r>=e.length;return a=!a&&Y.isArray(i)?i.length:a,s?(Y.hasOwnProp(i,a)?i[a]=[i[a],n]:i[a]=n,!o):(i[a]&&Y.isObject(i[a])||(i[a]=[]),t(e,n,i[a],r)&&Y.isArray(i[a])&&(i[a]=function(e){const t={},n=Object.keys(e);let i;const r=n.length;let a;for(i=0;i<r;i++)a=n[i],t[a]=e[a];return t}(i[a])),!o)}if(Y.isFormData(e)&&Y.isFunction(e.entries)){const n={};return Y.forEachEntry(e,((e,i)=>{t(function(e){return Y.matchAll(/\w+|\[(\w*)]/g,e).map((e=>"[]"===e[0]?"":e[1]||e[0]))}(e),i,n,0)})),n}return null},ke={transitional:de,adapter:["xhr","http","fetch"],transformRequest:[function(e,t){const n=t.getContentType()||"",i=n.indexOf("application/json")>-1,r=Y.isObject(e);if(r&&Y.isHTMLForm(e)&&(e=new FormData(e)),Y.isFormData(e))return i?JSON.stringify(be(e)):e;if(Y.isArrayBuffer(e)||Y.isBuffer(e)||Y.isStream(e)||Y.isFile(e)||Y.isBlob(e)||Y.isReadableStream(e))return e;if(Y.isArrayBufferView(e))return e.buffer;if(Y.isURLSearchParams(e))return t.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let a;if(r){if(n.indexOf("application/x-www-form-urlencoded")>-1)return function(e,t){return ie(e,new ve.classes.URLSearchParams,Object.assign({visitor:function(e,t,n,i){return ve.isNode&&Y.isBuffer(e)?(this.append(t,e.toString("base64")),!1):i.defaultVisitor.apply(this,arguments)}},t))}(e,this.formSerializer).toString();if((a=Y.isFileList(e))||n.indexOf("multipart/form-data")>-1){const t=this.env&&this.env.FormData;return ie(a?{"files[]":e}:e,t&&new t,this.formSerializer)}}return r||i?(t.setContentType("application/json",!1),function(e){if(Y.isString(e))try{return(0,JSON.parse)(e),Y.trim(e)}catch(e){if("SyntaxError"!==e.name)throw e}return(0,JSON.stringify)(e)}(e)):e}],transformResponse:[function(e){const t=this.transitional||ke.transitional,n=t&&t.forcedJSONParsing,i="json"===this.responseType;if(Y.isResponse(e)||Y.isReadableStream(e))return e;if(e&&Y.isString(e)&&(n&&!this.responseType||i)){const n=!(t&&t.silentJSONParsing)&&i;try{return JSON.parse(e)}catch(e){if(n){if("SyntaxError"===e.name)throw X.from(e,X.ERR_BAD_RESPONSE,this,null,this.response);throw e}}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:ve.classes.FormData,Blob:ve.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};Y.forEach(["delete","get","head","post","put","patch"],(e=>{ke.headers[e]={}}));const we=ke,Se=Y.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),Pe=Symbol("internals");function xe(e){return e&&String(e).trim().toLowerCase()}function Ce(e){return!1===e||null==e?e:Y.isArray(e)?e.map(Ce):String(e)}function Ae(e,t,n,i,r){return Y.isFunction(i)?i.call(this,t,n):(r&&(t=n),Y.isString(t)?Y.isString(i)?-1!==t.indexOf(i):Y.isRegExp(i)?i.test(t):void 0:void 0)}class Te{constructor(e){e&&this.set(e)}set(e,t,n){const i=this;function r(e,t,n){const r=xe(t);if(!r)throw new Error("header name must be a non-empty string");const a=Y.findKey(i,r);(!a||void 0===i[a]||!0===n||void 0===n&&!1!==i[a])&&(i[a||t]=Ce(e))}const a=(e,t)=>Y.forEach(e,((e,n)=>r(e,n,t)));if(Y.isPlainObject(e)||e instanceof this.constructor)a(e,t);else if(Y.isString(e)&&(e=e.trim())&&!/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim()))a((e=>{const t={};let n,i,r;return e&&e.split("\n").forEach((function(e){r=e.indexOf(":"),n=e.substring(0,r).trim().toLowerCase(),i=e.substring(r+1).trim(),!n||t[n]&&Se[n]||("set-cookie"===n?t[n]?t[n].push(i):t[n]=[i]:t[n]=t[n]?t[n]+", "+i:i)})),t})(e),t);else if(Y.isHeaders(e))for(const[t,i]of e.entries())r(i,t,n);else null!=e&&r(t,e,n);return this}get(e,t){if(e=xe(e)){const n=Y.findKey(this,e);if(n){const e=this[n];if(!t)return e;if(!0===t)return function(e){const t=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let i;for(;i=n.exec(e);)t[i[1]]=i[2];return t}(e);if(Y.isFunction(t))return t.call(this,e,n);if(Y.isRegExp(t))return t.exec(e);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,t){if(e=xe(e)){const n=Y.findKey(this,e);return!(!n||void 0===this[n]||t&&!Ae(0,this[n],n,t))}return!1}delete(e,t){const n=this;let i=!1;function r(e){if(e=xe(e)){const r=Y.findKey(n,e);!r||t&&!Ae(0,n[r],r,t)||(delete n[r],i=!0)}}return Y.isArray(e)?e.forEach(r):r(e),i}clear(e){const t=Object.keys(this);let n=t.length,i=!1;for(;n--;){const r=t[n];e&&!Ae(0,this[r],r,e,!0)||(delete this[r],i=!0)}return i}normalize(e){const t=this,n={};return Y.forEach(this,((i,r)=>{const a=Y.findKey(n,r);if(a)return t[a]=Ce(i),void delete t[r];const o=e?function(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,((e,t,n)=>t.toUpperCase()+n))}(r):String(r).trim();o!==r&&delete t[r],t[o]=Ce(i),n[o]=!0})),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){const t=Object.create(null);return Y.forEach(this,((n,i)=>{null!=n&&!1!==n&&(t[i]=e&&Y.isArray(n)?n.join(", "):n)})),t}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map((([e,t])=>e+": "+t)).join("\n")}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...t){const n=new this(e);return t.forEach((e=>n.set(e))),n}static accessor(e){const t=(this[Pe]=this[Pe]={accessors:{}}).accessors,n=this.prototype;function i(e){const i=xe(e);t[i]||(function(e,t){const n=Y.toCamelCase(" "+t);["get","set","has"].forEach((i=>{Object.defineProperty(e,i+n,{value:function(e,n,r){return this[i].call(this,t,e,n,r)},configurable:!0})}))}(n,e),t[i]=!0)}return Y.isArray(e)?e.forEach(i):i(e),this}}Te.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),Y.reduceDescriptors(Te.prototype,(({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(e){this[n]=e}}})),Y.freezeMethods(Te);const je=Te;function _e(e,t){const n=this||we,i=t||n,r=je.from(i.headers);let a=i.data;return Y.forEach(e,(function(e){a=e.call(n,a,r.normalize(),t?t.status:void 0)})),r.normalize(),a}function Re(e){return!(!e||!e.__CANCEL__)}function Ee(e,t,n){X.call(this,null==e?"canceled":e,X.ERR_CANCELED,t,n),this.name="CanceledError"}Y.inherits(Ee,X,{__CANCEL__:!0});const Ie=Ee;function ze(e,t,n){const i=n.config.validateStatus;n.status&&i&&!i(n.status)?t(new X("Request failed with status code "+n.status,[X.ERR_BAD_REQUEST,X.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n)):e(n)}const Le=(e,t,n=3)=>{let i=0;const r=function(e,t){e=e||10;const n=new Array(e),i=new Array(e);let r,a=0,o=0;return t=void 0!==t?t:1e3,function(s){const l=Date.now(),u=i[o];r||(r=l),n[a]=s,i[a]=l;let c=o,d=0;for(;c!==a;)d+=n[c++],c%=e;if(a=(a+1)%e,a===o&&(o=(o+1)%e),l-r<t)return;const p=u&&l-u;return p?Math.round(1e3*d/p):void 0}}(50,250);return function(e,t){let n,i,r=0,a=1e3/t;const o=(t,a=Date.now())=>{r=a,n=null,i&&(clearTimeout(i),i=null),e.apply(null,t)};return[(...e)=>{const t=Date.now(),s=t-r;s>=a?o(e,t):(n=e,i||(i=setTimeout((()=>{i=null,o(n)}),a-s)))},()=>n&&o(n)]}((n=>{const a=n.loaded,o=n.lengthComputable?n.total:void 0,s=a-i,l=r(s);i=a,e({loaded:a,total:o,progress:o?a/o:void 0,bytes:s,rate:l||void 0,estimated:l&&o&&a<=o?(o-a)/l:void 0,event:n,lengthComputable:null!=o,[t?"download":"upload"]:!0})}),n)},Oe=(e,t)=>{const n=null!=e;return[i=>t[0]({lengthComputable:n,total:e,loaded:i}),t[1]]},Me=e=>(...t)=>Y.asap((()=>e(...t))),Fe=ve.hasStandardBrowserEnv?((e,t)=>n=>(n=new URL(n,ve.origin),e.protocol===n.protocol&&e.host===n.host&&(t||e.port===n.port)))(new URL(ve.origin),ve.navigator&&/(msie|trident)/i.test(ve.navigator.userAgent)):()=>!0,De=ve.hasStandardBrowserEnv?{write(e,t,n,i,r,a){const o=[e+"="+encodeURIComponent(t)];Y.isNumber(n)&&o.push("expires="+new Date(n).toGMTString()),Y.isString(i)&&o.push("path="+i),Y.isString(r)&&o.push("domain="+r),!0===a&&o.push("secure"),document.cookie=o.join("; ")},read(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read:()=>null,remove(){}};function Be(e,t){return e&&!/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)?function(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}(e,t):t}const Ne=e=>e instanceof je?{...e}:e;function Ge(e,t){t=t||{};const n={};function i(e,t,n,i){return Y.isPlainObject(e)&&Y.isPlainObject(t)?Y.merge.call({caseless:i},e,t):Y.isPlainObject(t)?Y.merge({},t):Y.isArray(t)?t.slice():t}function r(e,t,n,r){return Y.isUndefined(t)?Y.isUndefined(e)?void 0:i(void 0,e,0,r):i(e,t,0,r)}function a(e,t){if(!Y.isUndefined(t))return i(void 0,t)}function o(e,t){return Y.isUndefined(t)?Y.isUndefined(e)?void 0:i(void 0,e):i(void 0,t)}function s(n,r,a){return a in t?i(n,r):a in e?i(void 0,n):void 0}const l={url:a,method:a,data:a,baseURL:o,transformRequest:o,transformResponse:o,paramsSerializer:o,timeout:o,timeoutMessage:o,withCredentials:o,withXSRFToken:o,adapter:o,responseType:o,xsrfCookieName:o,xsrfHeaderName:o,onUploadProgress:o,onDownloadProgress:o,decompress:o,maxContentLength:o,maxBodyLength:o,beforeRedirect:o,transport:o,httpAgent:o,httpsAgent:o,cancelToken:o,socketPath:o,responseEncoding:o,validateStatus:s,headers:(e,t,n)=>r(Ne(e),Ne(t),0,!0)};return Y.forEach(Object.keys(Object.assign({},e,t)),(function(i){const a=l[i]||r,o=a(e[i],t[i],i);Y.isUndefined(o)&&a!==s||(n[i]=o)})),n}const Ue=e=>{const t=Ge({},e);let n,{data:i,withXSRFToken:r,xsrfHeaderName:a,xsrfCookieName:o,headers:s,auth:l}=t;if(t.headers=s=je.from(s),t.url=ue(Be(t.baseURL,t.url),e.params,e.paramsSerializer),l&&s.set("Authorization","Basic "+btoa((l.username||"")+":"+(l.password?unescape(encodeURIComponent(l.password)):""))),Y.isFormData(i))if(ve.hasStandardBrowserEnv||ve.hasStandardBrowserWebWorkerEnv)s.setContentType(void 0);else if(!1!==(n=s.getContentType())){const[e,...t]=n?n.split(";").map((e=>e.trim())).filter(Boolean):[];s.setContentType([e||"multipart/form-data",...t].join("; "))}if(ve.hasStandardBrowserEnv&&(r&&Y.isFunction(r)&&(r=r(t)),r||!1!==r&&Fe(t.url))){const e=a&&o&&De.read(o);e&&s.set(a,e)}return t},He="undefined"!=typeof XMLHttpRequest&&function(e){return new Promise((function(t,n){const i=Ue(e);let r=i.data;const a=je.from(i.headers).normalize();let o,s,l,u,c,{responseType:d,onUploadProgress:p,onDownloadProgress:h}=i;function m(){u&&u(),c&&c(),i.cancelToken&&i.cancelToken.unsubscribe(o),i.signal&&i.signal.removeEventListener("abort",o)}let f=new XMLHttpRequest;function g(){if(!f)return;const i=je.from("getAllResponseHeaders"in f&&f.getAllResponseHeaders());ze((function(e){t(e),m()}),(function(e){n(e),m()}),{data:d&&"text"!==d&&"json"!==d?f.response:f.responseText,status:f.status,statusText:f.statusText,headers:i,config:e,request:f}),f=null}f.open(i.method.toUpperCase(),i.url,!0),f.timeout=i.timeout,"onloadend"in f?f.onloadend=g:f.onreadystatechange=function(){f&&4===f.readyState&&(0!==f.status||f.responseURL&&0===f.responseURL.indexOf("file:"))&&setTimeout(g)},f.onabort=function(){f&&(n(new X("Request aborted",X.ECONNABORTED,e,f)),f=null)},f.onerror=function(){n(new X("Network Error",X.ERR_NETWORK,e,f)),f=null},f.ontimeout=function(){let t=i.timeout?"timeout of "+i.timeout+"ms exceeded":"timeout exceeded";const r=i.transitional||de;i.timeoutErrorMessage&&(t=i.timeoutErrorMessage),n(new X(t,r.clarifyTimeoutError?X.ETIMEDOUT:X.ECONNABORTED,e,f)),f=null},void 0===r&&a.setContentType(null),"setRequestHeader"in f&&Y.forEach(a.toJSON(),(function(e,t){f.setRequestHeader(t,e)})),Y.isUndefined(i.withCredentials)||(f.withCredentials=!!i.withCredentials),d&&"json"!==d&&(f.responseType=i.responseType),h&&([l,c]=Le(h,!0),f.addEventListener("progress",l)),p&&f.upload&&([s,u]=Le(p),f.upload.addEventListener("progress",s),f.upload.addEventListener("loadend",u)),(i.cancelToken||i.signal)&&(o=t=>{f&&(n(!t||t.type?new Ie(null,e,f):t),f.abort(),f=null)},i.cancelToken&&i.cancelToken.subscribe(o),i.signal&&(i.signal.aborted?o():i.signal.addEventListener("abort",o)));const y=function(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}(i.url);y&&-1===ve.protocols.indexOf(y)?n(new X("Unsupported protocol "+y+":",X.ERR_BAD_REQUEST,e)):f.send(r||null)}))},We=(e,t)=>{const{length:n}=e=e?e.filter(Boolean):[];if(t||n){let n,i=new AbortController;const r=function(e){if(!n){n=!0,o();const t=e instanceof Error?e:this.reason;i.abort(t instanceof X?t:new Ie(t instanceof Error?t.message:t))}};let a=t&&setTimeout((()=>{a=null,r(new X(`timeout ${t} of ms exceeded`,X.ETIMEDOUT))}),t);const o=()=>{e&&(a&&clearTimeout(a),a=null,e.forEach((e=>{e.unsubscribe?e.unsubscribe(r):e.removeEventListener("abort",r)})),e=null)};e.forEach((e=>e.addEventListener("abort",r)));const{signal:s}=i;return s.unsubscribe=()=>Y.asap(o),s}},Ve=function*(e,t){let n=e.byteLength;if(!t||n<t)return void(yield e);let i,r=0;for(;r<n;)i=r+t,yield e.slice(r,i),r=i},qe=(e,t,n,i)=>{const r=async function*(e,t){for await(const n of async function*(e){if(e[Symbol.asyncIterator])return void(yield*e);const t=e.getReader();try{for(;;){const{done:e,value:n}=await t.read();if(e)break;yield n}}finally{await t.cancel()}}(e))yield*Ve(n,t)}(e,t);let a,o=0,s=e=>{a||(a=!0,i&&i(e))};return new ReadableStream({async pull(e){try{const{done:t,value:i}=await r.next();if(t)return s(),void e.close();let a=i.byteLength;if(n){let e=o+=a;n(e)}e.enqueue(new Uint8Array(i))}catch(e){throw s(e),e}},cancel:e=>(s(e),r.return())},{highWaterMark:2})},Je="function"==typeof fetch&&"function"==typeof Request&&"function"==typeof Response,Ye=Je&&"function"==typeof ReadableStream,Ke=Je&&("function"==typeof TextEncoder?($e=new TextEncoder,e=>$e.encode(e)):async e=>new Uint8Array(await new Response(e).arrayBuffer()));var $e;const Ze=(e,...t)=>{try{return!!e(...t)}catch(e){return!1}},Xe=Ye&&Ze((()=>{let e=!1;const t=new Request(ve.origin,{body:new ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type");return e&&!t})),Qe=Ye&&Ze((()=>Y.isReadableStream(new Response("").body))),et={stream:Qe&&(e=>e.body)};var tt;Je&&(tt=new Response,["text","arrayBuffer","blob","formData","stream"].forEach((e=>{!et[e]&&(et[e]=Y.isFunction(tt[e])?t=>t[e]():(t,n)=>{throw new X(`Response type '${e}' is not supported`,X.ERR_NOT_SUPPORT,n)})})));const nt={http:null,xhr:He,fetch:Je&&(async e=>{let{url:t,method:n,data:i,signal:r,cancelToken:a,timeout:o,onDownloadProgress:s,onUploadProgress:l,responseType:u,headers:c,withCredentials:d="same-origin",fetchOptions:p}=Ue(e);u=u?(u+"").toLowerCase():"text";let h,m=We([r,a&&a.toAbortSignal()],o);const f=m&&m.unsubscribe&&(()=>{m.unsubscribe()});let g;try{if(l&&Xe&&"get"!==n&&"head"!==n&&0!==(g=await(async(e,t)=>{const n=Y.toFiniteNumber(e.getContentLength());return null==n?(async e=>{if(null==e)return 0;if(Y.isBlob(e))return e.size;if(Y.isSpecCompliantForm(e)){const t=new Request(ve.origin,{method:"POST",body:e});return(await t.arrayBuffer()).byteLength}return Y.isArrayBufferView(e)||Y.isArrayBuffer(e)?e.byteLength:(Y.isURLSearchParams(e)&&(e+=""),Y.isString(e)?(await Ke(e)).byteLength:void 0)})(t):n})(c,i))){let e,n=new Request(t,{method:"POST",body:i,duplex:"half"});if(Y.isFormData(i)&&(e=n.headers.get("content-type"))&&c.setContentType(e),n.body){const[e,t]=Oe(g,Le(Me(l)));i=qe(n.body,65536,e,t)}}Y.isString(d)||(d=d?"include":"omit");const r="credentials"in Request.prototype;h=new Request(t,{...p,signal:m,method:n.toUpperCase(),headers:c.normalize().toJSON(),body:i,duplex:"half",credentials:r?d:void 0});let a=await fetch(h);const o=Qe&&("stream"===u||"response"===u);if(Qe&&(s||o&&f)){const e={};["status","statusText","headers"].forEach((t=>{e[t]=a[t]}));const t=Y.toFiniteNumber(a.headers.get("content-length")),[n,i]=s&&Oe(t,Le(Me(s),!0))||[];a=new Response(qe(a.body,65536,n,(()=>{i&&i(),f&&f()})),e)}u=u||"text";let y=await et[Y.findKey(et,u)||"text"](a,e);return!o&&f&&f(),await new Promise(((t,n)=>{ze(t,n,{data:y,headers:je.from(a.headers),status:a.status,statusText:a.statusText,config:e,request:h})}))}catch(t){if(f&&f(),t&&"TypeError"===t.name&&/fetch/i.test(t.message))throw Object.assign(new X("Network Error",X.ERR_NETWORK,e,h),{cause:t.cause||t});throw X.from(t,t&&t.code,e,h)}})};Y.forEach(nt,((e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch(e){}Object.defineProperty(e,"adapterName",{value:t})}}));const it=e=>`- ${e}`,rt=e=>Y.isFunction(e)||null===e||!1===e,at=e=>{e=Y.isArray(e)?e:[e];const{length:t}=e;let n,i;const r={};for(let a=0;a<t;a++){let t;if(n=e[a],i=n,!rt(n)&&(i=nt[(t=String(n)).toLowerCase()],void 0===i))throw new X(`Unknown adapter '${t}'`);if(i)break;r[t||"#"+a]=i}if(!i){const e=Object.entries(r).map((([e,t])=>`adapter ${e} `+(!1===t?"is not supported by the environment":"is not available in the build")));let n=t?e.length>1?"since :\n"+e.map(it).join("\n"):" "+it(e[0]):"as no adapter specified";throw new X("There is no suitable adapter to dispatch the request "+n,"ERR_NOT_SUPPORT")}return i};function ot(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new Ie(null,e)}function st(e){return ot(e),e.headers=je.from(e.headers),e.data=_e.call(e,e.transformRequest),-1!==["post","put","patch"].indexOf(e.method)&&e.headers.setContentType("application/x-www-form-urlencoded",!1),at(e.adapter||we.adapter)(e).then((function(t){return ot(e),t.data=_e.call(e,e.transformResponse,t),t.headers=je.from(t.headers),t}),(function(t){return Re(t)||(ot(e),t&&t.response&&(t.response.data=_e.call(e,e.transformResponse,t.response),t.response.headers=je.from(t.response.headers))),Promise.reject(t)}))}const lt={};["object","boolean","number","function","string","symbol"].forEach(((e,t)=>{lt[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}}));const ut={};lt.transitional=function(e,t,n){function i(e,t){return"[Axios v1.7.9] Transitional option '"+e+"'"+t+(n?". "+n:"")}return(n,r,a)=>{if(!1===e)throw new X(i(r," has been removed"+(t?" in "+t:"")),X.ERR_DEPRECATED);return t&&!ut[r]&&(ut[r]=!0,console.warn(i(r," has been deprecated since v"+t+" and will be removed in the near future"))),!e||e(n,r,a)}},lt.spelling=function(e){return(t,n)=>(console.warn(`${n} is likely a misspelling of ${e}`),!0)};const ct={assertOptions:function(e,t,n){if("object"!=typeof e)throw new X("options must be an object",X.ERR_BAD_OPTION_VALUE);const i=Object.keys(e);let r=i.length;for(;r-- >0;){const a=i[r],o=t[a];if(o){const t=e[a],n=void 0===t||o(t,a,e);if(!0!==n)throw new X("option "+a+" must be "+n,X.ERR_BAD_OPTION_VALUE)}else if(!0!==n)throw new X("Unknown option "+a,X.ERR_BAD_OPTION)}},validators:lt},dt=ct.validators;class pt{constructor(e){this.defaults=e,this.interceptors={request:new ce,response:new ce}}async request(e,t){try{return await this._request(e,t)}catch(e){if(e instanceof Error){let t={};Error.captureStackTrace?Error.captureStackTrace(t):t=new Error;const n=t.stack?t.stack.replace(/^.+\n/,""):"";try{e.stack?n&&!String(e.stack).endsWith(n.replace(/^.+\n.+\n/,""))&&(e.stack+="\n"+n):e.stack=n}catch(e){}}throw e}}_request(e,t){"string"==typeof e?(t=t||{}).url=e:t=e||{},t=Ge(this.defaults,t);const{transitional:n,paramsSerializer:i,headers:r}=t;void 0!==n&&ct.assertOptions(n,{silentJSONParsing:dt.transitional(dt.boolean),forcedJSONParsing:dt.transitional(dt.boolean),clarifyTimeoutError:dt.transitional(dt.boolean)},!1),null!=i&&(Y.isFunction(i)?t.paramsSerializer={serialize:i}:ct.assertOptions(i,{encode:dt.function,serialize:dt.function},!0)),ct.assertOptions(t,{baseUrl:dt.spelling("baseURL"),withXsrfToken:dt.spelling("withXSRFToken")},!0),t.method=(t.method||this.defaults.method||"get").toLowerCase();let a=r&&Y.merge(r.common,r[t.method]);r&&Y.forEach(["delete","get","head","post","put","patch","common"],(e=>{delete r[e]})),t.headers=je.concat(a,r);const o=[];let s=!0;this.interceptors.request.forEach((function(e){"function"==typeof e.runWhen&&!1===e.runWhen(t)||(s=s&&e.synchronous,o.unshift(e.fulfilled,e.rejected))}));const l=[];let u;this.interceptors.response.forEach((function(e){l.push(e.fulfilled,e.rejected)}));let c,d=0;if(!s){const e=[st.bind(this),void 0];for(e.unshift.apply(e,o),e.push.apply(e,l),c=e.length,u=Promise.resolve(t);d<c;)u=u.then(e[d++],e[d++]);return u}c=o.length;let p=t;for(d=0;d<c;){const e=o[d++],t=o[d++];try{p=e(p)}catch(e){t.call(this,e);break}}try{u=st.call(this,p)}catch(e){return Promise.reject(e)}for(d=0,c=l.length;d<c;)u=u.then(l[d++],l[d++]);return u}getUri(e){return ue(Be((e=Ge(this.defaults,e)).baseURL,e.url),e.params,e.paramsSerializer)}}Y.forEach(["delete","get","head","options"],(function(e){pt.prototype[e]=function(t,n){return this.request(Ge(n||{},{method:e,url:t,data:(n||{}).data}))}})),Y.forEach(["post","put","patch"],(function(e){function t(t){return function(n,i,r){return this.request(Ge(r||{},{method:e,headers:t?{"Content-Type":"multipart/form-data"}:{},url:n,data:i}))}}pt.prototype[e]=t(),pt.prototype[e+"Form"]=t(!0)}));const ht=pt;class mt{constructor(e){if("function"!=typeof e)throw new TypeError("executor must be a function.");let t;this.promise=new Promise((function(e){t=e}));const n=this;this.promise.then((e=>{if(!n._listeners)return;let t=n._listeners.length;for(;t-- >0;)n._listeners[t](e);n._listeners=null})),this.promise.then=e=>{let t;const i=new Promise((e=>{n.subscribe(e),t=e})).then(e);return i.cancel=function(){n.unsubscribe(t)},i},e((function(e,i,r){n.reason||(n.reason=new Ie(e,i,r),t(n.reason))}))}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){this.reason?e(this.reason):this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const t=this._listeners.indexOf(e);-1!==t&&this._listeners.splice(t,1)}toAbortSignal(){const e=new AbortController,t=t=>{e.abort(t)};return this.subscribe(t),e.signal.unsubscribe=()=>this.unsubscribe(t),e.signal}static source(){let e;return{token:new mt((function(t){e=t})),cancel:e}}}const ft=mt,gt={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(gt).forEach((([e,t])=>{gt[t]=e}));const yt=gt,vt=function e(n){const i=new ht(n),r=t(ht.prototype.request,i);return Y.extend(r,ht.prototype,i,{allOwnKeys:!0}),Y.extend(r,i,null,{allOwnKeys:!0}),r.create=function(t){return e(Ge(n,t))},r}(we);vt.Axios=ht,vt.CanceledError=Ie,vt.CancelToken=ft,vt.isCancel=Re,vt.VERSION="1.7.9",vt.toFormData=ie,vt.AxiosError=X,vt.Cancel=vt.CanceledError,vt.all=function(e){return Promise.all(e)},vt.spread=function(e){return function(t){return e.apply(null,t)}},vt.isAxiosError=function(e){return Y.isObject(e)&&!0===e.isAxiosError},vt.mergeConfig=Ge,vt.AxiosHeaders=je,vt.formToJSON=e=>be(Y.isHTMLForm(e)?new FormData(e):e),vt.getAdapter=at,vt.HttpStatusCode=yt,vt.default=vt;const bt=vt;function kt(e){return kt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},kt(e)}function wt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function St(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?wt(Object(n),!0).forEach((function(t){xt(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):wt(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Pt(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Ct(i.key),i)}}function xt(e,t,n){return(t=Ct(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Ct(e){var t=function(e){if("object"!=kt(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=kt(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==kt(t)?t:t+""}console.log(location.host);var At="".concat("https://core.getfaceage.com").concat("/api/"),Tt={authorize:"v1/business/authorize",skinanalyze:"v2/skin-analyzer/analyze"},jt={baseURL:At,responseType:"json"},_t={Accept:"application/json","Content-Type":"application/json"},Rt=function(){function e(){var t=this;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),xt(this,"session",void 0),xt(this,"request",(function(e,n,i,r,a){var o=St(St({},jt),{},{headers:St(St({},_t),r)},a),s=n;n in Tt&&(s=Tt[n]);var l=e.toLowerCase();switch(l){case"get":case"options":case"head":case"delete":return t.session[l](s,o);case"post":case"patch":case"put":return t.session[l](s,i,o)}return null})),this.session=bt.create(St({},jt))}return t=e,(n=[{key:"getInstance",value:function(){return e.instance||(e.instance=new e),e.instance}}])&&Pt(t,n),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,n}();xt(Rt,"instance",void 0);const Et=Rt.getInstance(),It=e=>"string"==typeof e,zt=()=>{let e,t;const n=new Promise(((n,i)=>{e=n,t=i}));return n.resolve=e,n.reject=t,n},Lt=e=>null==e?"":""+e,Ot=/###/g,Mt=e=>e&&e.indexOf("###")>-1?e.replace(Ot,"."):e,Ft=e=>!e||It(e),Dt=(e,t,n)=>{const i=It(t)?t.split("."):t;let r=0;for(;r<i.length-1;){if(Ft(e))return{};const t=Mt(i[r]);!e[t]&&n&&(e[t]=new n),e=Object.prototype.hasOwnProperty.call(e,t)?e[t]:{},++r}return Ft(e)?{}:{obj:e,k:Mt(i[r])}},Bt=(e,t,n)=>{const{obj:i,k:r}=Dt(e,t,Object);if(void 0!==i||1===t.length)return void(i[r]=n);let a=t[t.length-1],o=t.slice(0,t.length-1),s=Dt(e,o,Object);for(;void 0===s.obj&&o.length;)a=`${o[o.length-1]}.${a}`,o=o.slice(0,o.length-1),s=Dt(e,o,Object),s&&s.obj&&void 0!==s.obj[`${s.k}.${a}`]&&(s.obj=void 0);s.obj[`${s.k}.${a}`]=n},Nt=(e,t)=>{const{obj:n,k:i}=Dt(e,t);if(n)return n[i]},Gt=(e,t,n)=>{for(const i in t)"__proto__"!==i&&"constructor"!==i&&(i in e?It(e[i])||e[i]instanceof String||It(t[i])||t[i]instanceof String?n&&(e[i]=t[i]):Gt(e[i],t[i],n):e[i]=t[i]);return e},Ut=e=>e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&");var Ht={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","/":"&#x2F;"};const Wt=e=>It(e)?e.replace(/[&<>"'\/]/g,(e=>Ht[e])):e,Vt=[" ",",","?","!",";"],qt=new class{constructor(e){this.capacity=e,this.regExpMap=new Map,this.regExpQueue=[]}getRegExp(e){const t=this.regExpMap.get(e);if(void 0!==t)return t;const n=new RegExp(e);return this.regExpQueue.length===this.capacity&&this.regExpMap.delete(this.regExpQueue.shift()),this.regExpMap.set(e,n),this.regExpQueue.push(e),n}}(20),Jt=function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:".";if(!e)return;if(e[t])return e[t];const i=t.split(n);let r=e;for(let e=0;e<i.length;){if(!r||"object"!=typeof r)return;let t,a="";for(let o=e;o<i.length;++o)if(o!==e&&(a+=n),a+=i[o],t=r[a],void 0!==t){if(["string","number","boolean"].indexOf(typeof t)>-1&&o<i.length-1)continue;e+=o-e+1;break}r=t}return r},Yt=e=>e&&e.replace("_","-"),Kt={type:"logger",log(e){this.output("log",e)},warn(e){this.output("warn",e)},error(e){this.output("error",e)},output(e,t){console&&console[e]&&console[e].apply(console,t)}};class $t{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.init(e,t)}init(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.prefix=t.prefix||"i18next:",this.logger=e||Kt,this.options=t,this.debug=t.debug}log(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this.forward(t,"log","",!0)}warn(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this.forward(t,"warn","",!0)}error(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this.forward(t,"error","")}deprecate(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this.forward(t,"warn","WARNING DEPRECATED: ",!0)}forward(e,t,n,i){return i&&!this.debug?null:(It(e[0])&&(e[0]=`${n}${this.prefix} ${e[0]}`),this.logger[t](e))}create(e){return new $t(this.logger,{prefix:`${this.prefix}:${e}:`,...this.options})}clone(e){return(e=e||this.options).prefix=e.prefix||this.prefix,new $t(this.logger,e)}}var Zt=new $t;class Xt{constructor(){this.observers={}}on(e,t){return e.split(" ").forEach((e=>{this.observers[e]||(this.observers[e]=new Map);const n=this.observers[e].get(t)||0;this.observers[e].set(t,n+1)})),this}off(e,t){this.observers[e]&&(t?this.observers[e].delete(t):delete this.observers[e])}emit(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];this.observers[e]&&Array.from(this.observers[e].entries()).forEach((e=>{let[t,i]=e;for(let e=0;e<i;e++)t(...n)})),this.observers["*"]&&Array.from(this.observers["*"].entries()).forEach((t=>{let[i,r]=t;for(let t=0;t<r;t++)i.apply(i,[e,...n])}))}}class Qt extends Xt{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{ns:["translation"],defaultNS:"translation"};super(),this.data=e||{},this.options=t,void 0===this.options.keySeparator&&(this.options.keySeparator="."),void 0===this.options.ignoreJSONStructure&&(this.options.ignoreJSONStructure=!0)}addNamespaces(e){this.options.ns.indexOf(e)<0&&this.options.ns.push(e)}removeNamespaces(e){const t=this.options.ns.indexOf(e);t>-1&&this.options.ns.splice(t,1)}getResource(e,t,n){let i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};const r=void 0!==i.keySeparator?i.keySeparator:this.options.keySeparator,a=void 0!==i.ignoreJSONStructure?i.ignoreJSONStructure:this.options.ignoreJSONStructure;let o;e.indexOf(".")>-1?o=e.split("."):(o=[e,t],n&&(Array.isArray(n)?o.push(...n):It(n)&&r?o.push(...n.split(r)):o.push(n)));const s=Nt(this.data,o);return!s&&!t&&!n&&e.indexOf(".")>-1&&(e=o[0],t=o[1],n=o.slice(2).join(".")),!s&&a&&It(n)?Jt(this.data&&this.data[e]&&this.data[e][t],n,r):s}addResource(e,t,n,i){let r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{silent:!1};const a=void 0!==r.keySeparator?r.keySeparator:this.options.keySeparator;let o=[e,t];n&&(o=o.concat(a?n.split(a):n)),e.indexOf(".")>-1&&(o=e.split("."),i=t,t=o[1]),this.addNamespaces(t),Bt(this.data,o,i),r.silent||this.emit("added",e,t,n,i)}addResources(e,t,n){let i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{silent:!1};for(const i in n)(It(n[i])||Array.isArray(n[i]))&&this.addResource(e,t,i,n[i],{silent:!0});i.silent||this.emit("added",e,t,n)}addResourceBundle(e,t,n,i,r){let a=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{silent:!1,skipCopy:!1},o=[e,t];e.indexOf(".")>-1&&(o=e.split("."),i=n,n=t,t=o[1]),this.addNamespaces(t);let s=Nt(this.data,o)||{};a.skipCopy||(n=JSON.parse(JSON.stringify(n))),i?Gt(s,n,r):s={...s,...n},Bt(this.data,o,s),a.silent||this.emit("added",e,t,n)}removeResourceBundle(e,t){this.hasResourceBundle(e,t)&&delete this.data[e][t],this.removeNamespaces(t),this.emit("removed",e,t)}hasResourceBundle(e,t){return void 0!==this.getResource(e,t)}getResourceBundle(e,t){return t||(t=this.options.defaultNS),"v1"===this.options.compatibilityAPI?{...this.getResource(e,t)}:this.getResource(e,t)}getDataByLanguage(e){return this.data[e]}hasLanguageSomeTranslations(e){const t=this.getDataByLanguage(e);return!!(t&&Object.keys(t)||[]).find((e=>t[e]&&Object.keys(t[e]).length>0))}toJSON(){return this.data}}var en={processors:{},addPostProcessor(e){this.processors[e.name]=e},handle(e,t,n,i,r){return e.forEach((e=>{this.processors[e]&&(t=this.processors[e].process(t,n,i,r))})),t}};const tn={};class nn extends Xt{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};var n,i;super(),n=e,i=this,["resourceStore","languageUtils","pluralResolver","interpolator","backendConnector","i18nFormat","utils"].forEach((e=>{n[e]&&(i[e]=n[e])})),this.options=t,void 0===this.options.keySeparator&&(this.options.keySeparator="."),this.logger=Zt.create("translator")}changeLanguage(e){e&&(this.language=e)}exists(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{interpolation:{}};if(null==e)return!1;const n=this.resolve(e,t);return n&&void 0!==n.res}extractFromKey(e,t){let n=void 0!==t.nsSeparator?t.nsSeparator:this.options.nsSeparator;void 0===n&&(n=":");const i=void 0!==t.keySeparator?t.keySeparator:this.options.keySeparator;let r=t.ns||this.options.defaultNS||[];const a=n&&e.indexOf(n)>-1,o=!(this.options.userDefinedKeySeparator||t.keySeparator||this.options.userDefinedNsSeparator||t.nsSeparator||((e,t,n)=>{t=t||"",n=n||"";const i=Vt.filter((e=>t.indexOf(e)<0&&n.indexOf(e)<0));if(0===i.length)return!0;const r=qt.getRegExp(`(${i.map((e=>"?"===e?"\\?":e)).join("|")})`);let a=!r.test(e);if(!a){const t=e.indexOf(n);t>0&&!r.test(e.substring(0,t))&&(a=!0)}return a})(e,n,i));if(a&&!o){const t=e.match(this.interpolator.nestingRegexp);if(t&&t.length>0)return{key:e,namespaces:It(r)?[r]:r};const a=e.split(n);(n!==i||n===i&&this.options.ns.indexOf(a[0])>-1)&&(r=a.shift()),e=a.join(i)}return{key:e,namespaces:It(r)?[r]:r}}translate(e,t,n){if("object"!=typeof t&&this.options.overloadTranslationOptionHandler&&(t=this.options.overloadTranslationOptionHandler(arguments)),"object"==typeof t&&(t={...t}),t||(t={}),null==e)return"";Array.isArray(e)||(e=[String(e)]);const i=void 0!==t.returnDetails?t.returnDetails:this.options.returnDetails,r=void 0!==t.keySeparator?t.keySeparator:this.options.keySeparator,{key:a,namespaces:o}=this.extractFromKey(e[e.length-1],t),s=o[o.length-1],l=t.lng||this.language,u=t.appendNamespaceToCIMode||this.options.appendNamespaceToCIMode;if(l&&"cimode"===l.toLowerCase()){if(u){const e=t.nsSeparator||this.options.nsSeparator;return i?{res:`${s}${e}${a}`,usedKey:a,exactUsedKey:a,usedLng:l,usedNS:s,usedParams:this.getUsedParamsDetails(t)}:`${s}${e}${a}`}return i?{res:a,usedKey:a,exactUsedKey:a,usedLng:l,usedNS:s,usedParams:this.getUsedParamsDetails(t)}:a}const c=this.resolve(e,t);let d=c&&c.res;const p=c&&c.usedKey||a,h=c&&c.exactUsedKey||a,m=Object.prototype.toString.apply(d),f=void 0!==t.joinArrays?t.joinArrays:this.options.joinArrays,g=!this.i18nFormat||this.i18nFormat.handleAsObject,y=!It(d)&&"boolean"!=typeof d&&"number"!=typeof d;if(!(g&&d&&y&&["[object Number]","[object Function]","[object RegExp]"].indexOf(m)<0)||It(f)&&Array.isArray(d))if(g&&It(f)&&Array.isArray(d))d=d.join(f),d&&(d=this.extendTranslation(d,e,t,n));else{let i=!1,o=!1;const u=void 0!==t.count&&!It(t.count),p=nn.hasDefaultValue(t),h=u?this.pluralResolver.getSuffix(l,t.count,t):"",m=t.ordinal&&u?this.pluralResolver.getSuffix(l,t.count,{ordinal:!1}):"",f=u&&!t.ordinal&&0===t.count&&this.pluralResolver.shouldUseIntlApi(),g=f&&t[`defaultValue${this.options.pluralSeparator}zero`]||t[`defaultValue${h}`]||t[`defaultValue${m}`]||t.defaultValue;!this.isValidLookup(d)&&p&&(i=!0,d=g),this.isValidLookup(d)||(o=!0,d=a);const y=(t.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey)&&o?void 0:d,v=p&&g!==d&&this.options.updateMissing;if(o||i||v){if(this.logger.log(v?"updateKey":"missingKey",l,s,a,v?g:d),r){const e=this.resolve(a,{...t,keySeparator:!1});e&&e.res&&this.logger.warn("Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.")}let e=[];const n=this.languageUtils.getFallbackCodes(this.options.fallbackLng,t.lng||this.language);if("fallback"===this.options.saveMissingTo&&n&&n[0])for(let t=0;t<n.length;t++)e.push(n[t]);else"all"===this.options.saveMissingTo?e=this.languageUtils.toResolveHierarchy(t.lng||this.language):e.push(t.lng||this.language);const i=(e,n,i)=>{const r=p&&i!==d?i:y;this.options.missingKeyHandler?this.options.missingKeyHandler(e,s,n,r,v,t):this.backendConnector&&this.backendConnector.saveMissing&&this.backendConnector.saveMissing(e,s,n,r,v,t),this.emit("missingKey",e,s,n,d)};this.options.saveMissing&&(this.options.saveMissingPlurals&&u?e.forEach((e=>{const n=this.pluralResolver.getSuffixes(e,t);f&&t[`defaultValue${this.options.pluralSeparator}zero`]&&n.indexOf(`${this.options.pluralSeparator}zero`)<0&&n.push(`${this.options.pluralSeparator}zero`),n.forEach((n=>{i([e],a+n,t[`defaultValue${n}`]||g)}))})):i(e,a,g))}d=this.extendTranslation(d,e,t,c,n),o&&d===a&&this.options.appendNamespaceToMissingKey&&(d=`${s}:${a}`),(o||i)&&this.options.parseMissingKeyHandler&&(d="v1"!==this.options.compatibilityAPI?this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey?`${s}:${a}`:a,i?d:void 0):this.options.parseMissingKeyHandler(d))}else{if(!t.returnObjects&&!this.options.returnObjects){this.options.returnedObjectHandler||this.logger.warn("accessing an object - but returnObjects options is not enabled!");const e=this.options.returnedObjectHandler?this.options.returnedObjectHandler(p,d,{...t,ns:o}):`key '${a} (${this.language})' returned an object instead of string.`;return i?(c.res=e,c.usedParams=this.getUsedParamsDetails(t),c):e}if(r){const e=Array.isArray(d),n=e?[]:{},i=e?h:p;for(const e in d)if(Object.prototype.hasOwnProperty.call(d,e)){const a=`${i}${r}${e}`;n[e]=this.translate(a,{...t,joinArrays:!1,ns:o}),n[e]===a&&(n[e]=d[e])}d=n}}return i?(c.res=d,c.usedParams=this.getUsedParamsDetails(t),c):d}extendTranslation(e,t,n,i,r){var a=this;if(this.i18nFormat&&this.i18nFormat.parse)e=this.i18nFormat.parse(e,{...this.options.interpolation.defaultVariables,...n},n.lng||this.language||i.usedLng,i.usedNS,i.usedKey,{resolved:i});else if(!n.skipInterpolation){n.interpolation&&this.interpolator.init({...n,interpolation:{...this.options.interpolation,...n.interpolation}});const o=It(e)&&(n&&n.interpolation&&void 0!==n.interpolation.skipOnVariables?n.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables);let s;if(o){const t=e.match(this.interpolator.nestingRegexp);s=t&&t.length}let l=n.replace&&!It(n.replace)?n.replace:n;if(this.options.interpolation.defaultVariables&&(l={...this.options.interpolation.defaultVariables,...l}),e=this.interpolator.interpolate(e,l,n.lng||this.language||i.usedLng,n),o){const t=e.match(this.interpolator.nestingRegexp);s<(t&&t.length)&&(n.nest=!1)}!n.lng&&"v1"!==this.options.compatibilityAPI&&i&&i.res&&(n.lng=this.language||i.usedLng),!1!==n.nest&&(e=this.interpolator.nest(e,(function(){for(var e=arguments.length,i=new Array(e),o=0;o<e;o++)i[o]=arguments[o];return r&&r[0]===i[0]&&!n.context?(a.logger.warn(`It seems you are nesting recursively key: ${i[0]} in key: ${t[0]}`),null):a.translate(...i,t)}),n)),n.interpolation&&this.interpolator.reset()}const o=n.postProcess||this.options.postProcess,s=It(o)?[o]:o;return null!=e&&s&&s.length&&!1!==n.applyPostProcessor&&(e=en.handle(s,e,t,this.options&&this.options.postProcessPassResolved?{i18nResolved:{...i,usedParams:this.getUsedParamsDetails(n)},...n}:n,this)),e}resolve(e){let t,n,i,r,a,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return It(e)&&(e=[e]),e.forEach((e=>{if(this.isValidLookup(t))return;const s=this.extractFromKey(e,o),l=s.key;n=l;let u=s.namespaces;this.options.fallbackNS&&(u=u.concat(this.options.fallbackNS));const c=void 0!==o.count&&!It(o.count),d=c&&!o.ordinal&&0===o.count&&this.pluralResolver.shouldUseIntlApi(),p=void 0!==o.context&&(It(o.context)||"number"==typeof o.context)&&""!==o.context,h=o.lngs?o.lngs:this.languageUtils.toResolveHierarchy(o.lng||this.language,o.fallbackLng);u.forEach((e=>{this.isValidLookup(t)||(a=e,!tn[`${h[0]}-${e}`]&&this.utils&&this.utils.hasLoadedNamespace&&!this.utils.hasLoadedNamespace(a)&&(tn[`${h[0]}-${e}`]=!0,this.logger.warn(`key "${n}" for languages "${h.join(", ")}" won't get resolved as namespace "${a}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!")),h.forEach((n=>{if(this.isValidLookup(t))return;r=n;const a=[l];if(this.i18nFormat&&this.i18nFormat.addLookupKeys)this.i18nFormat.addLookupKeys(a,l,n,e,o);else{let e;c&&(e=this.pluralResolver.getSuffix(n,o.count,o));const t=`${this.options.pluralSeparator}zero`,i=`${this.options.pluralSeparator}ordinal${this.options.pluralSeparator}`;if(c&&(a.push(l+e),o.ordinal&&0===e.indexOf(i)&&a.push(l+e.replace(i,this.options.pluralSeparator)),d&&a.push(l+t)),p){const n=`${l}${this.options.contextSeparator}${o.context}`;a.push(n),c&&(a.push(n+e),o.ordinal&&0===e.indexOf(i)&&a.push(n+e.replace(i,this.options.pluralSeparator)),d&&a.push(n+t))}}let s;for(;s=a.pop();)this.isValidLookup(t)||(i=s,t=this.getResource(n,e,s,o))})))}))})),{res:t,usedKey:n,exactUsedKey:i,usedLng:r,usedNS:a}}isValidLookup(e){return!(void 0===e||!this.options.returnNull&&null===e||!this.options.returnEmptyString&&""===e)}getResource(e,t,n){let i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return this.i18nFormat&&this.i18nFormat.getResource?this.i18nFormat.getResource(e,t,n,i):this.resourceStore.getResource(e,t,n,i)}getUsedParamsDetails(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const t=["defaultValue","ordinal","context","replace","lng","lngs","fallbackLng","ns","keySeparator","nsSeparator","returnObjects","returnDetails","joinArrays","postProcess","interpolation"],n=e.replace&&!It(e.replace);let i=n?e.replace:e;if(n&&void 0!==e.count&&(i.count=e.count),this.options.interpolation.defaultVariables&&(i={...this.options.interpolation.defaultVariables,...i}),!n){i={...i};for(const e of t)delete i[e]}return i}static hasDefaultValue(e){for(const t in e)if(Object.prototype.hasOwnProperty.call(e,t)&&"defaultValue"===t.substring(0,12)&&void 0!==e[t])return!0;return!1}}const rn=e=>e.charAt(0).toUpperCase()+e.slice(1);class an{constructor(e){this.options=e,this.supportedLngs=this.options.supportedLngs||!1,this.logger=Zt.create("languageUtils")}getScriptPartFromCode(e){if(!(e=Yt(e))||e.indexOf("-")<0)return null;const t=e.split("-");return 2===t.length?null:(t.pop(),"x"===t[t.length-1].toLowerCase()?null:this.formatLanguageCode(t.join("-")))}getLanguagePartFromCode(e){if(!(e=Yt(e))||e.indexOf("-")<0)return e;const t=e.split("-");return this.formatLanguageCode(t[0])}formatLanguageCode(e){if(It(e)&&e.indexOf("-")>-1){if("undefined"!=typeof Intl&&void 0!==Intl.getCanonicalLocales)try{let t=Intl.getCanonicalLocales(e)[0];if(t&&this.options.lowerCaseLng&&(t=t.toLowerCase()),t)return t}catch(e){}const t=["hans","hant","latn","cyrl","cans","mong","arab"];let n=e.split("-");return this.options.lowerCaseLng?n=n.map((e=>e.toLowerCase())):2===n.length?(n[0]=n[0].toLowerCase(),n[1]=n[1].toUpperCase(),t.indexOf(n[1].toLowerCase())>-1&&(n[1]=rn(n[1].toLowerCase()))):3===n.length&&(n[0]=n[0].toLowerCase(),2===n[1].length&&(n[1]=n[1].toUpperCase()),"sgn"!==n[0]&&2===n[2].length&&(n[2]=n[2].toUpperCase()),t.indexOf(n[1].toLowerCase())>-1&&(n[1]=rn(n[1].toLowerCase())),t.indexOf(n[2].toLowerCase())>-1&&(n[2]=rn(n[2].toLowerCase()))),n.join("-")}return this.options.cleanCode||this.options.lowerCaseLng?e.toLowerCase():e}isSupportedCode(e){return("languageOnly"===this.options.load||this.options.nonExplicitSupportedLngs)&&(e=this.getLanguagePartFromCode(e)),!this.supportedLngs||!this.supportedLngs.length||this.supportedLngs.indexOf(e)>-1}getBestMatchFromCodes(e){if(!e)return null;let t;return e.forEach((e=>{if(t)return;const n=this.formatLanguageCode(e);this.options.supportedLngs&&!this.isSupportedCode(n)||(t=n)})),!t&&this.options.supportedLngs&&e.forEach((e=>{if(t)return;const n=this.getLanguagePartFromCode(e);if(this.isSupportedCode(n))return t=n;t=this.options.supportedLngs.find((e=>e===n?e:e.indexOf("-")<0&&n.indexOf("-")<0?void 0:e.indexOf("-")>0&&n.indexOf("-")<0&&e.substring(0,e.indexOf("-"))===n||0===e.indexOf(n)&&n.length>1?e:void 0))})),t||(t=this.getFallbackCodes(this.options.fallbackLng)[0]),t}getFallbackCodes(e,t){if(!e)return[];if("function"==typeof e&&(e=e(t)),It(e)&&(e=[e]),Array.isArray(e))return e;if(!t)return e.default||[];let n=e[t];return n||(n=e[this.getScriptPartFromCode(t)]),n||(n=e[this.formatLanguageCode(t)]),n||(n=e[this.getLanguagePartFromCode(t)]),n||(n=e.default),n||[]}toResolveHierarchy(e,t){const n=this.getFallbackCodes(t||this.options.fallbackLng||[],e),i=[],r=e=>{e&&(this.isSupportedCode(e)?i.push(e):this.logger.warn(`rejecting language code not found in supportedLngs: ${e}`))};return It(e)&&(e.indexOf("-")>-1||e.indexOf("_")>-1)?("languageOnly"!==this.options.load&&r(this.formatLanguageCode(e)),"languageOnly"!==this.options.load&&"currentOnly"!==this.options.load&&r(this.getScriptPartFromCode(e)),"currentOnly"!==this.options.load&&r(this.getLanguagePartFromCode(e))):It(e)&&r(this.formatLanguageCode(e)),n.forEach((e=>{i.indexOf(e)<0&&r(this.formatLanguageCode(e))})),i}}let on=[{lngs:["ach","ak","am","arn","br","fil","gun","ln","mfe","mg","mi","oc","pt","pt-BR","tg","tl","ti","tr","uz","wa"],nr:[1,2],fc:1},{lngs:["af","an","ast","az","bg","bn","ca","da","de","dev","el","en","eo","es","et","eu","fi","fo","fur","fy","gl","gu","ha","hi","hu","hy","ia","it","kk","kn","ku","lb","mai","ml","mn","mr","nah","nap","nb","ne","nl","nn","no","nso","pa","pap","pms","ps","pt-PT","rm","sco","se","si","so","son","sq","sv","sw","ta","te","tk","ur","yo"],nr:[1,2],fc:2},{lngs:["ay","bo","cgg","fa","ht","id","ja","jbo","ka","km","ko","ky","lo","ms","sah","su","th","tt","ug","vi","wo","zh"],nr:[1],fc:3},{lngs:["be","bs","cnr","dz","hr","ru","sr","uk"],nr:[1,2,5],fc:4},{lngs:["ar"],nr:[0,1,2,3,11,100],fc:5},{lngs:["cs","sk"],nr:[1,2,5],fc:6},{lngs:["csb","pl"],nr:[1,2,5],fc:7},{lngs:["cy"],nr:[1,2,3,8],fc:8},{lngs:["fr"],nr:[1,2],fc:9},{lngs:["ga"],nr:[1,2,3,7,11],fc:10},{lngs:["gd"],nr:[1,2,3,20],fc:11},{lngs:["is"],nr:[1,2],fc:12},{lngs:["jv"],nr:[0,1],fc:13},{lngs:["kw"],nr:[1,2,3,4],fc:14},{lngs:["lt"],nr:[1,2,10],fc:15},{lngs:["lv"],nr:[1,2,0],fc:16},{lngs:["mk"],nr:[1,2],fc:17},{lngs:["mnk"],nr:[0,1,2],fc:18},{lngs:["mt"],nr:[1,2,11,20],fc:19},{lngs:["or"],nr:[2,1],fc:2},{lngs:["ro"],nr:[1,2,20],fc:20},{lngs:["sl"],nr:[5,1,2,3],fc:21},{lngs:["he","iw"],nr:[1,2,20,21],fc:22}],sn={1:e=>Number(e>1),2:e=>Number(1!=e),3:e=>0,4:e=>Number(e%10==1&&e%100!=11?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2),5:e=>Number(0==e?0:1==e?1:2==e?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5),6:e=>Number(1==e?0:e>=2&&e<=4?1:2),7:e=>Number(1==e?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2),8:e=>Number(1==e?0:2==e?1:8!=e&&11!=e?2:3),9:e=>Number(e>=2),10:e=>Number(1==e?0:2==e?1:e<7?2:e<11?3:4),11:e=>Number(1==e||11==e?0:2==e||12==e?1:e>2&&e<20?2:3),12:e=>Number(e%10!=1||e%100==11),13:e=>Number(0!==e),14:e=>Number(1==e?0:2==e?1:3==e?2:3),15:e=>Number(e%10==1&&e%100!=11?0:e%10>=2&&(e%100<10||e%100>=20)?1:2),16:e=>Number(e%10==1&&e%100!=11?0:0!==e?1:2),17:e=>Number(1==e||e%10==1&&e%100!=11?0:1),18:e=>Number(0==e?0:1==e?1:2),19:e=>Number(1==e?0:0==e||e%100>1&&e%100<11?1:e%100>10&&e%100<20?2:3),20:e=>Number(1==e?0:0==e||e%100>0&&e%100<20?1:2),21:e=>Number(e%100==1?1:e%100==2?2:e%100==3||e%100==4?3:0),22:e=>Number(1==e?0:2==e?1:(e<0||e>10)&&e%10==0?2:3)};const ln=["v1","v2","v3"],un=["v4"],cn={zero:0,one:1,two:2,few:3,many:4,other:5};class dn{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.languageUtils=e,this.options=t,this.logger=Zt.create("pluralResolver"),this.options.compatibilityJSON&&!un.includes(this.options.compatibilityJSON)||"undefined"!=typeof Intl&&Intl.PluralRules||(this.options.compatibilityJSON="v3",this.logger.error("Your environment seems not to be Intl API compatible, use an Intl.PluralRules polyfill. Will fallback to the compatibilityJSON v3 format handling.")),this.rules=(()=>{const e={};return on.forEach((t=>{t.lngs.forEach((n=>{e[n]={numbers:t.nr,plurals:sn[t.fc]}}))})),e})(),this.pluralRulesCache={}}addRule(e,t){this.rules[e]=t}clearCache(){this.pluralRulesCache={}}getRule(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(this.shouldUseIntlApi()){const n=Yt("dev"===e?"en":e),i=t.ordinal?"ordinal":"cardinal",r=JSON.stringify({cleanedCode:n,type:i});if(r in this.pluralRulesCache)return this.pluralRulesCache[r];let a;try{a=new Intl.PluralRules(n,{type:i})}catch(n){if(!e.match(/-|_/))return;const i=this.languageUtils.getLanguagePartFromCode(e);a=this.getRule(i,t)}return this.pluralRulesCache[r]=a,a}return this.rules[e]||this.rules[this.languageUtils.getLanguagePartFromCode(e)]}needsPlural(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=this.getRule(e,t);return this.shouldUseIntlApi()?n&&n.resolvedOptions().pluralCategories.length>1:n&&n.numbers.length>1}getPluralFormsOfKey(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.getSuffixes(e,n).map((e=>`${t}${e}`))}getSuffixes(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=this.getRule(e,t);return n?this.shouldUseIntlApi()?n.resolvedOptions().pluralCategories.sort(((e,t)=>cn[e]-cn[t])).map((e=>`${this.options.prepend}${t.ordinal?`ordinal${this.options.prepend}`:""}${e}`)):n.numbers.map((n=>this.getSuffix(e,n,t))):[]}getSuffix(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const i=this.getRule(e,n);return i?this.shouldUseIntlApi()?`${this.options.prepend}${n.ordinal?`ordinal${this.options.prepend}`:""}${i.select(t)}`:this.getSuffixRetroCompatible(i,t):(this.logger.warn(`no plural rule found for: ${e}`),"")}getSuffixRetroCompatible(e,t){const n=e.noAbs?e.plurals(t):e.plurals(Math.abs(t));let i=e.numbers[n];this.options.simplifyPluralSuffix&&2===e.numbers.length&&1===e.numbers[0]&&(2===i?i="plural":1===i&&(i=""));const r=()=>this.options.prepend&&i.toString()?this.options.prepend+i.toString():i.toString();return"v1"===this.options.compatibilityJSON?1===i?"":"number"==typeof i?`_plural_${i.toString()}`:r():"v2"===this.options.compatibilityJSON||this.options.simplifyPluralSuffix&&2===e.numbers.length&&1===e.numbers[0]?r():this.options.prepend&&n.toString()?this.options.prepend+n.toString():n.toString()}shouldUseIntlApi(){return!ln.includes(this.options.compatibilityJSON)}}const pn=function(e,t,n){let i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:".",r=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],a=((e,t,n)=>{const i=Nt(e,n);return void 0!==i?i:Nt(t,n)})(e,t,n);return!a&&r&&It(n)&&(a=Jt(e,n,i),void 0===a&&(a=Jt(t,n,i))),a},hn=e=>e.replace(/\$/g,"$$$$");class mn{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.logger=Zt.create("interpolator"),this.options=e,this.format=e.interpolation&&e.interpolation.format||(e=>e),this.init(e)}init(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};e.interpolation||(e.interpolation={escapeValue:!0});const{escape:t,escapeValue:n,useRawValueToEscape:i,prefix:r,prefixEscaped:a,suffix:o,suffixEscaped:s,formatSeparator:l,unescapeSuffix:u,unescapePrefix:c,nestingPrefix:d,nestingPrefixEscaped:p,nestingSuffix:h,nestingSuffixEscaped:m,nestingOptionsSeparator:f,maxReplaces:g,alwaysFormat:y}=e.interpolation;this.escape=void 0!==t?t:Wt,this.escapeValue=void 0===n||n,this.useRawValueToEscape=void 0!==i&&i,this.prefix=r?Ut(r):a||"{{",this.suffix=o?Ut(o):s||"}}",this.formatSeparator=l||",",this.unescapePrefix=u?"":c||"-",this.unescapeSuffix=this.unescapePrefix?"":u||"",this.nestingPrefix=d?Ut(d):p||Ut("$t("),this.nestingSuffix=h?Ut(h):m||Ut(")"),this.nestingOptionsSeparator=f||",",this.maxReplaces=g||1e3,this.alwaysFormat=void 0!==y&&y,this.resetRegExp()}reset(){this.options&&this.init(this.options)}resetRegExp(){const e=(e,t)=>e&&e.source===t?(e.lastIndex=0,e):new RegExp(t,"g");this.regexp=e(this.regexp,`${this.prefix}(.+?)${this.suffix}`),this.regexpUnescape=e(this.regexpUnescape,`${this.prefix}${this.unescapePrefix}(.+?)${this.unescapeSuffix}${this.suffix}`),this.nestingRegexp=e(this.nestingRegexp,`${this.nestingPrefix}(.+?)${this.nestingSuffix}`)}interpolate(e,t,n,i){let r,a,o;const s=this.options&&this.options.interpolation&&this.options.interpolation.defaultVariables||{},l=e=>{if(e.indexOf(this.formatSeparator)<0){const r=pn(t,s,e,this.options.keySeparator,this.options.ignoreJSONStructure);return this.alwaysFormat?this.format(r,void 0,n,{...i,...t,interpolationkey:e}):r}const r=e.split(this.formatSeparator),a=r.shift().trim(),o=r.join(this.formatSeparator).trim();return this.format(pn(t,s,a,this.options.keySeparator,this.options.ignoreJSONStructure),o,n,{...i,...t,interpolationkey:a})};this.resetRegExp();const u=i&&i.missingInterpolationHandler||this.options.missingInterpolationHandler,c=i&&i.interpolation&&void 0!==i.interpolation.skipOnVariables?i.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables;return[{regex:this.regexpUnescape,safeValue:e=>hn(e)},{regex:this.regexp,safeValue:e=>this.escapeValue?hn(this.escape(e)):hn(e)}].forEach((t=>{for(o=0;r=t.regex.exec(e);){const n=r[1].trim();if(a=l(n),void 0===a)if("function"==typeof u){const t=u(e,r,i);a=It(t)?t:""}else if(i&&Object.prototype.hasOwnProperty.call(i,n))a="";else{if(c){a=r[0];continue}this.logger.warn(`missed to pass in variable ${n} for interpolating ${e}`),a=""}else It(a)||this.useRawValueToEscape||(a=Lt(a));const s=t.safeValue(a);if(e=e.replace(r[0],s),c?(t.regex.lastIndex+=a.length,t.regex.lastIndex-=r[0].length):t.regex.lastIndex=0,o++,o>=this.maxReplaces)break}})),e}nest(e,t){let n,i,r,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const o=(e,t)=>{const n=this.nestingOptionsSeparator;if(e.indexOf(n)<0)return e;const i=e.split(new RegExp(`${n}[ ]*{`));let a=`{${i[1]}`;e=i[0],a=this.interpolate(a,r);const o=a.match(/'/g),s=a.match(/"/g);(o&&o.length%2==0&&!s||s.length%2!=0)&&(a=a.replace(/'/g,'"'));try{r=JSON.parse(a),t&&(r={...t,...r})}catch(t){return this.logger.warn(`failed parsing options string in nesting for key ${e}`,t),`${e}${n}${a}`}return r.defaultValue&&r.defaultValue.indexOf(this.prefix)>-1&&delete r.defaultValue,e};for(;n=this.nestingRegexp.exec(e);){let s=[];r={...a},r=r.replace&&!It(r.replace)?r.replace:r,r.applyPostProcessor=!1,delete r.defaultValue;let l=!1;if(-1!==n[0].indexOf(this.formatSeparator)&&!/{.*}/.test(n[1])){const e=n[1].split(this.formatSeparator).map((e=>e.trim()));n[1]=e.shift(),s=e,l=!0}if(i=t(o.call(this,n[1].trim(),r),r),i&&n[0]===e&&!It(i))return i;It(i)||(i=Lt(i)),i||(this.logger.warn(`missed to resolve ${n[1]} for nesting ${e}`),i=""),l&&(i=s.reduce(((e,t)=>this.format(e,t,a.lng,{...a,interpolationkey:n[1].trim()})),i.trim())),e=e.replace(n[0],i),this.regexp.lastIndex=0}return e}}const fn=e=>{const t={};return(n,i,r)=>{let a=r;r&&r.interpolationkey&&r.formatParams&&r.formatParams[r.interpolationkey]&&r[r.interpolationkey]&&(a={...a,[r.interpolationkey]:void 0});const o=i+JSON.stringify(a);let s=t[o];return s||(s=e(Yt(i),r),t[o]=s),s(n)}};class gn{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.logger=Zt.create("formatter"),this.options=e,this.formats={number:fn(((e,t)=>{const n=new Intl.NumberFormat(e,{...t});return e=>n.format(e)})),currency:fn(((e,t)=>{const n=new Intl.NumberFormat(e,{...t,style:"currency"});return e=>n.format(e)})),datetime:fn(((e,t)=>{const n=new Intl.DateTimeFormat(e,{...t});return e=>n.format(e)})),relativetime:fn(((e,t)=>{const n=new Intl.RelativeTimeFormat(e,{...t});return e=>n.format(e,t.range||"day")})),list:fn(((e,t)=>{const n=new Intl.ListFormat(e,{...t});return e=>n.format(e)}))},this.init(e)}init(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{interpolation:{}};this.formatSeparator=t.interpolation.formatSeparator||","}add(e,t){this.formats[e.toLowerCase().trim()]=t}addCached(e,t){this.formats[e.toLowerCase().trim()]=fn(t)}format(e,t,n){let i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};const r=t.split(this.formatSeparator);if(r.length>1&&r[0].indexOf("(")>1&&r[0].indexOf(")")<0&&r.find((e=>e.indexOf(")")>-1))){const e=r.findIndex((e=>e.indexOf(")")>-1));r[0]=[r[0],...r.splice(1,e)].join(this.formatSeparator)}return r.reduce(((e,t)=>{const{formatName:r,formatOptions:a}=(e=>{let t=e.toLowerCase().trim();const n={};if(e.indexOf("(")>-1){const i=e.split("(");t=i[0].toLowerCase().trim();const r=i[1].substring(0,i[1].length-1);"currency"===t&&r.indexOf(":")<0?n.currency||(n.currency=r.trim()):"relativetime"===t&&r.indexOf(":")<0?n.range||(n.range=r.trim()):r.split(";").forEach((e=>{if(e){const[t,...i]=e.split(":"),r=i.join(":").trim().replace(/^'+|'+$/g,""),a=t.trim();n[a]||(n[a]=r),"false"===r&&(n[a]=!1),"true"===r&&(n[a]=!0),isNaN(r)||(n[a]=parseInt(r,10))}}))}return{formatName:t,formatOptions:n}})(t);if(this.formats[r]){let t=e;try{const o=i&&i.formatParams&&i.formatParams[i.interpolationkey]||{},s=o.locale||o.lng||i.locale||i.lng||n;t=this.formats[r](e,s,{...a,...i,...o})}catch(e){this.logger.warn(e)}return t}return this.logger.warn(`there was no format function for ${r}`),e}),e)}}class yn extends Xt{constructor(e,t,n){let i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};super(),this.backend=e,this.store=t,this.services=n,this.languageUtils=n.languageUtils,this.options=i,this.logger=Zt.create("backendConnector"),this.waitingReads=[],this.maxParallelReads=i.maxParallelReads||10,this.readingCalls=0,this.maxRetries=i.maxRetries>=0?i.maxRetries:5,this.retryTimeout=i.retryTimeout>=1?i.retryTimeout:350,this.state={},this.queue=[],this.backend&&this.backend.init&&this.backend.init(n,i.backend,i)}queueLoad(e,t,n,i){const r={},a={},o={},s={};return e.forEach((e=>{let i=!0;t.forEach((t=>{const o=`${e}|${t}`;!n.reload&&this.store.hasResourceBundle(e,t)?this.state[o]=2:this.state[o]<0||(1===this.state[o]?void 0===a[o]&&(a[o]=!0):(this.state[o]=1,i=!1,void 0===a[o]&&(a[o]=!0),void 0===r[o]&&(r[o]=!0),void 0===s[t]&&(s[t]=!0)))})),i||(o[e]=!0)})),(Object.keys(r).length||Object.keys(a).length)&&this.queue.push({pending:a,pendingCount:Object.keys(a).length,loaded:{},errors:[],callback:i}),{toLoad:Object.keys(r),pending:Object.keys(a),toLoadLanguages:Object.keys(o),toLoadNamespaces:Object.keys(s)}}loaded(e,t,n){const i=e.split("|"),r=i[0],a=i[1];t&&this.emit("failedLoading",r,a,t),!t&&n&&this.store.addResourceBundle(r,a,n,void 0,void 0,{skipCopy:!0}),this.state[e]=t?-1:2,t&&n&&(this.state[e]=0);const o={};this.queue.forEach((n=>{((e,t,n)=>{const{obj:i,k:r}=Dt(e,t,Object);i[r]=i[r]||[],i[r].push(n)})(n.loaded,[r],a),((e,t)=>{void 0!==e.pending[t]&&(delete e.pending[t],e.pendingCount--)})(n,e),t&&n.errors.push(t),0!==n.pendingCount||n.done||(Object.keys(n.loaded).forEach((e=>{o[e]||(o[e]={});const t=n.loaded[e];t.length&&t.forEach((t=>{void 0===o[e][t]&&(o[e][t]=!0)}))})),n.done=!0,n.errors.length?n.callback(n.errors):n.callback())})),this.emit("loaded",o),this.queue=this.queue.filter((e=>!e.done))}read(e,t,n){let i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:this.retryTimeout,a=arguments.length>5?arguments[5]:void 0;if(!e.length)return a(null,{});if(this.readingCalls>=this.maxParallelReads)return void this.waitingReads.push({lng:e,ns:t,fcName:n,tried:i,wait:r,callback:a});this.readingCalls++;const o=(o,s)=>{if(this.readingCalls--,this.waitingReads.length>0){const e=this.waitingReads.shift();this.read(e.lng,e.ns,e.fcName,e.tried,e.wait,e.callback)}o&&s&&i<this.maxRetries?setTimeout((()=>{this.read.call(this,e,t,n,i+1,2*r,a)}),r):a(o,s)},s=this.backend[n].bind(this.backend);if(2!==s.length)return s(e,t,o);try{const n=s(e,t);n&&"function"==typeof n.then?n.then((e=>o(null,e))).catch(o):o(null,n)}catch(e){o(e)}}prepareLoading(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=arguments.length>3?arguments[3]:void 0;if(!this.backend)return this.logger.warn("No backend was added via i18next.use. Will not load resources."),i&&i();It(e)&&(e=this.languageUtils.toResolveHierarchy(e)),It(t)&&(t=[t]);const r=this.queueLoad(e,t,n,i);if(!r.toLoad.length)return r.pending.length||i(),null;r.toLoad.forEach((e=>{this.loadOne(e)}))}load(e,t,n){this.prepareLoading(e,t,{},n)}reload(e,t,n){this.prepareLoading(e,t,{reload:!0},n)}loadOne(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";const n=e.split("|"),i=n[0],r=n[1];this.read(i,r,"read",void 0,void 0,((n,a)=>{n&&this.logger.warn(`${t}loading namespace ${r} for language ${i} failed`,n),!n&&a&&this.logger.log(`${t}loaded namespace ${r} for language ${i}`,a),this.loaded(e,n,a)}))}saveMissing(e,t,n,i,r){let a=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{},o=arguments.length>6&&void 0!==arguments[6]?arguments[6]:()=>{};if(this.services.utils&&this.services.utils.hasLoadedNamespace&&!this.services.utils.hasLoadedNamespace(t))this.logger.warn(`did not save key "${n}" as the namespace "${t}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!");else if(null!=n&&""!==n){if(this.backend&&this.backend.create){const s={...a,isUpdate:r},l=this.backend.create.bind(this.backend);if(l.length<6)try{let r;r=5===l.length?l(e,t,n,i,s):l(e,t,n,i),r&&"function"==typeof r.then?r.then((e=>o(null,e))).catch(o):o(null,r)}catch(e){o(e)}else l(e,t,n,i,o,s)}e&&e[0]&&this.store.addResource(e[0],t,n,i)}}}const vn=()=>({debug:!1,initImmediate:!0,ns:["translation"],defaultNS:["translation"],fallbackLng:["dev"],fallbackNS:!1,supportedLngs:!1,nonExplicitSupportedLngs:!1,load:"all",preload:!1,simplifyPluralSuffix:!0,keySeparator:".",nsSeparator:":",pluralSeparator:"_",contextSeparator:"_",partialBundledLanguages:!1,saveMissing:!1,updateMissing:!1,saveMissingTo:"fallback",saveMissingPlurals:!0,missingKeyHandler:!1,missingInterpolationHandler:!1,postProcess:!1,postProcessPassResolved:!1,returnNull:!1,returnEmptyString:!0,returnObjects:!1,joinArrays:!1,returnedObjectHandler:!1,parseMissingKeyHandler:!1,appendNamespaceToMissingKey:!1,appendNamespaceToCIMode:!1,overloadTranslationOptionHandler:e=>{let t={};if("object"==typeof e[1]&&(t=e[1]),It(e[1])&&(t.defaultValue=e[1]),It(e[2])&&(t.tDescription=e[2]),"object"==typeof e[2]||"object"==typeof e[3]){const n=e[3]||e[2];Object.keys(n).forEach((e=>{t[e]=n[e]}))}return t},interpolation:{escapeValue:!0,format:e=>e,prefix:"{{",suffix:"}}",formatSeparator:",",unescapePrefix:"-",nestingPrefix:"$t(",nestingSuffix:")",nestingOptionsSeparator:",",maxReplaces:1e3,skipOnVariables:!0}}),bn=e=>(It(e.ns)&&(e.ns=[e.ns]),It(e.fallbackLng)&&(e.fallbackLng=[e.fallbackLng]),It(e.fallbackNS)&&(e.fallbackNS=[e.fallbackNS]),e.supportedLngs&&e.supportedLngs.indexOf("cimode")<0&&(e.supportedLngs=e.supportedLngs.concat(["cimode"])),e),kn=()=>{};class wn extends Xt{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;var n;if(super(),this.options=bn(e),this.services={},this.logger=Zt,this.modules={external:[]},n=this,Object.getOwnPropertyNames(Object.getPrototypeOf(n)).forEach((e=>{"function"==typeof n[e]&&(n[e]=n[e].bind(n))})),t&&!this.isInitialized&&!e.isClone){if(!this.options.initImmediate)return this.init(e,t),this;setTimeout((()=>{this.init(e,t)}),0)}}init(){var e=this;let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=arguments.length>1?arguments[1]:void 0;this.isInitializing=!0,"function"==typeof t&&(n=t,t={}),!t.defaultNS&&!1!==t.defaultNS&&t.ns&&(It(t.ns)?t.defaultNS=t.ns:t.ns.indexOf("translation")<0&&(t.defaultNS=t.ns[0]));const i=vn();this.options={...i,...this.options,...bn(t)},"v1"!==this.options.compatibilityAPI&&(this.options.interpolation={...i.interpolation,...this.options.interpolation}),void 0!==t.keySeparator&&(this.options.userDefinedKeySeparator=t.keySeparator),void 0!==t.nsSeparator&&(this.options.userDefinedNsSeparator=t.nsSeparator);const r=e=>e?"function"==typeof e?new e:e:null;if(!this.options.isClone){let t;this.modules.logger?Zt.init(r(this.modules.logger),this.options):Zt.init(null,this.options),this.modules.formatter?t=this.modules.formatter:"undefined"!=typeof Intl&&(t=gn);const n=new an(this.options);this.store=new Qt(this.options.resources,this.options);const a=this.services;a.logger=Zt,a.resourceStore=this.store,a.languageUtils=n,a.pluralResolver=new dn(n,{prepend:this.options.pluralSeparator,compatibilityJSON:this.options.compatibilityJSON,simplifyPluralSuffix:this.options.simplifyPluralSuffix}),!t||this.options.interpolation.format&&this.options.interpolation.format!==i.interpolation.format||(a.formatter=r(t),a.formatter.init(a,this.options),this.options.interpolation.format=a.formatter.format.bind(a.formatter)),a.interpolator=new mn(this.options),a.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},a.backendConnector=new yn(r(this.modules.backend),a.resourceStore,a,this.options),a.backendConnector.on("*",(function(t){for(var n=arguments.length,i=new Array(n>1?n-1:0),r=1;r<n;r++)i[r-1]=arguments[r];e.emit(t,...i)})),this.modules.languageDetector&&(a.languageDetector=r(this.modules.languageDetector),a.languageDetector.init&&a.languageDetector.init(a,this.options.detection,this.options)),this.modules.i18nFormat&&(a.i18nFormat=r(this.modules.i18nFormat),a.i18nFormat.init&&a.i18nFormat.init(this)),this.translator=new nn(this.services,this.options),this.translator.on("*",(function(t){for(var n=arguments.length,i=new Array(n>1?n-1:0),r=1;r<n;r++)i[r-1]=arguments[r];e.emit(t,...i)})),this.modules.external.forEach((e=>{e.init&&e.init(this)}))}if(this.format=this.options.interpolation.format,n||(n=kn),this.options.fallbackLng&&!this.services.languageDetector&&!this.options.lng){const e=this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);e.length>0&&"dev"!==e[0]&&(this.options.lng=e[0])}this.services.languageDetector||this.options.lng||this.logger.warn("init: no languageDetector is used and no lng is defined"),["getResource","hasResourceBundle","getResourceBundle","getDataByLanguage"].forEach((t=>{this[t]=function(){return e.store[t](...arguments)}})),["addResource","addResources","addResourceBundle","removeResourceBundle"].forEach((t=>{this[t]=function(){return e.store[t](...arguments),e}}));const a=zt(),o=()=>{const e=(e,t)=>{this.isInitializing=!1,this.isInitialized&&!this.initializedStoreOnce&&this.logger.warn("init: i18next is already initialized. You should call init just once!"),this.isInitialized=!0,this.options.isClone||this.logger.log("initialized",this.options),this.emit("initialized",this.options),a.resolve(t),n(e,t)};if(this.languages&&"v1"!==this.options.compatibilityAPI&&!this.isInitialized)return e(null,this.t.bind(this));this.changeLanguage(this.options.lng,e)};return this.options.resources||!this.options.initImmediate?o():setTimeout(o,0),a}loadResources(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:kn;const n=It(e)?e:this.language;if("function"==typeof e&&(t=e),!this.options.resources||this.options.partialBundledLanguages){if(n&&"cimode"===n.toLowerCase()&&(!this.options.preload||0===this.options.preload.length))return t();const e=[],i=t=>{t&&"cimode"!==t&&this.services.languageUtils.toResolveHierarchy(t).forEach((t=>{"cimode"!==t&&e.indexOf(t)<0&&e.push(t)}))};n?i(n):this.services.languageUtils.getFallbackCodes(this.options.fallbackLng).forEach((e=>i(e))),this.options.preload&&this.options.preload.forEach((e=>i(e))),this.services.backendConnector.load(e,this.options.ns,(e=>{e||this.resolvedLanguage||!this.language||this.setResolvedLanguage(this.language),t(e)}))}else t(null)}reloadResources(e,t,n){const i=zt();return"function"==typeof e&&(n=e,e=void 0),"function"==typeof t&&(n=t,t=void 0),e||(e=this.languages),t||(t=this.options.ns),n||(n=kn),this.services.backendConnector.reload(e,t,(e=>{i.resolve(),n(e)})),i}use(e){if(!e)throw new Error("You are passing an undefined module! Please check the object you are passing to i18next.use()");if(!e.type)throw new Error("You are passing a wrong module! Please check the object you are passing to i18next.use()");return"backend"===e.type&&(this.modules.backend=e),("logger"===e.type||e.log&&e.warn&&e.error)&&(this.modules.logger=e),"languageDetector"===e.type&&(this.modules.languageDetector=e),"i18nFormat"===e.type&&(this.modules.i18nFormat=e),"postProcessor"===e.type&&en.addPostProcessor(e),"formatter"===e.type&&(this.modules.formatter=e),"3rdParty"===e.type&&this.modules.external.push(e),this}setResolvedLanguage(e){if(e&&this.languages&&!(["cimode","dev"].indexOf(e)>-1))for(let e=0;e<this.languages.length;e++){const t=this.languages[e];if(!(["cimode","dev"].indexOf(t)>-1)&&this.store.hasLanguageSomeTranslations(t)){this.resolvedLanguage=t;break}}}changeLanguage(e,t){var n=this;this.isLanguageChangingTo=e;const i=zt();this.emit("languageChanging",e);const r=e=>{this.language=e,this.languages=this.services.languageUtils.toResolveHierarchy(e),this.resolvedLanguage=void 0,this.setResolvedLanguage(e)},a=(e,a)=>{a?(r(a),this.translator.changeLanguage(a),this.isLanguageChangingTo=void 0,this.emit("languageChanged",a),this.logger.log("languageChanged",a)):this.isLanguageChangingTo=void 0,i.resolve((function(){return n.t(...arguments)})),t&&t(e,(function(){return n.t(...arguments)}))},o=t=>{e||t||!this.services.languageDetector||(t=[]);const n=It(t)?t:this.services.languageUtils.getBestMatchFromCodes(t);n&&(this.language||r(n),this.translator.language||this.translator.changeLanguage(n),this.services.languageDetector&&this.services.languageDetector.cacheUserLanguage&&this.services.languageDetector.cacheUserLanguage(n)),this.loadResources(n,(e=>{a(e,n)}))};return e||!this.services.languageDetector||this.services.languageDetector.async?!e&&this.services.languageDetector&&this.services.languageDetector.async?0===this.services.languageDetector.detect.length?this.services.languageDetector.detect().then(o):this.services.languageDetector.detect(o):o(e):o(this.services.languageDetector.detect()),i}getFixedT(e,t,n){var i=this;const r=function(e,t){let a;if("object"!=typeof t){for(var o=arguments.length,s=new Array(o>2?o-2:0),l=2;l<o;l++)s[l-2]=arguments[l];a=i.options.overloadTranslationOptionHandler([e,t].concat(s))}else a={...t};a.lng=a.lng||r.lng,a.lngs=a.lngs||r.lngs,a.ns=a.ns||r.ns,""!==a.keyPrefix&&(a.keyPrefix=a.keyPrefix||n||r.keyPrefix);const u=i.options.keySeparator||".";let c;return c=a.keyPrefix&&Array.isArray(e)?e.map((e=>`${a.keyPrefix}${u}${e}`)):a.keyPrefix?`${a.keyPrefix}${u}${e}`:e,i.t(c,a)};return It(e)?r.lng=e:r.lngs=e,r.ns=t,r.keyPrefix=n,r}t(){return this.translator&&this.translator.translate(...arguments)}exists(){return this.translator&&this.translator.exists(...arguments)}setDefaultNamespace(e){this.options.defaultNS=e}hasLoadedNamespace(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!this.isInitialized)return this.logger.warn("hasLoadedNamespace: i18next was not initialized",this.languages),!1;if(!this.languages||!this.languages.length)return this.logger.warn("hasLoadedNamespace: i18n.languages were undefined or empty",this.languages),!1;const n=t.lng||this.resolvedLanguage||this.languages[0],i=!!this.options&&this.options.fallbackLng,r=this.languages[this.languages.length-1];if("cimode"===n.toLowerCase())return!0;const a=(e,t)=>{const n=this.services.backendConnector.state[`${e}|${t}`];return-1===n||0===n||2===n};if(t.precheck){const e=t.precheck(this,a);if(void 0!==e)return e}return!(!this.hasResourceBundle(n,e)&&this.services.backendConnector.backend&&(!this.options.resources||this.options.partialBundledLanguages)&&(!a(n,e)||i&&!a(r,e)))}loadNamespaces(e,t){const n=zt();return this.options.ns?(It(e)&&(e=[e]),e.forEach((e=>{this.options.ns.indexOf(e)<0&&this.options.ns.push(e)})),this.loadResources((e=>{n.resolve(),t&&t(e)})),n):(t&&t(),Promise.resolve())}loadLanguages(e,t){const n=zt();It(e)&&(e=[e]);const i=this.options.preload||[],r=e.filter((e=>i.indexOf(e)<0&&this.services.languageUtils.isSupportedCode(e)));return r.length?(this.options.preload=i.concat(r),this.loadResources((e=>{n.resolve(),t&&t(e)})),n):(t&&t(),Promise.resolve())}dir(e){if(e||(e=this.resolvedLanguage||(this.languages&&this.languages.length>0?this.languages[0]:this.language)),!e)return"rtl";const t=this.services&&this.services.languageUtils||new an(vn());return["ar","shu","sqr","ssh","xaa","yhd","yud","aao","abh","abv","acm","acq","acw","acx","acy","adf","ads","aeb","aec","afb","ajp","apc","apd","arb","arq","ars","ary","arz","auz","avl","ayh","ayl","ayn","ayp","bbz","pga","he","iw","ps","pbt","pbu","pst","prp","prd","ug","ur","ydd","yds","yih","ji","yi","hbo","men","xmn","fa","jpr","peo","pes","prs","dv","sam","ckb"].indexOf(t.getLanguagePartFromCode(e))>-1||e.toLowerCase().indexOf("-arab")>1?"rtl":"ltr"}static createInstance(){return new wn(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},arguments.length>1?arguments[1]:void 0)}cloneInstance(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:kn;const n=e.forkResourceStore;n&&delete e.forkResourceStore;const i={...this.options,...e,isClone:!0},r=new wn(i);return void 0===e.debug&&void 0===e.prefix||(r.logger=r.logger.clone(e)),["store","services","language"].forEach((e=>{r[e]=this[e]})),r.services={...this.services},r.services.utils={hasLoadedNamespace:r.hasLoadedNamespace.bind(r)},n&&(r.store=new Qt(this.store.data,i),r.services.resourceStore=r.store),r.translator=new nn(r.services,i),r.translator.on("*",(function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];r.emit(e,...n)})),r.init(i,t),r.translator.options=i,r.translator.backendConnector.services.utils={hasLoadedNamespace:r.hasLoadedNamespace.bind(r)},r}toJSON(){return{options:this.options,store:this.store,language:this.language,languages:this.languages,resolvedLanguage:this.resolvedLanguage}}}const Sn=wn.createInstance();function Pn(e){return Pn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Pn(e)}function xn(e){try{var t=new URL(e);return"http:"===t.protocol||"https:"===t.protocol}catch(e){return!1}}function Cn(e){return/<\/?[a-z][\s\S]*>/i.test(e)}function An(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=[];return e.map((function(e,i){var r,a={},o=t[e.name],s=null!==(r=e.title)&&void 0!==r?r:e.name;if(e.required&&!o)a[e.name]=s+" is required";else if(o)if("textInput"===e.type)switch(e.inputType){case"email":/^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/.test(o)||(a[e.name]=s+" must be a valid Email");break;case"url":Tn(o)||(a[e.name]=s+" must be a valid HTTPS URL");break;case"number":/^\d+$/.test(o)||(a[e.name]=s+" must be a valid number");break;case"date":(function(e){if(!/^\d{4}-\d{2}-\d{2}$/.test(e))return!1;var t=new Date(e),n=t.getTime();return!(!n&&0!==n)&&t.toISOString().slice(0,10)===e})(o)||(a[e.name]=s+" must be a valid date (ex: 2024-02-18)")}else"checkboxInput"===e.type&&"object"!==Pn(o)&&(a[e.name]=s+" must be an object if provided");Object.keys(a).length>0&&n.push({index:i,errors:a})})),n.length>0?n:null}function Tn(e){return/^(https?:\/\/)?([a-zA-Z0-9-]+\.)+[a-zA-Z]{2,}(:[0-9]{1,5})?(\/.*)?$/.test(e)}function jn(e){return jn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},jn(e)}function _n(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Rn(i.key),i)}}function Rn(e){var t=function(e){if("object"!=jn(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=jn(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==jn(t)?t:t+""}Sn.createInstance=wn.createInstance,Sn.createInstance,Sn.dir,Sn.init,Sn.loadResources,Sn.reloadResources,Sn.use,Sn.changeLanguage,Sn.getFixedT,Sn.t,Sn.exists,Sn.setDefaultNamespace,Sn.hasLoadedNamespace,Sn.loadNamespaces,Sn.loadLanguages;var En=function(){return e=function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.opts=t,this.defaultType=["skincare"],this.defaultDisplayModel=["widget","section","modal"]},(t=[{key:"init",value:function(e){e.responsiveOverride;var t=this.opts;if(!t||"object"!==jn(t))throw new Error("pleas enter options.");if(t.arrTypes=this.defaultType,t.arrDisplayModel=this.defaultDisplayModel,t.intro=!0,void 0===t.faceageId||!t.faceageId)throw new Error("pleas enter face age Id.");if(void 0===t.displayModel&&(t.displayModel="section"),"modal"!==t.displayModel){if(void 0===t.elementId||!t.elementId)throw new Error("pleas enter element id.");if(!document.getElementById(t.elementId))throw new Error("element id is not valid.");t.element=document.getElementById(t.elementId)}else t.element=document.body;if(void 0===t.type&&(t.type="skincare"),void 0===t.gtag&&(t.gtag=null),void 0!==t.privacyUrl&&Tn(t.privacyUrl)||(t.privacyUrl=null),void 0===t.language&&(t.language="en"),void 0===t.defaultQuiz&&(t.defaultQuiz={}),void 0===t.quiz&&(t.quiz=!0),void 0===t.currency&&(t.currency="$"),void 0===t.showProducts&&(t.showProducts=!1),void 0===t.showRoutine&&(t.showRoutine=!1),"widget"===t.displayModel&&(t.products=!1),"en"!==t.language&&Sn.changeLanguage(t.language),-1===this.defaultType.indexOf(t.type))throw new Error("Type is not valid");if(-1===this.defaultDisplayModel.indexOf(t.displayModel))throw new Error("Display Model is not valid");if(void 0!==t.routinesSupport&&Array.isArray(t.routinesSupport)||(t.routinesSupport=[]),void 0!==t.problems&&Array.isArray(t.problems)||(t.problems=[]),void 0===t.width?t.iframeWidth="360px":t.width&&(t.iframeWidth=t.width),void 0===t.height?"section"===t.displayModel?t.iframeHeight="600px":t.iframeHeight="580px":t.height&&(t.iframeHeight=t.height),void 0===t.showFacePoint&&(t.showFacePoint=!0),void 0===t.showAddToCard&&(t.showAddToCard=!0),void 0===t.showCamera&&(t.showCamera=!0),void 0===t.showUpload&&(t.showUpload=!0),!t.showCamera&&!t.showUpload)throw new Error("There are no input ways to receive the image.");return t}}])&&_n(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function In(e){return In="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},In(e)}function zn(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Ln(i.key),i)}}function Ln(e){var t=function(e){if("object"!=In(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=In(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==In(t)?t:t+""}var On=function(){return e=function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e)},(t=[{key:"initGlobalVars",value:function(e){e.skinAnalyzeData=[]}},{key:"globalVars",value:function(e){return{faceID:null,dom:{},events:{onClickProblem:[],onClose:[],onDisplayProducts:[],onAddToCart:[],onCheckout:[],onClickProduct:[]},showCamera:!0,showUpload:!0,formPages:{},formData:{},intro:!0,quiz:!0,iframeWidth:"360px",iframeHeight:"480px",language:"en",displayModel:"widget",showFacePoint:!0,cameraPermission:null,faceDetection:null,boundingBox:[],imageWarning:!1,activeQuiz:0,privacy:!1,products:!0,productLoader:!0,productLists:[],productAction:[],productAddToCart:[],problems:{wrinkles:"Fine Wrinkles",fineWrinkles:"Fine Wrinkles",eye_wrinkles:"Eye Wrinkles",eyeWrinkles:"Eye Wrinkles",deep_wrinkles:"Deep Wrinkles",deepWrinkles:"Deep Wrinkles",dark_circle:"Dark Circle",darkCircle:"Dark Circle",eye_bag:"Eye Bag",eyeBag:"Eye Bag",pores:"Pores",pigments:"Pigment",pigment:"Pigment",acnes:"Acne",acne:"Acne",oiliness:"Oiliness",redness:"Redness"},routineGroup:[{key:"cleanser",title:"Cleanser",content:"Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.",status:["morning","night"]},{key:"toner",title:"Toner",content:"Use a toner to balance your skin’s pH and remove any leftover residue.",status:["morning","night"]},{key:"serum",title:"Serum",content:"Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.",status:["morning","night"]},{key:"eyeCream",title:"Eye Cream",content:"Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.",status:["morning","night"]},{key:"spotTreatment",title:"Spot Treatment",content:"Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.",status:["morning","night"]},{key:"moisturizer",title:"Moisturizer",content:"Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.",status:["morning","night"]},{key:"sunscreen",title:"Sunscreen",content:"Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.",status:["morning"]},{key:"faceOil",title:"Face Oil",content:"Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.",status:["morning","night"]},{key:"nightCream",title:"Night Cream",content:"Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.",status:["night"]}]}}},{key:"init",value:function(e){var t=this.globalVars(e);return this.initGlobalVars(t),t}}])&&zn(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function Mn(e){return Mn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Mn(e)}function Fn(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Dn(i.key),i)}}function Dn(e){var t=function(e){if("object"!=Mn(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=Mn(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Mn(t)?t:t+""}var Bn=function(){return e=function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.opts=t},(t=[{key:"init",value:function(){var e=new En(this.opts).init({responsiveOverride:!1});return{config:e,globals:(new On).init(e)}}}])&&Fn(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function Nn(e){return Nn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Nn(e)}function Gn(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Un(i.key),i)}}function Un(e){var t=function(e){if("object"!=Nn(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=Nn(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Nn(t)?t:t+""}const Hn=function(){return e=function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.ctx=t,this.w=t.w},(t=[{key:"setAttrs",value:function(e,t){for(var n in t)t.hasOwnProperty(n)&&e.setAttribute(n,t[n])}},{key:"getLevelColor",value:function(e){return e<=30?"#5CB85C":e>=70?"#DA005C":"#5C7BB8"}},{key:"getSizeFrame",value:function(e,t){var n,i,r=e.dom.elIframe.clientWidth>300?e.dom.elIframe.clientWidth:300,a=e.dom.elIframe.clientHeight>400?e.dom.elIframe.clientHeight:400;return"widget"===t.displayModel?(n=r,i=r/3*4):"section"===t.displayModel?(i=a,r>768&&(i-=40),r<=(n=i/4*3)&&(i=(n=r-35)/3*4)):r>=668?n=(i=a-120)/4*3:i=(n=r-35)/3*4,{width:n,height:i}}}])&&Gn(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();var Wn=n(543),Vn=n.n(Wn);function qn(e){return qn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},qn(e)}function Jn(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Yn(i.key),i)}}function Yn(e){var t=function(e){if("object"!=qn(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=qn(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==qn(t)?t:t+""}var Kn=function(){return e=function e(t,n,i,r,a){var o;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.el=t,this.gl=n,this.options=null!==(o=i.options)&&void 0!==o?o:[],this.title=Sn.t(i.title),this.description=Sn.t(i.description),this.name=i.name,this.layout=i.layout,this.activeItems=r||[],this.value=r,this.setValue=a,this.render()},(t=[{key:"render",value:function(){var e=this,t=(this.gl,document.createElement("div"));Hn.setAttrs(t,{class:"el_box","data-name":this.name});var n=document.createElement("div");Hn.setAttrs(n,{class:"box_title",style:this.title||this.description?"margin-bottom: 17px; display: block;":""}),n.innerHTML=(this.title?'<label class="title_el" style="margin: 0 0 10px; font-weight: 600;">'+this.title+"</label>":"")+(this.description?'<p class="description_el">'+this.description+"</p>":""),t.appendChild(n);var i=document.createElement("div");Hn.setAttrs(i,{class:"checkbox_group input_select "+this.layout});var r=[];this.options.map((function(t){r[t.value]=document.createElement("div"),Hn.setAttrs(r[t.value],{class:"checkbox item "+(e.activeItems.includes(t.value)?"active":"")});var n=(t.icon_url?'<div class="ico"><img alt="'+t.label+'" src="'+t.icon_url+'" /></div>':"")+'<div class="title">'+Sn.t(t.label)+"</div>";r[t.value].innerHTML=n,i.appendChild(r[t.value]),r[t.value].addEventListener("click",(function(n){if(e.activeItems.includes(t.value)){r[t.value].classList.remove("active");var i=e.activeItems.indexOf(t.value);i>-1&&e.activeItems.splice(i,1)}else r[t.value].classList.add("active"),e.activeItems.push(t.value);e.setValue(e.activeItems),e.value=e.activeItems}))})),t.appendChild(i),this.el.appendChild(t)}}])&&Jn(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function $n(e){return $n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},$n(e)}function Zn(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Xn(i.key),i)}}function Xn(e){var t=function(e){if("object"!=$n(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=$n(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==$n(t)?t:t+""}var Qn=function(){return e=function e(t,n,i){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.el=t,this.gl=n,this.children=Sn.t(i.text),this.render()},(t=[{key:"render",value:function(){var e=this.gl;e.dom.elementText=document.createElement("p"),Hn.setAttrs(e.dom.elementText,{style:"margin: 0 0 10px"}),e.dom.elementText.innerHTML=this.children,this.el.appendChild(e.dom.elementText)}}])&&Zn(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function ei(e){return ei="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ei(e)}function ti(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,ni(i.key),i)}}function ni(e){var t=function(e){if("object"!=ei(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=ei(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==ei(t)?t:t+""}var ii=function(){return e=function e(t,n,i,r,a){var o;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.el=t,this.gl=n,this.options=null!==(o=i.options)&&void 0!==o?o:[],this.name=i.name,this.layout=i.layout,this.title=Sn.t(i.title),this.description=Sn.t(i.description),this.value=r,this.setValue=a,this.render()},(t=[{key:"render",value:function(){var e=this,t=(this.gl,document.createElement("div"));Hn.setAttrs(t,{class:"el_box","data-name":this.name});var n=document.createElement("div");Hn.setAttrs(n,{class:"box_title",style:this.title||this.description?"margin-bottom: 17px; display: block;":""}),n.innerHTML=(this.title?'<label class="title_el" style="margin: 0 0 10px; font-weight: 600;">'+this.title+"</label>":"")+(this.description?'<p class="description_el">'+this.description+"</p>":""),t.appendChild(n);var i=document.createElement("div");Hn.setAttrs(i,{class:"radio_group input_select "+this.layout});var r=[];this.options.map((function(t){r[t.value]=document.createElement("div"),Hn.setAttrs(r[t.value],{class:"radio item "+(e.value===t.value?"active":"")});var n=(t.icon_url?'<div class="ico"><img alt="'+t.label+'" src="'+t.icon_url+'" /></div>':"")+'<div class="title">'+Sn.t(t.label)+"</div>";r[t.value].innerHTML=n,i.appendChild(r[t.value]),r[t.value].addEventListener("click",(function(n){var a=i.getElementsByClassName("radio");if(a.length)for(var o=0;o<a.length;o++)a[o].classList.remove("active");e.value!==t.value?(e.setValue(t.value),e.value=t.value,r[t.value].classList.add("active")):(e.setValue(null),e.value=null)}))})),t.appendChild(i),this.el.appendChild(t)}}])&&ti(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function ri(e){return ri="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ri(e)}function ai(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,oi(i.key),i)}}function oi(e){var t=function(e){if("object"!=ri(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=ri(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==ri(t)?t:t+""}var si=function(){return e=function e(t,n,i){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:null,o=!(arguments.length>5&&void 0!==arguments[5])||arguments[5];!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.el=t,this.pv=i,this.ctx=n,this.w=n.w,this.gl=this.w.globals,this.co=this.w.config,this.onBack=a,this.showRefresh=o,this.title=r,this.render()},(t=[{key:"render",value:function(){var e,t,n=this,i=this.gl;i.dom.elAppBar=document.createElement("div"),Hn.setAttrs(i.dom.elAppBar,{class:"app_bar",style:"width: 100%; position: relative; z-index: 99999;"});var r=' <div class="header_tools">'+(this.onBack?' <div class="back"><svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M15.56 5.15999L13.2 2.79999L0 16L13.2 29.2L15.56 26.84L4.72 16L15.56 5.15999Z" fill="black"/></svg></div>':"")+' <div class="title">'+Sn.t("Skin Analysis")+'</div> <div class="action">'+(this.showRefresh?' <div class="refresh"><svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M23.5333 8.46668C21.6 6.53334 18.9467 5.33334 16 5.33334C10.1067 5.33334 5.34668 10.1067 5.34668 16C5.34668 21.8933 10.1067 26.6667 16 26.6667C20.9733 26.6667 25.12 23.2667 26.3067 18.6667H23.5333C22.44 21.7733 19.48 24 16 24C11.5867 24 8.00001 20.4133 8.00001 16C8.00001 11.5867 11.5867 8.00001 16 8.00001C18.2133 8.00001 20.1867 8.92001 21.6267 10.3733L17.3333 14.6667H26.6667V5.33334L23.5333 8.46668Z" fill="black"/></svg></div>':"")+' <div class="close"><svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M25.3333 8.54663L23.4533 6.66663L16 14.12L8.54667 6.66663L6.66667 8.54663L14.12 16L6.66667 23.4533L8.54667 25.3333L16 17.88L23.4533 25.3333L25.3333 23.4533L17.88 16L25.3333 8.54663Z" fill="black"/></svg></div> </div>';i.dom.elAppBar.innerHTML=r;var a,o=i.dom.elAppBar.querySelector(".title");this.title?o.innerText=this.title:(null!=i&&i.authorize&&null!=i&&null!==(e=i.authorize)&&void 0!==e&&e.logo,null!=i&&i.authorize&&null!=i&&null!==(t=i.authorize)&&void 0!==t&&t.name&&(o.innerText=null==i||null===(a=i.authorize)||void 0===a?void 0:a.name));var s=i.dom.elAppBar.querySelector(".back"),l=i.dom.elAppBar.querySelector(".refresh"),u=i.dom.elAppBar.querySelector(".close");s&&s.addEventListener("click",(function(e){n.onBack&&n.onBack()})),l&&l.addEventListener("click",(function(e){i.dom.elInfo&&i.dom.elInfo.remove(),i.dom.elForm&&i.dom.elForm.remove(),i.dom.elFace&&i.dom.elFace.remove(),i.activeQuiz=0,i.formData={},i.productLoader=!1,i.productLists=[],i.productAction=[],i.productAddToCart=[],i.imageWebCam=null,i.imageSubmit=null,i.intro=!0,n.co.intro=!0,new ba(i.dom.docIframe,n.ctx,n.pv),i.onRefresh&&i.onRefresh()})),u&&u.addEventListener("click",(function(e){i.dom.elModalFace.classList.remove("is-open"),i.onCloseModal&&i.onCloseModal()})),this.el.appendChild(i.dom.elAppBar)}}])&&ai(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function li(e){return li="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},li(e)}function ui(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,ci(i.key),i)}}function ci(e){var t=function(e){if("object"!=li(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=li(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==li(t)?t:t+""}function di(e,t){return e.get(function(e,t,n){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:n;throw new TypeError("Private element is not present on this object")}(e,t))}var pi=new WeakMap,hi=function(){return e=function e(){var t,n,i;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),i={copyRight:!0,license:!1,elCopyRight:null},function(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}(t=this,n=pi),n.set(t,i)},(t=[{key:"getValue",value:function(){return di(pi,this)}},{key:"setValue",value:function(e,t){di(pi,this)[e]=t}}])&&ui(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function mi(e){return mi="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},mi(e)}function fi(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,gi(i.key),i)}}function gi(e){var t=function(e){if("object"!=mi(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=mi(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==mi(t)?t:t+""}var yi=function(){return e=function e(t,n,i){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.el=t,this.pv=i,this.ctx=n,this.w=n.w,this.gl=this.w.globals,this.co=this.w.config,this.pv=new hi,this.render()},(t=[{key:"render",value:function(){var e,t,n,i,r,a,o,s,l,u,c=this,d=this.el,p=this.gl,h=this.co,m=(this.pv.getValue(),[{key:"eyeGlass",svg:'<svg width="54" height="55" viewBox="0 0 54 55" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M22.1266 19.4592C24.0344 18.7776 26.0063 18.8686 26.8269 19.6404C27.6451 20.414 27.9449 20.8857 27.9823 21.3679C28.0262 21.9364 27.2941 22.1521 26.8269 21.6852C26.4881 20.9863 25.9015 20.0526 24.9785 19.9126C23.6468 19.7132 21.8617 20.5674 21.2036 21.1167C20.0864 22.0495 16.0629 26.3434 16.0629 26.3434C16.0629 26.3434 18.6231 26.8879 20.2441 27.4343C21.8601 27.9798 22.5946 28.9327 23.7118 29.1618C24.829 29.3881 25.6545 28.7582 27.4867 29.0027C29.3189 29.2471 35.1713 30.572 35.9026 29.9355C36.5981 29.3296 37.8883 26.1075 38.3774 25.0559C38.3994 25.0012 38.4229 24.9552 38.4433 24.914C38.44 24.9111 38.4384 24.9082 38.4343 24.9054C38.6569 24.4548 39.3256 23.035 39.1558 22.548C39.1258 22.4608 39.0689 22.4023 38.9917 22.3793C38.921 22.3582 38.856 22.3821 38.8081 22.4483C38.6716 22.6362 38.7024 23.1452 38.7902 23.382C38.8178 23.4587 38.8511 23.5086 38.8901 23.5325C38.7333 23.9831 38.5099 24.4787 38.3531 24.7999C37.9712 24.1921 37.9232 22.2872 38.4433 21.482C38.999 20.6182 40 20.5731 40 22.2767C40 23.0724 39.8082 25.4815 39.2094 26.2532C39.4605 26.4804 39.4605 27.2311 38.9795 28.1389C38.4969 29.0468 37.1099 33.7951 35.6661 34.1133C34.3759 36.5445 33.0669 35.931 31.5638 35.931C30.0615 35.931 27.7126 35.2273 26.6921 34.725C25.6699 34.2255 24.5341 31.7493 24.3992 31.3859C24.2659 31.0216 23.1869 30.7503 23.0139 31.1808C22.8392 31.6122 22.8603 33.9552 20.1531 33.5209C17.4474 33.0895 15.4641 32.3619 14.7321 30.6583C14 28.9576 14 26.3223 14 26.3223C14 26.3223 20.2205 20.1417 22.1266 19.4592ZM26.6132 33.9341C27.2104 34.7528 31.0641 35.3663 31.0641 35.3663C31.0641 35.3663 33.0093 35.5034 33.6446 35.4804C33.6791 35.4741 33.7128 35.467 33.7458 35.4593C34.756 35.2228 35.0959 34.0233 35.2206 32.9933V31.6399C35.2442 30.9688 34.3604 30.805 33.7023 30.7024C33.0287 30.6027 28.2317 29.7821 27.7296 29.7821C27.2291 29.7821 25.5367 29.7955 25.4408 30.9296C25.3433 32.0695 26.0177 33.1154 26.6132 33.9341ZM16.4643 31.8212C17.7334 32.2631 19.4681 32.8891 20.1523 33.0262C20.6852 33.1384 21.2329 33.171 21.4709 32.914C21.9617 32.3772 21.7586 31.1233 21.8138 30.4043C21.9536 29.2107 19.8711 28.3019 19.8711 28.3019C19.8711 28.3019 16.5594 27.2109 15.6169 27.0767C15.4991 27.0547 14.7507 28.8704 14.7507 28.8704C14.7507 28.8704 15.1968 31.3783 16.4643 31.8212Z" fill="black"/>\n<path d="M38.7619 22.5432C38.7907 22.4266 38.8327 22.4075 38.859 22.4075C38.8686 22.4075 38.8756 22.4102 38.8791 22.4111C38.9237 22.423 38.9535 22.4494 38.9719 22.4958C39.0296 22.6443 38.964 22.9322 38.8459 23.2592C38.7785 23.2036 38.6936 22.8101 38.7619 22.5432Z" fill="'+(null!==(e=null===(t=p.customTemplate)||void 0===t?void 0:t.base_color)&&void 0!==e?e:"#3FC79A")+'" />\n<path fill-rule="evenodd" clip-rule="evenodd" d="M35.6588 14.2799C32.0968 11.9698 27.6242 11.0825 23.1779 12.183C14.6495 14.2939 9.44712 22.9188 11.558 31.4471C12.32 34.5258 13.9309 37.1711 16.0797 39.1953L35.6588 14.2799ZM38.0749 16.2024L18.5214 41.0852C22.0534 43.3094 26.4504 44.149 30.8221 43.067C39.3505 40.9561 44.5529 32.3312 42.442 23.8029C41.6983 20.7985 40.1463 18.2069 38.0749 16.2024ZM22.436 9.18589C32.6197 6.66528 42.9185 12.8774 45.4391 23.061C47.9597 33.2447 41.7476 43.5435 31.564 46.0641C21.3803 48.5847 11.0815 42.3726 8.56089 32.189C6.04028 22.0053 12.2524 11.7065 22.436 9.18589Z" fill="'+(null!==(n=null===(i=p.customTemplate)||void 0===i?void 0:i.base_color)&&void 0!==n?n:"#3FC79A")+'" stroke="white" stroke-width="1.6"/>\n</svg>\n',title:Sn.t("Remove the glasses")},{key:"clean",svg:'<svg width="56" height="55" viewBox="0 0 56 55" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M19.3406 18.2903C19.3406 18.13 19.2032 18 19.0338 18C18.8644 18 18.727 18.13 18.727 18.2903V18.871H17.8068C17.6373 18.871 17.5 19.0009 17.5 19.1613C17.5 19.3216 17.6373 19.4516 17.8068 19.4516H18.727V20.0323H17.8068C17.6373 20.0323 17.5 20.1622 17.5 20.3226C17.5 20.4829 17.6373 20.6129 17.8068 20.6129H18.727V21.1935H17.8068C17.6373 21.1935 17.5 21.3235 17.5 21.4839C17.5 21.6442 17.6373 21.7742 17.8068 21.7742H18.727V22.3548H17.8068C17.6373 22.3548 17.5 22.4848 17.5 22.6452C17.5 22.8055 17.6373 22.9355 17.8068 22.9355H18.727V23.5161H17.8068C17.6373 23.5161 17.5 23.6461 17.5 23.8065C17.5 23.9668 17.6373 24.0968 17.8068 24.0968H18.727V30.1935H18.4203C18.0819 30.1935 17.8068 30.454 17.8068 30.7742V31.5813C17.6199 31.741 17.5 31.9695 17.5 32.2258V35.129C17.5 35.6092 17.9129 36 18.4203 36H19.6473C20.1547 36 20.5676 35.6092 20.5676 35.129V32.2258C20.5676 31.9695 20.4477 31.741 20.2608 31.5813V30.7742C20.2608 30.454 19.9854 30.1935 19.6473 30.1935H19.3406V24.0968H20.2608C20.4303 24.0968 20.5676 23.9668 20.5676 23.8065C20.5676 23.6461 20.4303 23.5161 20.2608 23.5161H19.3406V22.9355H20.2608C20.4303 22.9355 20.5676 22.8055 20.5676 22.6452C20.5676 22.4848 20.4303 22.3548 20.2608 22.3548H19.3406V21.7742H20.2608C20.4303 21.7742 20.5676 21.6442 20.5676 21.4839C20.5676 21.3235 20.4303 21.1935 20.2608 21.1935H19.3406V20.6129H20.2608C20.4303 20.6129 20.5676 20.4829 20.5676 20.3226C20.5676 20.1622 20.4303 20.0323 20.2608 20.0323H19.3406V19.4516H20.2608C20.4303 19.4516 20.5676 19.3216 20.5676 19.1613C20.5676 19.0009 20.4303 18.871 20.2608 18.871H19.3406V18.2903ZM19.9541 32.2258V35.129C19.9541 35.2893 19.8167 35.4194 19.6473 35.4194H18.4203C18.251 35.4194 18.1135 35.2893 18.1135 35.129V32.2258C18.1135 32.0655 18.251 31.9355 18.4203 31.9355H19.6473C19.8167 31.9355 19.9541 32.0655 19.9541 32.2258ZM19.573 30.7742C19.6141 30.7742 19.6473 30.8057 19.6473 30.8445V31.2845C19.6473 31.3234 19.6141 31.3548 19.573 31.3548H18.4946C18.4535 31.3548 18.4203 31.3234 18.4203 31.2845V30.8445C18.4203 30.8057 18.4535 30.7742 18.4946 30.7742H19.573Z" fill="black"/>\n<path d="M36.5 24.3871C36.5 20.8652 33.4726 18 29.7513 18C26.0898 18 23.1022 20.7743 23.0071 24.2184L22.8995 24.0657C22.7485 23.8515 22.4712 23.7577 22.2114 23.832C21.9506 23.9066 21.7755 24.1299 21.7755 24.3877V28.242C21.593 28.3427 21.4687 28.528 21.4687 28.7419V29.4033C21.2862 29.504 21.162 29.6893 21.162 29.9032V35.4194C21.162 35.7396 21.4371 36 21.7755 36H23.616C23.9541 36 24.2296 35.7396 24.2296 35.4194V29.9032C24.2296 29.6893 24.1053 29.504 23.9228 29.4033V28.7419C23.9228 28.528 23.7986 28.3427 23.616 28.242V27.043C24.5956 29.0619 26.6546 30.5177 29.0901 30.743C29.2878 30.7613 29.4445 30.915 29.4445 31.103V35.4194H25.7634C25.4245 35.4194 25.1498 35.6793 25.1498 36H34.3527C34.3527 35.6793 34.078 35.4194 33.7392 35.4194H30.058V31.103C30.058 30.915 30.2146 30.7613 30.4123 30.743C33.8244 30.4276 36.5 27.698 36.5 24.3871ZM22.389 24.6199C22.389 24.5503 22.4843 24.523 22.5251 24.5809L23.0025 25.2586V28.1613H22.389V24.6199ZM22.0822 28.8122C22.0822 28.7734 22.1155 28.7419 22.1565 28.7419H23.235C23.276 28.7419 23.3093 28.7734 23.3093 28.8122V29.2523C23.3093 29.2911 23.276 29.3226 23.235 29.3226H22.1565C22.1155 29.3226 22.0822 29.2911 22.0822 29.2523V28.8122ZM23.6166 35.2787C23.6167 35.3564 23.5501 35.4194 23.4681 35.4194H21.9241C21.842 35.4194 21.7755 35.3564 21.7755 35.2787V30.0438C21.7755 29.9662 21.842 29.9032 21.9241 29.9032H23.4675C23.5495 29.9032 23.6161 29.9662 23.6161 30.0438L23.6166 35.2787ZM29.7513 30.1935C26.3683 30.1935 23.616 27.5888 23.616 24.3871C23.616 21.1854 26.3683 18.5806 29.7513 18.5806C33.1342 18.5806 35.8865 21.1854 35.8865 24.3871C35.8865 27.5888 33.1342 30.1935 29.7513 30.1935Z" fill="black"/>\n<path d="M29.7213 18.4922C26.3006 18.4922 23.5178 21.1259 23.5178 24.3633C23.5178 27.6007 26.3006 30.2344 29.7213 30.2344C33.142 30.2344 35.9248 27.6007 35.9248 24.3633C35.9248 21.1259 33.142 18.4922 29.7213 18.4922ZM29.7213 29.5437C26.7031 29.5437 24.2476 27.2197 24.2476 24.3633C24.2476 21.5068 26.7027 19.1829 29.7213 19.1829C32.7399 19.1829 35.195 21.5068 35.195 24.3633C35.195 27.2197 32.7395 29.5437 29.7213 29.5437Z" fill="black"/>\n<path d="M26.2045 24.6073L26.5231 24.9963L30.9692 21.729L30.6506 21.3399L26.2045 24.6073Z" fill="black"/>\n<path d="M29.1664 20.9531L26.1924 23.1441L26.5114 23.5327L29.4855 21.3418L29.1664 20.9531Z" fill="black"/>\n<path fill-rule="evenodd" clip-rule="evenodd" d="M35.1588 13.6549C31.5968 11.3448 27.1242 10.4575 22.6779 11.558C14.1495 13.6689 8.94712 22.2938 11.058 30.8221C11.82 33.9008 13.4309 36.5461 15.5797 38.5703L35.1588 13.6549ZM37.5749 15.5774L18.0214 40.4602C21.5534 42.6844 25.9504 43.524 30.3221 42.442C38.8505 40.3311 44.0529 31.7062 41.942 23.1779C41.1983 20.1735 39.6463 17.5819 37.5749 15.5774ZM21.936 8.56089C32.1197 6.04028 42.4185 12.2524 44.9391 22.436C47.4597 32.6197 41.2476 42.9185 31.064 45.4391C20.8803 47.9597 10.5815 41.7476 8.06089 31.564C5.54028 21.3803 11.7524 11.0815 21.936 8.56089Z" fill="'+(null!==(r=null===(a=p.customTemplate)||void 0===a?void 0:a.base_color)&&void 0!==r?r:"#3FC79A")+'" stroke="white" stroke-width="1.6"/>\n</svg>',title:Sn.t("Clean your face")},{key:"light",svg:'<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" x="0px" y="0px"\n\t viewBox="0 0 54 55" style="enable-background:new 0 0 54 55;">\n<path d="M31.9,24.1c-4.8,3.9-9.6,0.2-9.8,0C22,24,21.8,24,21.7,24c-0.1,0.1-0.2,0.2-0.2,0.4L23,34.7c0,0.2,0.2,0.3,0.4,0.3\n\tc0.2,0,0.3-0.2,0.3-0.4l-1.4-9.4c1.5,0.9,5.3,2.6,9.2,0.1l-1.8,9.3c0,0.2,0.1,0.4,0.3,0.4c0,0,0,0,0.1,0c0.2,0,0.3-0.1,0.4-0.3\n\tl2-10.3c0-0.2,0-0.3-0.2-0.4C32.2,24,32,24,31.9,24.1z"/>\n<g id="Layer_x0020_1">\n\t<path fill="'+(null!==(o=null===(s=p.customTemplate)||void 0===s?void 0:s.base_color)&&void 0!==o?o:"#3FC79A")+'" d="M27,49.4c-1.2,0-2.5-0.8-2.5-2.2v-0.9h-2.4c-0.4,0-0.6-0.3-0.6-0.6v-2.5c-0.7,0-1.6,0.2-1.6-0.6v-2.9\n\t\tc-0.7-4.5-2.2-6.2-3.7-7.9c-1.6-1.8-3.1-3.6-3.1-8.4c0-7.7,6.2-13.9,13.9-13.9c7.6,0,13.9,6.2,13.9,13.9c0,4.8-1.5,6.6-3.1,8.4\n\t\tc-1.5,1.7-3,3.4-3.7,7.9v2.9c0,0.8-0.9,0.6-1.6,0.6v2.5c0,0.4-0.3,0.6-0.6,0.6h-2.4v0.9C29.5,48.6,28.2,49.4,27,49.4z M21,38.9H33\n\t\tc1.6-9.2,6.7-7.2,6.7-15.7c0-7-5.7-12.7-12.7-12.7c-7,0-12.7,5.7-12.7,12.7C14.3,31.7,19.4,29.6,21,38.9z M22.1,41.8L22.1,41.8\n\t\th10.7v-1.7H21.1v1.7H22.1z M22.8,44.9h8.5v-1.9h-8.5V44.9z M25.7,46.2c0,0.9-0.2,1.9,1.3,1.9c1.4,0,1.2-1.1,1.2-1.9H25.7z"/>\n</g>\n<path fill="#000" d="M36.7,23.8c-0.4,0-0.6-0.3-0.6-0.6c0-5-4-9.1-9-9.1c-0.8,0-0.8-1.2,0-1.2c5.7,0,10.3,4.6,10.3,10.3\n\tC37.3,23.5,37,23.8,36.7,23.8z"/>\n<path fill="#000" d="M27,8.3c-0.4,0-0.6-0.3-0.6-0.6V4c0-0.8,1.2-0.8,1.2,0v3.7C27.6,8,27.3,8.3,27,8.3z"/>\n<path fill="#000" d="M35.7,10.6c-0.5,0-0.8-0.5-0.5-0.9L37,6.5c0.4-0.7,1.5-0.1,1.1,0.6l-1.8,3.2C36.1,10.5,35.9,10.6,35.7,10.6z"/>\n<path fill="#000" d="M42,17c-0.7,0-0.9-0.8-0.3-1.1l3.2-1.8c0.7-0.4,1.3,0.7,0.6,1.1l-3.2,1.8C42.2,16.9,42.1,17,42,17z"/>\n<path fill="#000" d="M18.3,10.6c-0.2,0-0.4-0.1-0.5-0.3l-1.8-3.2c-0.4-0.7,0.7-1.3,1.1-0.6l1.8,3.2C19.1,10.1,18.8,10.6,18.3,10.6z"\n\t/>\n<path fill="#000" d="M12,16.9c-0.1,0-0.2,0-0.3-0.1L8.5,15c-0.7-0.4-0.1-1.5,0.6-1.1l3.2,1.8C12.8,16.1,12.6,16.9,12,16.9z"/>\n</svg>\n',title:Sn.t("Be in the right light")},{key:"position",svg:'<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" x="0px" y="0px"\n\t viewBox="0 0 54 55" style="enable-background:new 0 0 54 55;" >\n<style type="text/css">\n\t.st2{mask:url(#path-2-outside-1_5552_2676_00000124156348595949881960000006641333605475992464_);fill:none;stroke:#FFFFFF;}\n</style>\n<path id="Shape" fill="'+(null!==(l=null===(u=p.customTemplate)||void 0===u?void 0:u.base_color)&&void 0!==l?l:"#3FC79A")+'" d="M20.3,40.7c-2,0.7-8.5,0.7-8.5,4.8v1.9c0,0.4,0.3,0.6,0.6,0.6h29.4c0.4,0,0.6-0.3,0.6-0.6v-1.9\n\tc0-4.1-6.5-4.1-8.5-4.8c-1.1-0.4-2.1-1.1-3-1.9c-0.3-0.2-0.4-0.6-0.4-0.9c0-1,0.2-1.9,0.6-2.8c2.3-1.5,3.7-4.1,3.7-6.8\n\tc0.7,0,1.3-0.3,1.8-0.7c0.5-0.5,0.8-1.1,0.8-1.8v-1.9c0-1-0.6-1.9-1.4-2.3c2.1-3.2,0.7-8.7-3.4-9.1c-1.3-2.6-5.7-3.1-8.6-2.4\n\tc-4,1-6.6,4.3-7.4,9.5c-0.9,5.2,1.6,10.1-2.6,15.4c-0.2,0.2-0.2,0.5-0.1,0.7s0.4,0.4,0.6,0.3c3.5-0.2,5.2-1.6,6.1-3.7\n\tc0.7,1.1,1.6,2.1,2.7,2.8c0.4,0.9,0.6,1.9,0.6,2.8c0,0.4-0.2,0.7-0.4,0.9C22.4,39.6,21.4,40.3,20.3,40.7L20.3,40.7z M24.2,34.4\n\tc-0.3-0.6-3.5-1.6-3.5-6.5c0-0.5,0.1,0.3-0.7-3.6c-0.1-0.3-0.4-0.6-0.8-0.5c-0.3,0.1-0.6,0.4-0.5,0.8l0.6,3.1c0,0.9,0.1,1.9,0.3,2.8\n\tc-0.7,2.3-1.7,3.6-4.1,4c3.4-5.4,1.2-10.1,2-14.7c0.6-3.3,2.1-7.4,6.5-8.5c2.8-0.7,6.1,0,7.1,1.5c0.2,0.4,0.3,0.9,0.8,0.9\n\tc3.5,0,4.6,5.4,2.2,7.7c-0.2,0.2-0.2,0.4-0.2,0.6c0,0.2,0.2,0.4,0.4,0.5c0.1,0,0.2,0.1,0.4,0c0.7,0.1,1.2,0.6,1.2,1.3v1.9\n\tc0,0.7-0.6,1.3-1.3,1.3c-0.6,0-0.9-0.1-1.1,0.2c-0.2,0.2-0.2,0.5-0.2,0.7c0,4.9-3.2,5.9-3.5,6.5c-0.5,1.1-0.8,2.3-0.8,3.6\n\tc0,0.7,0.3,1.4,0.9,1.9c1,0.9,2.1,1.6,3.4,2.1c2,0.7,7.7,0.8,7.7,3.6v1.3H13.1v-1.3c0-2,2.6-2.6,5.6-3.2c1.8-0.3,3.1-0.5,5.5-2.6\n\tc0.5-0.5,0.9-1.1,0.9-1.9C25.1,36.7,24.8,35.5,24.2,34.4L24.2,34.4z"/>\n<path d="M44.3,25.1c0,10.9-7.8,19.8-17.3,19.8S9.7,36.1,9.7,25.1C9.7,14.2,17.4,5.4,27,5.4S44.3,14.2,44.3,25.1z M10.7,25.1\n\tc0,10.2,7.3,18.5,16.3,18.5s16.3-8.3,16.3-18.5C43.3,14.9,36,6.6,27,6.6S10.7,14.9,10.7,25.1z"/>\n<defs>\n\t<filter id="Adobe_OpacityMaskFilter" filterUnits="userSpaceOnUse" x="9.2" y="4.9" width="35.7" height="40.5">\n\t\t<feColorMatrix type="matrix" values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0"/>\n\t</filter>\n</defs>\n<mask maskUnits="userSpaceOnUse" x="9.2" y="4.9" width="35.7" height="40.5" id="path-2-outside-1_5552_2676_00000124156348595949881960000006641333605475992464_">\n\t<rect x="8.7" y="4.4" fill="#FFFFFF" width="37" height="42"/>\n\t<path d="M44.3,25.1c0,10.9-7.8,19.8-17.3,19.8S9.7,36.1,9.7,25.1C9.7,14.2,17.4,5.4,27,5.4S44.3,14.2,44.3,25.1z M10.7,25.1\n\t\tc0,10.2,7.3,18.5,16.3,18.5s16.3-8.3,16.3-18.5C43.3,14.9,36,6.6,27,6.6S10.7,14.9,10.7,25.1z"/>\n</mask>\n<path class="st2" d="M44.3,25.1c0,10.9-7.8,19.8-17.3,19.8S9.7,36.1,9.7,25.1C9.7,14.2,17.4,5.4,27,5.4S44.3,14.2,44.3,25.1z\n\t M10.7,25.1c0,10.2,7.3,18.5,16.3,18.5s16.3-8.3,16.3-18.5C43.3,14.9,36,6.6,27,6.6S10.7,14.9,10.7,25.1z"/>\n</svg>\n',title:Sn.t("Be neutral face and fix position")}]);p.dom.elInfo=document.createElement("div"),Hn.setAttrs(p.dom.elInfo,{class:"face_age_info "+h.displayModel,style:"height: 100%;display: flex;flex-direction: column;flex: 1 1 0%;overflow: hidden auto;align-self: center;"}),"modal"===h.displayModel&&new si(p.dom.elInfo,this.ctx,this.pv,null,p.formPages.length>1&&h.quiz?function(){p.dom.elInfo.remove(),p.activeQuiz=p.activeQuiz-1>0?p.activeQuiz-1:0,p.intro=!0,h.intro=!0,new ba(p.dom.docIframe,c.ctx,c.pv)}:null,p.formPages.length>1&&h.quiz),p.dom.elInfo.box=document.createElement("div"),Hn.setAttrs(p.dom.elInfo.box,{style:"width: 100%;"+("widget"!==h.displayModel?"margin: auto 0px;":"")}),p.dom.elInfo.boxWindow=document.createElement("div"),Hn.setAttrs(p.dom.elInfo.boxWindow,{class:"info_window"}),p.dom.elInfo.boxTitle=document.createElement("div"),Hn.setAttrs(p.dom.elInfo.boxTitle,{class:"title"}),p.dom.elInfo.boxTitle.innerHTML=("modal"!==h.displayModel?'<div class="goBack"><svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M15.56 5.15999L13.2 2.79999L0 16L13.2 29.2L15.56 26.84L4.72 16L15.56 5.15999Z" fill="black"/></svg></div>':"")+'<div class="bt"><h2>'+Sn.t("Instructions")+"</h2><p>"+Sn.t("Get Ready to Start Skin Analysis")+"</p></div>",p.dom.elInfo.boxWindow.appendChild(p.dom.elInfo.boxTitle),p.dom.elInfo.goBack=p.dom.elInfo.boxTitle.querySelector(".goBack"),p.dom.elInfo.boxItem=document.createElement("div"),Hn.setAttrs(p.dom.elInfo.boxItem,{class:"items"});var f="";Vn().map(m,(function(e,t){f+='<div class="item_intro"><div class="item_main"><div class="icon">'+e.svg+'</div><div class="title">'+e.title+"</div></div></div>"})),p.dom.elInfo.boxItem.innerHTML=f,p.dom.elInfo.boxWindow.appendChild(p.dom.elInfo.boxItem),p.dom.elInfo.privacy=document.createElement("div"),Hn.setAttrs(p.dom.elInfo.privacy,{class:"privacy"}),p.dom.elInfo.privacy.innerHTML='<div class="privacy_face_age"> <div class="check_box"><div class="check_box_input"><svg xmlns="http://www.w3.org/2000/svg" x="0px" y="0px" width="30.114px" height="23.945px" viewBox="0 0 30.114 23.945" enable-background="new 0 0 30.114 23.945" xml:space="preserve" fill="currentColor" role="presentation"><path d="M26.653,0.444l-1.263,1.35L10.399,17.715l-5.586-5.471l-1.321-1.292l-2.584,2.642l1.321,1.292l6.929,6.792l1.343,1.313 l1.292-1.371l16.282-17.3l1.271-1.343L26.653,0.444L26.653,0.444z"></path></svg></div><input type="checkbox" tabindex="0" name="privacy_acept" data-testid="checkbox_privacy_id" style="display: none"></div> <div class="text">'+Sn.t("privacy.text")+" "+(null!=h&&h.privacyUrl||null!=p&&p.privacyUrl?"<br /><br />"+Sn.t("See our")+' <a href="'+((null==h?void 0:h.privacyUrl)||(null==p?void 0:p.privacyUrl))+'" target="_blank">'+Sn.t("Privacy Policy")+"</a> "+Sn.t("for more information")+".":"<br /><br />"+Sn.t("See the website’s privacy policy")+".")+"</div></div>",p.dom.elInfo.boxWindow.appendChild(p.dom.elInfo.privacy),p.dom.elInfo.privacy.checkBox=p.dom.elInfo.privacy.querySelector(".check_box"),p.dom.elInfo.btn=document.createElement("button"),Hn.setAttrs(p.dom.elInfo.btn,{class:"disable",disable:!0}),p.dom.elInfo.btn.innerHTML=Sn.t("Get Started"),p.dom.elInfo.boxWindow.appendChild(p.dom.elInfo.btn),p.dom.elInfo.box.appendChild(p.dom.elInfo.boxWindow),p.dom.elInfo.appendChild(p.dom.elInfo.box),p.privacy&&(p.dom.elInfo.privacy.checkBox.classList.add("active"),p.dom.elInfo.btn.classList.remove("disable"),p.dom.elInfo.btn.setAttribute("disable",!1)),p.dom.elInfo.privacy.addEventListener("click",(function(e){e.target.tagName&&"A"!==e.target.tagName.toUpperCase()&&(p.dom.elInfo.privacy.checkBox.classList.contains("active")?(p.dom.elInfo.privacy.checkBox.classList.remove("active"),p.dom.elInfo.btn.classList.add("disable"),p.dom.elInfo.btn.setAttribute("disable",!0),p.privacy=!1):(p.dom.elInfo.privacy.checkBox.classList.add("active"),p.dom.elInfo.btn.classList.remove("disable"),p.dom.elInfo.btn.setAttribute("disable",!1),p.privacy=!0))})),d.appendChild(p.dom.elInfo),"modal"!==h.displayModel&&p.dom.elInfo.goBack&&(p.formPages.length>1&&h.quiz?p.dom.elInfo.goBack.addEventListener("click",(function(e){p.dom.elInfo.remove(),p.activeQuiz=p.activeQuiz-1>0?p.activeQuiz-1:0,p.intro=!0,h.intro=!0,new ba(p.dom.docIframe,c.ctx,c.pv)})):p.dom.elInfo.goBack.remove())}},{key:"getParentAnchor",value:function(e){for(;null!==e;)if(e.tagName&&"A"!==e.tagName.toUpperCase())return e;return null}}])&&fi(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}(),vi=n(610),bi=n(866);function ki(e){return ki="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ki(e)}function wi(){wi=function(){return t};var e,t={},n=Object.prototype,i=n.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},a="function"==typeof Symbol?Symbol:{},o=a.iterator||"@@iterator",s=a.asyncIterator||"@@asyncIterator",l=a.toStringTag||"@@toStringTag";function u(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{u({},"")}catch(e){u=function(e,t,n){return e[t]=n}}function c(e,t,n,i){var a=t&&t.prototype instanceof y?t:y,o=Object.create(a.prototype),s=new R(i||[]);return r(o,"_invoke",{value:A(e,n,s)}),o}function d(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}t.wrap=c;var p="suspendedStart",h="suspendedYield",m="executing",f="completed",g={};function y(){}function v(){}function b(){}var k={};u(k,o,(function(){return this}));var w=Object.getPrototypeOf,S=w&&w(w(E([])));S&&S!==n&&i.call(S,o)&&(k=S);var P=b.prototype=y.prototype=Object.create(k);function x(e){["next","throw","return"].forEach((function(t){u(e,t,(function(e){return this._invoke(t,e)}))}))}function C(e,t){function n(r,a,o,s){var l=d(e[r],e,a);if("throw"!==l.type){var u=l.arg,c=u.value;return c&&"object"==ki(c)&&i.call(c,"__await")?t.resolve(c.__await).then((function(e){n("next",e,o,s)}),(function(e){n("throw",e,o,s)})):t.resolve(c).then((function(e){u.value=e,o(u)}),(function(e){return n("throw",e,o,s)}))}s(l.arg)}var a;r(this,"_invoke",{value:function(e,i){function r(){return new t((function(t,r){n(e,i,t,r)}))}return a=a?a.then(r,r):r()}})}function A(t,n,i){var r=p;return function(a,o){if(r===m)throw Error("Generator is already running");if(r===f){if("throw"===a)throw o;return{value:e,done:!0}}for(i.method=a,i.arg=o;;){var s=i.delegate;if(s){var l=T(s,i);if(l){if(l===g)continue;return l}}if("next"===i.method)i.sent=i._sent=i.arg;else if("throw"===i.method){if(r===p)throw r=f,i.arg;i.dispatchException(i.arg)}else"return"===i.method&&i.abrupt("return",i.arg);r=m;var u=d(t,n,i);if("normal"===u.type){if(r=i.done?f:h,u.arg===g)continue;return{value:u.arg,done:i.done}}"throw"===u.type&&(r=f,i.method="throw",i.arg=u.arg)}}}function T(t,n){var i=n.method,r=t.iterator[i];if(r===e)return n.delegate=null,"throw"===i&&t.iterator.return&&(n.method="return",n.arg=e,T(t,n),"throw"===n.method)||"return"!==i&&(n.method="throw",n.arg=new TypeError("The iterator does not provide a '"+i+"' method")),g;var a=d(r,t.iterator,n.arg);if("throw"===a.type)return n.method="throw",n.arg=a.arg,n.delegate=null,g;var o=a.arg;return o?o.done?(n[t.resultName]=o.value,n.next=t.nextLoc,"return"!==n.method&&(n.method="next",n.arg=e),n.delegate=null,g):o:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,g)}function j(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function R(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(j,this),this.reset(!0)}function E(t){if(t||""===t){var n=t[o];if(n)return n.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,a=function n(){for(;++r<t.length;)if(i.call(t,r))return n.value=t[r],n.done=!1,n;return n.value=e,n.done=!0,n};return a.next=a}}throw new TypeError(ki(t)+" is not iterable")}return v.prototype=b,r(P,"constructor",{value:b,configurable:!0}),r(b,"constructor",{value:v,configurable:!0}),v.displayName=u(b,l,"GeneratorFunction"),t.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===v||"GeneratorFunction"===(t.displayName||t.name))},t.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,b):(e.__proto__=b,u(e,l,"GeneratorFunction")),e.prototype=Object.create(P),e},t.awrap=function(e){return{__await:e}},x(C.prototype),u(C.prototype,s,(function(){return this})),t.AsyncIterator=C,t.async=function(e,n,i,r,a){void 0===a&&(a=Promise);var o=new C(c(e,n,i,r),a);return t.isGeneratorFunction(n)?o:o.next().then((function(e){return e.done?e.value:o.next()}))},x(P),u(P,l,"Generator"),u(P,o,(function(){return this})),u(P,"toString",(function(){return"[object Generator]"})),t.keys=function(e){var t=Object(e),n=[];for(var i in t)n.push(i);return n.reverse(),function e(){for(;n.length;){var i=n.pop();if(i in t)return e.value=i,e.done=!1,e}return e.done=!0,e}},t.values=E,R.prototype={constructor:R,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(_),!t)for(var n in this)"t"===n.charAt(0)&&i.call(this,n)&&!isNaN(+n.slice(1))&&(this[n]=e)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var n=this;function r(i,r){return s.type="throw",s.arg=t,n.next=i,r&&(n.method="next",n.arg=e),!!r}for(var a=this.tryEntries.length-1;a>=0;--a){var o=this.tryEntries[a],s=o.completion;if("root"===o.tryLoc)return r("end");if(o.tryLoc<=this.prev){var l=i.call(o,"catchLoc"),u=i.call(o,"finallyLoc");if(l&&u){if(this.prev<o.catchLoc)return r(o.catchLoc,!0);if(this.prev<o.finallyLoc)return r(o.finallyLoc)}else if(l){if(this.prev<o.catchLoc)return r(o.catchLoc,!0)}else{if(!u)throw Error("try statement without catch or finally");if(this.prev<o.finallyLoc)return r(o.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var r=this.tryEntries[n];if(r.tryLoc<=this.prev&&i.call(r,"finallyLoc")&&this.prev<r.finallyLoc){var a=r;break}}a&&("break"===e||"continue"===e)&&a.tryLoc<=t&&t<=a.finallyLoc&&(a=null);var o=a?a.completion:{};return o.type=e,o.arg=t,a?(this.method="next",this.next=a.finallyLoc,g):this.complete(o)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),g},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),g}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var i=n.completion;if("throw"===i.type){var r=i.arg;_(n)}return r}}throw Error("illegal catch attempt")},delegateYield:function(t,n,i){return this.delegate={iterator:E(t),resultName:n,nextLoc:i},"next"===this.method&&(this.arg=e),g}},t}function Si(e,t,n,i,r,a,o){try{var s=e[a](o),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(i,r)}function Pi(e){return function(){var t=this,n=arguments;return new Promise((function(i,r){var a=e.apply(t,n);function o(e){Si(a,i,r,o,s,"next",e)}function s(e){Si(a,i,r,o,s,"throw",e)}o(void 0)}))}}function xi(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Ci(i.key),i)}}function Ci(e){var t=function(e){if("object"!=ki(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=ki(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==ki(t)?t:t+""}var Ai=function(){return e=function e(t,n,i,r,a,o,s,l){var u,c,d,p,h=this,m=arguments.length>8&&void 0!==arguments[8]?arguments[8]:"video";!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),c=this,p=!0,(d=Ci(d="isLoading"))in c?Object.defineProperty(c,d,{value:p,enumerable:!0,configurable:!0,writable:!0}):c[d]=p,this.srcElement=t,this.canvasElement=n,this.canvasCtx=n?n.getContext("2d"):null,this.boundingBoxElement=i,this.handleOnResults=o,this.handleLoading=s,this.handleBrightness=l,this.faceDetectionModel=new vi.FaceDetection({locateFile:function(e){return"https://cdn.jsdelivr.net/npm/@mediapipe/face_detection@0.3/".concat(e)}}),this.faceDetectionModel.setOptions({modelSelection:1,enableTracking:10,minDetectionConfidence:.5}),this.onClose=this.onClose.bind(this),this.faceDetectionModel.onResults("video"===m?this.onResultsVideo.bind(this):this.onResultsImage.bind(this)),"video"===m?(this.camera=new bi.Camera(this.srcElement,{onFrame:(u=Pi(wi().mark((function e(){return wi().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,h.faceDetectionModel.send({image:h.srcElement});case 2:h.isLoading&&(h.isLoading=!0,h.handleLoading());case 3:case"end":return e.stop()}}),e)}))),function(){return u.apply(this,arguments)}),width:a,height:a}),this.camera.start()):this.handleImageFaceDetection()},t=[{key:"handleImageFaceDetection",value:(n=Pi(wi().mark((function e(){return wi().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.faceDetectionModel.send({image:this.srcElement});case 2:this.isLoading&&(this.isLoading=!0,this.handleLoading&&this.handleLoading());case 3:case"end":return e.stop()}}),e,this)}))),function(){return n.apply(this,arguments)})},{key:"onResultsVideo",value:function(e){var t=this,n=e.detections;this.canvasElement&&this.onCanvas(e),this.boundingBoxElement.innerHTML="";var i=[];n.map((function(e){var n=e.boundingBox.xCenter-e.boundingBox.width/2,r={width:e.boundingBox.width,height:e.boundingBox.height,yCenter:e.boundingBox.yCenter-e.boundingBox.height/2,xCenter:n,landmarks:e.landmarks};i.push(r);var a=document.createElement("div");Hn.setAttrs(a,{style:"border: 1px solid rgb(255, 213, 0); position: absolute; top: "+100*r.yCenter+"%; right: "+100*r.xCenter+"%; width: "+100*r.width+"%; height: "+100*r.height+"%; z-index: 3;"}),t.boundingBoxElement.appendChild(a)})),this.handleOnResults&&this.handleOnResults(i)}},{key:"onResultsImage",value:function(e){var t=e.detections;this.canvasElement&&this.onCanvas(e);var n=t.map((function(e){var t=e.boundingBox.xCenter-e.boundingBox.width/2;return{width:e.boundingBox.width,height:e.boundingBox.height,yCenter:e.boundingBox.yCenter-e.boundingBox.height/2,xCenter:t,landmarks:e.landmarks}}));this.handleOnResults&&this.handleOnResults(n)}},{key:"onCanvas",value:function(e){if(this.canvasCtx.save(),this.canvasCtx.clearRect(0,0,this.canvasElement.width,this.canvasElement.height),this.canvasCtx.drawImage(e.image,0,0,this.canvasElement.width,this.canvasElement.height),e.detections.length>0){var t=e.detections[0].landmarks;this.analyzeLighting(t)}this.canvasCtx.restore()}},{key:"onClose",value:function(){this.faceDetectionModel.close()}},{key:"analyzeLighting",value:function(e){var t=e[0],n=e[1],i=this.calculateAverageBrightness([t,n]);this.handleBrightness&&this.handleBrightness(i)}},{key:"calculateAverageBrightness",value:function(e){var t=this,n=0;return e.forEach((function(e){var i=Math.round(e.x*t.canvasElement.width),r=Math.round(e.y*t.canvasElement.height),a=t.canvasCtx.getImageData(i,r,1,1).data,o=(a[0]+a[1]+a[2])/3;n+=o})),n/e.length}},{key:"getBlurScore",value:function(e){var t=e.detections[0].boundingBox,n=t.xCenter*this.canvasElement.width,i=t.yCenter*this.canvasElement.height,r=t.width*this.canvasElement.width,a=t.height*this.canvasElement.height,o=this.canvasCtx.getImageData(n,i,r,a),s=this.analyzeBlur(o);console.log("Blur Score:",s),s<100?console.log("Blur detected in face"):console.log("Face is not blurry")}},{key:"analyzeBlur",value:function(e){var t=this.toGrayscale(e),n=this.computeLaplacian(t,e.width,e.height);return this.computeVariance(n)}},{key:"toGrayscale",value:function(e){for(var t=new Array(e.width*e.height).fill(0),n=e.data,i=0;i<n.length;i+=4){var r=.299*n[i]+.587*n[i+1]+.114*n[i+2];t[Math.floor(i/4)]=r}return t}},{key:"computeLaplacian",value:function(e,t,n){for(var i=new Array(t*n).fill(0),r=[[0,1,0],[1,-4,1],[0,1,0]],a=1;a<n-1;a++)for(var o=1;o<t-1;o++){for(var s=0,l=-1;l<=1;l++)for(var u=-1;u<=1;u++)s+=e[(a+l)*t+(o+u)]*r[l+1][u+1];i[a*t+o]=s}return i}},{key:"computeVariance",value:function(e){var t=e.reduce((function(e,t){return e+t}),0)/e.length;return e.reduce((function(e,n){return e+Math.pow(n-t,2)}),0)/e.length}}],t&&xi(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t,n}();function Ti(e){return Ti="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ti(e)}function ji(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,i=Array(t);n<t;n++)i[n]=e[n];return i}function _i(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Ei(i.key),i)}}function Ri(e,t,n){return(t=Ei(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Ei(e){var t=function(e){if("object"!=Ti(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=Ti(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Ti(t)?t:t+""}var Ii=function(){return e=function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),Ri(this,"_facingMode","user"),Ri(this,"_webcamList",[]),Ri(this,"_streamList",[]),Ri(this,"_selectedDeviceId",""),this.start=this.start.bind(this),this.stop=this.stop.bind(this),this.snap=this.snap.bind(this),this.startStream=this.startStream.bind(this)},t=[{key:"facingMode",get:function(){return this._facingMode},set:function(e){this._facingMode=e}},{key:"webcamList",get:function(){return this._webcamList}},{key:"webcamCount",get:function(){return this._webcamList.length}},{key:"selectedDeviceId",get:function(){return this._selectedDeviceId}},{key:"getVideoInputs",value:function(e){var t=this;return this._webcamList=[],e.forEach((function(e){"videoinput"===e.kind&&t._webcamList.push(e)})),1==this._webcamList.length&&(this._facingMode="user"),this._webcamList}},{key:"getMediaConstraints",value:function(e){var t={};return""==this._selectedDeviceId?t.facingMode=this._facingMode:t.deviceId={exact:this._selectedDeviceId},t.width={exact:e.width},t.height={exact:e.height},{video:t,audio:!1}}},{key:"selectCamera",value:function(){var e,t=function(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return ji(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?ji(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var i=0,r=function(){};return{s:r,n:function(){return i>=e.length?{done:!0}:{done:!1,value:e[i++]}},e:function(e){throw e},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,o=!0,s=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}(this._webcamList);try{for(t.s();!(e=t.n()).done;){var n=e.value;if("user"==this._facingMode&&n.label.toLowerCase().includes("front")||"enviroment"==this._facingMode&&n.label.toLowerCase().includes("back")){this._selectedDeviceId=n.deviceId;break}}}catch(e){t.e(e)}finally{t.f()}}},{key:"flip",value:function(){this._facingMode="user"==this._facingMode?"enviroment":"user",this.selectCamera()}},{key:"start",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];return new Promise((function(r,a){t.stop(),navigator.mediaDevices.getUserMedia(t.getMediaConstraints(e)).then((function(n){t._streamList.push(n),t.info().then((function(n){t.selectCamera(),i?t.startStream(e).then((function(e){r(t._facingMode)})).catch((function(e){a(e)})):r(t._selectedDeviceId)})).catch((function(e){a(e)}))})).catch((function(e){n&&n(e.name),a(e)}))}))}},{key:"info",value:function(){var e=this;return new Promise((function(t,n){navigator.mediaDevices.enumerateDevices().then((function(n){e.getVideoInputs(n),t(e._webcamList)})).catch((function(e){n(e)}))}))}},{key:"startStream",value:function(e){var t=this;return new Promise((function(n,i){navigator.mediaDevices.getUserMedia(t.getMediaConstraints(e)).then((function(i){t._streamList.push(i),e.srcObject=i,"user"==t._facingMode&&(e.style.transform="scale(-1,1)");var r=e;setTimeout((function(){r.play()}),1e3),n(t._facingMode)})).catch((function(e){i(e)}))}))}},{key:"stop",value:function(){this._streamList.forEach((function(e){e.getTracks().forEach((function(e){e.stop()}))}))}},{key:"snap",value:function(e){var t=document.createElement("canvas");t.height=e.scrollHeight,t.width=e.scrollWidth;var n=t.getContext("2d");"user"===this._facingMode&&(n.translate(t.width,0),n.scale(-1,1)),n.clearRect(0,0,t.width,t.height),n.drawImage(e,0,0,t.width,t.height);var i=t.toDataURL("image/jpeg");return"data:,"===i&&(i=null),t.remove(),i}}],t&&_i(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function zi(e){return zi="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},zi(e)}function Li(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Mi(i.key),i)}}function Oi(e,t,n){return(t=Mi(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Mi(e){var t=function(e){if("object"!=zi(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=zi(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==zi(t)?t:t+""}var Fi=function(){return e=function e(t,n,i){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:360,a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:480,o=arguments.length>5?arguments[5]:void 0,s=arguments.length>6?arguments[6]:void 0,l=arguments.length>7?arguments[7]:void 0;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),Oi(this,"_facingMode","user"),Oi(this,"_webcamList",[]),Oi(this,"_streamList",[]),Oi(this,"_selectedDeviceId",""),Oi(this,"_canvasElement",null),Oi(this,"loadModel",!1),Oi(this,"flash",!1),Oi(this,"facePosition",!1),Oi(this,"lookStraight",!1),Oi(this,"lighting",!1),Oi(this,"fixStatus",!1),Oi(this,"isCountry",0),Oi(this,"ready",!1),Oi(this,"logs",""),Oi(this,"timeInv",void 0),Oi(this,"setSnap",!1),Oi(this,"image",null),Oi(this,"detection",!1),Oi(this,"faceDetection",void 0),this.el=t,this.gl=n,this.cnf=i,this.width=r,this.height=a,this.handleSubmit=o,this.handleBack=s,this.loading=l,this.setPosition=this.setPosition.bind(this),this.brightnessDetection=this.brightnessDetection.bind(this),this.capture=this.capture.bind(this),this.errorCameraPermission=this.errorCameraPermission.bind(this),this.updateDimension=this.updateDimension.bind(this),this.render(),this.gl.dom.elIframe.contentWindow.addEventListener("resize",this.updateDimension)},t=[{key:"render",value:function(){var e,t,n,i,r,a,o=this,s=this.el,l=this.gl;l.dom.elwebcam=document.createElement("div"),this.updateDimension();var u='<div style="display: flex; justify-content: center;"><div class="webcamRefBox" style="min-width: '+this.height+"px; min-height: "+this.height+"px; max-height: "+this.height+'px; display: block; position: relative;"><div class="face_detect_age"></div><video class="webcamRef" autoplay muted playsinline style="position: absolute; top: 0px; right: 0px; /*opacity: 0; visibility: hidden; z-index: 2; */ border-radius: 10px; width: auto; transform: scaleX(-1);"></video><canvas class="webcamCanvas" id="webcamCanvas" style="position: absolute; z-index: -2; top: 0px; right: 0px; width: auto; transform: scaleX(-1);"></canvas></div></div><div class="faceController"><ul><li><div class="item_ctl lighting" style="background-color: '+(null!==(e=null===(t=l.customTemplate)||void 0===t?void 0:t.position_not_accepted_status_color)&&void 0!==e?e:"rgb(239, 55, 134)")+';"><span class="title">'+Sn.t("Lighting")+'</span><span class="value">'+Sn.t("Not Good")+'</span></div></li><li><div class="item_ctl face_position" style="background-color: '+(null!==(n=null===(i=l.customTemplate)||void 0===i?void 0:i.position_not_accepted_status_color)&&void 0!==n?n:"rgb(239, 55, 134)")+';"><span class="title">'+Sn.t("Face Position")+'</span><span class="value">'+Sn.t("Not Good")+'</span></div></li><li><div class="item_ctl look_straight" style="background-color: '+(null!==(r=null===(a=l.customTemplate)||void 0===a?void 0:a.position_not_accepted_status_color)&&void 0!==r?r:"rgb(239, 55, 134)")+';"><span class="title">'+Sn.t("Look Straight")+'</span><span class="value">'+Sn.t("Not Good")+'</span></div></li></ul></div><div class="facePositionMap" id="face_position_map"></div><div class="facePosition"><svg class="svg_face_position" viewBox="0 0 '+(this.height<460?this.width+" "+this.height:"360 480")+'"><defs><ellipse class="face-ellipse" id="face-ellipse" cx="50%" cy="55%" rx="133.2" ry="153.6" style="stroke: rgb(255, 255, 255);"></ellipse><mask id="mask"><rect x="0" y="0" width="100%" height="100%" fill="#fff" fill-opacity="0.3"></rect><use xlink:href="#face-ellipse"></use></mask></defs><rect x="0" y="0" width="100%" height="100%" mask="url(#mask)"></rect><use xlink:href="#face-ellipse" fill-opacity="0" stroke="white" stroke-width="2"></use></svg><div id="assertive" class="assertive"></div></div>';l.dom.elwebcam.innerHTML=u,s.appendChild(l.dom.elwebcam),l.dom.elwebcamLoad=document.createElement("div"),l.dom.elwebcamLoad.innerHTML='<div class="loading_request"><div class="FaceCircularProgress-root FaceCircularProgress-colorPrimary FaceCircularProgress-indeterminate" role="progressbar" style="width: 40px; height: 40px;"><svg class="FaceCircularProgress-svg" viewBox="22 22 44 44"><circle class="FaceCircularProgress-circle FaceCircularProgress-circleIndeterminate" cx="44" cy="44" r="20.2" fill="none" stroke-width="3.6"></circle></svg></div></div>',l.dom.elwebcam.appendChild(l.dom.elwebcamLoad),l.dom.elwebcam.refBox=l.dom.elwebcam.getElementsByClassName("webcamRefBox")[0],l.dom.elwebcam.ref=l.dom.elwebcam.getElementsByClassName("webcamRef")[0],l.dom.elwebcam.webcamCanvas=l.dom.elwebcam.getElementsByClassName("webcamCanvas")[0],l.dom.elwebcam.faceDetact=l.dom.elwebcam.getElementsByClassName("face_detect_age")[0],l.dom.elwebcam.facePosition=l.dom.elwebcam.getElementsByClassName("face_position")[0],l.dom.elwebcam.lookStraight=l.dom.elwebcam.getElementsByClassName("look_straight")[0],l.dom.elwebcam.lighting=l.dom.elwebcam.getElementsByClassName("lighting")[0],l.dom.elwebcam.svgFacePosition=l.dom.elwebcam.getElementsByClassName("svg_face_position")[0],l.dom.elwebcam.ref.width=this.width,l.dom.elwebcam.ref.height=this.height,l.dom.elwebcam.webcamCanvas.width=l.dom.elwebcam.ref.width,l.dom.elwebcam.webcamCanvas.height=l.dom.elwebcam.ref.height;var c=this;(new Ii).start(l.dom.elwebcam.ref,this.errorCameraPermission).then((function(e){c.facePosition=new Ai(l.dom.elwebcam.ref,l.dom.elwebcam.webcamCanvas,l.dom.elwebcam.faceDetact,o.width,o.height,(function(e){return c.setPosition(e)}),(function(){return c.loadingDetection()}),(function(e){return c.brightnessDetection(e)}))})).catch((function(e){new Error(e)}))}},{key:"setPosition",value:function(){var e,t,n,i,r,a,o,s,l=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],u=this.gl,c=this;if(u.intro)return!1;if(1===l.length&&!this.fixStatus){var d=u.dom.elIframe.contentDocument.getElementById("face_age_analyzer");if(d&&u.dom.elwebcam.ref){var p=d.getBoundingClientRect().width,h=d.getBoundingClientRect().height,m=u.dom.elwebcam.ref.offsetWidth,f=u.dom.elwebcam.ref.offsetHeight,g=m-p,y=l[0],v=m*(100*y.width)/100*100/p,b=f*(100*y.height)/100*100/h,k=100*y.yCenter,w=100*(m*(100*y.xCenter)/100-g/2)/p,S=100*y.landmarks[2].y,P=100*y.landmarks[2].x;Math.round(P)-Math.round(w)>v/3&&Math.round(P)-Math.round(w)<v/2.5*1.5&&Math.round(S)-Math.round(k)>b/3&&Math.round(S)-Math.round(k)<b/2.5*1.5?this.lookStraight=!0:this.lookStraight=!1;var x=!1,C=!1,A=!1;if(v>=55&&(v>85?this.logs=Sn.t("Your distance is close to the camera"):(this.logs=null,x=!0)),w>=10&&w<35&&(C=!0),k>=15&&k<75&&(A=!0),x&&C&&A)if(this.logs=null,this.facePosition=!0,this.lookStraight){if(!this.ready){this.ready=!0;var T=3;c.timeInv=setInterval((function(){c.isCountry=T,T<=1?c.setSnap||(c.setSnap=!0,clearInterval(c.timeInv),setTimeout((function(){c.flash=!0,c.capture()}),700)):T=--T}),800)}}else this.ready=!1,this.isCountry=0,clearInterval(c.timeInv);else x?(this.facePosition=!1,this.logs=Sn.t("Keep your face inside the circle"),this.ready=!1,this.isCountry=0,clearInterval(c.timeInv)):(this.facePosition=!1,this.ready=!1,this.isCountry=0,clearInterval(c.timeInv))}}if(u.dom.elwebcam.facePosition.style.backgroundColor=this.facePosition?null!==(e=null===(t=u.customTemplate)||void 0===t?void 0:t.position_accepted_status_color)&&void 0!==e?e:"rgb(8, 211, 144)":null!==(n=null===(i=u.customTemplate)||void 0===i?void 0:i.position_not_accepted_status_color)&&void 0!==n?n:"rgb(239, 55, 134)",u.dom.elwebcam.facePosition.getElementsByClassName("value")[0].innerHTML=this.facePosition?Sn.t("Good"):Sn.t("Not Good"),u.dom.elwebcam.getElementsByClassName("face-ellipse")[0]&&(u.dom.elwebcam.getElementsByClassName("face-ellipse")[0].style.stroke=this.facePosition?"rgba(255,255,255,0.32)":"#fff"),u.dom.elwebcam.lookStraight.style.backgroundColor=this.lookStraight?null!==(r=null===(a=u.customTemplate)||void 0===a?void 0:a.position_accepted_status_color)&&void 0!==r?r:"rgb(8, 211, 144)":null!==(o=null===(s=u.customTemplate)||void 0===s?void 0:s.position_not_accepted_status_color)&&void 0!==o?o:"rgb(239, 55, 134)",u.dom.elwebcam.lookStraight.getElementsByClassName("value")[0].innerHTML=this.lookStraight?Sn.t("Good"):Sn.t("Not Good"),u.dom.elwebcam.getElementsByClassName("assertive")[0]){var j=u.dom.elwebcam.getElementsByClassName("assertive")[0];l.length<=0?j.innerHTML=Sn.t("Please stand in front of the camera"):l.length>1?j.innerHTML=Sn.t("There is more than one person in the picture"):this.logs?j.innerHTML=this.logs:this.isCountry?j.innerHTML='<div class="countryPhoto">'+this.isCountry+"</div>":j.innerHTML=""}}},{key:"brightnessDetection",value:function(){var e,t,n,i,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,a=this.gl;a.dom.elwebcam.lighting.style.backgroundColor=r>50?null!==(e=null===(t=a.customTemplate)||void 0===t?void 0:t.position_accepted_status_color)&&void 0!==e?e:"rgb(8, 211, 144)":null!==(n=null===(i=a.customTemplate)||void 0===i?void 0:i.position_not_accepted_status_color)&&void 0!==n?n:"rgb(239, 55, 134)",a.dom.elwebcam.lighting.getElementsByClassName("value")[0].innerHTML=r>50?Sn.t("Good"):Sn.t("Not Good")}},{key:"capture",value:function(){var e=this,t=this.gl;if(clearInterval(this.timeInv),t.imageWebCam)return!1;if(t.intro)return!1;var n=new Ii;t.imageWebCam=n.snap(t.dom.elwebcam.ref),n.stop();var i='<div><div style="display: flex; justify-content: center;"><div style="position: relative;"><img class="image_per_camera" src="'+t.imageWebCam+'" alt="" style="width: auto; height: '+this.height+"px; max-height: "+this.height+'px; position: relative;"></div></div><div class="faceActionSubmit"><button class="FaceButtonBase-root FaceIconButton-root handle-back" tabindex="0" type="button"><span class="FaceIconButton-label"><svg viewBox="0 0 24 24" fill="currentColor" style="width: 24px; height: 24px;"><path d="M12 5V1L7 6l5 5V7c3.31 0 6 2.69 6 6s-2.69 6-6 6-6-2.69-6-6H4c0 4.42 3.58 8 8 8s8-3.58 8-8-3.58-8-8-8z"></path></svg></span><span class="FaceTouchRipple-root"></span></button><button class="FaceButtonBase-root FaceIconButton-root handle-submit" tabindex="0" type="button"><span class="FaceIconButton-label"><svg viewBox="0 0 24 24" fill="currentColor" style="width: 24px; height: 24px;"><path d="M9 16.17 5.53 12.7a.9959.9959 0 0 0-1.41 0c-.39.39-.39 1.02 0 1.41l4.18 4.18c.39.39 1.02.39 1.41 0L20.29 7.71c.39-.39.39-1.02 0-1.41a.9959.9959 0 0 0-1.41 0L9 16.17z"></path></svg></span><span class="FaceTouchRipple-root"></span></button></div></div>';t.dom.elwebcam.innerHTML=i,t.dom.showUploadAction&&(t.dom.showUploadAction.style.display="none"),t.dom.showCameraAction&&(t.dom.showCameraAction.style.display="none"),t.dom.elwebcam.handleImage=t.dom.elwebcam.getElementsByClassName("handle-submit")[0],t.dom.elwebcam.handleBack=t.dom.elwebcam.getElementsByClassName("handle-back")[0],t.dom.elwebcam.imagePerCamera=t.dom.elwebcam.getElementsByClassName("image_per_camera")[0],t.dom.elwebcam.handleImage.addEventListener("click",(function(){e.handleSubmit(t.imageWebCam)})),t.dom.elwebcam.handleBack.addEventListener("click",(function(){t.imageWebCam=null,e.isCountry=0,e.ready=!1,e.setSnap=!1,e.image=null,e.logs=null,e.facePosition=!1,e.lookStraight=!1,t.dom.showUploadAction&&(t.dom.showUploadAction.style.display="block"),t.dom.showCameraAction&&(t.dom.showCameraAction.style.display="block"),e.handleBack()}))}},{key:"errorCameraPermission",value:function(e){var t=this.gl,n='<div><div class="mainDragArea"><div class="dragArea" style="height: '+this.height+'px;"><svg class="MuiSvgIcon-root MuiSvgIcon-fontSizeMedium css-vubbuv" focusable="false" aria-hidden="true" viewBox="0 0 24 24" data-testid="DirtyLensTwoToneIcon"><path d="M14.12 5H9.88L8.05 7H4v12h7.27c.14-.98.42-2.05-.16-2.43-.89-.59-1.27 2.06-2.8 1.35-1.39-1.12 1.05-1.29.5-3.27-.22-.79-2.28.36-2.4-1.24-.08-1 1.49-.74 1.51-1.49.03-.75-1.03-1.05-.25-1.91.22-.24.71-.26.91-.19.79.27 1.55 1.82 2.51 1.19 1.03-.66-1.88-2.35 0-2.86 1.64-.44 1.31 2.08 2.65 2.44 1.94.52 2.65-4.55 4.41-2.33 1.85 2.33-3.43 2.27-2.85 4.01.34 1.01 2.15-1.2 2.76.53.64 1.83-3.09.82-3.04 1.66.06.83 2.41.55 1.64 2.12-1.14 1.86-3-1.03-3.81.09-.39.57-.09 1.49.13 2.33H20V7h-4.05l-1.83-2zM19 17.15c0 .48-.38.86-.86.86-.47 0-.86-.38-.86-.86s.38-.86.86-.86c.47 0 .86.38.86.86z" opacity=".3"></path><path d="M20 5h-3.17L15 3H9L7.17 5H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 14h-7.02c-.22-.84-.52-1.76-.13-2.33.81-1.12 2.67 1.77 3.81-.09.77-1.57-1.58-1.29-1.64-2.12-.05-.84 3.68.17 3.04-1.66-.61-1.73-2.42.48-2.76-.53-.58-1.74 4.7-1.68 2.85-4.01-1.76-2.22-2.47 2.85-4.41 2.33-1.34-.36-1.01-2.88-2.65-2.44-1.88.51 1.03 2.2 0 2.86-.96.63-1.72-.92-2.51-1.19-.2-.07-.69-.05-.91.19-.78.86.28 1.16.25 1.91-.02.75-1.59.49-1.51 1.49.12 1.6 2.18.45 2.4 1.24.55 1.98-1.89 2.15-.5 3.27 1.53.71 1.91-1.94 2.8-1.35.58.38.3 1.45.16 2.43H4V7h4.05l1.83-2h4.24l1.83 2H20v12z"></path><path d="M17.28 17.15c0 .48.39.86.86.86.48 0 .86-.38.86-.86s-.39-.86-.86-.86c-.48 0-.86.38-.86.86z"></path></svg><div class="headerBox">'+Sn.t("Error")+'</div><div class="support">'+("NotAllowedError"===e||"PermissionDeniedError"===e?Sn.t("Camera permission denied."):Sn.t("Unable to access the camera."))+"</div></div></div></div>";t.dom.elwebcam.innerHTML=n,t.dom.elwebcam.dragArea=t.dom.elwebcam.getElementsByClassName("dragArea")[0]}},{key:"loadingDetection",value:function(){this.gl.dom.elwebcamLoad.style.display="none",this.detection=!0}},{key:"stop",value:function(){(new Ii).stop()}},{key:"updateDimension",value:function(){var e=this.gl,t=this.cnf,n=Hn.getSizeFrame(e,t);this.width=n.width,this.height=n.height,e.dom.elwebcam&&e.dom.elwebcam.ref&&(e.dom.elwebcam.ref.width=this.width,e.dom.elwebcam.ref.height=this.height),e.dom.elwebcam&&e.dom.elwebcam.webcamCanvas&&(e.dom.elwebcam.webcamCanvas.width=e.dom.elwebcam.ref.width,e.dom.elwebcam.webcamCanvas.height=e.dom.elwebcam.ref.height),e.dom.elwebcam&&e.dom.elwebcam.refBox&&(e.dom.elwebcam.refBox.style.minWidth=this.height+"px",e.dom.elwebcam.refBox.style.minHeight=this.height+"px",e.dom.elwebcam.refBox.style.maxHeight=this.height+"px"),e.dom.elwebcam&&e.dom.elwebcam.imagePerCamera&&(e.dom.elwebcam.imagePerCamera.style.Height=this.height+"px",e.dom.elwebcam.imagePerCamera.style.maxHeight=this.height+"px"),e.dom.elwebcam&&e.dom.elwebcam.dragArea&&(e.dom.elwebcam.dragArea.style.height=this.height+"px"),e.dom.elwebcam&&e.dom.elwebcam.svgFacePosition&&(this.height<460?Hn.setAttrs(e.dom.elwebcam.svgFacePosition,{viewBox:"0 0 "+this.width+" "+this.height}):Hn.setAttrs(e.dom.elwebcam.svgFacePosition,{viewBox:"0 0 360 480"}))}}],t&&Li(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}(),Di=n(643),Bi=n.n(Di);function Ni(e){return Ni="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ni(e)}function Gi(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Ui(i.key),i)}}function Ui(e){var t=function(e){if("object"!=Ni(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=Ni(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Ni(t)?t:t+""}var Hi=function(){return e=function e(t,n,i,r,a){var o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"OK",s=arguments.length>6&&void 0!==arguments[6]?arguments[6]:"Cancel",l=arguments.length>7&&void 0!==arguments[7]&&arguments[7];!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.gl=t,this.onAccept=n,this.onCancel=i,this.title=r,this.text=a,this.titleAccept=o,this.titleCancel=s,this.close=l,this.render()},(t=[{key:"render",value:function(){var e=this,t=this.gl;t.dom.elModal=document.createElement("div"),Hn.setAttrs(t.dom.elModal,{class:"modal_face_age",style:"position: absolute;top: 0;left: 0;right: 0;bottom: 0;z-index: 99999999;text-align: center;background: rgb(0 0 0 / 34%);display: flex;align-items: center;"}),t.dom.elModal.box=document.createElement("div"),Hn.setAttrs(t.dom.elModal.box,{style:"width: 100%;"});var n='<div class="modal_window">'+(this.title?'<div class="title">'+this.title+"</div>":"")+'<div class="body">'+this.text+'</div><div class="action"><div class="sc-1x1y2bq-2 sc-1kkf162-1 dZaMnF lbSetf">'+(this.onCancel?'<div tabindex="0" role="button" width="fullWidth" class="sc-1x1y2bq-3 bLwrg cancel">'+this.titleCancel+"</div>":"")+(this.onAccept?'<div tabindex="0" role="button" width="fullWidth" class="sc-1x1y2bq-3 bLwrg accept">'+this.titleAccept+"</div>":"")+"</div></div></div>";t.dom.elModal.box.innerHTML=n,t.dom.elModal.cancel=t.dom.elModal.box.getElementsByClassName("cancel")[0],t.dom.elModal.accept=t.dom.elModal.box.getElementsByClassName("accept")[0],t.dom.elModal.cancel&&t.dom.elModal.cancel.addEventListener("click",(function(t){e.onCancel()})),t.dom.elModal.accept&&t.dom.elModal.accept.addEventListener("click",(function(t){e.onAccept()})),t.dom.elModal.appendChild(t.dom.elModal.box),t.dom.elFace.analyzer.appendChild(t.dom.elModal)}}])&&Gi(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function Wi(e){return Wi="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Wi(e)}function Vi(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Ji(i.key),i)}}function qi(e,t,n){return(t=Ji(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Ji(e){var t=function(e){if("object"!=Wi(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=Wi(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Wi(t)?t:t+""}var Yi=function(){return e=function e(t,n,i){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:360,a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:480,o=arguments.length>5?arguments[5]:void 0,s=arguments.length>6?arguments[6]:void 0,l=arguments.length>7?arguments[7]:void 0;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),qi(this,"fileUrl",null),qi(this,"image",null),qi(this,"logs",null),qi(this,"hasFace",!1),this.el=t,this.gl=n,this.cnf=i,this.width=r,this.height=a,this.handleSubmit=o,this.handleBack=s,this.loading=l,this.handelDragOver=this.handelDragOver.bind(this),this.handelDragLeave=this.handelDragLeave.bind(this),this.handelDrop=this.handelDrop.bind(this),this.handelClick=this.handelClick.bind(this),this.handelChangeInput=this.handelChangeInput.bind(this),this.displayFile=this.displayFile.bind(this),this.showCropMode=this.showCropMode.bind(this),this.updateDimension=this.updateDimension.bind(this),this.render()},t=[{key:"render",value:function(){var e=this,t=this.el,n=this.gl;this.updateDimension(),n.dom.elIframe.contentWindow.addEventListener("resize",this.updateDimension),n.dom.elupload=document.createElement("div");var i='<div class="mainDragArea"><div class="dragArea" style="height: '+this.height+'px;"><svg viewBox="0 0 24 24" fill="currentColor" style="width: 40px; height: 40px;"><path d="M8 16h12V4H8v12zm3.5-4.33l1.69 2.26 2.48-3.09L19 15H9l2.5-3.33z" opacity=".3"></path><path d="M22 16V4c0-1.1-.9-2-2-2H8c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2zm-2 0H8V4h12v12zm-4.33-5.17l-2.48 3.09-1.69-2.25L9 15h10zM4 22h14v-2H4V6H2v14c0 1.1.9 2 2 2z"></path></svg><div class="headerBox dragTitle">'+Sn.t("Drag & Drop")+'</div><div class="headerBox">'+Sn.t("Or")+' <span class="buttonUpload">'+Sn.t("browse")+'</span></div><input type="file" class="upload_file_image" id="upload_file_image" accept="image/jpeg,image/png,image/jpg,image/webp" hidden=""><span class="support">'+Sn.t("Supports: JPEG, JPG, PNG")+"</span></div></div>";n.dom.elupload.innerHTML=i,t.appendChild(n.dom.elupload),n.dom.elupload.dragArea=n.dom.elupload.getElementsByClassName("dragArea")[0],this.dragTitle=n.dom.elupload.getElementsByClassName("dragTitle")[0],n.dom.elupload.buttonUpload=n.dom.elupload.getElementsByClassName("buttonUpload")[0],n.dom.elupload.uploadFile=n.dom.elupload.getElementsByClassName("upload_file_image")[0],n.dom.elupload.dragArea.addEventListener("dragover",this.handelDragOver),n.dom.elupload.dragArea.addEventListener("dragleave",this.handelDragLeave),n.dom.elupload.dragArea.addEventListener("drop",this.handelDrop),n.dom.elupload.buttonUpload.addEventListener("click",(function(){return e.handelClick(n.dom.elupload.uploadFile)})),n.dom.elupload.uploadFile.addEventListener("change",(function(t){return e.handelChangeInput(t)}))}},{key:"handelDragOver",value:function(e){e.preventDefault(),this.dragTitle.innerHTML=Sn.t("Release to Upload"),e.target.classList.add("active")}},{key:"handelDragLeave",value:function(e){this.dragTitle.innerHTML=Sn.t("Drag & Drop"),e.target.classList.remove("active")}},{key:"handelDrop",value:function(e){e.preventDefault();var t=e.dataTransfer.files[0];t&&this.displayFile(t),this.dragTitle.innerHTML=Sn.t("Drag & Drop"),e.target.classList.remove("active")}},{key:"handelClick",value:function(e){e&&e.click()}},{key:"handelChangeInput",value:function(e){var t=e.target.files[0];t&&this.displayFile(t)}},{key:"displayFile",value:function(e){var t=this,n=e.type,i=this.gl;if(["image/png","image/jpeg","image/jpg","image/webp"].includes(n)){var r=new FileReader;r.onload=function(){"image/webp"===n?t.compressImageFromURL(r.result,1).then((function(e){t.fileUrl=e,t.cropImage()})):(t.fileUrl=r.result,t.cropImage())},r.readAsDataURL(e)}else new Hi(i,null,(function(){i.dom.elModal.remove()}),Sn.t("Error"),Sn.t("file not supported, file name: ")+n,"",Sn.t("Re-take"))}},{key:"cropImage",value:function(){var e=this,t=this.el,n=this.gl;n.dom.elupload.remove(),n.dom.elupload=document.createElement("div"),n.dom.showUploadAction&&(n.dom.showUploadAction.style.display="none"),n.dom.showCameraAction&&(n.dom.showCameraAction.style.display="none");var i='<div class="mainDragArea"><div class="cropImg" style="border-radius: 30px; height: '+this.height+'px;"><div style="display: block; width: 100%;" class="face_crop_img"></div></div></div><div class="faceAction_upload"><button class="FaceButtonBase-root FaceIconButton-root handle-back" tabindex="0" type="button"><span class="FaceIconButton-label"><svg viewBox="0 0 24 24" fill="currentColor" style="width: 24px; height: 24px;"><path d="M12 5V1L7 6l5 5V7c3.31 0 6 2.69 6 6s-2.69 6-6 6-6-2.69-6-6H4c0 4.42 3.58 8 8 8s8-3.58 8-8-3.58-8-8-8z"></path></svg></span><span class="FaceTouchRipple-root"></span></button><button class="FaceButtonBase-root FaceIconButton-root handle-submit disable" tabindex="0" type="button"><span class="FaceIconButton-label"><svg viewBox="0 0 24 24" fill="currentColor" style="width: 24px; height: 24px;"><path d="M9 16.17 5.53 12.7a.9959.9959 0 0 0-1.41 0c-.39.39-.39 1.02 0 1.41l4.18 4.18c.39.39 1.02.39 1.41 0L20.29 7.71c.39-.39.39-1.02 0-1.41a.9959.9959 0 0 0-1.41 0L9 16.17z"></path></svg></span><span class="FaceTouchRipple-root"></span></button></div>';n.dom.elupload.innerHTML=i,t.appendChild(n.dom.elupload),n.dom.eluploadLoad=document.createElement("div"),n.dom.eluploadLoad.innerHTML='<div class="loading_request"><div class="FaceCircularProgress-root FaceCircularProgress-colorPrimary FaceCircularProgress-indeterminate" role="progressbar" style="width: 40px; height: 40px;"><svg class="FaceCircularProgress-svg" viewBox="22 22 44 44"><circle class="FaceCircularProgress-circle FaceCircularProgress-circleIndeterminate" cx="44" cy="44" r="20.2" fill="none" stroke-width="3.6"></circle></svg></div></div>',n.dom.elupload.appendChild(n.dom.eluploadLoad),n.dom.elupload.faceCropImg=n.dom.elupload.getElementsByClassName("face_crop_img")[0],n.dom.elupload.cropImgBox=n.dom.elupload.getElementsByClassName("cropImg")[0],n.dom.elupload.faceCropImg.image=document.createElement("img"),Hn.setAttrs(n.dom.elupload.faceCropImg.image,{id:"face_image",src:this.fileUrl}),n.dom.elupload.faceCropImg.appendChild(n.dom.elupload.faceCropImg.image);var r=this;new Ai(n.dom.elupload.faceCropImg.image,null,null,this.width,this.height,(function(e){return r.showCropMode(e)}),(function(){return r.loadingDetection()}),null,"image"),n.dom.elupload.handleImage=n.dom.elupload.getElementsByClassName("handle-submit")[0],n.dom.elupload.handleBack=n.dom.elupload.getElementsByClassName("handle-back")[0],n.dom.elupload.handleImage.addEventListener("click",(function(){if(!e.hasFace)return!1;r.handleSubmit(r.image)})),n.dom.elupload.handleBack.addEventListener("click",(function(){n.dom.elupload.innerHTML="",r.image=null,n.dom.showUploadAction&&(n.dom.showUploadAction.style.display="block"),n.dom.showCameraAction&&(n.dom.showCameraAction.style.display="block"),r.handleBack()}))}},{key:"showCropMode",value:function(e){var t=this.gl,n=t.dom.elupload.faceCropImg.image.naturalWidth,i=t.dom.elupload.faceCropImg.image.naturalHeight,r=this,a=e[0];if(!a)return new Hi(t,null,(function(){t.dom.elupload.innerHTML="",r.image=null,t.dom.showUploadAction&&(t.dom.showUploadAction.style.display="block"),t.dom.showCameraAction&&(t.dom.showCameraAction.style.display="block"),r.render(),t.dom.elModal.remove()}),Sn.t("Error"),Sn.t("The face is not visible in the picture"),"",Sn.t("Re-take")),null;t.dom.elupload.handleImage.classList.remove("disable"),this.hasFace=!0;var o=n*(100*a.width)/100,s=i*(100*a.height)/100,l=i*(100*a.yCenter)/100,u=n*(100*a.xCenter)/100,c=document.createElement("div");e.length<=0?c.innerHTML='<div style="background: rgb(255, 255, 255); border-radius: 10px; padding: 8px 15px; margin-bottom: 10px; position: absolute; top: 15px; left: 10px; right: 10px;">Please stand in front of the camera</div>':e.length>1&&(c.innerHTML='<div style="background: rgb(255, 255, 255); border-radius: 10px; padding: 8px 15px; margin-bottom: 10px; position: absolute; top: 15px; left: 10px; right: 10px;">There is more than one person in the picture, please select one person\'s picture.</div>'),t.dom.elupload.faceCropImg.appendChild(c);var d=new(Bi())(t.dom.elupload.faceCropImg.image,{aspectRatio:15/18,guides:!1,zoomable:!1,data:{x:u/1.6,y:l/2.5,width:o+2*(u-u/1.6),height:s+2*(l-l/2.5)},crop:function(e){var t=d.getCroppedCanvas({maxWidth:4096,maxHeight:4096}).toDataURL("image/jpeg");r.image=t}})}},{key:"loadingDetection",value:function(){this.gl.dom.eluploadLoad.style.display="none"}},{key:"updateDimension",value:function(){var e=this.gl,t=this.cnf,n=Hn.getSizeFrame(e,t);this.width=n.width,this.height=n.height,e.dom.elupload&&e.dom.elupload.dragArea&&(e.dom.elupload.dragArea.style.height=this.height+"px"),e.dom.elupload&&e.dom.elupload.cropImgBox&&(e.dom.elupload.cropImgBox.style.height=this.height+"px")}},{key:"compressImageFromURL",value:function(e,t){return new Promise((function(n,i){var r=new Image;r.crossOrigin="Anonymous",r.src=e,r.onload=function(){var e=document.createElement("canvas"),i=e.getContext("2d");e.width=r.width,e.height=r.height,i.drawImage(r,0,0,e.width,e.height);var a=e.toDataURL("image/jpeg",t);n(a)},r.onerror=function(e){return i(e)}}))}}],t&&Vi(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function Ki(e){return Ki="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ki(e)}function $i(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Zi(i.key),i)}}function Zi(e){var t=function(e){if("object"!=Ki(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=Ki(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Ki(t)?t:t+""}var Xi=function(){return e=function e(t,n){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3&&void 0!==arguments[3]&&arguments[3];!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.el=t,this.ctx=n,this.w=n.w,this.gl=n.w.globals,this.pr=i,this.unitPrice=n.w.config.currency?n.w.config.currency:"$",this.routine=r,this.render()},(t=[{key:"render",value:function(){var e,t,n,i,r=this,a=this.el,o=this.w.globals,s=this.w.config,l=this.pr,u=document.createElement("div");Hn.setAttrs(u,{class:"product_item_box","data-id":l.id,style:""});var c=null===(e=o.customTemplate)||void 0===e?void 0:e.product_shadow,d=null===(t=o.customTemplate)||void 0===t?void 0:t.product_border_width,p=null===(n=o.customTemplate)||void 0===n?void 0:n.product_border_color,h=null===(i=o.customTemplate)||void 0===i?void 0:i.product_padding,m="";m+=c?"box-shadow: 0 0 5px 0 #0000002b;":"",m+=h?"padding: "+h+"px;":"padding: 10px;",m+=d&&p?"border: "+d+"px solid "+p+";":p?"border: 1px solid "+p+";":"";var f=document.createElement("div");Hn.setAttrs(f,{class:"product_item",style:m});var g=document.createElement("a");if(Hn.setAttrs(g,{class:"product_item_link","data-id":l.id,target:"_blank",href:l.url?l.url:"#"}),!this.routine&&void 0!==l.routineGroups&&l.routineGroups){var y=document.createElement("div");Hn.setAttrs(y,{class:"routine_group"});var v=[];Array.isArray(l.routineGroups)?l.routineGroups.map((function(e){var t=!0;s.routinesSupport.length>0&&(s.routinesSupport.includes(e)||(t=!1));var n=o.customRoutineGroup.find((function(t){return t.key.toLowerCase()===e.toLowerCase()}));n&&t&&!v.includes(Sn.t(n.title))&&v.push(Sn.t(n.title))})):"object"===Ki(l.routineGroups)&&(v=[],Object.keys(l.routineGroups).forEach((function(e){l.routineGroups[e].map((function(t){var n=!0;s.routinesSupport.length>0&&(s.routinesSupport.includes(t)||(n=!1));var i=o.customRoutineGroup.find((function(n){return n.key.toLowerCase()===t.toLowerCase()&&n.status.includes(e)}));i&&n&&!v.includes(Sn.t(i.title))&&v.push(Sn.t(i.title))}))}))),v.length>0&&(y.innerHTML="<span>"+v.join(", ")+"</span>",g.appendChild(y))}var b=document.createElement("img");Hn.setAttrs(b,{class:"product_image",src:l.image,alt:l.title}),g.appendChild(b);var k=document.createElement("h2");Hn.setAttrs(k,{class:"product_title"}),k.innerText=Sn.t(l.title),g.appendChild(k);var w=document.createElement("p");if(Hn.setAttrs(w,{class:"product_description"}),w.innerText=Sn.t(l.description),g.appendChild(w),f.appendChild(g),void 0!==l.problems&&l.problems){var S=document.createElement("div");Hn.setAttrs(S,{class:"product_problem_support swiper myProductProblem"});var P=document.createElement("div");Hn.setAttrs(P,{class:"swiper-wrapper"});var x=[];l.problems.map((function(e){if(!x.includes(e)){x.push(e);var t=document.createElement("div");Hn.setAttrs(t,{class:"swiper-slide"});var n=document.createElement("div");Hn.setAttrs(n,{class:"product_problem_item"}),Object.keys(o.problems).forEach((function(t,i){var r=o.problems[t];t.toLowerCase()===e.toLowerCase()&&(n.innerText=Sn.t(r))})),t.appendChild(n),P.appendChild(t)}})),S.appendChild(P),f.appendChild(S)}var C=document.createElement("div");Hn.setAttrs(C,{class:"product_price"});var A=document.createElement("span");Hn.setAttrs(A,{class:"price"});var T=document.createElement("span");if(Hn.setAttrs(T,{class:"old"}),void 0!==l.offerPrice&&l.offerPrice>0&&l.offerPrice<l.price?(A.innerText=this.unitPrice+l.offerPrice,T.innerText=this.unitPrice+l.price,C.appendChild(A),C.appendChild(T),f.appendChild(C)):l.price&&(A.innerText=this.unitPrice+l.price,C.appendChild(A),f.appendChild(C)),void 0!==l.variables&&l.variables){var j=document.createElement("div");Hn.setAttrs(j,{class:"product_variables"}),Object.keys(l.variables).forEach((function(e,t){var n=l.variables[e],i=document.createElement("div");Hn.setAttrs(i,{class:"item"});var a=document.createElement("label");a.innerText=Sn.t(n.title),i.appendChild(a);var o=document.createElement("select");Hn.setAttrs(o,{class:"product_variables_select",name:e,"data-id":l.id}),Array.isArray(n.option)&&n.option.forEach((function(e,t){var n=document.createElement("option");n.value=e.value,n.text=Sn.t(e.label),0===t&&n.setAttribute("selected",!0),o.appendChild(n)})),o.addEventListener("change",(function(e){n.option.forEach((function(t,n){t.value===e.target.value&&(t.price?void 0!==t.offerPrice&&t.offerPrice>0&&t.offerPrice<t.price?(A.innerText=r.unitPrice+t.offerPrice,T&&T.remove(),T=document.createElement("span"),Hn.setAttrs(T,{class:"old"}),T.innerText=r.unitPrice+t.price,C.appendChild(T)):t.price&&(A.innerText=r.unitPrice+t.price,T&&T.remove()):void 0!==l.offerPrice&&l.offerPrice>0&&l.offerPrice<l.price?(A.innerText=r.unitPrice+l.offerPrice,T&&T.remove(),T=document.createElement("span"),Hn.setAttrs(T,{class:"old"}),T.innerText=r.unitPrice+l.price,C.appendChild(T)):l.price&&(A.innerText=r.unitPrice+l.price,T&&T.remove()))}))})),i.appendChild(o),j.appendChild(i)})),f.appendChild(j)}if(s.showAddToCard){var _=document.createElement("button");Hn.setAttrs(_,{class:"product_add_to_cart","data-id":l.id}),_.innerText=Sn.t("Add to cart"),_.addEventListener("click",(function(e){var t=e.target.getAttribute("data-id"),n=e.target.parentElement.querySelectorAll(".product_variables_select"),i=[];n&&n.forEach((function(e){if(e&&e.options.length>0){var t=e.getAttribute("name"),n=(e.getAttribute("data-id"),e.selectedIndex);if(-1!==n){var r=e.options[n];i[t]=r.value}}})),e.target.classList.contains("active")||(e.target.classList.add("active"),e.target.innerText=Sn.t("Add again")),o.dom.elRecommendation.checkOut&&(o.dom.elRecommendation.checkOut.style.display="block"),o.productAddToCart.find((function(e){return e.id===t}))||o.productAddToCart.push({id:t,variable:i}),o.onAddToCart&&o.onAddToCart([{id:t,variable:i}]);var r=document.createElement("div");Hn.setAttrs(r,{style:"bottom: 20px;\n left: 50%;\n margin-left: -150px;\n width: 300px;\n background: #000000;\n display: block;\n color: #fff;\n padding: 15px;\n border-radius: 10px; position: fixed;\n font-size: 12px;\n text-align: center;"}),r.innerHTML=Sn.t("Product added to cart"),a.appendChild(r),setTimeout((function(){r.remove()}),1e3)})),f.appendChild(_)}g.addEventListener("click",(function(e){var t=r.getParentAnchor(e.target);if(null!==t){var n=t.getAttribute("data-id");o.onClickProduct&&o.onClickProduct(n)}})),u.appendChild(f),a.appendChild(u)}},{key:"getParentAnchor",value:function(e){for(;null!==e;){if(e.tagName&&"A"===e.tagName.toUpperCase())return e;e=e.parentNode}return null}}])&&$i(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}(),Qi={format:"image/png",quality:.92,width:void 0,height:void 0,Canvas:void 0,crossOrigin:void 0};function er(e){return er="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},er(e)}function tr(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,nr(i.key),i)}}function nr(e){var t=function(e){if("object"!=er(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=er(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==er(t)?t:t+""}var ir=function(){return e=function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=arguments.length>2&&void 0!==arguments[2]&&arguments[2];!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.ctx=t,this.w=t.w,this.gl=t.w.globals,this.dataReport=n,this.single=i,this.render()},(t=[{key:"render",value:function(){var e=this.w.globals,t=(this.w.config,this.dataReport.damagePercentage?this.dataReport.damagePercentage:0);e.dom.elSkinReport=document.createElement("div"),Hn.setAttrs(e.dom.elSkinReport,{class:"modal_face_age skin_report",style:"position: absolute;top: 0;left: 0;right: 0;bottom: 0;z-index: 99999999;text-align: center;background: rgb(0 0 0 / 34%);display: flex;"+(this.single?"padding-top: 60px":"align-items: center;")}),e.dom.elSkinReport.box=document.createElement("div"),Hn.setAttrs(e.dom.elSkinReport.box,{style:"width: 100%;"});var n='<div class="modal_window"><div class="title">'+Sn.t("My Skin Report")+'</div><div class="close_btn"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32" width="32px" height="32px"><line style="fill:none;stroke:#000000;stroke-width:2;stroke-miterlimit:10;" x1="6.5" y1="25.5" x2="25.5" y2="6.5"/><line style="fill:none;stroke:#000000;stroke-width:2;stroke-miterlimit:10;" x1="6.5" y1="6.5" x2="25.5" y2="25.5"/></svg></div><div class="body"> <div class="chart"> <canvas id="radarChart" width="100%" height="200"></canvas> </div> <div class="score"></div> <div class="problem_items"></div></div></div>';if(e.dom.elSkinReport.box.innerHTML=n,e.dom.elSkinReport.close=e.dom.elSkinReport.box.getElementsByClassName("close_btn")[0],e.dom.elSkinReport.problemItems=e.dom.elSkinReport.box.getElementsByClassName("problem_items")[0],e.dom.elSkinReport.score=e.dom.elSkinReport.box.getElementsByClassName("score")[0],e.dom.elSkinReport.appendChild(e.dom.elSkinReport.box),e.dom.elSkinReport.close.addEventListener("click",(function(t){e.dom.elSkinReport.remove()})),t){var i=t&&t>0?100-parseInt(t):99,r=i<=60?Sn.t("Bad"):i>=90?Sn.t("Good"):Sn.t("Fair");e.dom.elSkinReport.score.innerHTML="<div>"+Sn.t("Skin Health")+': <span style="margin-left: 0;display: inline-block;font-weight: bold;">'+i+'%</span></div><div class="type">'+r+"</div>"}if(this.dataReport.problems.length>0&&this.dataReport.problems.map((function(t){var n=document.createElement("div");n.innerHTML='<div class="box">\n <div class="progress_box_problem">\n <div class="progress_image">\n <img class="problem_image" src="" alt="'+Sn.t(t.title)+'">\n </div>\n <div class="progress_item">\n <div style="display: flex; justify-content: space-between; align-items: center;">\n <h2>'+Sn.t(t.title)+'</h2>\n <span class="percentage">'+parseInt(t.number)+("Percent"===t.format?"%":"")+'</span>\n </div>\n <div class="progress-bar-container">\n <div class="title_bar">\n <span class="status-text">'+Sn.t("Good")+'</span>\n <span class="status-text" style="margin-left: auto;">'+Sn.t("Bad")+'</span>\n </div>\n <div class="progress-bar">\n <div class="bar"><div></div><div></div><div></div></div>\n <div class="progress-indicator" style="left: '+("Percent"===t.format?t.number+"%":(t.number<=4?7.3*t.number:t.number>=9?7.3*t.number+60.66>=100?100:7.3*t.number+60.66:7.3*t.number+30.33)+"%")+'"></div>\n </div>\n </div>\n </div>\n </div>\n '+(t.summary?'<p class="description">'+Sn.t(t.summary)+"</p>":"")+"\n</div>";var i,r,a=t.areas&&""!==t.areas?t.areas:null,o=t.masks&&""!==t.masks?t.masks:null,s="-1"===o?a:o;if(void 0===(null==t?void 0:t.showInOverview)||parseInt(null==t?void 0:t.showInOverview),s){var l=void 0===(null==t?void 0:t.isSVG)||1===parseInt(null==t?void 0:t.isSVG)?"data:image/svg+xml;base64,"+s:"data:image/png;base64,"+s;(i=[e.imageSubmit,l],void 0===i&&(i=[]),void 0===r&&(r={}),new Promise((function(e){var t=(r=Object.assign({},Qi,r)).Canvas?new r.Canvas:window.document.createElement("canvas"),n=r.Image||window.Image,a=i.map((function(e){return new Promise((function(t,i){"Object"!==e.constructor.name&&(e={src:e});var a=new n;a.crossOrigin=r.crossOrigin,a.onerror=function(){return i(new Error("Couldn't load image"))},a.onload=function(){return t(Object.assign({},e,{img:a}))},a.src=e.src}))})),o=t.getContext("2d");e(Promise.all(a).then((function(e){var n=function(t){return r[t]||Math.max.apply(Math,e.map((function(e){return e.img[t]})))};return t.width=n("width"),t.height=n("height"),e.forEach((function(e){return o.globalAlpha=e.opacity?e.opacity:1,o.drawImage(e.img,e.x||0,e.y||0)})),r.Canvas&&"image/jpeg"===r.format?new Promise((function(e,n){t.toDataURL(r.format,{quality:r.quality,progressive:!1},(function(t,i){t?n(t):e(i)}))})):t.toDataURL(r.format,r.quality)})))}))).then((function(e){return n.querySelector(".problem_image").src=e}))}else n.querySelector(".problem_image").src=e.imageSubmit;e.dom.elSkinReport.problemItems.appendChild(n)})),this.dataReport.problems.length>0){var a=this.dataReport.problems.map((function(e){return"Percent"===e.format?"'"+Sn.t(e.title)+"'":null}));a=a.filter((function(e){return e}));var o=this.dataReport.problems.map((function(e){return"Percent"===e.format?parseInt(e.number):null}));o=o.filter((function(e){return e}));var s=this.dataReport.problems.map((function(e){return"Percent"===e.format?e.colors:null}));s=s.filter((function(e){return e}));var l=document.createElement("script");l.type="text/javascript",l.text="var ctx = document.getElementById('radarChart').getContext('2d');\n var radarChart = new Chart(ctx, {\n type: 'polarArea',\n data: {\n labels: ["+a.join(", ")+"],\n datasets: [{\n data: ['"+o.join("', '")+"'],\n backgroundColor: ['"+s.join("', '")+'\'],\n }]\n },\n options: {\n responsive: true,\n plugins: {\n legend: false,\n tooltip: true,\n },\n scale: {\n pointLabels :{\n wight: "10px",\n } },\n elements: {\n line: {\n tension: 0.2 }\n }\n }\n })',e.dom.elSkinReport.appendChild(l)}e.dom.docIframe.appendChild(e.dom.elSkinReport)}}])&&tr(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function rr(e){return rr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},rr(e)}function ar(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,or(i.key),i)}}function or(e){var t=function(e){if("object"!=rr(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=rr(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==rr(t)?t:t+""}var sr=function(){return e=function e(t,n,i){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.el=t,this.pv=i,this.ctx=n,this.w=n.w,this.gl=n.w.globals,this.co=n.w.config,this.dataReport=r,this.updateDimension=this.updateDimension.bind(this),this.updateSlider=this.updateSlider.bind(this),this.updateSetData=this.updateSetData.bind(this),this.render()},t=[{key:"render",value:function(){var e=this,t=this.el,n=this.w.globals,i=this.w.config,r="morning";n.dom.elFace.style.display="none",n.dom.elRoutines=document.createElement("div"),Hn.setAttrs(n.dom.elRoutines,{class:"recommendation_products",style:"background: #fff; min-height: 100%;"}),n.dom.elRoutines.box=document.createElement("div"),Hn.setAttrs(n.dom.elRoutines.box,{style:"width: 100%;"});var a='<div class="recommendation_modal_window"> <div class="header_tools"> <div class="back"><svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M15.56 5.15999L13.2 2.79999L0 16L13.2 29.2L15.56 26.84L4.72 16L15.56 5.15999Z" fill="black"/></svg></div> <div class="title">'+Sn.t("My Routines")+'</div> <div class="info"><svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M4.66663 24.6533L12.6666 16.64L18 21.9733L29.3333 9.22668L27.4533 7.34668L18 17.9733L12.6666 12.64L2.66663 22.6533L4.66663 24.6533Z" fill="black"/></svg></div> <div class="refresh"><svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M23.5333 8.46668C21.6 6.53334 18.9467 5.33334 16 5.33334C10.1067 5.33334 5.34668 10.1067 5.34668 16C5.34668 21.8933 10.1067 26.6667 16 26.6667C20.9733 26.6667 25.12 23.2667 26.3067 18.6667H23.5333C22.44 21.7733 19.48 24 16 24C11.5867 24 8.00001 20.4133 8.00001 16C8.00001 11.5867 11.5867 8.00001 16 8.00001C18.2133 8.00001 20.1867 8.92001 21.6267 10.3733L17.3333 14.6667H26.6667V5.33334L23.5333 8.46668Z" fill="black"/></svg></div>'+("modal"===i.displayModel?' <div class="close"><svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M25.3333 8.54663L23.4533 6.66663L16 14.12L8.54667 6.66663L6.66667 8.54663L14.12 16L6.66667 23.4533L8.54667 25.3333L16 17.88L23.4533 25.3333L25.3333 23.4533L17.88 16L25.3333 8.54663Z" fill="black"/></svg></div>':"")+' </div> <div class="body"> <div class="main"> <div class="header_routine_box"> <div class="header_product header_routine"> <div class="title header_routine_title" style="font-size: 16px">'+Sn.t("Your")+" "+Sn.t("Morning")+" "+Sn.t("Routine")+'</div> <div class="action"> <button class="routine_btn morning active"><svg width="21" height="20" viewBox="0 0 21 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M10.6243 12.8121C11.3617 12.8121 11.9885 12.5541 12.5046 12.0379C13.0208 11.5217 13.2789 10.895 13.2789 10.1576C13.2789 9.42022 13.0208 8.79345 12.5046 8.27729C11.9885 7.76112 11.3617 7.50304 10.6243 7.50304C9.88695 7.50304 9.26018 7.76112 8.74402 8.27729C8.22786 8.79345 7.96978 9.42022 7.96978 10.1576C7.96978 10.895 8.22786 11.5217 8.74402 12.0379C9.26018 12.5541 9.88695 12.8121 10.6243 12.8121ZM10.6243 14.5818C9.40028 14.5818 8.3569 14.1505 7.49417 13.2877C6.63145 12.425 6.20008 11.3816 6.20008 10.1576C6.20008 8.93355 6.63145 7.89016 7.49417 7.02744C8.3569 6.16471 9.40028 5.73335 10.6243 5.73335C11.8484 5.73335 12.8917 6.16471 13.7545 7.02744C14.6172 7.89016 15.0486 8.93355 15.0486 10.1576C15.0486 11.3816 14.6172 12.425 13.7545 13.2877C12.8917 14.1505 11.8484 14.5818 10.6243 14.5818ZM4.43039 11.0424H0.890991V9.27274H4.43039V11.0424ZM20.3577 11.0424H16.8183V9.27274H20.3577V11.0424ZM9.73948 3.96365V0.424255H11.5092V3.96365H9.73948ZM9.73948 19.8909V16.3515H11.5092V19.8909H9.73948ZM5.66917 6.39698L3.43493 4.25123L4.69584 2.94607L6.81948 5.15819L5.66917 6.39698ZM16.5528 17.3691L14.4071 15.1349L15.5795 13.9182L17.8137 16.064L16.5528 17.3691ZM14.3849 5.20244L16.5307 2.96819L17.8358 4.2291L15.6237 6.35274L14.3849 5.20244ZM3.41281 16.0861L5.64705 13.9403L6.86372 15.1127L4.71796 17.347L3.41281 16.0861Z" fill="#1D1B20"/></svg></button> <button class="routine_btn night"><svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8.37575 16.1212C6.16363 16.1212 4.28332 15.347 2.73484 13.7985C1.18635 12.25 0.412109 10.3697 0.412109 8.15758C0.412109 5.94546 1.18635 4.06515 2.73484 2.51667C4.28332 0.968182 6.16363 0.193939 8.37575 0.193939C8.58221 0.193939 8.78499 0.201313 8.98408 0.21606C9.18317 0.230808 9.37858 0.252929 9.57029 0.282424C8.96565 0.710101 8.48267 1.26682 8.12135 1.95258C7.76004 2.63833 7.57938 3.37939 7.57938 4.17576C7.57938 5.50303 8.04393 6.63121 8.97302 7.5603C9.90211 8.48939 11.0303 8.95394 12.3576 8.95394C13.1687 8.95394 13.9134 8.77328 14.5918 8.41197C15.2702 8.05066 15.8232 7.56768 16.2509 6.96303C16.2804 7.15475 16.3025 7.35015 16.3173 7.54924C16.332 7.74833 16.3394 7.95111 16.3394 8.15758C16.3394 10.3697 15.5651 12.25 14.0167 13.7985C12.4682 15.347 10.5879 16.1212 8.37575 16.1212ZM8.37575 14.3515C9.67352 14.3515 10.8386 13.9939 11.8709 13.2786C12.9032 12.5634 13.6553 11.6306 14.1273 10.4803C13.8323 10.554 13.5374 10.613 13.2424 10.6573C12.9475 10.7015 12.6525 10.7236 12.3576 10.7236C10.5436 10.7236 8.99883 10.0858 7.72317 8.81015C6.44751 7.5345 5.80969 5.9897 5.80969 4.17576C5.80969 3.88081 5.83181 3.58586 5.87605 3.29091C5.92029 2.99596 5.97928 2.70101 6.05302 2.40606C4.90272 2.87798 3.96994 3.6301 3.25469 4.66242C2.53943 5.69475 2.18181 6.8598 2.18181 8.15758C2.18181 9.86828 2.78645 11.3283 3.99575 12.5376C5.20504 13.7469 6.66504 14.3515 8.37575 14.3515Z" fill="#1D1B20"/></svg></button> </div> </div> <div class="header_routine_des">'+Sn.t("Check how you can improve your skin with the proper product and routine")+'</div> </div> <div class="routine"> </div> </div> </div></div>';n.dom.elRoutines.box.innerHTML=a,n.dom.elRoutines.appendChild(n.dom.elRoutines.box),t.appendChild(n.dom.elRoutines),n.dom.elRoutines.routine=n.dom.elRoutines.box.querySelector(".routine"),n.dom.elRoutines.back=n.dom.elRoutines.box.querySelector(".back"),n.dom.elRoutines.info=n.dom.elRoutines.box.querySelector(".info"),n.dom.elRoutines.refresh=n.dom.elRoutines.box.querySelector(".refresh"),n.dom.elRoutines.close=n.dom.elRoutines.box.querySelector(".close"),n.dom.elRoutines.morning=n.dom.elRoutines.box.querySelector(".morning"),n.dom.elRoutines.night=n.dom.elRoutines.box.querySelector(".night"),n.dom.elRoutines.routineTitle=n.dom.elRoutines.box.querySelector(".header_routine_title"),n.dom.elRoutines.recommendation_modal=n.dom.elRoutines.box.querySelector(".recommendation_modal_window"),this.updateSlider(this.ctx,"morning"),n.dom.elRoutines.back.addEventListener("click",(function(t){clearInterval(n.checkStateProductLoader),n.statusRoutinDimension=!1,i.showProducts?(n.dom.elRoutines.remove(),n.statusProductDimension=!0,new dr(n.dom.docIframe,e.ctx,e.pv,e.dataReport)):(n.dom.elRoutines.remove(),n.heightElIframeOldSetStatus=!1,n.dom.elIframe.style.height=n.heightElIframeOld+"px",setTimeout((function(){n.dom.elFace.style.display="flex"}),100))})),n.dom.elRoutines.info.addEventListener("click",(function(){new ir(e.ctx,e.dataReport,!0)})),n.dom.elRoutines.refresh.addEventListener("click",(function(){clearInterval(n.checkStateProductLoader),n.statusRoutinDimension=!1,n.dom.elRoutines.remove(),n.dom.elRecommendation&&n.dom.elRecommendation.remove(),n.heightElIframeOldSetStatus=!1,n.dom.elIframe.style.height=n.heightElIframeOld+"px",n.dom.elInfo&&n.dom.elInfo.remove(),n.dom.elForm&&n.dom.elForm.remove(),n.dom.elFace&&n.dom.elFace.remove(),n.activeQuiz=0,n.formData={},n.imageSubmit=null,n.productLoader=!1,n.productLists=[],n.productAction=[],n.productAddToCart=[],n.intro=!0,e.co.intro=!0,new ba(n.dom.docIframe,e.ctx,e.pv),n.onRefresh&&n.onRefresh()})),n.dom.elRoutines.close&&n.dom.elRoutines.close.addEventListener("click",(function(e){clearInterval(n.checkStateProductLoader),n.dom.elModalFace.classList.remove("is-open"),n.onCloseModal&&n.onCloseModal()})),n.dom.elRoutines.morning.addEventListener("click",(function(){"morning"!==r&&(r="morning",n.dom.elRoutines.routineTitle.innerText=Sn.t("Your")+" "+Sn.t("Morning")+" "+Sn.t("Routine"),n.dom.elRoutines.morning.classList.add("active"),n.dom.elRoutines.night.classList.remove("active"),e.updateSlider(e.ctx,"morning"))})),n.dom.elRoutines.night.addEventListener("click",(function(){"night"!==r&&(r="night",n.dom.elRoutines.routineTitle.innerText=Sn.t("Your")+" "+Sn.t("Night")+" "+Sn.t("Routine"),n.dom.elRoutines.night.classList.add("active"),n.dom.elRoutines.morning.classList.remove("active"),e.updateSlider(e.ctx,"night"))})),setTimeout((function(){e.updateDimension()}),500),n.dom.elIframe.contentWindow.addEventListener("resize",this.updateDimension),n.resizeObserverRoutin=new ResizeObserver((function(){e.updateDimension()})),n.resizeObserverRoutin.observe(n.dom.elRoutines.recommendation_modal),n.onDisplayRoutines&&n.onDisplayRoutines(n.productLists)}},{key:"updateSlider",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"morning",i=(e.w,e.w.globals);e.w.config,i.productLoader?(i.dom.elRoutines.routine.innerHTML='<div class="face_age"><div class="loading_request_pr" style="background: transparent"><div class="FaceCircularProgress-root FaceCircularProgress-colorPrimary FaceCircularProgress-indeterminate" role="progressbar" style="width: 40px; height: 40px; color: var(--basic)"><svg class="FaceCircularProgress-svg" viewBox="22 22 44 44"><circle class="FaceCircularProgress-circle FaceCircularProgress-circleIndeterminate" cx="44" cy="44" r="20.2" fill="none" stroke-width="3.6"></circle></svg></div></div></div>',i.checkStateProductLoader=setInterval((function(){i.productLoader||(t.updateSetData(e,n),clearInterval(i.checkStateProductLoader))}),100)):this.updateSetData(e,n)}},{key:"updateSetData",value:function(e,t){e.w;var n=e.w.globals,i=e.w.config,r=[],a=0;n.dom.elRoutines.routine.innerHTML="",n.customRoutineGroup&&n.customRoutineGroup.map((function(o){if(o.status.includes(t)){var s=o.title,l=o.content,u=!0;if(i.routinesSupport.length>0&&(i.routinesSupport.includes(o.key)||(u=!1)),u){a++;var c=document.createElement("div");Hn.setAttrs(c,{class:"routine_item"});var d=document.createElement("div");if(Hn.setAttrs(d,{class:"routine_title"}),d.innerHTML="<span>"+a+".</span>"+Sn.t(s),c.appendChild(d),l){var p=document.createElement("div");Hn.setAttrs(p,{class:"routine_content"}),p.innerText=Sn.t(l),c.appendChild(p)}var h=document.createElement("div");if(Hn.setAttrs(h,{class:"products"}),n.productLists&&(n.productLists.map((function(i){if(void 0!==i.routineGroups&&i.routineGroups){var a=[];if(Array.isArray(i.routineGroups))i.routineGroups.map((function(e){var i=n.customRoutineGroup.find((function(n){return n.key.toLowerCase()===e.toLowerCase()&&n.status.includes(t)}));i&&!a.includes(i.key.toLowerCase())&&a.push(i.key.toLowerCase())}));else if("object"===rr(i.routineGroups)){a=[];var s=i.routineGroups[t];s&&s.map((function(e){var i=n.customRoutineGroup.find((function(n){return n.key.toLowerCase()===e.toLowerCase()&&n.status.includes(t)}));i&&!a.includes(i.key.toLowerCase())&&a.push(i.key.toLowerCase())}))}a.includes(o.key.toLowerCase())&&(new Xi(h,e,i,!0),r.push(i.id))}})),n.productAddToCart.length>0)){var m=h.querySelectorAll(".product_item_box");m.forEach((function(e,t){var i=m[t],r=i.getAttribute("data-id");n.productAddToCart.find((function(e){return e.id===r}))&&(i.querySelector(".product_add_to_cart").classList.contains("active")||(i.querySelector(".product_add_to_cart").classList.add("active"),i.querySelector(".product_add_to_cart").innerText=Sn.t("Add again")))}))}c.appendChild(h),n.dom.elRoutines.routine.appendChild(c);var f=document.createElement("script");f.type="text/javascript",f.text="new Swiper('.myProductProblem', {\n slidesPerView: 'auto',\n spaceBetween: 6,\n });",n.dom.elRoutines.routine.appendChild(f)}}}))}},{key:"updateDimension",value:function(){var e=this.w.globals;if(!e.statusRoutinDimension)return!1;"section"===this.co.displayModel&&(e.heightProduct=e.dom.elRoutines.recommendation_modal.scrollHeight,e.heightElIframeOldSetStatus||(e.heightElIframeOld=e.dom.elIframe.clientHeight,e.heightElIframeOldSetStatus=!0),e.dom.elIframe.style.height=e.heightProduct+"px")}}],t&&ar(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function lr(e){return lr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},lr(e)}function ur(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,cr(i.key),i)}}function cr(e){var t=function(e){if("object"!=lr(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=lr(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==lr(t)?t:t+""}var dr=function(){return e=function e(t,n,i){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.el=t,this.ctx=n,this.pv=i,this.w=n.w,this.gl=n.w.globals,this.co=n.w.config,this.dataReport=r,this.updateDimension=this.updateDimension.bind(this),this.updateSlider=this.updateSlider.bind(this),this.updateSetData=this.updateSetData.bind(this),this.render()},(t=[{key:"render",value:function(){var e=this,t=this.el,n=this.w.globals,i=this.w.config;n.dom.elFace.style.display="none",n.dom.elRecommendation=document.createElement("div"),Hn.setAttrs(n.dom.elRecommendation,{class:"recommendation_products",style:"background: #fff; min-height: 100%;"}),n.dom.elRecommendation.box=document.createElement("div"),Hn.setAttrs(n.dom.elRecommendation.box,{style:"width: 100%;"});var r='<div class="recommendation_modal_window"> <div class="header_tools"> <div class="back"><svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M15.56 5.15999L13.2 2.79999L0 16L13.2 29.2L15.56 26.84L4.72 16L15.56 5.15999Z" fill="black"/></svg></div> <div class="title">'+Sn.t("Recommendation Products")+'</div> <div class="info"><svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M4.66663 24.6533L12.6666 16.64L18 21.9733L29.3333 9.22668L27.4533 7.34668L18 17.9733L12.6666 12.64L2.66663 22.6533L4.66663 24.6533Z" fill="black"/></svg></div> <div class="refresh"><svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M23.5333 8.46668C21.6 6.53334 18.9467 5.33334 16 5.33334C10.1067 5.33334 5.34668 10.1067 5.34668 16C5.34668 21.8933 10.1067 26.6667 16 26.6667C20.9733 26.6667 25.12 23.2667 26.3067 18.6667H23.5333C22.44 21.7733 19.48 24 16 24C11.5867 24 8.00001 20.4133 8.00001 16C8.00001 11.5867 11.5867 8.00001 16 8.00001C18.2133 8.00001 20.1867 8.92001 21.6267 10.3733L17.3333 14.6667H26.6667V5.33334L23.5333 8.46668Z" fill="black"/></svg></div>'+("modal"===i.displayModel?' <div class="close"><svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M25.3333 8.54663L23.4533 6.66663L16 14.12L8.54667 6.66663L6.66667 8.54663L14.12 16L6.66667 23.4533L8.54667 25.3333L16 17.88L23.4533 25.3333L25.3333 23.4533L17.88 16L25.3333 8.54663Z" fill="black"/></svg></div>':"")+' </div> <div class="slider_header" style="padding: 15px 0 2px; background-color: #F1F3F4"></div> <div class="body"> <div class="main"> <div class="header_product_box"> <div class="header_product"> <div class="title">'+Sn.t("Products That Just Work For you")+'</div> <div class="action">'+(i.showAddToCard?' <button class="add_to_cart add_to_cart_all">'+Sn.t("Add all to cart")+"</button>":"")+(i.showRoutine?' <button class="show_routine">'+Sn.t("Routine")+"</button>":"")+' </div> </div> </div> <div class="products"> </div>'+("modal"===i.displayModel&&i.showAddToCard?' <div class="footer_box"> <button class="add_to_cart add_to_cart_all2">'+Sn.t("Add all to cart")+'</button> <button class="check_out" style="display: none">'+Sn.t("Checkout")+"</button></div>":"")+" </div> </div></div>";n.dom.elRecommendation.box.innerHTML=r,n.dom.elRecommendation.appendChild(n.dom.elRecommendation.box),t.appendChild(n.dom.elRecommendation),n.dom.elRecommendation.problems=n.dom.elRecommendation.box.querySelector(".slider_header"),n.dom.elRecommendation.products=n.dom.elRecommendation.box.querySelector(".products"),n.dom.elRecommendation.headerProduct=n.dom.elRecommendation.box.querySelector(".header_product_box"),n.dom.elRecommendation.back=n.dom.elRecommendation.box.querySelector(".back"),n.dom.elRecommendation.info=n.dom.elRecommendation.box.querySelector(".info"),n.dom.elRecommendation.refresh=n.dom.elRecommendation.box.querySelector(".refresh"),n.dom.elRecommendation.close=n.dom.elRecommendation.box.querySelector(".close"),n.dom.elRecommendation.addToCardAll=n.dom.elRecommendation.box.querySelector(".add_to_cart_all"),n.dom.elRecommendation.addToCardAll2=n.dom.elRecommendation.box.querySelector(".add_to_cart_all2"),n.dom.elRecommendation.footerBox=n.dom.elRecommendation.box.querySelector(".footer_box"),n.dom.elRecommendation.checkOut=n.dom.elRecommendation.box.querySelector(".check_out"),n.dom.elRecommendation.showRoutine=n.dom.elRecommendation.box.querySelector(".show_routine"),n.dom.elRecommendation.recommendation_modal=n.dom.elRecommendation.box.querySelector(".recommendation_modal_window"),new fr(n.dom.elRecommendation.problems,this.ctx,this.pv,this.dataReport?this.dataReport.problems:[],!0,!0,this.updateSlider),this.updateSlider(this.ctx,"all_products"),n.dom.elRecommendation.addToCardAll&&n.dom.elRecommendation.addToCardAll.addEventListener("click",(function(t){e.addToCardAll()})),n.dom.elRecommendation.addToCardAll2&&n.dom.elRecommendation.addToCardAll2.addEventListener("click",(function(t){e.addToCardAll()})),n.dom.elRecommendation.checkOut&&n.dom.elRecommendation.checkOut.addEventListener("click",(function(e){n.onCheckout&&n.onCheckout(n.productAddToCart)})),n.dom.elRecommendation.back.addEventListener("click",(function(e){clearInterval(n.checkStateProductLoader),n.statusProductDimension=!1,n.dom.elRecommendation.remove(),n.heightElIframeOldSetStatus=!1,n.dom.elIframe.style.height=n.heightElIframeOld+"px",setTimeout((function(){n.dom.elFace.style.display="flex"}),100)})),n.dom.elRecommendation.showRoutine&&n.dom.elRecommendation.showRoutine.addEventListener("click",(function(t){clearInterval(n.checkStateProductLoader),n.dom.elRecommendation.remove(),n.statusProductDimension=!1,n.statusRoutinDimension=!0,new sr(n.dom.docIframe,e.ctx,e.pv,e.dataReport)})),n.dom.elRecommendation.info.addEventListener("click",(function(){new ir(e.ctx,e.dataReport,!0)})),n.dom.elRecommendation.refresh.addEventListener("click",(function(){clearInterval(n.checkStateProductLoader),n.statusProductDimension=!1,n.dom.elRecommendation.remove(),n.heightElIframeOldSetStatus=!1,n.dom.elIframe.style.height=n.heightElIframeOld+"px",n.dom.elInfo&&n.dom.elInfo.remove(),n.dom.elForm&&n.dom.elForm.remove(),n.dom.elFace&&n.dom.elFace.remove(),n.activeQuiz=0,n.formData={},n.productLoader=!1,n.productLists=[],n.productAction=[],n.productAddToCart=[],n.imageSubmit=null,n.intro=!0,e.co.intro=!0,new ba(n.dom.docIframe,e.ctx,e.pv),n.onRefresh&&n.onRefresh()})),n.dom.elRecommendation.close&&n.dom.elRecommendation.close.addEventListener("click",(function(e){n.dom.elModalFace.classList.remove("is-open"),clearInterval(n.checkStateProductLoader),n.onCloseModal&&n.onCloseModal()})),setTimeout((function(){e.updateDimension()}),500),n.dom.elIframe.contentWindow.addEventListener("resize",this.updateDimension),n.resizeObserverProduct=new ResizeObserver((function(){e.updateDimension()})),n.resizeObserverProduct.observe(n.dom.elRecommendation.recommendation_modal),n.onDisplayProducts&&n.onDisplayProducts(n.productLists)}},{key:"updateSlider",value:function(e,t){var n=this,i=(e.w,e.w.globals);i.dom.elRecommendation.headerProduct.style.display="block",i.dom.elRecommendation.footerBox&&(i.dom.elRecommendation.footerBox.style.display="flex"),i.productListsDisplay=[],i.productLoader?(i.dom.elRecommendation.products.innerHTML='<div class="face_age"><div class="loading_request_pr" style="background: transparent"><div class="FaceCircularProgress-root FaceCircularProgress-colorPrimary FaceCircularProgress-indeterminate" role="progressbar" style="width: 40px; height: 40px; color: var(--basic)"><svg class="FaceCircularProgress-svg" viewBox="22 22 44 44"><circle class="FaceCircularProgress-circle FaceCircularProgress-circleIndeterminate" cx="44" cy="44" r="20.2" fill="none" stroke-width="3.6"></circle></svg></div></div></div>',i.dom.elRecommendation.headerProduct.style.display="none",i.dom.elRecommendation.footerBox&&(i.dom.elRecommendation.footerBox.style.display="none"),i.checkStateProductLoader=setInterval((function(){i.productLoader||(n.updateSetData(e,t),clearInterval(i.checkStateProductLoader))}),100)):this.updateSetData(e,t)}},{key:"updateSetData",value:function(e,t){e.w;var n=e.w.globals,i=[];if(n.dom.elRecommendation.headerProduct.style.display="block",n.dom.elRecommendation.footerBox&&(n.dom.elRecommendation.footerBox.style.display="flex"),n.productListsDisplay=[],!n.productLoader){if(n.dom.elRecommendation.products.innerHTML="",n.productLists){if(n.productLists.map((function(r){(r.problems.includes(t)||"all_products"===t)&&(new Xi(n.dom.elRecommendation.products,e,r),i.push(r.id),n.productListsDisplay.push(r))})),n.productAddToCart.length>0){var r=n.dom.elRecommendation.products.querySelectorAll(".product_item_box");r.forEach((function(e,t){var i=r[t],a=i.getAttribute("data-id");n.productAddToCart.find((function(e){return e.id===a}))&&(i.querySelector(".product_add_to_cart").classList.contains("active")||(i.querySelector(".product_add_to_cart").classList.add("active"),i.querySelector(".product_add_to_cart").innerText=Sn.t("Add again")))})),n.dom.elRecommendation.checkOut&&(n.dom.elRecommendation.checkOut.style.display="block")}var a=document.createElement("script");a.type="text/javascript",a.text="new Swiper('.myProductProblem', {\n slidesPerView: 'auto',\n spaceBetween: 6,\n });",n.dom.elRecommendation.products.appendChild(a)}if(i.length<=0){var o=document.createElement("div");Hn.setAttrs(o,{class:"product_empty"}),o.innerHTML=Sn.t("There are no products to display."),n.dom.elRecommendation.products.appendChild(o),n.dom.elRecommendation.headerProduct.style.display="none",n.dom.elRecommendation.footerBox&&(n.dom.elRecommendation.footerBox.style.display="none")}}}},{key:"updateDimension",value:function(){var e=this.w.globals;if(!e.statusProductDimension)return!1;"section"===this.co.displayModel&&(e.heightProduct=e.dom.elRecommendation.recommendation_modal.scrollHeight,e.heightElIframeOldSetStatus||(e.heightElIframeOld=e.dom.elIframe.clientHeight,e.heightElIframeOldSetStatus=!0),e.dom.elIframe.style.height=e.heightProduct+"px")}},{key:"addToCardAll",value:function(){var e=this.w.globals,t=e.dom.elRecommendation.products.querySelectorAll(".product_item_box"),n=[];if(t.forEach((function(i,r){var a=t[r],o=a.getAttribute("data-id"),s=a.querySelectorAll(".product_variables_select"),l=[];s&&s.forEach((function(e){if(e&&e.options.length>0){var t=e.getAttribute("name"),n=(e.getAttribute("data-id"),e.selectedIndex);if(-1!==n){var i=e.options[n];l[t]=i.value}}})),a.querySelector(".product_add_to_cart").classList.contains("active")||(a.querySelector(".product_add_to_cart").classList.add("active"),a.querySelector(".product_add_to_cart").innerText=Sn.t("Add again"),e.dom.elRecommendation.checkOut&&(e.dom.elRecommendation.checkOut.style.display="block")),n.push({id:o,variable:l}),e.productAddToCart.find((function(e){return e.id===o}))||e.productAddToCart.push({id:o,variable:l})})),e.onAddToCart){e.onAddToCart(n);var i=document.createElement("div");Hn.setAttrs(i,{style:"bottom: 20px;\n left: 50%;\n margin-left: -150px;\n width: 300px;\n background: #000000;\n display: block;\n color: #fff;\n padding: 15px;\n border-radius: 10px; position: fixed;\n font-size: 12px;\n text-align: center;"}),i.innerHTML=n.length+" "+Sn.t("products added to cart"),e.dom.elRecommendation.box.appendChild(i),setTimeout((function(){i.remove()}),1e3)}}}])&&ur(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function pr(e){return pr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},pr(e)}function hr(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,mr(i.key),i)}}function mr(e){var t=function(e){if("object"!=pr(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=pr(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==pr(t)?t:t+""}var fr=function(){return e=function e(t,n,i){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[],a=arguments.length>4&&void 0!==arguments[4]&&arguments[4],o=arguments.length>5&&void 0!==arguments[5]&&arguments[5],s=arguments.length>6&&void 0!==arguments[6]?arguments[6]:null;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.el=t,this.ctx=n,this.pv=i,this.w=n.w,this.gl=n.w.globals,this.co=n.w.config,this.problems=r,this.showProducts=a,this.recommendation=o,this.eventSlider=s,this.render()},t=[{key:"render",value:function(){var e=this,t=this.el,n=this.gl,i=this.co,r=this.ctx,a=this.pv.getValue(),o='<div class="swiper '+(this.recommendation?"myProducts":"mySwiper")+'">\n <div class="swiper-wrapper">\n <div class="swiper-slide">\n <div class="point_analysis '+(this.recommendation?"all_products":"skin_info")+' active" data-key="'+(this.recommendation?"all_products":"skin_info")+'">\n <div class="count_box">\n <div class="'+(this.recommendation?"products_ico":"skin_info_ico")+'">'+(this.recommendation?'<svg xmlns="http://www.w3.org/2000/svg" id="Layer_1" data-name="Layer 1" viewBox="0 0 24 24"><path d="M23.381,9.854c-.363-.415-.85-.691-1.381-.8v-.554c0-1.953-1.258-3.602-3-4.224V1.5c0-.827-.673-1.5-1.5-1.5h-3c-.827,0-1.5,.673-1.5,1.5v1c0,.276,.224,.5,.5,.5s.5-.224,.5-.5V1.5c0-.276,.224-.5,.5-.5h3c.276,0,.5,.224,.5,.5v2.551c-.166-.019-.329-.051-.5-.051h-2c-.276,0-.5,.224-.5,.5s.224,.5,.5,.5h2c1.93,0,3.5,1.57,3.5,3.5v.5h-7v-.5c0-1.953-1.258-3.602-3-4.224V1.5c0-.827-.673-1.5-1.5-1.5h-3c-.827,0-1.5,.673-1.5,1.5v2.776c-1.742,.621-3,2.271-3,4.224v.554c-.531,.109-1.018,.385-1.381,.8-.475,.542-.692,1.263-.595,1.985l1.118,7.389c.363,2.721,2.707,4.772,5.452,4.772h10.812c2.745,0,5.089-2.052,5.451-4.764l1.121-7.406c.095-.714-.122-1.435-.597-1.977ZM6,1.5c0-.276,.224-.5,.5-.5h3c.276,0,.5,.224,.5,.5v2.551c-.166-.019-.329-.051-.5-.051h-3c-.171,0-.334,.032-.5,.051V1.5Zm.5,3.5h3c1.93,0,3.5,1.57,3.5,3.5v.5H3v-.5c0-1.93,1.57-3.5,3.5-3.5Zm16.488,6.689l-1.121,7.405c-.297,2.227-2.215,3.905-4.461,3.905H6.594c-2.246,0-4.164-1.679-4.462-3.914l-1.118-7.388c-.057-.428,.073-.86,.358-1.186,.285-.326,.696-.512,1.129-.512H21.5c.433,0,.844,.187,1.129,.512,.285,.325,.415,.757,.359,1.177Zm-10.488,.811v7c0,.276-.224,.5-.5,.5s-.5-.224-.5-.5v-7c0-.276,.224-.5,.5-.5s.5,.224,.5,.5Zm5.5,0v7c0,.276-.224,.5-.5,.5s-.5-.224-.5-.5v-7c0-.276,.224-.5,.5-.5s.5,.224,.5,.5Zm-11,0v7c0,.276-.224,.5-.5,.5s-.5-.224-.5-.5v-7c0-.276,.224-.5,.5-.5s.5,.224,.5,.5Z"/></svg>':'<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><g filter="url(#filter0_d_3028_882)"><path fill-rule="evenodd" clip-rule="evenodd" d="M2 1.82353C2 1.36871 2.36871 1 2.82353 1H7.76471C8.21953 1 8.58824 1.36871 8.58824 1.82353C8.58824 2.27835 8.21953 2.64706 7.76471 2.64706H3.64706V6.76471C3.64706 7.21953 3.27835 7.58824 2.82353 7.58824C2.36871 7.58824 2 7.21953 2 6.76471V1.82353Z" fill="white"/><path fill-rule="evenodd" clip-rule="evenodd" d="M29.1765 1C29.6312 1 30 1.36871 30 1.82353V6.76471C30 7.21953 29.6312 7.58824 29.1765 7.58824C28.7217 7.58824 28.3529 7.21953 28.3529 6.76471V2.64706H24.2353C23.7805 2.64706 23.4118 2.27835 23.4118 1.82353C23.4118 1.36871 23.7805 1 24.2353 1H29.1765Z" fill="white"/><path fill-rule="evenodd" clip-rule="evenodd" d="M2.82353 29C2.36871 29 2 28.6312 2 28.1765V23.2353C2 22.7805 2.36871 22.4118 2.82353 22.4118C3.27835 22.4118 3.64706 22.7805 3.64706 23.2353V27.3529H7.76471C8.21953 27.3529 8.58824 27.7217 8.58824 28.1765C8.58824 28.6312 8.21953 29 7.76471 29H2.82353Z" fill="white"/><path fill-rule="evenodd" clip-rule="evenodd" d="M30 28.1765C30 28.6312 29.6312 29 29.1765 29H24.2353C23.7805 29 23.4118 28.6312 23.4118 28.1765C23.4118 27.7217 23.7805 27.3529 24.2353 27.3529H28.3529V23.2353C28.3529 22.7805 28.7217 22.4118 29.1765 22.4118C29.6312 22.4118 30 22.7805 30 23.2353V28.1765Z" fill="white"/><path fill-rule="evenodd" clip-rule="evenodd" d="M8.58823 13.3529C8.58823 9.25954 11.9066 5.94118 16 5.94118C20.0934 5.94118 23.4118 9.25954 23.4118 13.3529V16.6471C23.4118 20.7405 20.0934 24.0588 16 24.0588C11.9066 24.0588 8.58823 20.7405 8.58823 16.6471V13.3529ZM16 7.58824C12.8162 7.58824 10.2353 10.1692 10.2353 13.3529V16.6471C10.2353 19.8308 12.8162 22.4118 16 22.4118C19.1838 22.4118 21.7647 19.8308 21.7647 16.6471V13.3529C21.7647 10.1692 19.1838 7.58824 16 7.58824Z" fill="white"/><path fill-rule="evenodd" clip-rule="evenodd" d="M12.7059 17.4706C13.1606 17.4706 13.5294 17.8394 13.5294 18.2941L13.5299 18.2986C13.5299 18.2986 13.5317 18.3061 13.535 18.3142C13.5416 18.3304 13.5576 18.3608 13.5935 18.4033C13.6686 18.4921 13.8096 18.6074 14.039 18.7222C14.4984 18.9518 15.1905 19.1176 16 19.1176C16.8095 19.1176 17.5016 18.9518 17.961 18.7222C18.1904 18.6074 18.3314 18.4921 18.4065 18.4033C18.4424 18.3608 18.4584 18.3304 18.465 18.3142C18.4683 18.3061 18.4701 18.2986 18.4701 18.2986L18.4706 18.2941C18.4706 17.8394 18.8394 17.4706 19.2941 17.4706C19.7489 17.4706 20.1177 17.8394 20.1177 18.2941C20.1177 19.229 19.3813 19.8535 18.6976 20.1953C17.9646 20.5618 17.0098 20.7647 16 20.7647C14.9902 20.7647 14.0354 20.5618 13.3025 20.1953C12.6188 19.8535 11.8824 19.229 11.8824 18.2941C11.8824 17.8394 12.2511 17.4706 12.7059 17.4706Z" fill="white"/></g><defs><filter id="filter0_d_3028_882" x="0" y="0" width="32" height="32" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB"><feFlood flood-opacity="0" result="BackgroundImageFix"/><feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/><feOffset dy="1"/><feGaussianBlur stdDeviation="1"/><feComposite in2="hardAlpha" operator="out"/><feColorMatrix type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.3 0"/><feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_3028_882"/><feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_3028_882" result="shape"/></filter></defs></svg>')+'</div>\n </div>\n <div class="label_box" style="'+(this.recommendation?"color: #000; text-shadow: 0 0 #000; overflow: visible;":"")+'">'+(this.recommendation?Sn.t("All Products"):Sn.t("Skin Info"))+"</div>\n </div>\n </div>\n";this.problems.length>0&&this.problems.map((function(t){o+=' <div class="swiper-slide">\n <div class="point_analysis '+t.key+'" data-key="'+t.key+'">\n <div class="count_box" style="background-color: '+(e.recommendation?"rgb(0 0 0 / 4%)":"rgb(0 0 0 / 24%)")+'">\n <div class="progress-container"><svg class="MuiCircularProgress-svg" viewBox="22 22 44 44"><circle class="MuiCircularProgress-circle" cx="44" cy="44" r="20.2" fill="none" stroke-width="2.6"></circle></svg><div class="progress-label">0%</div></div>\n </div>\n <div class="label_box" style="'+(e.recommendation?"color: #000; text-shadow: 0 0 #000; overflow: visible;":"")+'">'+Sn.t(t.title)+"</div>\n </div>\n </div>\n"})),o+=' </div><div class="swiper-button-next"></div><div class="swiper-button-prev"></div>\n </div>';var s=document.createElement("div");Hn.setAttrs(s,{style:"background: linear-gradient(rgba(33, 37, 41, 0), rgb(33 37 41 / 51%));"+(this.showProducts?"padding-bottom: 10px;":"position: absolute;z-index: 2;left: 0;right: 0;bottom: 0; padding-bottom: "+(a.copyRight&&"widget"===i.displayModel?25:10)+"px;"),class:"face_slide"}),s.innerHTML=o,t.appendChild(s);var l=document.createElement("script");l.type="text/javascript",l.text="new Swiper('."+(this.recommendation?"myProducts":"mySwiper")+'\', {\n slidesPerView: \'auto\',\n spaceBetween: 12,\n navigation: {\n nextEl: ".swiper-button-next",\n prevEl: ".swiper-button-prev",\n },\n });',t.appendChild(l),this.problems.length>0&&this.problems.map((function(n){var i=t.querySelector(".face_slide").getElementsByClassName(n.key)[0];e.setProgress(i,parseInt(n.number),n.colors,"Percent"===n.format)}));var u=t.getElementsByClassName("point_analysis");if(u)for(var c=function(){var i=u[d];i.addEventListener("click",(function(a){var o=i.getAttribute("data-key"),s=t.querySelectorAll(".point_analysis");if(s)for(var l=0;l<s.length;l++){var u=s[l];u.classList.contains("active")&&u.classList.remove("active")}i.classList.add("active");var c=t.querySelector(".face_slide").querySelectorAll(".point_analysis");if(c.forEach((function(t,n){var i=c[n],r=i.getAttribute("data-key"),a=e.problems.find((function(e){return e.key===r}));a&&(e.setProgress(i,parseInt(a.number),a.key!==o?a.colors:"#fff","Percent"===a.format),i.querySelector(".count_box")&&(a.key===o?i.querySelector(".count_box").style.backgroundColor=a.colors:i.querySelector(".count_box").style.backgroundColor=e.recommendation?"rgb(0 0 0 / 4%)":"rgb(0 0 0 / 24%)"))})),!e.recommendation){"skin_info"!==o&&n.dom.elPreviewImage.imageLoad.score?n.dom.elPreviewImage.imageLoad.score.style.display="none":"skin_info"===o&&n.dom.elPreviewImage.imageLoad.score&&(n.dom.elPreviewImage.imageLoad.score.style.display="block"),"skin_info"!==o&&n.dom.elPreviewImage.imageLoad.age?n.dom.elPreviewImage.imageLoad.age.style.display="none":"skin_info"===o&&n.dom.elPreviewImage.imageLoad.age&&(n.dom.elPreviewImage.imageLoad.age.style.display="block"),"skin_info"!==o&&n.dom.elPreviewImage.imageLoad.warning?n.dom.elPreviewImage.imageLoad.warning.style.display="none":"skin_info"===o&&n.dom.elPreviewImage.imageLoad.warning&&(n.dom.elPreviewImage.imageLoad.warning.style.display="block"),e.setTitle("skin_info"!==o?o:null);var d=n.dom.elPreviewImage.imageLoad.masks.querySelectorAll(".maskItem");if(d)for(var p=0;p<d.length;p++){var h=d[p],m=h.getAttribute("data-key"),f=h.getAttribute("data-showin");h.style.display="skin_info"===o?"true"===f?"block":"none":m===o?"block":"none"}}e.eventSlider&&e.eventSlider(r,o),n.onClickProblem&&n.onClickProblem(o)}))},d=0;d<u.length;d++)c()}},{key:"setProgress",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"#da005c",i=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],r=e.querySelector(".MuiCircularProgress-circle"),a=e.querySelector(".progress-label"),o=i?Math.min(Math.max(t,0),100):t,s=i?"%":"",l=2*Math.PI*20.2,u=l-o/100*l;r.style.stroke=n,r.style.strokeDashoffset=u,a.textContent="".concat(o).concat(s),a.style.color=n}},{key:"setTitle",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=(this.el,this.gl);if(e){var n=[];this.problems.length>0&&this.problems.map((function(t){e===t.key&&(n=t)})),n&&(t.dom.elPreviewImage.activePoint?(t.dom.elPreviewImage.activePoint.innerHTML=Sn.t(n.title),t.dom.elPreviewImage.activePoint.style.backgroundColor=n.colors):(t.dom.elPreviewImage.activePoint=document.createElement("div"),Hn.setAttrs(t.dom.elPreviewImage.activePoint,{style:"background-color: "+n.colors+";",class:"title_point_select"}),t.dom.elPreviewImage.activePoint.innerHTML=Sn.t(n.title),t.dom.elPreviewImage.imageLoad.appendChild(t.dom.elPreviewImage.activePoint)))}else{var i=t.dom.elPreviewImage.imageLoad.querySelector(".title_point_select");i&&(i.remove(),t.dom.elPreviewImage.activePoint=null)}}}],t&&hr(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function gr(e){return gr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},gr(e)}function yr(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,vr(i.key),i)}}function vr(e){var t=function(e){if("object"!=gr(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=gr(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==gr(t)?t:t+""}var br=function(){return e=function e(t,n,i){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[];!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.el=t,this.gl=n,this.co=i,this.problems=r,this.render()},(t=[{key:"render",value:function(){var e=this.el,t=this.gl;this.co,t.dom.elPreviewImage.imageLoad.masks=document.createElement("div"),Hn.setAttrs(t.dom.elPreviewImage.imageLoad.masks,{style:"position: absolute; top: 0; left: 0; right: 0; bottom: 0"}),t.dom.elPreviewImage.imageLoad.maskItem=[],this.problems.length>0&&this.problems.map((function(e){var n=e.areas&&""!==e.areas?e.areas:null,i=e.masks&&""!==e.masks?e.masks:null,r="-1"===i?n:i,a=i?"mask":"areas",o=i?"0.9":"0.6",s=void 0===(null==e?void 0:e.showInOverview)||1===parseInt(null==e?void 0:e.showInOverview);if(r){var l=void 0===(null==e?void 0:e.isSVG)||1===parseInt(null==e?void 0:e.isSVG)?"data:image/svg+xml;base64,"+r:"data:image/png;base64,"+r;void 0!==(null==e?void 0:e.isSVG)&&0===parseInt(null==e?void 0:e.isSVG)&&(o="0.6"),t.dom.elPreviewImage.imageLoad.maskItem[e.key]=document.createElement("div"),Hn.setAttrs(t.dom.elPreviewImage.imageLoad.maskItem[e.key],{class:"maskItem "+a+"_"+e.key,"data-key":e.key,"data-showin":s,style:"position: absolute; top: 0; left: 0; bottom: 0; right: 0; background-size: 100%; background-repeat: no-repeat; background-position: left top; opacity: "+o+'; background-image: url("'+l+'"); display: '+(s?"block":"none")}),t.dom.elPreviewImage.imageLoad.masks.appendChild(t.dom.elPreviewImage.imageLoad.maskItem[e.key])}})),e.appendChild(t.dom.elPreviewImage.imageLoad.masks)}}])&&yr(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function kr(e){return kr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},kr(e)}function wr(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Sr(i.key),i)}}function Sr(e){var t=function(e){if("object"!=kr(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=kr(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==kr(t)?t:t+""}var Pr=function(){return e=function e(t,n,i){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.el=t,this.gl=n,this.co=i,this.damage=r,this.render()},(t=[{key:"render",value:function(){var e=this.el,t=this.gl,n=(this.co,this.damage&&this.damage>0?100-parseInt(this.damage):99);t.dom.elPreviewImage.imageLoad.score=document.createElement("div"),Hn.setAttrs(t.dom.elPreviewImage.imageLoad.score,{style:"position: absolute;top: "+(t.imageWarning?"58":"15")+"px;left: 17px;text-align: left;background: var(--accepted_status);padding: 7px 10px;border-radius: 10px;color: #fff; font-size: 14px"}),t.dom.elPreviewImage.imageLoad.score.innerHTML="<div>"+Sn.t("Skin Health")+': <span style="margin-left: 7px;display: inline-block;font-weight: bold;">'+n+"%</span></div>",e.appendChild(t.dom.elPreviewImage.imageLoad.score)}}])&&wr(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function xr(e){return xr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},xr(e)}function Cr(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Ar(i.key),i)}}function Ar(e){var t=function(e){if("object"!=xr(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=xr(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==xr(t)?t:t+""}var Tr=function(){return e=function e(t,n){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.el=t,this.ctx=n,this.w=n.w,this.gl=n.w.globals,this.validation=i,this.render()},(t=[{key:"render",value:function(){var e,t,n,i,r=this.el,a=this.w.globals,o=(this.w.config,null===(e=this.validation)||void 0===e?void 0:e.blurry),s=null===(t=this.validation)||void 0===t?void 0:t.eyeGlass,l=null===(n=this.validation)||void 0===n?void 0:n.neutralFace,u=null===(i=this.validation)||void 0===i?void 0:i.faceObstruction,c=this.validation.brightness?this.validation.brightness:0;a.imageWarning=!1,(c<50||o||s||!l)&&(a.dom.elPreviewImage.imageLoad.warning=document.createElement("div"),Hn.setAttrs(a.dom.elPreviewImage.imageLoad.warning,{style:"position: absolute;top: 15px;left: 17px;text-align: left;background: #FFC961;padding: 7px 10px;border-radius: 10px;color: #fff; font-size: 14px; cursor: pointer;"}),a.dom.elPreviewImage.imageLoad.warning.innerHTML='<div class="warning_image"><svg style="width: 16px; display: inline-block; height: 16px; vertical-align: middle;" width="16" height="20" viewBox="0 0 16 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M2 13.5V8.5C2 5.43 3.64 2.86 6.5 2.18V1.5C6.5 0.67 7.17 0 8 0C8.83 0 9.5 0.67 9.5 1.5V2.18C12.37 2.86 14 5.42 14 8.5V13.5L16 15.5V16.5H9.53674e-07V15.5L2 13.5ZM7 13.5H9V11.5H7V13.5ZM7 9.5H9V5.5H7V9.5ZM8 19.5C6.9 19.5 6 18.6 6 17.5H10C10 18.6 9.11 19.5 8 19.5Z" fill="white"/></svg> '+Sn.t("Image is not suitable")+"</div>",a.imageWarning=!0,r.appendChild(a.dom.elPreviewImage.imageLoad.warning),a.dom.elPreviewImage.imageLoad.warning.addEventListener("click",(function(){var e=[];o&&e.push(Sn.t("validation.blurry")),s&&e.push(Sn.t("validation.eyeGlass")),u&&e.push(Sn.t("validation.faceObstruction")),l||e.push(Sn.t("validation.neutralFace")),c<50&&e.push(Sn.t("validation.brightness"));var t="<ol>"+e.map((function(e){return"<li>"+e+"</li>"})).join(" ")+"</ol>";new Hi(a,(function(){a.dom.elModal.remove()}),null,Sn.t("Tips for taking better selfies"),t,Sn.t("Continue"))})))}}])&&Cr(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function jr(e){return jr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},jr(e)}function _r(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Rr(i.key),i)}}function Rr(e){var t=function(e){if("object"!=jr(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=jr(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==jr(t)?t:t+""}var Er=function(){return e=function e(t,n,i,r,a){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.el=t,this.gl=n,this.name=i.name,this.inputType=i.inputType,this.placeholder=Sn.t(i.placeholder),this.required=i.required,this.title=Sn.t(i.title),this.description=Sn.t(i.description),this.value=r,this.setValue=a,this.render()},(t=[{key:"render",value:function(){var e=this,t=(this.gl,document.createElement("div"));Hn.setAttrs(t,{class:"el_box","data-name":this.name});var n=document.createElement("div");Hn.setAttrs(n,{class:"box_title",style:this.title||this.description?"margin-bottom: 17px; display: block;":""}),n.innerHTML=(this.title?'<label class="title_el" style="margin: 0 0 10px; font-weight: 600;">'+this.title+"</label>":"")+(this.description?'<p class="description_el">'+this.description+"</p>":""),t.appendChild(n);var i=document.createElement("div");Hn.setAttrs(i,{class:"textInput"});var r=document.createElement("input");Hn.setAttrs(r,{class:"input",placeholder:this.placeholder?this.placeholder+" ":"",name:this.name,type:this.inputType,required:this.required,value:void 0!==this.value?this.value:""}),r.addEventListener("input",(function(t){e.setValue(t.target.value),e.value=t.target.value})),i.appendChild(r),t.appendChild(i),this.el.appendChild(t)}}])&&_r(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function Ir(e){return Ir="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ir(e)}function zr(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Lr(i.key),i)}}function Lr(e){var t=function(e){if("object"!=Ir(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=Ir(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Ir(t)?t:t+""}var Or=function(){return e=function e(t,n,i){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.el=t,this.gl=n,this.children=Sn.t(i.text),this.render()},(t=[{key:"render",value:function(){var e=this.gl;e.dom.elementText=document.createElement("h3"),Hn.setAttrs(e.dom.elementText,{style:"margin: 0 0 10px"}),e.dom.elementText.innerHTML=this.children,this.el.appendChild(e.dom.elementText)}}])&&zr(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function Mr(e){return Mr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Mr(e)}function Fr(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Dr(i.key),i)}}function Dr(e){var t=function(e){if("object"!=Mr(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=Mr(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Mr(t)?t:t+""}var Br=function(){return e=function e(t,n,i,r,a){var o;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.el=t,this.gl=n,this.name=i.name,this.options=null!==(o=i.options)&&void 0!==o?o:[],this.required=i.required,this.title=Sn.t(i.title),this.description=Sn.t(i.description),this.value=r,this.setValue=a,this.render()},(t=[{key:"render",value:function(){var e=this,t=(this.gl,document.createElement("div"));Hn.setAttrs(t,{class:"el_box","data-name":this.name});var n=document.createElement("div");Hn.setAttrs(n,{class:"box_title",style:this.title||this.description?"margin-bottom: 17px; display: block;":""}),n.innerHTML=(this.title?'<label class="title_el" style="margin: 0 0 10px; font-weight: 600;">'+this.title+"</label>":"")+(this.description?'<p class="description_el">'+this.description+"</p>":""),t.appendChild(n);var i=document.createElement("div");Hn.setAttrs(i,{class:"textInput"});var r=document.createElement("select");Hn.setAttrs(r,{class:"select",name:this.name,required:this.required}),this.options.map((function(t){var n=document.createElement("option");n.value=t.value,n.text=Sn.t(t.label),t.value===e.value&&(n.selected=!0),r.appendChild(n)})),r.addEventListener("change",(function(t){e.setValue(t.target.value),e.value=t.target.value})),i.appendChild(r),t.appendChild(i),this.el.appendChild(t)}}])&&Fr(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function Nr(e){return Nr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Nr(e)}function Gr(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Ur(i.key),i)}}function Ur(e){var t=function(e){if("object"!=Nr(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=Nr(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Nr(t)?t:t+""}var Hr=function(){return e=function e(t,n,i,r,a){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.el=t,this.gl=n,this.item=i,this.valus=r,this.setData=a,this.render()},(t=[{key:"render",value:function(){var e=this,t=this.gl,n=this.item;switch(n.type){case"title":new Or(this.el,t,n);break;case"text":new Qn(this.el,t,n);break;case"checkboxInput":new Kn(this.el,t,n,this.valus[n.name],(function(t){return e.setData(t,n.name)}));break;case"radioInput":new ii(this.el,t,n,this.valus[n.name],(function(t){return e.setData(t,n.name)}));break;case"textInput":new Er(this.el,t,n,this.valus[n.name],(function(t){return e.setData(t,n.name)}));break;case"selectBox":new Br(this.el,t,n,this.valus[n.name],(function(t){return e.setData(t,n.name)}))}}}])&&Gr(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function Wr(e){return Wr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Wr(e)}function Vr(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,qr(i.key),i)}}function qr(e){var t=function(e){if("object"!=Wr(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=Wr(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Wr(t)?t:t+""}var Jr=function(){return e=function e(t,n){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.ctx=t,this.w=t.w,this.gl=t.w.globals,this.onSubmit=n,this.onSkip=i,this.valus=this.gl.formData,this.required=[],this.render()},(t=[{key:"render",value:function(){var e=this,t=this.w.globals,n=this.w.config;Object.keys(this.valus).length<=0&&n.defaultQuiz&&Vn().map(n.defaultQuiz,(function(t,n){e.valus[n]=t}));var i=t.formPages.find((function(e){return"imageAnalysis"===e.name}));if(i.content&&i.content.elements&&i.content.elements.length>0){t.formData||(t.formData={});var r=i.content.actions?i.content.actions.find((function(e){return"goToSkip"===e.onAction})):null,a=i.content.actions?i.content.actions.find((function(e){return"goToNext"===e.onAction||"onSubmitFormData"===e.onAction})):null;new Hi(t,a?function(){if(e.required.length>0&&!e.required.find((function(t){return e.valus[t]})))return!1;i.content.elements.map((function(e){var n=t.dom.elModal.body.querySelector('.el_box[data-name="'+e.name+'"]');if(n){var i=n.querySelector(".err");i&&i.remove()}}));var n=An(i.content.elements,e.valus);if(n)return n.map((function(e,n){Vn().map(e.errors,(function(e,n){var i=t.dom.elModal.body.querySelector('.el_box[data-name="'+n+'"]');if(i){var r=document.createElement("p");Hn.setAttrs(r,{class:"err"}),r.innerText=e,i.appendChild(r)}}))})),!1;t.dom.elModal.remove(),e.onSubmit(e.valus)}:null,r?function(){t.dom.elModal.remove(),e.onSkip&&e.onSkip()}:null,"","",a?Sn.t(a.label):"",r?Sn.t(r.label):""),t.dom.elModal.body=t.dom.elModal.box.getElementsByClassName("body")[0],t.dom.elModal.accept=t.dom.elModal.box.getElementsByClassName("accept")[0];var o=!0,s=!0;i.content.elements.map((function(n){console.log(n),n.required&&e.required.push(n.name),n.required&&!e.valus[n.name]&&(o=!1),e.valus[n.name]||(s=!1),new Hr(t.dom.elModal.body,t,n,e.valus,(function(n,i){e.valus[i]=n,t.dom.elModal.accept&&e.required.map((function(n){e.valus[n]?t.dom.elModal.accept.classList.remove("disabale"):t.dom.elModal.accept.classList.add("disabale")}))}))})),t.dom.elModal.accept&&this.required.length>0&&t.dom.elModal.accept.classList.add("disabale"),t.dom.elModal.accept&&o&&t.dom.elModal.accept.classList.contains("disabale")&&t.dom.elModal.accept.classList.remove("disabale"),s&&t.dom.elModal.accept.click()}}}])&&Vr(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function Yr(e){return Yr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Yr(e)}function Kr(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,$r(i.key),i)}}function $r(e){var t=function(e){if("object"!=Yr(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=Yr(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Yr(t)?t:t+""}var Zr=function(){return e=function e(t,n,i){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.el=t,this.gl=n,this.co=i,this.age=r,this.render()},(t=[{key:"render",value:function(){var e=this.el,t=this.gl;this.co,t.dom.elPreviewImage.imageLoad.age=document.createElement("div"),Hn.setAttrs(t.dom.elPreviewImage.imageLoad.age,{style:"position: absolute;top: "+(t.imageWarning?"102":"60")+"px;left: 17px;text-align: left;background: var(--basic);padding: 7px 10px;border-radius: 10px;color: #fff; font-size: 14px"}),t.dom.elPreviewImage.imageLoad.age.innerHTML="<div>"+Sn.t("Skin Age")+': <span style="margin-left: 7px;display: inline-block;font-weight: bold;">'+parseInt(this.age)+"</span></div>",e.appendChild(t.dom.elPreviewImage.imageLoad.age)}}])&&Kr(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function Xr(e){return Xr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Xr(e)}function Qr(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,ea(i.key),i)}}function ea(e){var t=function(e){if("object"!=Xr(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=Xr(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Xr(t)?t:t+""}var ta=function(){return e=function e(t,n,i,r){var a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:[],o=arguments.length>5?arguments[5]:void 0;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.gl=t,this.ctx=n,this.pv=i,this.w=n.w,this.gl=n.w.globals,this.co=n.w.config,this.dataReport=a,this.image=r,this.back=o,this.render()},(t=[{key:"render",value:function(){var e,t=this.gl,n=(this.co,this.dataReport),i=this,r=[],a=!1,o=!1,s=[];n.validation&&(n.validation.blurry&&!0===n.validation.blurry&&(r.push(Sn.t("your picture quality is blurry")),a=!0),n.validation.eyeGlass&&!0===n.validation.eyeGlass&&(r.push(Sn.t("be wearing glasses")),o=!0),o&&s.push(Sn.t("please remove them")),a&&s.push(Sn.t("Improve photo quality")),e=Sn.t("We noticed you might")+" "+r.join(" "+Sn.t("and")+" ")+". "+Sn.t("for better results")+", "+s.join(" "+Sn.t("and")+" ")+"."),r.length>0?new Hi(t,(function(){i.submitData(n),t.dom.elModal.remove()}),(function(){i.back(),t.dom.elModal.remove()}),Sn.t("Tips for taking better selfies"),e,Sn.t("Continue"),Sn.t("Re-take")):this.submitData(n)}},{key:"submitData",value:function(e){var t=this,n=this.gl,i=this.co,r=this.pv.getValue(),a=n.formPages.find((function(e){return"imageAnalysis"===e.name}));i.showProducts||i.showRoutine?(n.dom.elPreviewImage.actionProducts=document.createElement("div"),Hn.setAttrs(n.dom.elPreviewImage.actionProducts,{class:"problems_products",style:r.copyRight&&"modal"!==i.displayModel?"position: absolute;z-index: 2;left: 10px;right: 10px;bottom: "+("widget"===i.displayModel?25:15)+"px;":"position: absolute;z-index: 2;left: 0;right: 0;bottom: 0;"}),new fr(n.dom.elPreviewImage.actionProducts,this.ctx,this.pv,e.problems,!0),n.dom.elPreviewImage.actionProducts.btn=document.createElement("button"),n.dom.elPreviewImage.actionProducts.btn.innerHTML=i.showProducts?Sn.t("Get recommended products!"):Sn.t("Generate routines for you"),Hn.setAttrs(n.dom.elPreviewImage.actionProducts.btn,{class:"recommended_products"}),n.dom.elPreviewImage.actionProducts.appendChild(n.dom.elPreviewImage.actionProducts.btn),n.dom.elPreviewImage.imageLoad.appendChild(n.dom.elPreviewImage.actionProducts),n.dom.elPreviewImage.actionProducts.btn.addEventListener("click",(function(e){!n.showFinalForm&&a.afterAnalysis&&a.content&&a.content.elements&&a.content.elements.length>0?new Jr(t.ctx,(function(e){n.formData=e,n.showFinalForm=!0,t.showProductsPage(),n.getActiveSelections&&n.getActiveSelections(e)}),(function(){n.showFinalForm=!0,t.showProductsPage(),n.getActiveSelections&&n.getActiveSelections(n.formData)})):t.showProductsPage()}))):new fr(n.dom.elPreviewImage.imageLoad,this.ctx,this.pv,e.problems),new br(n.dom.elPreviewImage.boxrelative,n,this.co,e.problems),new Tr(n.dom.elPreviewImage.imageLoad,this.ctx,e.validation),e.damagePercentage&&new Pr(n.dom.elPreviewImage.imageLoad,n,this.co,e.damagePercentage),e.skinAge&&new Zr(n.dom.elPreviewImage.imageLoad,n,this.co,e.skinAge);var o='<button class="FaceButtonBase-root FaceIconButton-root FaceInfoMode infoRepetition" style="'+("modal"===i.displayModel?"top: 10px;":"")+'" tabindex="0" type="button"><span class="FaceIconButton-label"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 18.49L9.5 12.48L13.5 16.48L22 6.92001L20.59 5.51001L13.5 13.48L9.5 9.48001L2 16.99L3.5 18.49Z" fill="#6B7280"/></svg></span><span class="FaceTouchRipple-root"></span></button>';if(n.dom.elPreviewImage.backico=document.createElement("div"),n.dom.elPreviewImage.backico.innerHTML='<button class="FaceButtonBase-root FaceIconButton-root FaceChangeBackMode backRepetition" tabindex="0" type="button"><span class="FaceIconButton-label"><svg viewBox="0 0 24 24" fill="currentColor" style="width: 24px; height: 24px;"><path d="M12 5V1L7 6l5 5V7c3.31 0 6 2.69 6 6s-2.69 6-6 6-6-2.69-6-6H4c0 4.42 3.58 8 8 8s8-3.58 8-8-3.58-8-8-8z"></path></svg></span><span class="FaceTouchRipple-root"></span></button>',n.dom.elPreviewImage.infoico=document.createElement("div"),n.dom.elPreviewImage.infoico.innerHTML=o,"modal"!==i.displayModel&&n.dom.elPreviewImage.appendChild(n.dom.elPreviewImage.backico),n.dom.elPreviewImage.appendChild(n.dom.elPreviewImage.infoico),n.dom.elPreviewImage.backico&&n.dom.elPreviewImage.backico.addEventListener("click",(function(){t.back(),n.onRefresh&&n.onRefresh()})),n.dom.elPreviewImage.infoico.addEventListener("click",(function(){new ir(t.ctx,t.dataReport)})),n.imageSubmit=this.image,n.getAdvisorData&&n.getAdvisorData(e.problems),!i.showProducts&&!i.showRoutine&&!n.showFinalForm&&a.afterAnalysis&&a.content&&a.content.elements&&a.content.elements.length>0&&setTimeout((function(){n.showFinalForm||"preview"!==n.stepShow||new Jr(t.ctx,(function(e){n.formData=e,n.showFinalForm=!0,n.getActiveSelections&&n.getActiveSelections(e)}),(function(){n.showFinalForm=!0,n.getActiveSelections&&n.getActiveSelections(n.formData)}))}),5e3),n.onload){var s={points:{},image:this.image};e.problems.map((function(e){var t=e.key;switch(e.key){case"acne":t="acnes";break;case"darkCircle":t="dark_circle";break;case"deepWrinkles":t="deep_wrinkles";break;case"eyeBag":t="eye_bag";break;case"eyeWrinkles":t="eye_wrinkles";break;case"fineWrinkles":t="wrinkles"}s[t]=parseInt(e.number)})),n.onload(s)}}},{key:"showProductsPage",value:function(){this.co.showProducts?(this.gl.statusProductDimension=!0,new dr(this.gl.dom.docIframe,this.ctx,this.pv,this.dataReport)):this.co.showRoutine&&(this.gl.statusRoutinDimension=!0,new sr(this.gl.dom.docIframe,this.ctx,this.pv,this.dataReport))}}])&&Qr(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function na(e){return na="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},na(e)}function ia(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,aa(i.key),i)}}function ra(e,t,n){return(t=aa(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function aa(e){var t=function(e){if("object"!=na(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=na(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==na(t)?t:t+""}var oa=function(){return e=function e(t,n,i,r,a,o,s,l){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),ra(this,"dataReport",null),ra(this,"wrinklesPoint",null),ra(this,"eyeWrinklesPoint",null),ra(this,"darkCirclePoint",null),ra(this,"pigmentPoint",null),ra(this,"deepWrinklesPoint",null),ra(this,"eyeBagPoint",null),this.el=t,this.ctx=n,this.pv=i,this.w=n.w,this.gl=n.w.globals,this.co=n.w.config,this.image=r,this.width=a,this.height=o,this.back=s,this.onSet=l,this.valus={},this.required=[],this.submitData=this.submitData.bind(this),this.updateDimension=this.updateDimension.bind(this),this.render()},t=[{key:"render",value:function(){var e=this,t=this.gl;this.updateDimension(),t.dom.elIframe.contentWindow.addEventListener("resize",this.updateDimension),t.dom.elPreviewImage=document.createElement("div"),Hn.setAttrs(t.dom.elPreviewImage,{class:"imageSubmit"}),t.dom.elPreviewImage.imageLoad=document.createElement("div"),Hn.setAttrs(t.dom.elPreviewImage.imageLoad,{class:"imageLoad",style:"max-height: "+this.height+"px"}),t.dom.elPreviewImage.fix=document.createElement("div"),Hn.setAttrs(t.dom.elPreviewImage.fix,{style:"display: flex; justify-content: center;"}),t.dom.elPreviewImage.boxrelative=document.createElement("div"),Hn.setAttrs(t.dom.elPreviewImage.boxrelative,{style:"position: relative; background: #000;"}),t.dom.elPreviewImage.fix.appendChild(t.dom.elPreviewImage.boxrelative),t.dom.elPreviewImage.imageLoad.appendChild(t.dom.elPreviewImage.fix),t.dom.elPreviewImage.appendChild(t.dom.elPreviewImage.imageLoad),this.el.appendChild(t.dom.elPreviewImage),this.resizeBase64Img(this.image).then((function(t){e.image=t,fetch(e.image).then((function(e){return e.blob()})).then((function(t){if(t.size<=1e3)return e.errorSkinAnalyze(Sn.t("The input image is not suitable")),!1;e.showUserData()}))})).catch((function(){return e.errorSkinAnalyze(Sn.t("The input image is not suitable")),!1}))}},{key:"showUserData",value:function(){var e=this,t=this.gl,n=t.formPages.find((function(e){return"imageAnalysis"===e.name}));if(!n.afterAnalysis&&n.content&&n.content.elements&&n.content.elements.length>0){t.formData||(t.formData={});var i='<div style="position: relative"><img class="image_face_preview" src="'+this.image+'" style="width: auto; height: '+this.height+"px; max-height: "+this.height+'px; position: relative;"></div>';t.dom.elPreviewImage.preview=document.createElement("div"),t.dom.elPreviewImage.preview.innerHTML=i,t.dom.elPreviewImage.boxrelative.appendChild(t.dom.elPreviewImage.preview),new Jr(this.ctx,(function(n){t.formData=n,e.showPreview(),e.submitSkinAnalyze(e.image),t.getActiveSelections&&t.getActiveSelections(n)}),(function(){e.showPreview(),e.submitSkinAnalyze(e.image),t.getActiveSelections&&t.getActiveSelections(t.formData)}))}else this.showPreview(),this.submitSkinAnalyze(this.image)}},{key:"showPreview",value:function(){var e=this.gl;e.dom.elPreviewImage.boxrelative.innerHTML="";var t='<div style="position: relative"><div class="loader_preview_image"><div class="face_loader_text"><ul class="content__container__list"><li class="content__container__list__item">'+Sn.t("Sending Facial Data...")+'</li><li class="content__container__list__item">'+Sn.t("Scanning Face...")+'</li><li class="content__container__list__item">'+Sn.t("Analyzing Facial Attributes...")+'</li><li class="content__container__list__item">'+Sn.t("AI Crafting Report..")+'</li></ul></div><div class="bounding_box" style="display: none"><div class="face_loader face_loader-2"><div class="loader-circles"></div><div class="loader-diamond"></div><div class="loader-groove"></div></div></div></div><img class="image_face_preview" src="'+this.image+'" style="width: auto; height: '+this.height+"px; max-height: "+this.height+'px; position: relative;"></div>';e.dom.elPreviewImage.preview=document.createElement("div"),e.dom.elPreviewImage.preview.innerHTML=t,e.dom.elPreviewImage.boxrelative.appendChild(e.dom.elPreviewImage.preview),e.dom.elPreviewImage.preview.image=e.dom.elPreviewImage.preview.getElementsByClassName("image_face_preview")[0],e.dom.elPreviewImage.preview.boundingBox=e.dom.elPreviewImage.preview.getElementsByClassName("bounding_box")[0];var n=this;new Ai(e.dom.elPreviewImage.preview.image,null,null,this.width,this.height,(function(e){return n.showCropMode(e)}),(function(){return n.loadingDetection()}),null,"image")}},{key:"showCropMode",value:function(e){var t=this.gl,n=e[0];if(!n)return null;Hn.setAttrs(t.dom.elPreviewImage.preview.boundingBox,{style:"position: absolute; top: "+100*n.yCenter+"%; left: "+100*n.xCenter+"%; width: "+100*n.width+"%; height: "+100*n.height+"%; z-index: 99999999; display: block"})}},{key:"loadingDetection",value:function(){this.gl}},{key:"submitSkinAnalyze",value:function(e){var t=this,n=this.gl,i=this.co;return new Promise((function(r,a){var o=t;fetch(e).then((function(e){return e.blob()})).then((function(e){var r;if(e.size<=1e3)return t.errorSkinAnalyze(Sn.t("The input image is not suitable")),!1;var a=new File([e],Math.random()+".jpeg",{type:"image/jpeg"}),s=new FormData;s.append("file",a),n.formData&&s.append("form",JSON.stringify(n.formData)),i.problems.length>0&&s.append("problem",i.problems.join(",")),s.append("faceageId",n.faceageId),null===(r=Et.request("POST","skinanalyze",s,{"Content-Type":"multipart/form-data"}))||void 0===r||r.then((function(e){e.data.message?(o.onSet&&o.onSet(!1),console.error(e.data.message)):e.data.data.problems?(n.skinAnalyzeData=e.data.data,o.onSet&&o.onSet(!0),o.submitData(e.data.data)):(o.onSet&&o.onSet(!1),console.error("There is a problem processing your image from our service side."))})).catch((function(e){o.onSet&&o.onSet(!1);var n=[];if(e.response&&e.response.data.message&&422===e.response.status)if(e.response.data.errors){var i=e.response.data.errors;Object.keys(i).forEach((function(e){i[e][0]?n.push(i[e][0]):n.push(i[e])}))}else n.push(e.response.data.message);else n.push(e.message);t.errorSkinAnalyze(n.join(", "))}))}))}))}},{key:"submitData",value:function(e){var t=this.gl;t.dom.elPreviewImage.boxrelative.innerHTML="",t.dom.elPreviewImage.finalImage=document.createElement("img"),Hn.setAttrs(t.dom.elPreviewImage.finalImage,{id:"face_age_analyzer_image_server",class:"face_age_analyzer_image_server",src:this.image,style:"width: auto; height: "+this.height+"px; max-height: "+this.height+"px; position: relative; opacity: 0.95"}),t.dom.elPreviewImage.boxrelative.appendChild(t.dom.elPreviewImage.finalImage),this.dataReport=e,new ta(t,this.ctx,this.pv,this.image,e,this.back)}},{key:"errorSkinAnalyze",value:function(e){var t=this,n=this.gl;n.dom.elPreviewImage.boxrelative.innerHTML="";var i='<div style="position: relative"><img class="image_face_preview" src="'+this.image+'" style="width: auto; height: '+this.height+"px; max-height: "+this.height+'px; position: relative;"></div>';n.dom.elPreviewImage.preview=document.createElement("div"),n.dom.elPreviewImage.preview.innerHTML=i,n.dom.elPreviewImage.boxrelative.appendChild(n.dom.elPreviewImage.preview),new Hi(n,null,(function(){t.back()}),Sn.t("Error"),e,"",Sn.t("Re-take"))}},{key:"updateDimension",value:function(){var e=this.gl,t=this.co,n=Hn.getSizeFrame(e,t);this.width=n.width,this.height=n.height,e.dom.elPreviewImage&&e.dom.elPreviewImage.finalImage&&(e.dom.elPreviewImage.finalImage.style.height=this.height+"px",e.dom.elPreviewImage.finalImage.style.maxHeight=this.height+"px"),e.dom.elPreviewImage&&e.dom.elPreviewImage.preview.image&&(e.dom.elPreviewImage.preview.image.style.height=this.height+"px",e.dom.elPreviewImage.preview.image.style.maxHeight=this.height+"px")}},{key:"resizeBase64Img",value:function(e,t){return new Promise((function(t,n){var i=new Image;i.src=e,i.onload=function(){var n=i.width,r=i.height;if(n>1e3){var a=r/n;r=(n=1e3)*a;var o=document.createElement("canvas");o.width=n,o.height=r,o.getContext("2d").drawImage(i,0,0,n,r);var s=o.toDataURL("image/jpeg",.9);t(s)}else t(e)},i.onerror=function(e){n("Error loading convert image:",e)}}))}}],t&&ia(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function sa(e){return sa="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},sa(e)}function la(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,ua(i.key),i)}}function ua(e){var t=function(e){if("object"!=sa(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=sa(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==sa(t)?t:t+""}var ca=function(){return e=function e(t,n,i){var r=!(arguments.length>3&&void 0!==arguments[3])||arguments[3];!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.el=t,this.gl=n,this.cnf=i,this.stepShow="",this.show=r,this.bottom=5,this.render()},(t=[{key:"render",value:function(){var e=this,t=this.gl,n=this.cnf;if(console.log(n.displayModel),!this.show)return null;var i=5,r=document.createElement("div");Hn.setAttrs(r,{style:"position: absolute; bottom: "+i+"px; left: 0px; right: 0px; text-align: center; font-size: 10px; color: #ffffffa8; z-index: 999999999;text-shadow: 0px 1px 0px #00000075;"}),r.innerHTML=Sn.t("Powered by")+' <a href="https://getfaceage.com/" target="_blank" style="color: #ffffffa8; text-decoration: none">Face Age</a>',this.el.appendChild(r),"widget"===n.displayModel&&setInterval((function(){if(e.stepShow!==t.stepShow){switch(t.stepShow){case"intro":i=45;break;case"quiz":i=50;break;default:i=5}r.style.bottom=i+"px",e.stepShow=t.stepShow}}),100)}}])&&la(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function da(e){return da="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},da(e)}function pa(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,ma(i.key),i)}}function ha(e,t,n){return(t=ma(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function ma(e){var t=function(e){if("object"!=da(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=da(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==da(t)?t:t+""}var fa=function(){return e=function e(t,n,i){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),ha(this,"loading",!1),ha(this,"width",360),ha(this,"height",480),this.ctx=n,this.pv=i,this.w=n.w,this.el=t,this.onSet=r,this.updateDimension=this.updateDimension.bind(this),this.handleSubmit=this.handleSubmit.bind(this),this.handleBack=this.handleBack.bind(this),this.restart=this.restart.bind(this),this.callBack=this.callBack.bind(this),this.getCurrentDimension=this.getCurrentDimension.bind(this),this.render()},(t=[{key:"render",value:function(){var e=this,t=this.w.globals,n=this.w.config;this.screenSize=this.getCurrentDimension(),this.updateDimension(),t.dom.elIframe.contentWindow.addEventListener("resize",this.updateDimension),t.dom.elFace=document.createElement("div"),Hn.setAttrs(t.dom.elFace,{id:"analyzer_box",class:"face_age",style:"position: relative; display: flex; align-items: center; height: 100%; "}),t.stepShow="upload",t.dom.elFace.analyzer=document.createElement("div"),Hn.setAttrs(t.dom.elFace.analyzer,{id:"face_age_analyzer",class:"talosFaceSkin",style:"width: "+this.width+"px; height: "+this.height+"px; background-color: #fff"}),this.showAnalyzer(t,n),"modal"===n.displayModel?(new si(t.dom.elFace,this.ctx,this.pv,null,(function(){t.dom.elFace.remove(),"preview"===t.stepShow?(t.imageWebCam=null,new ba(t.dom.docIframe,e.ctx,e.pv)):(t.intro=!0,n.intro=!0,t.imageWebCam=null,new ba(t.dom.docIframe,e.ctx,e.pv))})),Hn.setAttrs(t.dom.elFace,{style:"height: 100%;display: flex;flex-direction: column;flex: 1 1 0%;overflow: hidden auto;align-self: center;"}),t.dom.elFaceModal=document.createElement("div"),Hn.setAttrs(t.dom.elFaceModal,{class:"face_age_mo_main",style:"position: relative; display: flex; align-items: center; height: 100%; "}),t.dom.elFaceModal.appendChild(t.dom.elFace.analyzer),t.dom.elFace.appendChild(t.dom.elFaceModal)):t.dom.elFace.appendChild(t.dom.elFace.analyzer),this.el.appendChild(t.dom.elFace)}},{key:"showAnalyzer",value:function(e,t){e.dom.elFace.analyzer.innerHTML="",!t.showCamera||e.activeInput&&"camera"!==e.activeInput?this.showUpload(e.dom.elFace.analyzer,e,t):this.showWebCam(e.dom.elFace.analyzer,e,t)}},{key:"showWebCam",value:function(e,t,n){var i=this;if(t.dom.webcamShow=new Fi(e,t,n,this.width,this.height,this.handleSubmit,this.handleBack,this.loading),n.showUpload){t.dom.showUploadAction=document.createElement("div"),Hn.setAttrs(t.dom.showUploadAction,{class:"faceAction"});var r="modal"!==n.displayModel?'<button class="FaceButtonBase-root FaceBackMode FaceIconButton-root" tabindex="0" type="button"><span class="FaceIconButton-label"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M20 11H7.83L13.42 5.41L12 4L4 12L12 20L13.41 18.59L7.83 13H20V11Z" fill="#6B7280"/></svg></span><span class="FaceTouchRipple-root"></span></button>':"";t.dom.showUploadAction.innerHTML=r+'<button class="FaceButtonBase-root FaceChangeMode FaceIconButton-root" tabindex="0" type="button"><span class="FaceIconButton-label"><svg viewBox="0 0 24 24" fill="currentColor" style="width: 24px; height: 24px;"><path d="M19 5v14H5V5h14m0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-4.86 8.86-3 3.87L9 13.14 6 17h12l-3.86-5.14z"></path></svg></span><span class="FaceTouchRipple-root"></span></button>',e.appendChild(t.dom.showUploadAction);var a=e.querySelector(".FaceChangeMode"),o=e.querySelector(".FaceBackMode");a.addEventListener("click",(function(){e.innerHTML="",t.imageWebCam=null,t.activeInput="upload",i.showAnalyzer(t,n)})),o&&o.addEventListener("click",(function(){e.innerHTML="",t.imageWebCam=null,t.skinAnalyzeData=[],t.dom.elFace.remove(),t.intro=!0,n.intro=!0,new ba(t.dom.docIframe,i.ctx,i.pv)}))}}},{key:"showUpload",value:function(e,t,n){var i=this;if(new Yi(e,t,n,this.width,this.height,this.handleSubmit,this.handleBack,this.loading),n.showCamera){t.dom.showCameraAction=document.createElement("div"),Hn.setAttrs(t.dom.showCameraAction,{class:"faceAction"});var r="modal"===n.displayModel||n.showUpload?"":'<button class="FaceButtonBase-root FaceBackMode FaceIconButton-root" tabindex="0" type="button"><span class="FaceIconButton-label"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M20 11H7.83L13.42 5.41L12 4L4 12L12 20L13.41 18.59L7.83 13H20V11Z" fill="#6B7280"/></svg></span><span class="FaceTouchRipple-root"></span></button>';t.dom.showCameraAction.innerHTML=r+'<button class="FaceButtonBase-root FaceChangeWebcamMode FaceIconButton-root" tabindex="0" type="button"><span class="FaceIconButton-label"><svg viewBox="0 0 24 24" fill="currentColor" style="width: 24px; height: 24px;"><path d="M20 4h-3.17L15 2H9L7.17 4H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 14H4V6h4.05l1.83-2h4.24l1.83 2H20v12zM12 7c-2.76 0-5 2.24-5 5s2.24 5 5 5 5-2.24 5-5-2.24-5-5-5zm0 8c-1.65 0-3-1.35-3-3s1.35-3 3-3 3 1.35 3 3-1.35 3-3 3z"></path></svg></span><span class="FaceTouchRipple-root"></span></button>',e.appendChild(t.dom.showCameraAction);var a=e.querySelector(".FaceChangeWebcamMode"),o=e.querySelector(".FaceBackMode");a.addEventListener("click",(function(){e.innerHTML="",t.activeInput="camera",i.showAnalyzer(t,n)})),o&&o.addEventListener("click",(function(){t.dom.elFace.remove(),t.imageWebCam=null,t.skinAnalyzeData=[],i.el.innerHTML="",t.intro=!0,n.intro=!0,new ba(t.dom.docIframe,i.ctx,i.pv)}))}}},{key:"handleBack",value:function(){var e=this.w.globals,t=this.w.config;e.imageWebCam=null,this.showAnalyzer(e,t)}},{key:"handleSubmit",value:function(e){var t=this.w.globals;t.dom.elFace.analyzer.innerHTML="",t.stepShow="preview",new oa(t.dom.elFace.analyzer,this.ctx,this.pv,e,this.width,this.height,this.restart,this.callBack)}},{key:"restart",value:function(){var e=this.w.globals;e.imageWebCam=null,e.skinAnalyzeData=[];var t=this.pv.getValue();this.el.innerHTML="",this.onSet&&this.onSet(),this.render(),this.showFaceAge(t.copyRight)}},{key:"callBack",value:function(e){var t=this.w.globals;e&&t.skinAnalyzeData&&this.onSet&&this.onSet(t.skinAnalyzeData)}},{key:"getCurrentDimension",value:function(){return{width:"undefined"==typeof window?0:window.innerWidth,height:"undefined"==typeof window?0:window.innerHeight}}},{key:"updateDimension",value:function(){var e=this.w.globals,t=this.w.config,n=Hn.getSizeFrame(e,t);this.width=n.width,this.height=n.height,"widget"===t.displayModel&&(e.dom.elIframe.style.height=this.height+"px"),e.dom.elFace&&e.dom.elFace.analyzer&&(e.dom.elFace.analyzer.style.width=this.width+"px",e.dom.elFace.analyzer.style.height=this.height+"px")}},{key:"showFaceAge",value:function(e){var t=this.w.globals,n=this.w.config;new ca(t.dom.docIframe,t,n,e)}}])&&pa(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function ga(e){return ga="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ga(e)}function ya(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,va(i.key),i)}}function va(e){var t=function(e){if("object"!=ga(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=ga(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==ga(t)?t:t+""}var ba=function(){function e(t,n,i){var r;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.el=t,this.ctx=n,this.pv=i,this.w=n.w,this.gl=n.w.globals,this.valus=null!==(r=this.gl.formData)&&void 0!==r?r:{},this.required=[],this.render()}return t=e,n=[{key:"render",value:function(){var e=this,t=this.el,n=this.w.globals,i=this.w.config;if(Object.keys(this.valus).length<=0&&i.defaultQuiz&&Vn().map(i.defaultQuiz,(function(t,n){e.valus[n]=t})),n.formPages){var r=!1;n.formPages.map((function(e){"imageAnalysis"===e.name&&(r=!0)})),r||n.formPages.push({name:"imageAnalysis"})}else n.formPages=[{name:"imageAnalysis"}];i.quiz?(n.dom.elForm=document.createElement("div"),Hn.setAttrs(n.dom.elForm,{class:"face_age_form "+i.displayModel,style:"height: 100%;display: flex;flex-direction: column;flex: 1 1 0%;overflow: hidden auto;align-self: center; background-position: center;background-size: cover; border-radius: 14px;"}),t.appendChild(n.dom.elForm),this.showQuiz(n.activeQuiz)):this.showFaceSkin()}},{key:"showQuiz",value:function(){var t=this,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,i=this.w.globals,r=this.w.config,a=i.formPages[n];if(!a)return null;if("imageAnalysis"===a.name)return i.dom.elForm.remove(),this.showFaceSkin(),(!a.content||!a.content.elements&&a.content.elements.length<=0)&&i.getActiveSelections&&i.getActiveSelections(i.formData),null;if(i.stepShow="quiz",a.if&&a.if.key&&a.if.condition&&a.if.value&&!this.checkIf(this.valus[a.if.key],a.if.condition,a.if.value))return this.onSubmit(a),null;var o=a.title?'<div class="title">'+Sn.t(a.title)+"</div>":"",s=(a.content&&a.content.elements,"");this.required=[],a.content.actions&&a.content.actions.map((function(e){s+='<div role="button" width="fullWidth" class="sc-1x1y2bq-3 bLwrg '+("goToNext"===e.onAction?"disabale":"")+" "+e.onAction+'">'+Sn.t(e.label)+"</div>"}));var l='<div class="form_window"><div class="toolbar"></div><div class="box_title">'+("modal"!==r.displayModel?'<div class="goBack"><svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M15.56 5.15999L13.2 2.79999L0 16L13.2 29.2L15.56 26.84L4.72 16L15.56 5.15999Z" fill="black"/></svg></div>':"")+o+'</div><div class="elements"></div><div class="action"><div class="sc-1x1y2bq-2 sc-1kkf162-1 dZaMnF lbSetf">'+s+"</div></div></div>",u="auto 0px";switch(a.position){case"top":u="10px auto";break;case"center":u="auto 0px";break;case"bottom":u="auto auto 15px"}i.dom.elForm.box=document.createElement("div"),Hn.setAttrs(i.dom.elForm.box,{style:"width: 100%;"+("widget"!==r.displayModel?"margin: "+u+";":"")}),i.dom.elForm.box.innerHTML=l,i.dom.elForm.elements=i.dom.elForm.box.getElementsByClassName("elements")[0],i.dom.elForm.goBack=i.dom.elForm.box.querySelector(".goBack");var c=!0;a.content&&a.content.elements&&a.content.elements.map((function(e){if(e.if&&e.if.key&&e.if.condition&&e.if.value&&!t.checkIf(t.valus[e.if.key],e.if.condition,e.if.value))return!1;e.required&&t.required.push(e.name),e.required&&!t.valus[e.name]&&(c=!1),new Hr(i.dom.elForm.elements,i,e,t.valus,(function(e,n){return t.setData(e,n)}))})),i.dom.elForm.toolbar=i.dom.elForm.box.getElementsByClassName("toolbar")[0],i.dom.elForm.toolbar&&(0!==i.activeQuiz||i.formPages.length>=i.activeQuiz)&&(i.dom.elForm.back=document.createElement("div"),Hn.setAttrs(i.dom.elForm.back,{class:"back;"}),i.dom.elForm.toolbar.appendChild(i.dom.elForm.back)),i.dom.elForm.box.getElementsByClassName("goToNext")&&(i.dom.elForm.goToNext=i.dom.elForm.box.getElementsByClassName("goToNext")[0],i.dom.elForm.goToNext&&(this.required.length<=0&&i.dom.elForm.goToNext.classList.remove("disabale"),i.dom.elForm.goToNext.addEventListener("click",(function(e){t.onSubmit(a)}))),i.dom.elForm.goToNext&&c&&i.dom.elForm.goToNext.classList.remove("disabale")),i.dom.elForm.box.getElementsByClassName("goToSkip")&&(i.dom.elForm.goToSkip=i.dom.elForm.box.getElementsByClassName("goToSkip")[0],i.dom.elForm.goToSkip&&i.dom.elForm.goToSkip.addEventListener("click",(function(e){}))),i.dom.elForm.box.getElementsByClassName("goToSkip")&&(i.dom.elForm.goToSkip=i.dom.elForm.box.getElementsByClassName("goToSkip")[0],i.dom.elForm.goToSkip&&i.dom.elForm.goToSkip.addEventListener("click",(function(n){i.dom.elForm.remove(),i.activeQuiz=i.activeQuiz+1,new e(i.dom.docIframe,t.ctx,t.pv)}))),i.dom.elForm.innerHTML="","modal"===r.displayModel?new si(i.dom.elForm,this.ctx,this.pv,null,i.activeQuiz>0&&i.formPages.length>1?function(){i.dom.elForm.remove(),i.activeQuiz=i.activeQuiz-1>0?i.activeQuiz-1:0,new e(i.dom.docIframe,t.ctx,t.pv)}:null,i.activeQuiz>0):i.dom.elForm.goBack&&(i.activeQuiz>0&&i.formPages.length>1?i.dom.elForm.goBack.addEventListener("click",(function(n){i.dom.elForm.remove(),i.activeQuiz=i.activeQuiz-1>0?i.activeQuiz-1:0,new e(i.dom.docIframe,t.ctx,t.pv)})):i.dom.elForm.goBack.remove()),"widget"!==r.displayModel&&(a.background_color?i.dom.elForm.style.backgroundColor=a.background_color:i.dom.elForm.style.backgroundColor="",a.background_image?i.dom.elForm.style.backgroundImage='url("'+a.background_image+'")':i.dom.elForm.style.backgroundImage=""),i.dom.elForm.appendChild(i.dom.elForm.box)}},{key:"setData",value:function(e,t){var n=this,i=this.w.globals;if(this.valus[t]=e,i.dom.elForm.goToNext){var r=!0;this.required.map((function(e){n.valus[e]||(r=!1)})),r?i.dom.elForm.goToNext.classList.remove("disabale"):i.dom.elForm.goToNext.classList.add("disabale")}}},{key:"checkIf",value:function(e,t,n){switch(t){case"=":if(e===n)return!0;break;case"!=":if(e!==n)return!0}return!1}},{key:"onSubmit",value:function(e){var t=this,n=this.w.globals;if(this.required.length>0&&!this.required.find((function(e){return t.valus[e]})))return!1;e.content.elements.map((function(e){var t=n.dom.elForm.elements.querySelector('.el_box[data-name="'+e.name+'"]');if(t){var i=t.querySelector(".err");i&&i.remove()}}));var i=An(e.content.elements,this.valus);if(i)return i.map((function(e,t){Vn().map(e.errors,(function(e,t){var i=n.dom.elForm.elements.querySelector('.el_box[data-name="'+t+'"]');if(i){var r=document.createElement("p");Hn.setAttrs(r,{class:"err"}),r.innerText=e,i.appendChild(r)}}))})),!1;n.activeQuiz+=1,this.showQuiz(n.activeQuiz),n.formData=this.valus}},{key:"showFaceSkin",value:function(){var e=this,t=this.w.globals,n=this.w.config;t.dom.elForm&&t.dom.elForm.remove(),n.type,n.intro?(t.stepShow="intro",new yi(t.dom.docIframe,this.ctx,this.pv),t.dom.elInfo.btn.addEventListener("click",(function(i){if(t.stepShow="upload",!t.privacy)return null;t.dom.elInfo.btn.style.opacity="0.5",t.intro=!1,n.intro=!1,t.dom.elInfo.remove(),new fa(t.dom.docIframe,e.ctx,e.pv)}))):(t.intro=!1,n.intro=!1,new fa(t.dom.docIframe,this.ctx,this.pv));var i=t.formPages.find((function(e){return"imageAnalysis"===e.name}));i&&i.background_color?t.dom.docIframe.style.backgroundColor=i.background_color:t.dom.docIframe.style.backgroundColor="#ffe5f0;",i&&i.background_image?t.dom.docIframe.style.backgroundImage='url("'+i.background_image+'")':t.dom.docIframe.style.backgroundImage=""}},{key:"setCookie",value:function(e,t,n){var i=new Date;i.setTime(i.getTime()+24*n*60*60*1e3);var r="expires="+i.toUTCString();document.cookie=e+"="+t+";"+r+";path=/"}},{key:"getCookie",value:function(e){for(var t=e+"=",n=decodeURIComponent(document.cookie).split(";"),i=0;i<n.length;i++){for(var r=n[i];" "==r.charAt(0);)r=r.substring(1);if(0==r.indexOf(t))return r.substring(t.length,r.length)}return""}}],n&&ya(t.prototype,n),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,n}();function ka(e){return ka="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ka(e)}function wa(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Pa(i.key),i)}}function Sa(e,t,n){return(t=Pa(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Pa(e){var t=function(e){if("object"!=ka(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=ka(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==ka(t)?t:t+""}var xa=new(function(){return e=function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),Sa(this,"CONTAINER_ID",void 0),Sa(this,"initialized",!1)},t=[{key:"configure",value:function(e){e.containerId&&/^(G|GT|GTM)-[A-Z0-9]+$/.test(e.containerId)&&(this.CONTAINER_ID=e.containerId)}},{key:"initialize",value:function(e,t){if(!this.initialized&&e.dom.headIframe&&e.dom.docIframe&&(this.configure(t),this.CONTAINER_ID)){var n=document.createElement("script"),i=document.createElement("noscript");n.type="text/javascript",n.text="\n (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':\n new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],\n j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=\n 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);\n })(window,document,'script','dataLayer','".concat(this.CONTAINER_ID,"');\n "),i.innerHTML='\n <iframe src="https://www.googletagmanager.com/ns.html?id='.concat(this.CONTAINER_ID,'" height="0" width="0" style="display:none;visibility:hidden"></iframe>\n '),e.dom.headIframe.insertBefore(n,e.dom.headIframe.childNodes[0]),e.dom.docIframe.insertBefore(i,e.dom.docIframe.childNodes[0])}}},{key:"push",value:function(){var e;"undefined"!=typeof window&&(window.dataLayer||(window.dataLayer=[]),(e=window.dataLayer).push.apply(e,arguments))}}],t&&wa(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}());function Ca(e){return Ca="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ca(e)}function Aa(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Ta(i.key),i)}}function Ta(e){var t=function(e){if("object"!=Ca(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=Ca(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Ca(t)?t:t+""}var ja=function(){return e=function e(t,n){var i,r,a;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),i=this,a=!1,(r=Ta(r="showModel"))in i?Object.defineProperty(i,r,{value:a,enumerable:!0,configurable:!0,writable:!0}):i[r]=a,this.ctx=n,this.w=n.w,this.el=t,this.pv=new hi},(t=[{key:"setupElements",value:function(){var e=this.w.globals,t=this.w.config;t.type,t.arrTypes,e.faceClass=".faceAge-"+e.faceID,e.dom.elWrap=document.createElement("div"),Hn.setAttrs(e.dom.elWrap,{id:e.faceClass.substring(1),class:"faceAge-main-module "+e.faceClass.substring(1)}),"modal"===t.displayModel?(e.dom.elModalMain=document.createElement("div"),Hn.setAttrs(e.dom.elModalMain,{id:"face-age-plugin"}),e.dom.elModalButtonMessage=document.createElement("div"),Hn.setAttrs(e.dom.elModalButtonMessage,{id:"face-age-message-bubbles",style:"background-color: white;\n color: black;\n box-shadow: rgba(150, 150, 150, 0.2) 0px 10px 30px 0px, rgba(150, 150, 150, 0.2) 0px 0px 0px 1px;\n border-radius: 10px;\n padding: 15px;\n margin: 8px;\n font-size: 14px;\n opacity: 1;\n transform: scale(1);\n transition: opacity 0.5s, transform 0.5s;\n position: fixed;\n border-radius: 10px;\n font-family: sans-serif;\n z-index: 9998;\n cursor: pointer;\n flex-direction: column;\n gap: 50px;\n max-width: 70vw;\n display: block;\n right: auto;\n bottom: 89px;\n left: 15px; text-transform: capitalize; display: none;"}),e.dom.elModalButtonMessage.innerHTML='<div class="text">'+Sn.t("Skin Analysis")+"</div>",e.dom.elModalMain.appendChild(e.dom.elModalButtonMessage),e.dom.elModalButtonMessage.text=e.dom.elModalButtonMessage.querySelector(".text"),e.dom.elModalButton=document.createElement("button"),Hn.setAttrs(e.dom.elModalButton,{id:"face-age-button",style:"opacity: 0; display: none;"}),e.dom.elModalButton.innerHTML='<svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 245.26 245.26">\n <defs>\n <style>\n .cls-5 {\n fill: #fff;\n }\n\n .cls-6 {\n stroke-width: 2px;\n }\n\n .cls-6, .cls-7 {\n fill: none;\n stroke-miterlimit: 10;\n }\n\n .cls-7 {\n stroke: #fff;\n }\n </style>\n </defs>\n <circle class="cls-1" cx="121.97" cy="123.39" r="121.42"/>\n <circle class="cls-1" cx="122.63" cy="122.63" r="122.63"/>\n <circle class="cls-7" cx="121.97" cy="123.39" r="107.34"/>\n <circle class="cls-7" cx="121.97" cy="123.39" r="114.38"/>\n <circle class="cls-7" cx="121.97" cy="123.39" r="99.42"/>\n <circle class="cls-7" cx="121.97" cy="123.39" r="91.5"/>\n <circle class="cls-7" cx="121.97" cy="123.39" r="83.58"/>\n <path class="cls-5" d="M84.54,239.14l1.53,.57,4.51,1.31,7.9,1.85,12.53,1.83,6.93,.46,3.76,.09,4.77-.06,4.65-.33c1.27-.07,2.54-.16,3.8-.27h.17s.11-.03,.11-.03c3.91-.36,7.8-.89,11.58-1.58,.19-.03,.37-.07,.56-.1h0c7.57-1.38,12.35-2.36,19.59-5.37,.67-.28,3.34-1.71,4-2-18.9-5.53-34.77-18.14-45.57-34.61,22.88,5.7,47.18,5.64,70.03-.17,.72-22.29,1.43-44.58,2.15-66.86,1.44-44.76-19.65-89.68-55-117.16-2.16,24.13-9.81,48.02-23.91,67.72-14.1,19.7-34.66,33.5-58.26,38.98,2.57-3.39,2.56-6.92,.31-10.53-2.25-3.61-6.83-5.6-11-4.78-4.24,.83-7.64,4.27-9.34,8.24s-1.92,8.43-1.65,12.74c.44,7.07,2.54,14.7,8.36,18.74,8.15,5.66,19.42,1.86,29.06,4.22,7.72,1.89,14.07,7.84,17.58,14.97,3.5,7.13,4.39,15.33,3.75,23.26-.62,7.71-2.94,15.38-6.51,22.48-4.29,8.54-10.38,16.27-17.49,22.28l.72,.27"/>\n <g>\n <path class="cls-1" d="M182.36,68.85c-4.09-2.6-9.86-2.41-13.22,.95-1.74,1.57-2.97,3.64-3.81,5.83-.84,2.21-1.35,4.54-1.63,6.91-.56,4.74-.22,9.54,.66,14.26,.86,4.73,2.08,9.42,3.5,14.04,1.38,4.64,2.99,9.2,4.6,13.81,.78,2.31,1.54,4.67,2.04,7.12,.52,2.44,.7,4.98,.52,7.47-.19,2.48-.59,4.97-1.52,7.33-.47,1.17-1.04,2.31-1.79,3.35s-1.65,1.94-2.65,2.71c-2.01,1.53-4.36,2.5-6.78,2.99-1.21,.25-2.44,.39-3.67,.37-1.23-.03-2.45-.2-3.63-.5,2.41,.41,4.86,.26,7.17-.38,2.31-.62,4.5-1.7,6.28-3.24,.89-.76,1.69-1.63,2.32-2.6,.64-.97,1.12-2.04,1.5-3.15,.76-2.22,1.09-4.59,1.19-6.96,.08-2.37-.15-4.72-.68-7.03-.52-2.31-1.3-4.59-2.11-6.86-1.65-4.56-3.3-9.17-4.72-13.85-1.4-4.69-2.62-9.44-3.45-14.3-.8-4.85-1.12-9.88-.34-14.79,.38-2.45,.96-4.89,1.96-7.2,1-2.29,2.41-4.47,4.38-6.08,.97-.8,2.07-1.47,3.27-1.89,1.19-.43,2.45-.6,3.69-.61,1.24,.01,2.48,.19,3.65,.58,1.2,.4,2.3,.98,3.27,1.72Z"/>\n <path class="cls-1" d="M164,104.51c1.82-1.19,3.81-2.08,5.85-2.81,2.04-.74,4.15-1.26,6.27-1.66,2.13-.37,4.28-.62,6.44-.66,2.16-.06,4.32,.03,6.46,.4-2.12,.47-4.22,.81-6.32,1.15-2.09,.36-4.17,.69-6.24,1.08-2.08,.35-4.13,.78-6.21,1.19-2.05,.42-4.12,.89-6.25,1.31Z"/>\n </g>\n <path class="cls-1" d="M142.64,16.5c-1.02,23.41-6.03,49.01-20.74,67.79-14.72,18.77-38.1,31.07-61.36,38.66,3.42-6.35,.84-13.15-6.63-13.73-7.35-.57-13.66,6.01-14.83,12.96-1.17,6.93,1.52,13.92,4.7,20.26,1.29,2.56,2.74,5.16,5.07,6.93,6.08,4.63,14.96,1.79,22.72,2.37,10.2,.76,19.08,8.09,23.11,17.06,4.03,8.96,3.77,19.28,1.26,28.73-2.52,9.46-7.15,18.27-11.75,27-1.67,3.16-2.34,9.12-5.74,10.49-5.16,2.07-14.18-3.42-20.27-8.23C8.03,187.2-17.79,108.26,20.01,52.51,38.87,24.69,72.04,2.94,107.51,4.91c4.74,.26,9.45,1.02,14.01,2.35,8.95,2.62,12.87,3.72,21.12,9.24"/>\n <g>\n <line class="cls-6" x1="26.69" y1="177.24" x2="112.73" y2="152.19"/>\n <path class="cls-6" d="M50.65,192.49c4.76-1.59,9.52-3.17,14.28-4.76,3.63-1.21,7.26-2.42,10.9-3.63,2.21-.74,6.3-2.95,8.56-2.12,5.13,1.88,10.24,3.79,15.36,5.67,2.63,.97,3.92,1.7,6.56,.78,9.76-3.38,19.53-6.73,29.29-10.1"/>\n <path class="cls-6" d="M38.67,155.46c4.82-1.39,9.64-2.77,14.47-4.16,3.68-1.06,7.36-2.11,11.04-3.17,2.24-.64,6.86-1.13,8.26-3.1,3.17-4.45,6.3-8.92,9.46-13.37,1.62-2.29,2.27-3.62,4.96-4.36,9.96-2.73,19.91-5.5,29.87-8.25"/>\n </g>\n <circle class="cls-5" cx="26.59" cy="177.17" r="2.72"/>\n <circle class="cls-5" cx="50.75" cy="192.44" r="2.72"/>\n <circle class="cls-5" cx="38.67" cy="155.51" r="2.72"/>\n <path class="cls-5" d="M88.45,240l-15-5c11-1,24-44.75,24-44.75h0c3.67,3.92,7.33,7.84,11,11.75"/>\n <polyline class="cls-5" points="112.45 243 142.64 243.62 135.8 244.5 130.66 245.02 125.15 245.25 114.18 244.96 105.95 244.13 99.35 243 95.23 242.23 92.32 241.47"/>\n</svg>',e.dom.elModalButton.addEventListener("click",(function(t){e.dom.elModalFace.classList.add("is-open")})),e.dom.elModalButtonMessage.addEventListener("click",(function(t){e.dom.elModalFace.classList.add("is-open")})),e.dom.elModalMain.appendChild(e.dom.elModalButton),e.dom.elModalFace=document.createElement("div"),Hn.setAttrs(e.dom.elModalFace,{id:"face-age-modal","aria-hidden":"false"}),e.dom.elModalOverlay=document.createElement("div"),Hn.setAttrs(e.dom.elModalOverlay,{id:"face-age-overlay"}),Hn.setAttrs(e.dom.elWrap,{class:"face-age-dialog faceAge-main-module "+e.faceClass.substring(1),role:"dialog"}),e.dom.elModalOverlay.appendChild(e.dom.elWrap),e.dom.elModalFace.appendChild(e.dom.elModalOverlay),e.dom.elModalMain.appendChild(e.dom.elModalFace),this.el.appendChild(e.dom.elModalMain),this.setCustomModalCss()):this.el.appendChild(e.dom.elWrap),this.setIframe()}},{key:"setIframe",value:function(){var e,t,n=this,i=this.w.globals,r=this.w.config;"widget"===r.displayModel?-1===(e=r.iframeWidth||i.iframeWidth).indexOf("%")?t=parseInt(e)/3*4+"px":(t=i.dom.elWrap.clientWidth*(parseInt(e)/100)/3*4+"px")<320&&(t=320):"section"===r.displayModel?(e="100%",t=r.iframeHeight||i.iframeHeight):(e="100%",t="100%"),i.dom.elIframe=document.createElement("iframe"),Hn.setAttrs(i.dom.elIframe,{id:"FaceAge-module-iframe",title:"Face Age Skincare Advisor",allow:"geolocation *; microphone *; camera *",style:"modal"!==r.displayModel?"border: 0px; margin: 0px; padding: 0px; min-width: "+e+"; min-height: "+t+"; overflow: hidden; position: relative; z-index: 1; opacity: 0;":"border: 0px; margin: 0px; padding: 0px; width: "+e+"; height: "+t+"; overflow: hidden; position: relative; z-index: 1; opacity: 0; border: none; background: transparent;"}),i.dom.elWrap.appendChild(i.dom.elIframe),navigator.userAgent.includes("Firefox")?i.dom.elIframe.onload=function(){n.showIframeRender()}:this.showIframeRender()}},{key:"showIframeRender",value:function(){var e=this.w.globals,t=this.w.config,n=e.dom.elIframe.contentDocument;if(!n.body){var i=n.createElement("body");n.appendChild(i)}e.dom.docIframe=n.body,e.dom.headIframe=n.head,Hn.setAttrs(e.dom.docIframe,{id:"faceAge-module-body",class:t.displayModel,style:"margin:0;padding:0;overflow:hidden;"+("widget"!==t.displayModel?"background-color: transparent;":"")});var r=document.createElement("meta");r.name="viewport",r.content="width=device-width, initial-scale=1.0",e.dom.headIframe.appendChild(r);var a=document.createElement("link");a.id="inter-font",a.rel="stylesheet",a.type="text/css",a.media="all",a.href="https://fonts.googleapis.com/css2?family=Inter:wght@100;200;300;400;500;600;700;800;900&display=swap",e.dom.headIframe.appendChild(a);var o=document.createElement("link");o.id="roboto-mono-font",o.rel="stylesheet",o.type="text/css",o.media="all",o.href="https://fonts.googleapis.com/css?family=Roboto+Mono|Roboto+Slab|Roboto:300,400,500,700&display=optional",e.dom.headIframe.appendChild(o);var s=document.createElement("link");s.rel="stylesheet",s.href="https://cdn.jsdelivr.net/npm/swiper@11/swiper-bundle.min.css",e.dom.headIframe.appendChild(s);var l=document.createElement("link");l.id="face-age-css",l.rel="stylesheet",l.type="text/css",l.media="all",l.href="https://static.getfaceage.com/v2.0/faceage.css",e.dom.headIframe.appendChild(l);var u=document.createElement("script");u.src="https://cdn.jsdelivr.net/npm/swiper@11/swiper-bundle.min.js",e.dom.headIframe.appendChild(u);var c=document.createElement("script");c.src="https://cdn.jsdelivr.net/npm/chart.js",e.dom.headIframe.appendChild(c),e.dom.elIframe.contentDocument.getElementById("face-age-css").addEventListener("load",(function(){e.dom.elIframe.style.opacity=1})),e.dom.docIframe.loader=document.createElement("div"),e.dom.docIframe.loader.face=document.createElement("div"),Hn.setAttrs(e.dom.docIframe.loader.face,{class:"face_age"}),e.dom.docIframe.loader.face.innerHTML='<div class="loading_request" style="background: transparent"><div class="FaceCircularProgress-root FaceCircularProgress-colorPrimary FaceCircularProgress-indeterminate" role="progressbar" style="width: 40px; height: 40px; color: #000"><svg class="FaceCircularProgress-svg" viewBox="22 22 44 44"><circle class="FaceCircularProgress-circle FaceCircularProgress-circleIndeterminate" cx="44" cy="44" r="20.2" fill="none" stroke-width="3.6"></circle></svg></div></div>',"modal"===t.displayModel&&new si(e.dom.docIframe.loader,this.ctx,this.pv,null,null,!1),e.dom.docIframe.loader.appendChild(e.dom.docIframe.loader.face),e.dom.docIframe.appendChild(e.dom.docIframe.loader),t.gtag&&xa.initialize(e,{containerId:t.gtag}),this.authorize()}},{key:"setElements",value:function(){var e,t,n,i,r,a,o,s,l,u,c,d,p,h,m,f,g,y,v,b,k,w,S,P,x,C,A,T,j,_,R,E,I,z,L,O,M,F,D,B,N=this.w.globals,G=this.w.config,U=this.pv.getValue();G.type,new ba(N.dom.docIframe,this.ctx,this.pv),this.showFaceAge(U.copyRight);var H=document.createElement("style");H.id="face-age-css-root",H.rel="stylesheet",H.type="text/css",H.media="all";var W=":root {\n --background: "+(null!==(e=null===(t=N.customTemplate)||void 0===t?void 0:t.background)&&void 0!==e?e:"#F9FAFC")+";\n --color: "+(null!==(n=null===(i=N.customTemplate)||void 0===i?void 0:i.color)&&void 0!==n?n:"#000")+";\n --divider: "+(null!==(r=null===(a=N.customTemplate)||void 0===a?void 0:a.color)&&void 0!==r?r:"#E6E8F0")+";\n --basic: "+(null!==(o=null===(s=N.customTemplate)||void 0===s?void 0:s.base_color)&&void 0!==o?o:"rgba(239, 55, 134);")+";\n --error: "+(null!==(l=null===(u=N.customTemplate)||void 0===u?void 0:u.error)&&void 0!==l?l:"#da005c")+";\n --basic_action: "+(null!==(c=null===(d=N.customTemplate)||void 0===d?void 0:d.basic_action_color)&&void 0!==c?c:"rgb(239, 55, 134)")+";\n --color_action: "+(null!==(p=null===(h=N.customTemplate)||void 0===h?void 0:h.basic_action_text)&&void 0!==p?p:"#fff")+";\n --submit_action: "+(null!==(m=null===(f=N.customTemplate)||void 0===f?void 0:f.submit_action_color)&&void 0!==m?m:"rgb(8, 211, 144)")+";\n --circle_action: "+(null!==(g=null===(y=N.customTemplate)||void 0===y?void 0:y.circle_action)&&void 0!==g?g:"#fff")+";\n --color_circle_action: "+(null!==(v=null===(b=N.customTemplate)||void 0===b?void 0:b.color_circle_action)&&void 0!==v?v:"#000")+";\n --base_border_radius: "+(null!==(k=null===(w=N.customTemplate)||void 0===w?void 0:w.base_border_radius)&&void 0!==k?k:"40px")+";\n --base_border: "+(null!==(S=null===(P=N.customTemplate)||void 0===P?void 0:P.base_border)&&void 0!==S?S:"#ccc")+";\n --quiz_input_color: "+(null!==(x=null===(C=N.customTemplate)||void 0===C?void 0:C.quiz_input_color)&&void 0!==x?x:"rgb(200 200 200)")+";\n --background_upload_color: "+(null!==(A=null===(T=N.customTemplate)||void 0===T?void 0:T.background_upload_color)&&void 0!==A?A:"#fff0fb")+";\n --accepted_status: "+(null!==(j=null===(_=N.customTemplate)||void 0===_?void 0:_.position_accepted_status_color)&&void 0!==j?j:"rgb(8, 211, 144)")+";\n --not_accepted_status: "+(null!==(R=null===(E=N.customTemplate)||void 0===E?void 0:E.position_not_accepted_status_color)&&void 0!==R?R:"rgb(239, 55, 134)")+";\n --product_shadow: "+(null!==(I=null===(z=N.customTemplate)||void 0===z?void 0:z.product_shadow)&&void 0!==I?I:"0")+";\n --product_border: "+(null!==(L=null===(O=N.customTemplate)||void 0===O?void 0:O.product_border)&&void 0!==L?L:"rgb(200 200 200)")+";\n --product_padding: "+(null!==(M=null===(F=N.customTemplate)||void 0===F?void 0:F.product_padding)&&void 0!==M?M:"10")+";\n --product_action: "+(null!==(D=null===(B=N.customTemplate)||void 0===B?void 0:B.product_action_color)&&void 0!==D?D:"rgb(239, 55, 134)")+";\n}";H.styleSheet?H.styleSheet.cssText=W:H.appendChild(document.createTextNode(W)),N.dom.headIframe.appendChild(H)}},{key:"authorize",value:function(){var e,t=this,n=this.w.config.faceageId,i=this.w.globals,r=this.w.config;null===(e=Et.request("post","authorize",{faceageId:n}))||void 0===e||e.then((function(e){var a,o,s,l,u,c;i.faceageId=n,i.authorize=e.data.data,i.formPages=[],i.customTemplate=null!==(a=null===(o=e.data.data)||void 0===o?void 0:o.template)&&void 0!==a?a:[],i.customRoutineGroup=null!==(s=null===(l=e.data.data)||void 0===l?void 0:l.routine)&&void 0!==s?s:i.routineGroup,e.data.data.problems&&e.data.data.problems.length>0&&(i.problems=null!==(u=e.data.data.problems)&&void 0!==u?u:[]),e.data&&e.data.data.pages&&e.data.data.pages.map((function(e){"skincare"===r.type&&"skin_analyzer"===e.data.name&&(i.formPages=e.quiz)})),null!==(c=i.dom.docIframe)&&void 0!==c&&c.loader&&i.dom.docIframe.loader.remove(),t.pv.setValue("copyRight",!0),t.pv.setValue("license",!0),e.data.data.translation&&e.data.data.translation.length>0&&e.data.data.translation.map((function(e){var t={};e.words&&e.words.map((function(e){_.map(e,(function(e,n){n&&n.length>0&&e&&e.length>0&&(t[n]=e)}))})),Sn.addResources(e.lang,"translation",t)})),t.showModalAction(),t.setElements()})).catch((function(e){if(e.response&&e.response.data.message&&422===e.response.status){if(e.response.data.errors){var n=e.response.data.errors;Object.keys(n).forEach((function(e){if(n[e][0]){var t,a=n[e][0],o='<div class="loading_request" style="'+("modal"===r.displayModel?"background: #ffffff;border-radius: 0;":"background: transparent")+'">'+a+"</div>";null!==(t=i.dom.docIframe)&&void 0!==t&&null!==(t=t.loader)&&void 0!==t&&t.face&&(i.dom.docIframe.loader.face.innerHTML=o),console.error(n[e][0])}else{var s,l=n[e],u='<div class="loading_request" style="'+("modal"===r.displayModel?"background: #ffffff;border-radius: 0;":"background: transparent")+'">'+l+"</div>";null!==(s=i.dom.docIframe)&&void 0!==s&&null!==(s=s.loader)&&void 0!==s&&s.face&&(i.dom.docIframe.loader.face.innerHTML=u),console.error(n[e])}}))}else{var a,o=e.response.data.message,s='<div class="loading_request" style="'+("modal"===r.displayModel?"background: #ffffff;border-radius: 0;":"background: transparent")+'">'+o+"</div>";null!==(a=i.dom.docIframe)&&void 0!==a&&null!==(a=a.loader)&&void 0!==a&&a.face&&(i.dom.docIframe.loader.face.innerHTML=s),console.error(e.response.data.message)}"modal"===r.displayModel&&(i.dom.elModalButton.style.opacity=1)}else if(e.response&&e.response.data.message&&433===e.response.status){var l,u=Sn.t("You reached the limits of your plan"),c=Sn.t("Please renew your service for access"),d='<div class="loading_request" style="'+("modal"===r.displayModel?"background: #ffffff;border-radius: 0;":"background: transparent")+'"><div><h1 style="font-size: 26px;">'+u+'!</h1><p style="font-size: 18px; opacity: 0.6;">'+c+"!</p></div></div>";null!==(l=i.dom.docIframe)&&void 0!==l&&null!==(l=l.loader)&&void 0!==l&&l.face&&(i.dom.docIframe.loader.face.innerHTML=d)}else{var p,h=null!=e&&e.message?Sn.t(null==e?void 0:e.message):Sn.t("An error occurred, please check again"),m='<div class="loading_request" style="'+("modal"===r.displayModel?"background: #ffffff;border-radius: 0;":"background: transparent")+'">'+h+"</div>";null!==(p=i.dom.docIframe)&&void 0!==p&&null!==(p=p.loader)&&void 0!==p&&p.face&&(i.dom.docIframe.loader.face.innerHTML=m),console.error(h)}t.showModalAction()}))}},{key:"showModalAction",value:function(){var e=this.w.globals;if("modal"===this.w.config.displayModel){var t,n,i,r,a,o,s,l,u,c,d,p,h,m,f,g,y,v,b,k,w;e.dom.elModalButton.style.opacity=1,e.dom.elModalButton.style.display="block",null!=e&&null!==(t=e.authorize)&&void 0!==t&&t.name&&(e.dom.elModalButtonMessage.text.innerHTML=(null==e||null===(n=e.authorize)||void 0===n?void 0:n.name)+" "+Sn.t("Skin Analysis")),localStorage.getItem("face_message_modal")||setTimeout((function(){e.dom.elModalButtonMessage.style.display="block",localStorage.setItem("face_message_modal","true")}),2e3),e.dom.elModalButton.style.backgroundColor=null!==(i=null===(r=e.customTemplate)||void 0===r?void 0:r.base_color)&&void 0!==i?i:"rgba(239, 55, 134);",e.dom.elIframe.clientWidth>768?(e.dom.elModalButton.style.left=(null!==(o=null===(s=e.customTemplate)||void 0===s?void 0:s.position_show_desktop_tool_left_distance)&&void 0!==o?o:"24")+"px",e.dom.elModalButton.style.bottom=(null!==(l=null===(u=e.customTemplate)||void 0===u?void 0:u.position_show_desktop_tool_button_distance)&&void 0!==l?l:"24")+"px",e.dom.elModalButtonMessage.style.left=(null!==(c=(null===(d=e.customTemplate)||void 0===d?void 0:d.position_show_desktop_tool_left_distance)-9)&&void 0!==c?c:"15")+"px",e.dom.elModalButtonMessage.style.bottom=(null!==(p=(null===(h=e.customTemplate)||void 0===h?void 0:h.position_show_desktop_tool_button_distance)+65)&&void 0!==p?p:"89")+"px"):(e.dom.elModalButton.style.left=(null!==(m=null===(f=e.customTemplate)||void 0===f?void 0:f.position_show_mobile_tool_left_distance)&&void 0!==m?m:"24")+"px",e.dom.elModalButton.style.bottom=(null!==(g=null===(y=e.customTemplate)||void 0===y?void 0:y.position_show_mobile_tool_button_distance)&&void 0!==g?g:"24")+"px",e.dom.elModalButtonMessage.style.left=(null!==(v=(null===(b=e.customTemplate)||void 0===b?void 0:b.position_show_mobile_tool_left_distance)-9)&&void 0!==v?v:"15")+"px",e.dom.elModalButtonMessage.style.bottom=(null!==(k=(null===(w=e.customTemplate)||void 0===w?void 0:w.position_show_mobile_tool_button_distance)+65)&&void 0!==k?k:"89")+"px"),null!==(a=e.customTemplate)&&void 0!==a&&a.tools_icon&&(e.dom.elModalButton.innerHTML='<img alt="'+Sn.t("Skin Analysis")+'" src="'+e.customTemplate.tools_icon+'" />');var S=e.dom.elModalButton.querySelectorAll(".cls-1"),P=e.dom.elModalButton.querySelectorAll(".cls-6");S&&S.forEach((function(t){var n,i;t.style.fill=null!==(n=null===(i=e.customTemplate)||void 0===i?void 0:i.base_color)&&void 0!==n?n:"rgba(239, 55, 134);"})),P&&P.forEach((function(t){var n,i;t.style.stroke=null!==(n=null===(i=e.customTemplate)||void 0===i?void 0:i.base_color)&&void 0!==n?n:"rgba(239, 55, 134);"}))}}},{key:"showFaceAge",value:function(e){var t=this.w.globals,n=this.w.config;new ca(t.dom.docIframe,t,n,e)}},{key:"setCustomModalCss",value:function(){this.w.globals;var e=document.createElement("style");e.id="face-age-styles",e.rel="stylesheet",e.type="text/css",e.media="all";var t='#face-age-button .cls-1{fill: #FB398D} #face-age-button .cls-6{stroke: #FB398D} #face-age-modal{display:none}#face-age-modal.is-open{display:block}#face-age-overlay{position:fixed;top:0;left:0;right:0;bottom:0;display:flex;justify-content:center;align-items:center;z-index:9999;background:rgba(0,0,0,0.2);-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);will-change:opacity}.face-age-dialog{margin:0;padding:0;overflow:hidden;background-color:#333;width:100%;height:100%;will-change:transform}#face-age-modal[aria-hidden="false"] #face-age-overlay{-webkit-animation:rv-mmfadeIn .3s cubic-bezier(0,0,0.2,1);animation:rv-mmfadeIn .3s cubic-bezier(0,0,0.2,1)}#face-age-modal[aria-hidden="true"] #face-age-overlay{-webkit-animation:rv-mmfadeOut .25s cubic-bezier(0.4,0,1,1);animation:rv-mmfadeOut .25s cubic-bezier(0.4,0,1,1)}#face-age-modal[aria-hidden="false"] .face-age-dialog{-webkit-animation:rv-mmscaleInN .3s cubic-bezier(0,0,0.2,1);animation:rv-mmscaleInN .3s cubic-bezier(0,0,0.2,1)}#face-age-modal[aria-hidden="true"] .face-age-dialog{-webkit-animation:rv-mmscaleOutN .25s cubic-bezier(0.4,0,1,1);animation:rv-mmscaleOutN .25s cubic-bezier(0.4,0,1,1)}@media (min-width: 768px){.face-age-dialog{width:90%;height:90%;box-shadow:0 16px 24px 2px rgba(0,0,0,0.14),0 6px 30px 5px rgba(0,0,0,0.12),0 8px 10px -5px rgba(0,0,0,0.2);max-width:1140px;max-height:800px;border-radius:10px}#face-age-modal[aria-hidden="false"] .face-age-dialog{-webkit-animation:rv-mmslideIn .3s cubic-bezier(0,0,0.2,1);animation:rv-mmslideIn .3s cubic-bezier(0,0,0.2,1)}#face-age-modal[aria-hidden="true"] .face-age-dialog{-webkit-animation:rv-mmslideOut .25s cubic-bezier(0.4,0,1,1);animation:rv-mmslideOut .25s cubic-bezier(0.4,0,1,1)}}#face-age-button{opacity: 0;width:60px;height:60px;box-shadow:none;border-style:none;top:auto;right:auto;bottom:24px;position:fixed;border-radius:50%;background-color:rgba(239,55,134);left:24px;color:#FFF;margin:0;padding:0;z-index:9998;will-change:opacity;cursor:pointer;text-align:center;display:flex;align-items:center;justify-content:center}#face-age-button > img{max-height:100%;max-width:100%;box-sizing:border-box}#face-age-button:hover{opacity:.9}@-webkit-keyframes rv-mmfadeIn{0%{opacity:0}to{opacity:1}}@keyframes rv-mmfadeIn{0%{opacity:0}to{opacity:1}}@-webkit-keyframes rv-mmfadeOut{0%{opacity:1}to{opacity:0}}@keyframes rv-mmfadeOut{0%{opacity:1}to{opacity:0}}@-webkit-keyframes rv-mmslideIn{0%{-webkit-transform:translateY(-25%);transform:translateY(-25%)}to{-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes rv-mmslideIn{0%{-webkit-transform:translateY(-25%);transform:translateY(-25%)}to{-webkit-transform:translateY(0);transform:translateY(0)}}@-webkit-keyframes rv-mmslideOut{0%{-webkit-transform:translateY(0);transform:translateY(0)}to{-webkit-transform:translateY(15%);transform:translateY(15%)}}@keyframes rv-mmslideOut{0%{-webkit-transform:translateY(0);transform:translateY(0)}to{-webkit-transform:translateY(15%);transform:translateY(15%)}}@-webkit-keyframes rv-mmscaleOutN{0%{-webkit-transform:scaleY(1);transform:scaleY(1);-webkit-transform-origin:0 100%;transform-origin:0 100%}to{-webkit-transform:scaleY(0);transform:scaleY(0);-webkit-transform-origin:0 100%;transform-origin:0 100%}}@keyframes rv-mmscaleOutN{0%{-webkit-transform:scaleY(1);transform:scaleY(1);-webkit-transform-origin:0 100%;transform-origin:0 100%}to{-webkit-transform:scaleY(0);transform:scaleY(0);-webkit-transform-origin:0 100%;transform-origin:0 100%}}@-webkit-keyframes rv-mmscaleInN{0%{-webkit-transform:scaleY(0);transform:scaleY(0);-webkit-transform-origin:0 100%;transform-origin:0 100%}to{-webkit-transform:scaleY(1);transform:scaleY(1);-webkit-transform-origin:0 100%;transform-origin:0 100%}}@keyframes rv-mmscaleInN{0%{-webkit-transform:scaleY(0);transform:scaleY(0);-webkit-transform-origin:0 100%;transform-origin:0 100%}to{-webkit-transform:scaleY(1);transform:scaleY(1);-webkit-transform-origin:0 100%;transform-origin:0 100%}}#face-age-button > img{display:block;padding:10px}#face-age-button > span{display:none;writing-mode:inherit}@media (min-width: 768px){#face-age-button > span{display:block;writing-mode:vertical-rl}}';e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t)),document.head.appendChild(e)}}])&&Aa(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function _a(e){return _a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},_a(e)}function Ra(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Ea(i.key),i)}}function Ea(e){var t=function(e){if("object"!=_a(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=_a(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==_a(t)?t:t+""}const Ia=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e)}return t=e,n=[{key:"shadeRGBColor",value:function(e,t){var n=t.split(","),i=e<0?0:255,r=e<0?-1*e:e,a=parseInt(n[0].slice(4),10),o=parseInt(n[1],10),s=parseInt(n[2],10);return"rgb("+(Math.round((i-a)*r)+a)+","+(Math.round((i-o)*r)+o)+","+(Math.round((i-s)*r)+s)+")"}},{key:"shadeHexColor",value:function(e,t){var n=parseInt(t.slice(1),16),i=e<0?0:255,r=e<0?-1*e:e,a=n>>16,o=n>>8&255,s=255&n;return"#"+(16777216+65536*(Math.round((i-a)*r)+a)+256*(Math.round((i-o)*r)+o)+(Math.round((i-s)*r)+s)).toString(16).slice(1)}},{key:"shadeColor",value:function(t,n){return e.isColorHex(n)?this.shadeHexColor(t,n):this.shadeRGBColor(t,n)}}],i=[{key:"bind",value:function(e,t){return function(){return e.apply(t,arguments)}}},{key:"isObject",value:function(e){return e&&"object"===_a(e)&&!Array.isArray(e)&&null!=e}},{key:"is",value:function(e,t){return Object.prototype.toString.call(t)==="[object "+e+"]"}},{key:"listToArray",value:function(e){var t,n=[];for(t=0;t<e.length;t++)n[t]=e[t];return n}},{key:"extend",value:function(e,t){var n=this;"function"!=typeof Object.assign&&(Object.assign=function(e){if(null==e)throw new TypeError("Cannot convert undefined or null to object");for(var t=Object(e),n=1;n<arguments.length;n++){var i=arguments[n];if(null!=i)for(var r in i)i.hasOwnProperty(r)&&(t[r]=i[r])}return t});var i=Object.assign({},e);return this.isObject(e)&&this.isObject(t)&&Object.keys(t).forEach((function(r){var a,o,s;n.isObject(t[r])&&r in e?i[r]=n.extend(e[r],t[r]):Object.assign(i,(a={},o=r,s=t[r],(o=Ea(o))in a?Object.defineProperty(a,o,{value:s,enumerable:!0,configurable:!0,writable:!0}):a[o]=s,a))})),i}},{key:"extendArray",value:function(t,n){var i=[];return t.map((function(t){i.push(e.extend(n,t))})),i}},{key:"monthMod",value:function(e){return e%12}},{key:"clone",value:function(t){if(e.is("Array",t)){for(var n=[],i=0;i<t.length;i++)n[i]=this.clone(t[i]);return n}if(e.is("Null",t))return null;if(e.is("Date",t))return t;if("object"===_a(t)){var r={};for(var a in t)t.hasOwnProperty(a)&&(r[a]=this.clone(t[a]));return r}return t}},{key:"log10",value:function(e){return Math.log(e)/Math.LN10}},{key:"roundToBase10",value:function(e){return Math.pow(10,Math.floor(Math.log10(e)))}},{key:"roundToBase",value:function(e,t){return Math.pow(t,Math.floor(Math.log(e)/Math.log(t)))}},{key:"parseNumber",value:function(e){return null===e?e:parseFloat(e)}},{key:"stripNumber",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:2;return Number.isInteger(e)?e:parseFloat(e.toPrecision(t))}},{key:"randomId",value:function(){return(Math.random()+1).toString(36).substring(4)}},{key:"noExponents",value:function(e){var t=String(e).split(/[eE]/);if(1===t.length)return t[0];var n="",i=e<0?"-":"",r=t[0].replace(".",""),a=Number(t[1])+1;if(a<0){for(n=i+"0.";a++;)n+="0";return n+r.replace(/^-/,"")}for(a-=r.length;a--;)n+="0";return r+n}},{key:"getDimensions",value:function(e){var t=getComputedStyle(e,null),n=e.clientHeight,i=e.clientWidth;return n-=parseFloat(t.paddingTop)+parseFloat(t.paddingBottom),[i-=parseFloat(t.paddingLeft)+parseFloat(t.paddingRight),n]}},{key:"getBoundingClientRect",value:function(e){var t=e.getBoundingClientRect();return{top:t.top,right:t.right,bottom:t.bottom,left:t.left,width:e.clientWidth,height:e.clientHeight,x:t.left,y:t.top}}},{key:"getLargestStringFromArr",value:function(e){return e.reduce((function(e,t){return Array.isArray(t)&&(t=t.reduce((function(e,t){return e.length>t.length?e:t}))),e.length>t.length?e:t}),0)}},{key:"hexToRgba",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"#999999",t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:.6;"#"!==e.substring(0,1)&&(e="#999999");var n=e.replace("#","");n=n.match(new RegExp("(.{"+n.length/3+"})","g"));for(var i=0;i<n.length;i++)n[i]=parseInt(1===n[i].length?n[i]+n[i]:n[i],16);return void 0!==t&&n.push(t),"rgba("+n.join(",")+")"}},{key:"getOpacityFromRGBA",value:function(e){return parseFloat(e.replace(/^.*,(.+)\)/,"$1"))}},{key:"rgb2hex",value:function(e){return(e=e.match(/^rgba?[\s+]?\([\s+]?(\d+)[\s+]?,[\s+]?(\d+)[\s+]?,[\s+]?(\d+)[\s+]?/i))&&4===e.length?"#"+("0"+parseInt(e[1],10).toString(16)).slice(-2)+("0"+parseInt(e[2],10).toString(16)).slice(-2)+("0"+parseInt(e[3],10).toString(16)).slice(-2):""}},{key:"isColorHex",value:function(e){return/(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)|(^#[0-9A-F]{8}$)/i.test(e)}},{key:"getPolygonPos",value:function(e,t){for(var n=[],i=2*Math.PI/t,r=0;r<t;r++){var a={};a.x=e*Math.sin(r*i),a.y=-e*Math.cos(r*i),n.push(a)}return n}},{key:"polarToCartesian",value:function(e,t,n,i){var r=(i-90)*Math.PI/180;return{x:e+n*Math.cos(r),y:t+n*Math.sin(r)}}},{key:"escapeString",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"x",n=e.toString().slice();return n.replace(/[` ~!@#$%^&*()|+\=?;:'",.<>{}[\]\\/]/gi,t)}},{key:"negToZero",value:function(e){return e<0?0:e}},{key:"moveIndexInArray",value:function(e,t,n){if(n>=e.length)for(var i=n-e.length+1;i--;)e.push(void 0);return e.splice(n,0,e.splice(t,1)[0]),e}},{key:"extractNumber",value:function(e){return parseFloat(e.replace(/[^\d.]*/g,""))}},{key:"findAncestor",value:function(e,t){for(;(e=e.parentElement)&&!e.classList.contains(t););return e}},{key:"setELstyles",value:function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e.style.key=t[n])}},{key:"isNumber",value:function(e){return!isNaN(e)&&parseFloat(Number(e))===e&&!isNaN(parseInt(e,10))}},{key:"isFloat",value:function(e){return Number(e)===e&&e%1!=0}},{key:"isSafari",value:function(){return/^((?!chrome|android).)*safari/i.test(navigator.userAgent)}},{key:"isFirefox",value:function(){return navigator.userAgent.toLowerCase().indexOf("firefox")>-1}},{key:"isIE11",value:function(){if(-1!==window.navigator.userAgent.indexOf("MSIE")||window.navigator.appVersion.indexOf("Trident/")>-1)return!0}},{key:"isIE",value:function(){var e=window.navigator.userAgent,t=e.indexOf("MSIE ");if(t>0)return parseInt(e.substring(t+5,e.indexOf(".",t)),10);if(e.indexOf("Trident/")>0){var n=e.indexOf("rv:");return parseInt(e.substring(n+3,e.indexOf(".",n)),10)}var i=e.indexOf("Edge/");return i>0&&parseInt(e.substring(i+5,e.indexOf(".",i)),10)}}],n&&Ra(t.prototype,n),i&&Ra(t,i),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,n,i}();function za(e){return za="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},za(e)}function La(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Oa(i.key),i)}}function Oa(e){var t=function(e){if("object"!=za(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=za(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==za(t)?t:t+""}var Ma=function(){return e=function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.ctx=t,this.w=t.w,this.documentEvent=Ia.bind(this.documentEvent,this)},t=[{key:"addEventListener",value:function(e,t){var n=this.w;n.globals.events.hasOwnProperty(e)?n.globals.events[e].push(t):n.globals.events[e]=[t]}},{key:"removeEventListener",value:function(e,t){var n=this.w;if(n.globals.events.hasOwnProperty(e)){var i=n.globals.events[e].indexOf(t);-1!==i&&n.globals.events[e].splice(i,1)}}},{key:"fireEvent",value:function(e,t){var n=this.w;if(n.globals.events.hasOwnProperty(e)){t&&t.length||(t=[]);for(var i=n.globals.events[e],r=i.length,a=0;a<r;a++)i[a].apply(null,t)}}},{key:"setupEventHandlers",value:function(){var e=this,t=this.w,n=this.ctx,i=t.globals.dom.baseEl.querySelector(t.globals.faceAgeClass);this.ctx.eventList.forEach((function(e){i.addEventListener(e,(function(e){var i=Object.assign({},t,{seriesIndex:t.globals.capturedSeriesIndex,dataPointIndex:t.globals.capturedDataPointIndex});"mousemove"===e.type||"touchmove"===e.type?"function"==typeof t.config.faceAge.events.mouseMove&&t.config.faceAge.events.mouseMove(e,n,i):"mouseleave"===e.type||"touchleave"===e.type?"function"==typeof t.config.faceAge.events.mouseLeave&&t.config.faceAge.events.mouseLeave(e,n,i):("mouseup"===e.type&&1===e.which||"touchend"===e.type)&&("function"==typeof t.config.faceAge.events.click&&t.config.faceAge.events.click(e,n,i),n.ctx.events.fireEvent("click",[e,n,i]))}),{capture:!1,passive:!0})})),this.ctx.eventList.forEach((function(n){t.globals.dom.baseEl.addEventListener(n,e.documentEvent,{passive:!0})})),this.ctx.core.setupBrushHandler()}},{key:"documentEvent",value:function(e){var t=this.w,n=e.target.className;if("click"===e.type){var i=t.globals.dom.baseEl.querySelector(".faceage-menu");i&&i.classList.contains("faceage-menu-open")&&"faceage-menu-icon"!==n&&i.classList.remove("faceage-menu-open")}t.globals.clientX="touchmove"===e.type?e.touches[0].clientX:e.clientX,t.globals.clientY="touchmove"===e.type?e.touches[0].clientY:e.clientY}}],t&&La(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function Fa(e){return Fa="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Fa(e)}function Da(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Ba(i.key),i)}}function Ba(e){var t=function(e){if("object"!=Fa(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=Fa(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Fa(t)?t:t+""}var Na=function(){return e=function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.ctx=t,this.w=t.w},t=[{key:"getAdvisorData",value:function(e){var t=this;return new Promise((function(n,i){"function"==typeof e?t.w.globals.getAdvisorData=function(n){try{e({analysis:n,activeSelections:t.w.globals.formData})}catch(e){i(new Error("Error calling:",e.message))}}:i(new Error("function not valid"))}))}},{key:"getImage",value:function(){try{return this.w.globals.imageSubmit?this.w.globals.imageSubmit:null}catch(e){return null}}},{key:"getActiveSelections",value:function(e){var t=this;return new Promise((function(n,i){"function"==typeof e?t.w.globals.getActiveSelections=function(t){try{e(t)}catch(e){i(new Error("Error calling:",e.message))}}:i(new Error("function not valid"))}))}},{key:"getRoutineGroup",value:function(){try{return this.w.globals.routineGroup&&this.w.globals.routineGroup.map((function(e){return{key:e.key,title:e.title,status:e.status}}))}catch(e){return null}}},{key:"setCustomProducts",value:function(e){try{this.w.globals.productLoader=!0;var t=(n=e,this.w.globals.routineGroup,i=this.w.globals.problems,r=[],n.forEach((function(e,t){var n={};if(null===e.id&&(n.id="ID is required"),null===e.title||""===e.title.trim()?n.title="Title is required":Cn(e.title)&&(n.title="Title is not valid"),e.description&&Cn(e.description)&&(n.description="Description is not valid"),null===e.url||""===e.url.trim()?n.url="URL is required":xn(e.url)||(n.url="URL must be a valid HTTPS URL"),null===e.image||""===e.image.trim()?n.image="Image is required":xn(e.image)||(n.image="Image must be a valid HTTPS URL"),("number"!=typeof e.price||e.price<0)&&(n.price="Price must be a non-negative number"),void 0!==e.offerPrice&&("number"!=typeof e.offerPrice||e.offerPrice<0)&&(n.offerPrice="Offer price must be a non-negative number if provided"),void 0!==e.routineGroups&&(Array.isArray(e.routineGroups)||"object"===Pn(e.routineGroups)||(n.routineGroups="Routine groups must be an array")),void 0!==e.problems&&e.problems)if(Array.isArray(e.problems)){var a=[];e.problems.map((function(e){var t=!1;Object.keys(i).forEach((function(n,r){i[n],n.toLowerCase()===e.toLowerCase()&&(t=!0)})),t||a.push(e)})),a.length>0&&(n.problems="Invalid problem: ".concat(a.join(", ")))}else n.problems="problems must be an array";else n.problems="Problems is required";void 0!==e.variables&&"object"!==Pn(e.variables)?n.variables="Variables must be an object if provided":"object"===Pn(e.variables)&&Object.keys(e.variables).forEach((function(t,i){var r=e.variables[t];r.title&&r.option||(n["variables[".concat(t,"]")]="Each variable must have both title and option"),Array.isArray(r.option)&&r.option.forEach((function(i,r){i.label&&i.value||(n["variables[".concat(t,"][").concat(r,"]")]="Each variable must have both label and value"),void 0!==i.price&&("number"!=typeof i.price||i.price<0)&&(n["variables[".concat(t,"][").concat(r,"]")]="Price must be a non-negative number"),void 0!==i.offerPrice&&("number"!=typeof i.offerPrice||e.offerPrice<0)&&(n["variables[".concat(t,"][").concat(r,"]")]="Offer price must be a non-negative number if provided")}))})),Object.keys(n).length>0&&r.push({index:t,errors:n})})),r.length>0?r:null);t?console.error(t):(this.w.globals.productLists=e,this.w.globals.productLoader=!1)}catch(e){console.error("add custom products error: "+e)}var n,i,r}}],t&&Da(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function Ga(e){return Ga="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ga(e)}function Ua(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Ha(i.key),i)}}function Ha(e){var t=function(e){if("object"!=Ga(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=Ga(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Ga(t)?t:t+""}"undefined"!=typeof window&&void 0===window.FaceAge&&(window.FaceAge={});var Wa=function(){return e=function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.ctx=t,this.w=t.w},(t=[{key:"initModules",value:function(){this.ctx.publicMethods=["onClickProblem","onDisplayProducts","onDisplayRoutines","onAddToCart","onCheckout","onClickProduct","onCloseModal","onRefresh"],this.ctx.publicApiMethods=["getAdvisorData","getActiveSelections","setCustomProducts","getImage","getRoutineGroup"],this.ctx.eventList=[],this.ctx.core=new ja(this.ctx.el,this.ctx),this.ctx.events=new Ma(this.ctx),this.ctx.API=new Na(this.ctx)}}])&&Ua(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}(),Va={en:{translation:JSON.parse('{"Skin Analysis":"Skin Analysis","Look Straight":"Look Straight","Face Position":"Face Position","Lighting":"Lighting","Good":"Good","Not Good":"Not Good","Bad":"Bad","Fair":"Fair","Powered by":"Powered by","Your distance is close to the camera":"Your distance is close to the camera","Keep your face inside the circle":"Keep your face inside the circle","Please stand in front of the camera":"Please stand in front of the camera","There is more than one person in the picture":"There is more than one person in the picture","Drag & Drop":"Drag & Drop","Or":"Or","browse":"browse","Supports: JPEG, JPG, PNG":"Supports: JPEG, JPG, PNG","Release to Upload":"Release to Upload","file not supported":"file not supported","Sending Facial Data...":"Sending Facial Data...","Scanning Face...":"Scanning Face...","Analyzing Facial Attributes...":"Analyzing Facial Attributes...","AI Crafting Report..":"AI Crafting Report..","Skin Info":"Skin Info","Fine Wrinkles":"Fine Wrinkles","Eye Wrinkles":"Eye Wrinkles","Deep Wrinkles":"Deep Wrinkles","Dark Circle":"Dark Circle","Eye Bag":"Eye Bag","Pores":"Pores","Pigment":"Pigment","Redness":"Redness","Oiliness":"Oiliness","Acnes":"Acne","Acne":"Acne","Skin Health":"Skin Health","Instructions":"Instructions","Get Ready to Start Skin Analysis":"Get Ready to Start Skin Analysis","Remove the glasses":"Remove the glasses","Clean your face":"Clean your face","Be in the right light":"Be in the right light","Be neutral face and fix position":"Be neutral face and fix position","Get Started":"Get Started","privacy.text":"Discover how to enhance your skin with the right products and routine tailored for you. Upload your selfie for personalized recommendations, and rest assured, your image will be deleted after analysis","See our":"See our","Privacy Policy":"Privacy Policy","for more information":"for more information","your picture quality is blurry":"Your image quality is blurry.","be wearing glasses":"be wearing glasses.","please remove them":"Please remove them for a clearer analysis.","Improve photo quality":"Improve photo quality","We noticed you might":"We noticed you might","and":"and","for better results":"for better results","Tips for taking better selfies":"Tips for taking better selfies","Continue":"Continue","Generate routine for you":"Generate routine for you","Re-take":"Re-take","Get recommended products!":"Get recommended products!","Recommendation Products":"Recommendation Products","Products That Just Work For you":"Products That Just Work For you","My Skin Report":"My Skin Report","Add to cart":"Add to cart","Add again":"Add again","Checkout":"Checkout","My Routines":"My Routines","Your":"Your","Routine":"Routine","Morning":"Morning","Night":"Night","Error":"Error","The face is not visible in the picture":"The face is not visible in the picture","The input image is not suitable":"The input image is not suitable","An error occurred, please check again":"An error occurred, please check again","Camera permission denied.":"Camera permission denied.","Unable to access the camera.":"Unable to access the camera.","validation.blurry":"Your image is blurry","validation.eyeGlass":"You have glasses","validation.brightness":"The light on your face is not suitable","validation.neutralFace":"The face is not neutral (You may have a smile)","Image is not suitable":"Image is not suitable","Check how you can improve your skin with the proper product and routine":"Check how you can improve your skin with the proper product and routine","There are no products to display":"There are no products to display","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.","Use a toner to balance your skin’s pH and remove any leftover residue.":"Use a toner to balance your skin’s pH and remove any leftover residue.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.","Cleanser":"Cleanser","Toner":"Toner","Serum":"Serum","Eye Cream":"Eye Cream","Spot Treatment":"Spot Treatment","Moisturizer":"Moisturizer","Sunscreen":"Sunscreen","Face Oil":"Face Oil","Night Cream":"Night Cream","Add all to cart":"Add all to cart","All Products":"All Products","validation.faceObstruction":"There is probably something on the surface of the facial skin (hair or piercing)","Product added to cart":"Product added to cart","products added to cart":"products added to cart","You reached the limits of your plan":"You reached the limits of your plan","Please renew your service for access":"Please renew your service for access","See the website’s privacy policy":"See the website’s privacy policy"}')},de:{translation:JSON.parse('{"Skin Analysis":"Hautanalyse","Look Straight":"Schauen Sie geradeaus","Face Position":"Gesichtsposition","Lighting":"Beleuchtung","Good":"Gut","Not Good":"Nicht gut","Bad":"Schlecht","Fair":"Gerecht","Powered by":"Angetrieben von","Your distance is close to the camera":"Ihr Abstand ist nah an der Kamera","Keep your face inside the circle":"Halten Sie Ihr Gesicht innerhalb des Kreises","Please stand in front of the camera":"Bitte stellen Sie sich vor die Kamera","There is more than one person in the picture":"Auf dem Bild sind mehr als eine Person zu sehen","Drag & Drop":"Drag & Drop","Or":"Oder","browse":"durchsuchen","Supports: JPEG, JPG, PNG":"Unterstützt: JPEG, JPG, PNG","Release to Upload":"Zum Hochladen freigeben","file not supported":"Datei wird nicht unterstützt","Sending Facial Data...":"Gesichtsdaten werden gesendet...","Scanning Face...":"Gesicht scannen...","Analyzing Facial Attributes...":"Gesichtsattribute analysieren...","AI Crafting Report..":"KI-Crafting-Bericht.","Skin Info":"Hautinformationen","Fine Wrinkles":"Feine Falten","Eye Wrinkles":"Augenfalten","Deep Wrinkles":"Tiefe Falten","Dark Circle":"Dunkler Kreis","Eye Bag":"Augenbeutel","Pores":"Poren","Pigment":"Pigment","Redness":"Rötung","Oiliness":"Fettigkeit","Acnes":"Akne","Acne":"Akne","Skin Health":"Hautgesundheit","Instructions":"Anweisungen","Get Ready to Start Skin Analysis":"Machen Sie sich bereit für die Hautanalyse","Remove the glasses":"Nehmen Sie die Brille ab","Clean your face":"Reinige dein Gesicht","Be in the right light":"Seien Sie im richtigen Licht","Be neutral face and fix position":"Seien Sie neutral und fixieren Sie die Position","Get Started":"Legen Sie los","privacy.text":"Entdecken Sie, wie Sie Ihre Haut mit den richtigen Produkten und einer auf Sie zugeschnittenen Routine verbessern können. Laden Sie Ihr Selfie hoch, um personalisierte Empfehlungen zu erhalten, und seien Sie versichert, dass Ihr Bild nach der Analyse gelöscht wird","See our":"Sehen Sie sich unsere an","Privacy Policy":"Datenschutzrichtlinie","for more information":"für weitere Informationen","your picture quality is blurry":"Ihre Bildqualität ist verschwommen","be wearing glasses":"eine Brille tragen","please remove them":"Bitte entfernen Sie sie","Improve photo quality":"Verbessern Sie die Fotoqualität","We noticed you might":"Wir haben es bemerkt","and":"Und","for better results":"für bessere Ergebnisse","Tips for taking better selfies":"Tipps für bessere Selfies","Continue":"Weitermachen","Generate routine for you":"Schaffen Sie Routine für sich","Re-take":"Wiederholung","Get recommended products!":"Holen Sie sich empfohlene Produkte!","Recommendation Products":"Empfehlungsprodukte","Products That Just Work For you":"Produkte, die genau zu Ihnen passen","My Skin Report":"Mein Hautbericht","Add to cart":"In den Warenkorb legen","Add again":"Nochmals hinzufügen","Checkout":"Kasse","My Routines":"Meine Routinen","Your":"Dein","Routine":"Routine","Morning":"Morgen","Night":"Nacht","Error":"Fehler","The face is not visible in the picture":"Das Gesicht ist auf dem Bild nicht zu sehen","The input image is not suitable":"Das Eingabebild ist nicht geeignet","An error occurred, please check again":"Es ist ein Fehler aufgetreten, bitte überprüfen Sie es erneut","Camera permission denied.":"Kameraberechtigung verweigert.","Unable to access the camera.":"Auf die Kamera kann nicht zugegriffen werden.","validation.blurry":"Ihr Bild ist verschwommen","validation.eyeGlass":"Du hast eine Brille","validation.brightness":"Das Licht auf Ihrem Gesicht ist nicht geeignet","validation.neutralFace":"Das Gesicht ist nicht neutral (Sie haben möglicherweise ein Lächeln)","Image is not suitable":"Bild ist nicht geeignet","Check how you can improve your skin with the proper product and routine":"Prüfen Sie, wie Sie Ihre Haut mit dem richtigen Produkt und der richtigen Routine verbessern können","There are no products to display":"Es sind keine Produkte zum Anzeigen vorhanden","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Waschen Sie zunächst Ihr Gesicht, um Schmutz, Öl und Unreinheiten zu entfernen. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Verwenden Sie einen Toner, um den pH-Wert Ihrer Haut auszugleichen und alle Rückstände zu entfernen.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Tragen Sie ein konzentriertes Serum auf, das gezielt auf bestimmte Anliegen abzielt, z. B. Aufhellung oder Anti-Aging. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Tragen Sie die Augencreme sanft auf die Augenpartie auf, um sie mit Feuchtigkeit zu versorgen und Schwellungen oder Augenringe zu reduzieren.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Tragen Sie die punktuelle Behandlung auf Problemzonen wie Akne oder Hautunreinheiten auf. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Schützen Sie Ihre Haut mit Feuchtigkeit, indem Sie eine Feuchtigkeitscreme auftragen, die zu Ihrem Hauttyp passt. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Schützen Sie Ihre Haut vor schädlichen UV-Strahlen, indem Sie Sonnenschutzmittel mit Breitbandschutz verwenden. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Tragen Sie ein leichtes Gesichtsöl auf, um die Feuchtigkeit einzuschließen und Ihrer Haut einen strahlenden Glanz zu verleihen. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Verwenden Sie eine reichhaltige Nachtcreme, um Ihre Haut im Schlaf zu reparieren und wiederherzustellen. ","Cleanser":"Reinigungsmittel","Toner":"Toner","Serum":"Serum","Eye Cream":"Augencreme","Spot Treatment":"Spot-Behandlung","Moisturizer":"Feuchtigkeitscreme","Sunscreen":"Sonnenschutz","Face Oil":"Gesichtsöl","Night Cream":"Nachtcreme","Add all to cart":"Alles in den Warenkorb legen","All Products":"Alle Produkte","validation.faceObstruction":"Wahrscheinlich befindet sich etwas auf der Oberfläche der Gesichtshaut (Haare oder Piercing)","Product added to cart":"Produkt zum Warenkorb hinzugefügt","products added to cart":"Produkte zum Warenkorb hinzugefügt","You reached the limits of your plan":"Sie haben die Grenzen Ihres Plans erreicht","Please renew your service for access":"Bitte erneuern Sie Ihren Dienst für den Zugriff","See the website’s privacy policy":"Siehe die Datenschutzrichtlinie der Website"}')},zh:{translation:JSON.parse('{"Skin Analysis":"皮肤分析","Look Straight":"直视","Face Position":"面部位置","Lighting":"灯光","Good":"好的","Not Good":"不好","Bad":"坏的","Fair":"公平的","Powered by":"供电","Your distance is close to the camera":"您与相机的距离很近","Keep your face inside the circle":"将脸保持在圆圈内","Please stand in front of the camera":"请站在镜头前","There is more than one person in the picture":"图片中不止一个人","Drag & Drop":"拖放","Or":"或者","browse":"浏览","Supports: JPEG, JPG, PNG":"支持:JPEG、JPG、PNG","Release to Upload":"发布上传","file not supported":"文件不支持","Sending Facial Data...":"正在发送面部数据...","Scanning Face...":"扫描人脸...","Analyzing Facial Attributes...":"分析面部特征...","AI Crafting Report..":"人工智能制作报告..","Skin Info":"皮肤信息","Fine Wrinkles":"细皱纹","Eye Wrinkles":"眼部皱纹","Deep Wrinkles":"深层皱纹","Dark Circle":"黑眼圈","Eye Bag":"眼袋","Pores":"毛孔","Pigment":"颜料","Redness":"发红","Oiliness":"油性","Acnes":"粉刺","Acne":"粉刺","Skin Health":"皮肤健康","Instructions":"指示","Get Ready to Start Skin Analysis":"准备开始皮肤分析","Remove the glasses":"摘下眼镜","Clean your face":"清洁你的脸","Be in the right light":"在正确的光线下","Be neutral face and fix position":"保持中立表情并固定位置","Get Started":"开始使用","privacy.text":"了解如何使用适合您的产品和日常护理来增强您的皮肤。上传您的自拍照以获得个性化推荐,请放心,您的图像将在分析后删除","See our":"看看我们的","Privacy Policy":"隐私政策","for more information":"欲了解更多信息","your picture quality is blurry":"你的画质很模糊","be wearing glasses":"戴眼镜","please remove them":"请删除它们","Improve photo quality":"提高照片质量","We noticed you might":"我们注意到您可能","and":"和","for better results":"为了更好的结果","Tips for taking better selfies":"拍摄更好自拍照的技巧","Continue":"继续","Generate routine for you":"为您生成例程","Re-take":"重拍","Get recommended products!":"获取推荐产品!","Recommendation Products":"推荐产品","Products That Just Work For you":"适合您的产品","My Skin Report":"我的皮肤报告","Add to cart":"添加到购物车","Add again":"再次添加","Checkout":"查看","My Routines":"我的日常","Your":"你的","Routine":"常规","Morning":"早晨","Night":"夜晚","Error":"错误","The face is not visible in the picture":"照片中看不到脸","The input image is not suitable":"输入图像不合适","An error occurred, please check again":"发生错误,请再次检查","Camera permission denied.":"相机权限被拒绝。","Unable to access the camera.":"无法访问相机。","validation.blurry":"你的图像模糊","validation.eyeGlass":"你有眼镜","validation.brightness":"你脸上的光线不适合","validation.neutralFace":"脸不是中性的(你可能有微笑)","Image is not suitable":"图片不合适","Check how you can improve your skin with the proper product and routine":"检查如何使用正确的产品和日常护理来改善皮肤","There are no products to display":"没有可展示的产品","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"首先洗脸,去除污垢、油脂和杂质。","Use a toner to balance your skin’s pH and remove any leftover residue.":"使用爽肤水来平衡皮肤的 pH 值并去除任何残留物。","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"使用针对特定问题的浓缩精华液,例如美白或抗衰老。","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"轻轻拍打眼部周围的眼霜,以补充水分并减少浮肿或黑眼圈。","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"对任何有问题的区域进行局部治疗,例如痤疮或瑕疵。","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"使用适合您皮肤类型的保湿霜来锁住水分。","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"使用具有广谱保护的防晒霜,保护您的皮肤免受有害紫外线的伤害。","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"涂抹轻质面油,锁住水分,让肌肤焕发光彩。","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"使用浓郁的晚霜有助于在睡眠时修复和恢复皮肤。","Cleanser":"洁面乳","Toner":"爽肤水","Serum":"血清","Eye Cream":"眼霜","Spot Treatment":"斑点处理","Moisturizer":"保湿霜","Sunscreen":"防晒霜","Face Oil":"面油","Night Cream":"晚霜","Add all to cart":"全部添加到购物车","All Products":"所有产品","validation.faceObstruction":"面部皮肤表面可能有东西(头发或穿孔)","Product added to cart":"产品已添加到购物车","products added to cart":"产品已添加到购物车","You reached the limits of your plan":"您已达到计划的极限","Please renew your service for access":"请续订您的服务以进行访问","See the website’s privacy policy":"请参阅网站的隐私政策"}')},tr:{translation:JSON.parse('{"Skin Analysis":"Cilt Analizi","Look Straight":"Düz Görün","Face Position":"Yüz Konumu","Lighting":"Aydınlatma","Good":"İyi","Not Good":"İyi değil","Bad":"Kötü","Fair":"Adil","Powered by":"Tarafından desteklenmektedir","Your distance is close to the camera":"Mesafeniz kameraya yakın","Keep your face inside the circle":"Yüzünüzü dairenin içinde tutun","Please stand in front of the camera":"Lütfen kameranın önünde durun","There is more than one person in the picture":"Resimde birden fazla kişi var","Drag & Drop":"Sürükle ve Bırak","Or":"Veya","browse":"göz at","Supports: JPEG, JPG, PNG":"Destekler: JPEG, JPG, PNG","Release to Upload":"Yüklemek için Yayınla","file not supported":"dosya desteklenmiyor","Sending Facial Data...":"Yüz Verileri Gönderiliyor...","Scanning Face...":"Yüz Taranıyor...","Analyzing Facial Attributes...":"Yüz Nitelikleri Analiz Ediliyor...","AI Crafting Report..":"Yapay Zeka Hazırlama Raporu..","Skin Info":"Cilt Bilgisi","Fine Wrinkles":"İnce Kırışıklıklar","Eye Wrinkles":"Göz Kırışıklıkları","Deep Wrinkles":"Derin Kırışıklıklar","Dark Circle":"Karanlık Çember","Eye Bag":"Göz Torbası","Pores":"Gözenekler","Pigment":"Pigment","Redness":"Kırmızılık","Oiliness":"Yağlılık","Acnes":"Akne","Acne":"Akne","Skin Health":"Cilt Sağlığı","Instructions":"Talimatlar","Get Ready to Start Skin Analysis":"Cilt Analizine Başlamaya Hazır Olun","Remove the glasses":"Gözlükleri çıkarın","Clean your face":"Yüzünü temizle","Be in the right light":"Doğru ışıkta olun","Be neutral face and fix position":"Nötr yüz olun ve pozisyonu sabitleyin","Get Started":"Başlarken","privacy.text":"Size özel doğru ürünler ve rutinlerle cildinizi nasıl güzelleştireceğinizi keşfedin. Kişiselleştirilmiş öneriler için selfie\'nizi yükleyin; analiz sonrasında görüntünüzün silineceğinden emin olun","See our":"Bizimkilere bakın","Privacy Policy":"Gizlilik Politikası","for more information":"daha fazla bilgi için","your picture quality is blurry":"resim kaliteniz bulanık","be wearing glasses":"gözlük takıyor olmak","please remove them":"lütfen onları kaldırın","Improve photo quality":"Fotoğraf kalitesini artırın","We noticed you might":"yapabileceğini fark ettik","and":"Ve","for better results":"daha iyi sonuçlar için","Tips for taking better selfies":"Daha iyi selfieler çekmek için ipuçları","Continue":"Devam etmek","Generate routine for you":"Kendiniz için rutin oluşturun","Re-take":"Tekrar al","Get recommended products!":"Önerilen ürünleri alın!","Recommendation Products":"Tavsiye Ürünleri","Products That Just Work For you":"Tam İşinize Yarayan Ürünler","My Skin Report":"Cilt Raporum","Add to cart":"Sepete ekle","Add again":"Tekrar ekle","Checkout":"Çıkış yapmak","My Routines":"Rutinlerim","Your":"Senin","Routine":"Rutin","Morning":"Sabah","Night":"Gece","Error":"Hata","The face is not visible in the picture":"Resimde yüzü görünmüyor","The input image is not suitable":"Giriş görüntüsü uygun değil","An error occurred, please check again":"Bir hata oluştu, lütfen tekrar kontrol edin","Camera permission denied.":"Kamera izni reddedildi.","Unable to access the camera.":"Kameraya erişilemiyor.","validation.blurry":"Görüntünüz bulanık","validation.eyeGlass":"Gözlüklerin var","validation.brightness":"Yüzünüzdeki ışık uygun değil","validation.neutralFace":"Yüz nötr değil (Bir gülümsemeniz olabilir)","Image is not suitable":"Resim uygun değil","Check how you can improve your skin with the proper product and routine":"Doğru ürün ve rutinle cildinizi nasıl iyileştirebileceğinizi kontrol edin","There are no products to display":"Gösterilecek ürün yok","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Kiri, yağı ve yabancı maddeleri temizlemek için yüzünüzü yıkayarak başlayın. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Cildinizin pH\'ını dengelemek ve kalan kalıntıları gidermek için bir toner kullanın.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Parlatma veya yaşlanma karşıtı gibi belirli endişeleri hedef alan konsantre bir serum uygulayın. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Nemlendirmek ve şişlikleri veya koyu halkaları azaltmak için göz kremini göz çevresine hafifçe vurun.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Sivilce veya leke gibi sorunlu bölgelere leke tedavisi uygulayın. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Cilt tipinize uygun bir nemlendirici uygulayarak nemi sabitleyin. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Geniş spektrumlu güneş koruyucu kullanarak cildinizi zararlı UV ışınlarından koruyun. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Nemi hapsetmek ve cildinize parlak bir parlaklık kazandırmak için hafif bir yüz yağı uygulayın. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Uyurken cildinizin onarılmasına ve yenilenmesine yardımcı olması için zengin bir gece kremi kullanın. ","Cleanser":"Temizleyici","Toner":"Toner","Serum":"Serum","Eye Cream":"Göz Kremi","Spot Treatment":"Leke Tedavisi","Moisturizer":"Nemlendirici","Sunscreen":"Güneş kremi","Face Oil":"Yüz Yağı","Night Cream":"Gece Kremi","Add all to cart":"Hepsini sepete ekle","All Products":"Tüm Ürünler","validation.faceObstruction":"Muhtemelen yüz derisinin yüzeyinde bir şey vardır (saç veya piercing)","Product added to cart":"Ürün sepete eklendi","products added to cart":"sepete eklenen ürünler","You reached the limits of your plan":"Planınızın sınırlarına ulaştınız","Please renew your service for access":"Lütfen erişim için hizmetinizi yenileyin","See the website’s privacy policy":"Web sitesinin gizlilik politikasına bakın"}')},hu:{translation:JSON.parse('{"Skin Analysis":"Bőrelemzés","Look Straight":"Nézz egyenesen","Face Position":"Arc helyzete","Lighting":"Világítás","Good":"Jó","Not Good":"Nem jó","Bad":"Rossz","Fair":"Igazságos","Powered by":"Powered by","Your distance is close to the camera":"A távolság közel van a kamerához","Keep your face inside the circle":"Tartsa az arcát a körön belül","Please stand in front of the camera":"Kérem, álljon a kamera elé","There is more than one person in the picture":"A képen egynél több ember van","Drag & Drop":"Drag & Drop","Or":"Vagy","browse":"böngésszen","Supports: JPEG, JPG, PNG":"Támogatja: JPEG, JPG, PNG","Release to Upload":"Engedje fel a feltöltéshez","file not supported":"fájl nem támogatott","Sending Facial Data...":"Arcadatok küldése...","Scanning Face...":"Arc beolvasása...","Analyzing Facial Attributes...":"Arctulajdonságok elemzése...","AI Crafting Report..":"AI Crafting Report...","Skin Info":"Bőrinformáció","Fine Wrinkles":"Finom ráncok","Eye Wrinkles":"Szemráncok","Deep Wrinkles":"Mély ráncok","Dark Circle":"Sötét Kör","Eye Bag":"Szemtáska","Pores":"Pórusok","Pigment":"Pigment","Redness":"Vörösség","Oiliness":"Olajosság","Acnes":"Pattanás","Acne":"Pattanás","Skin Health":"Bőr egészsége","Instructions":"Utasítás","Get Ready to Start Skin Analysis":"Készüljön fel a bőrelemzés megkezdésére","Remove the glasses":"Távolítsa el a szemüveget","Clean your face":"Tisztítsa meg az arcát","Be in the right light":"Legyen a megfelelő fényben","Be neutral face and fix position":"Legyen semleges arc és rögzítse a pozícióját","Get Started":"Kezdje el","privacy.text":"Fedezze fel, hogyan javíthatja bőrét a megfelelő termékekkel és az Ön számára kialakított rutinnal. Töltsd fel szelfidet a személyre szabott ajánlásokhoz, és biztos lehetsz benne, hogy az elemzés után a képed törlődik","See our":"Lásd a mi","Privacy Policy":"Adatvédelmi szabályzat","for more information":"további információkért","your picture quality is blurry":"a képminősége homályos","be wearing glasses":"legyen szemüveges","please remove them":"kérjük távolítsa el őket","Improve photo quality":"Javítsa a fénykép minőségét","We noticed you might":"Észrevettük, hogy lehet","and":"és","for better results":"jobb eredmények érdekében","Tips for taking better selfies":"Tippek jobb szelfik készítéséhez","Continue":"Folytatás","Generate routine for you":"Generáljon rutint az Ön számára","Re-take":"Vedd újra","Get recommended products!":"Szerezze be az ajánlott termékeket!","Recommendation Products":"Termékajánlás","Products That Just Work For you":"Termékek, amelyek csak Önnek működnek","My Skin Report":"My Skin Report","Add to cart":"Kosárba","Add again":"Adja hozzá újra","Checkout":"Pénztár","My Routines":"Saját rutinok","Your":"A te","Routine":"Rutin","Morning":"Reggel","Night":"Éjszaka","Error":"Hiba","The face is not visible in the picture":"Az arc nem látszik a képen","The input image is not suitable":"A bemeneti kép nem megfelelő","An error occurred, please check again":"Hiba történt, ellenőrizze újra","Camera permission denied.":"Kameraengedély megtagadva.","Unable to access the camera.":"Nem lehet hozzáférni a kamerához.","validation.blurry":"A képed homályos","validation.eyeGlass":"Szemüveged van","validation.brightness":"Az arc fénye nem megfelelő","validation.neutralFace":"Az arc nem semleges (mosolyoghat)","Image is not suitable":"A kép nem megfelelő","Check how you can improve your skin with the proper product and routine":"Ellenőrizze, hogyan javíthatja bőrét a megfelelő termékkel és rutinnal","There are no products to display":"Nincsenek megjeleníthető termékek","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Kezdje az arcmosással, hogy eltávolítsa a szennyeződéseket, olajat és szennyeződéseket. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Használjon tonikot a bőr pH-értékének kiegyensúlyozására és a maradék maradék eltávolítására.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Használjon koncentrált szérumot, amely speciális problémákat céloz meg, mint például a fényesítő vagy az öregedésgátló. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Finoman dörzsölje be a szemkörnyéki krémet a szemkörnyék körül, hogy hidratálja és csökkentse a duzzanatot vagy a sötét karikákat.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Alkalmazzon foltkezelést minden problémás területre, például pattanásokra vagy foltokra. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Rögzítse a hidratálást a bőrtípusának megfelelő hidratáló krémmel. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Védje bőrét a káros UV-sugárzástól széles spektrumú fényvédő krémmel. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Vigyen fel egy könnyű arcolajat, hogy elzárja a nedvességet, és ragyogó fényt adjon bőrének. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Használjon gazdag éjszakai krémet a bőr helyreállításához és helyreállításához alvás közben. ","Cleanser":"Tisztítószer","Toner":"Toner","Serum":"Szérum","Eye Cream":"Szemkörnyékápoló krém","Spot Treatment":"Spot kezelés","Moisturizer":"Hidratáló krém","Sunscreen":"Fényvédő krém","Face Oil":"Arcolaj","Night Cream":"Éjszakai krém","Add all to cart":"Mindent a kosárba","All Products":"Minden termék","validation.faceObstruction":"Valószínűleg van valami az arcbőr felszínén (haj vagy piercing)","Product added to cart":"A termék a kosárba került","products added to cart":"kosárba helyezett termékek","You reached the limits of your plan":"Elérted terved határait","Please renew your service for access":"Kérjük, újítsa meg szolgáltatását a hozzáféréshez","See the website’s privacy policy":"Tekintse meg a weboldal adatvédelmi szabályzatát"}')},lt:{translation:JSON.parse('{"Skin Analysis":"Odos analizė","Look Straight":"Žiūrėk tiesiai","Face Position":"Veido padėtis","Lighting":"Apšvietimas","Good":"Gerai","Not Good":"Negerai","Bad":"Blogai","Fair":"Sąžininga","Powered by":"Maitinamas","Your distance is close to the camera":"Jūsų atstumas yra arti fotoaparato","Keep your face inside the circle":"Laikykite veidą apskritimo viduje","Please stand in front of the camera":"Prašome atsistoti prieš kamerą","There is more than one person in the picture":"Nuotraukoje yra daugiau nei vienas asmuo","Drag & Drop":"Drag & Drop","Or":"Arba","browse":"naršyti","Supports: JPEG, JPG, PNG":"Palaiko: JPEG, JPG, PNG","Release to Upload":"Išleiskite įkelti","file not supported":"failas nepalaikomas","Sending Facial Data...":"Siunčiami veido duomenys...","Scanning Face...":"Nuskaitomas veidas...","Analyzing Facial Attributes...":"Analizuojamos veido savybės...","AI Crafting Report..":"AI kūrimo ataskaita..","Skin Info":"Informacija apie odą","Fine Wrinkles":"Smulkios raukšlės","Eye Wrinkles":"Akių raukšlės","Deep Wrinkles":"Gilios raukšlės","Dark Circle":"Tamsus ratas","Eye Bag":"Akių krepšys","Pores":"Poros","Pigment":"Pigmentas","Redness":"Paraudimas","Oiliness":"Riebalingumas","Acnes":"Spuogai","Acne":"Spuogai","Skin Health":"Odos sveikata","Instructions":"Instrukcijos","Get Ready to Start Skin Analysis":"Pasiruoškite pradėti odos analizę","Remove the glasses":"Nuimkite akinius","Clean your face":"Nuvalykite veidą","Be in the right light":"Būkite tinkamoje šviesoje","Be neutral face and fix position":"Būkite neutralus veidas ir fiksuokite padėtį","Get Started":"Pradėkite","privacy.text":"Sužinokite, kaip patobulinti savo odą tinkamais produktais ir jums pritaikyta tvarka. Įkelkite asmenukę, kad gautumėte suasmenintų rekomendacijų, ir būkite tikri, po analizės jūsų vaizdas bus ištrintas","See our":"Žiūrėkite mūsų","Privacy Policy":"Privatumo politika","for more information":"Norėdami gauti daugiau informacijos","your picture quality is blurry":"jūsų vaizdo kokybė yra neryški","be wearing glasses":"nešioti akinius","please remove them":"prašome juos pašalinti","Improve photo quality":"Pagerinkite nuotraukų kokybę","We noticed you might":"Mes pastebėjome, kad galite","and":"ir","for better results":"geresnių rezultatų","Tips for taking better selfies":"Patarimai, kaip daryti geresnes asmenukes","Continue":"Tęsti","Generate routine for you":"Sukurkite jums rutiną","Re-take":"Paimkite iš naujo","Get recommended products!":"Gaukite rekomenduojamus produktus!","Recommendation Products":"Rekomendacijos produktai","Products That Just Work For you":"Produktai, kurie tinka tik jums","My Skin Report":"Mano odos ataskaita","Add to cart":"Pridėti į krepšelį","Add again":"Pridėti dar kartą","Checkout":"Patikra","My Routines":"Mano kasdienybės","Your":"Jūsų","Routine":"Rutina","Morning":"Rytas","Night":"Naktis","Error":"Klaida","The face is not visible in the picture":"Nuotraukoje veido nesimato","The input image is not suitable":"Įvesties vaizdas netinka","An error occurred, please check again":"Įvyko klaida, patikrinkite dar kartą","Camera permission denied.":"Fotoaparato leidimas atmestas.","Unable to access the camera.":"Nepavyko pasiekti fotoaparato.","validation.blurry":"Jūsų vaizdas neryškus","validation.eyeGlass":"Tu turi akinius","validation.brightness":"Šviesa ant veido netinka","validation.neutralFace":"Veidas nėra neutralus (galite šypsotis)","Image is not suitable":"Vaizdas netinkamas","Check how you can improve your skin with the proper product and routine":"Patikrinkite, kaip galite pagerinti savo odą naudodami tinkamą produktą ir įprastą tvarką","There are no products to display":"Nėra produktų, kuriuos būtų galima rodyti","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Pradėkite plaudami veidą, kad pašalintumėte nešvarumus, aliejų ir nešvarumus. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Naudokite toniką, kad subalansuotumėte odos pH ir pašalintumėte likusius likučius.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Tepkite koncentruotą serumą, skirtą konkrečioms problemoms, pvz., šviesinimui ar senėjimui stabdymui. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Švelniai patepkite paakių kremu aplink akių sritį, kad sudrėkintumėte ir sumažintumėte paburkimą ar tamsius ratilus.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Tepkite taškinį gydymą ant bet kokių probleminių vietų, tokių kaip spuogai ar dėmės. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Užfiksuokite hidrataciją naudodami jūsų odos tipą atitinkantį drėkinamąjį kremą. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Apsaugokite odą nuo žalingų UV spindulių naudodami plataus spektro apsaugą nuo saulės. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Užtepkite lengvo veido aliejaus, kad sulaikytumėte drėgmę ir suteiktumėte odai spindesio. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Naudokite sodrų naktinį kremą, kuris padės atkurti ir atkurti odą miegant. ","Cleanser":"Valiklis","Toner":"Toneris","Serum":"Serumas","Eye Cream":"Akių kremas","Spot Treatment":"Taškinis gydymas","Moisturizer":"Drėkiklis","Sunscreen":"Apsauginis kremas nuo saulės","Face Oil":"Veido aliejus","Night Cream":"Naktinis kremas","Add all to cart":"Įdėkite viską į krepšelį","All Products":"Visi produktai","validation.faceObstruction":"Tikriausiai kažkas yra ant veido odos paviršiaus (plaukų ar auskarų)","Product added to cart":"Prekė įdėta į krepšelį","products added to cart":"produktai įdėta į krepšelį","You reached the limits of your plan":"Pasiekėte savo plano ribas","Please renew your service for access":"Norėdami gauti prieigą, atnaujinkite savo paslaugą","See the website’s privacy policy":"Peržiūrėkite svetainės privatumo politiką"}')},bn:{translation:JSON.parse('{"Skin Analysis":"ত্বক বিশ্লেষণ","Look Straight":"সোজাসুজি তাকান","Face Position":"মুখের অবস্থান","Lighting":"লাইটিং","Good":"ভাল","Not Good":"ভালো না","Bad":"খারাপ","Fair":"মেলা","Powered by":"দ্বারা চালিত","Your distance is close to the camera":"আপনার দূরত্ব ক্যামেরার কাছাকাছি","Keep your face inside the circle":"আপনার মুখ বৃত্তের ভিতরে রাখুন","Please stand in front of the camera":"দয়া করে ক্যামেরার সামনে দাঁড়ান","There is more than one person in the picture":"ছবিতে একাধিক ব্যক্তি রয়েছেন","Drag & Drop":"টেনে আনুন","Or":"বা","browse":"ব্রাউজ","Supports: JPEG, JPG, PNG":"সমর্থন করে: JPEG, JPG, PNG","Release to Upload":"আপলোড করতে রিলিজ করুন","file not supported":"ফাইল সমর্থিত নয়","Sending Facial Data...":"ফেসিয়াল ডেটা পাঠানো হচ্ছে...","Scanning Face...":"মুখ স্ক্যান করা হচ্ছে...","Analyzing Facial Attributes...":"মুখের বৈশিষ্ট্য বিশ্লেষণ করা হচ্ছে...","AI Crafting Report..":"এআই ক্রাফটিং রিপোর্ট..","Skin Info":"ত্বকের তথ্য","Fine Wrinkles":"সূক্ষ্ম বলি","Eye Wrinkles":"চোখের বলি","Deep Wrinkles":"গভীর বলিরেখা","Dark Circle":"ডার্ক সার্কেল","Eye Bag":"চোখের ব্যাগ","Pores":"ছিদ্র","Pigment":"রঙ্গক","Redness":"লালভাব","Oiliness":"তৈলাক্ততা","Acnes":"ব্রণ","Acne":"ব্রণ","Skin Health":"ত্বকের স্বাস্থ্য","Instructions":"নির্দেশনা","Get Ready to Start Skin Analysis":"ত্বক বিশ্লেষণ শুরু করার জন্য প্রস্তুত হন","Remove the glasses":"চশমা সরান","Clean your face":"আপনার মুখ পরিষ্কার করুন","Be in the right light":"সঠিক আলোতে থাকুন","Be neutral face and fix position":"নিরপেক্ষ মুখ হতে এবং অবস্থান ঠিক করুন","Get Started":"শুরু করুন","privacy.text":"আপনার জন্য তৈরি সঠিক পণ্য এবং রুটিন দিয়ে কীভাবে আপনার ত্বককে উন্নত করবেন তা আবিষ্কার করুন। ব্যক্তিগতকৃত সুপারিশের জন্য আপনার সেলফি আপলোড করুন এবং নিশ্চিত থাকুন, বিশ্লেষণের পরে আপনার ছবি মুছে ফেলা হবে","See our":"আমাদের দেখুন","Privacy Policy":"গোপনীয়তা নীতি","for more information":"আরও তথ্যের জন্য","your picture quality is blurry":"আপনার ছবির মান অস্পষ্ট","be wearing glasses":"চশমা পরা হবে","please remove them":"তাদের অপসারণ করুন","Improve photo quality":"ছবির গুণমান উন্নত করুন","We noticed you might":"আমরা লক্ষ্য করেছি আপনি হতে পারে","and":"এবং","for better results":"ভালো ফলাফলের জন্য","Tips for taking better selfies":"আরও ভালো সেলফি তোলার টিপস","Continue":"চালিয়ে যান","Generate routine for you":"আপনার জন্য রুটিন তৈরি করুন","Re-take":"পুনরায় গ্রহণ করুন","Get recommended products!":"প্রস্তাবিত পণ্য পান!","Recommendation Products":"সুপারিশ পণ্য","Products That Just Work For you":"আপনার জন্য কাজ করে এমন পণ্য","My Skin Report":"আমার ত্বক রিপোর্ট","Add to cart":"কার্টে যোগ করুন","Add again":"আবার যোগ করুন","Checkout":"চেকআউট","My Routines":"আমার রুটিন","Your":"আপনার","Routine":"রুটিন","Morning":"সকাল","Night":"রাত্রি","Error":"ত্রুটি","The face is not visible in the picture":"ছবিতে মুখ দেখা যাচ্ছে না","The input image is not suitable":"ইনপুট ইমেজ উপযুক্ত নয়","An error occurred, please check again":"একটি ত্রুটি ঘটেছে, অনুগ্রহ করে আবার পরীক্ষা করুন৷","Camera permission denied.":"ক্যামেরার অনুমতি অস্বীকার করা হয়েছে৷","Unable to access the camera.":"ক্যামেরা অ্যাক্সেস করতে অক্ষম।","validation.blurry":"আপনার ইমেজ ঝাপসা","validation.eyeGlass":"তোমার চশমা আছে","validation.brightness":"আপনার মুখের আলো উপযুক্ত নয়","validation.neutralFace":"মুখ নিরপেক্ষ নয় (আপনার হাসি থাকতে পারে)","Image is not suitable":"ছবি উপযুক্ত নয়","Check how you can improve your skin with the proper product and routine":"সঠিক পণ্য এবং রুটিন দিয়ে আপনি কীভাবে আপনার ত্বকের উন্নতি করতে পারেন তা পরীক্ষা করুন","There are no products to display":"প্রদর্শন করার জন্য কোন পণ্য নেই","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"ময়লা, তেল এবং অমেধ্য দূর করতে আপনার মুখ ধুয়ে শুরু করুন। ","Use a toner to balance your skin’s pH and remove any leftover residue.":"আপনার ত্বকের পিএইচ ভারসাম্য রাখতে এবং অবশিষ্ট অবশিষ্টাংশগুলি সরাতে একটি টোনার ব্যবহার করুন।","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"উজ্জ্বল বা বিরোধী বার্ধক্য মত নির্দিষ্ট উদ্বেগ লক্ষ্য করে একটি ঘনীভূত সিরাম প্রয়োগ করুন। ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"হাইড্রেট করতে এবং ফোলাভাব বা ডার্ক সার্কেল কমাতে চোখের চারপাশে আলতো করে আই ক্রিম প্যাট করুন।","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"ব্রণ বা দাগের মতো সমস্যাযুক্ত স্থানে স্পট ট্রিটমেন্ট প্রয়োগ করুন। ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"আপনার ত্বকের ধরন অনুসারে একটি ময়েশ্চারাইজার প্রয়োগ করে হাইড্রেশন লক করুন। ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"ব্রড-স্পেকট্রাম সুরক্ষা সহ সানস্ক্রিন ব্যবহার করে ক্ষতিকারক UV রশ্মি থেকে আপনার ত্বককে রক্ষা করুন। ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"আর্দ্রতা সিল করতে এবং আপনার ত্বককে একটি উজ্জ্বল আভা দিতে হালকা ওজনের মুখের তেল প্রয়োগ করুন। ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"আপনার ঘুমানোর সময় আপনার ত্বক মেরামত এবং পুনরুদ্ধার করতে একটি সমৃদ্ধ নাইট ক্রিম ব্যবহার করুন। ","Cleanser":"ক্লিনজার","Toner":"টোনার","Serum":"সিরাম","Eye Cream":"আই ক্রিম","Spot Treatment":"স্পট ট্রিটমেন্ট","Moisturizer":"ময়েশ্চারাইজার","Sunscreen":"সানস্ক্রিন","Face Oil":"মুখের তেল","Night Cream":"নাইট ক্রিম","Add all to cart":"কার্টে সব যোগ করুন","All Products":"সমস্ত পণ্য","validation.faceObstruction":"মুখের ত্বকের পৃষ্ঠে সম্ভবত কিছু আছে (চুল বা ছিদ্র)","Product added to cart":"পণ্য কার্টে যোগ করা হয়েছে","products added to cart":"পণ্য কার্টে যোগ করা হয়েছে","You reached the limits of your plan":"আপনি আপনার পরিকল্পনার সীমাতে পৌঁছেছেন","Please renew your service for access":"অ্যাক্সেসের জন্য আপনার পরিষেবা পুনর্নবীকরণ করুন","See the website’s privacy policy":"ওয়েবসাইটের গোপনীয়তা নীতি দেখুন"}')},nl:{translation:JSON.parse('{"Skin Analysis":"Huidanalyse","Look Straight":"Kijk recht","Face Position":"Gezichtspositie","Lighting":"Verlichting","Good":"Goed","Not Good":"Niet goed","Bad":"Slecht","Fair":"Eerlijk","Powered by":"Aangedreven door","Your distance is close to the camera":"Je afstand is dichtbij de camera","Keep your face inside the circle":"Houd uw gezicht binnen de cirkel","Please stand in front of the camera":"Ga alsjeblieft voor de camera staan","There is more than one person in the picture":"Er is meer dan één persoon op de foto","Drag & Drop":"Slepen en neerzetten","Or":"Of","browse":"bladeren","Supports: JPEG, JPG, PNG":"Ondersteunt: JPEG, JPG, PNG","Release to Upload":"Laat los om te uploaden","file not supported":"bestand niet ondersteund","Sending Facial Data...":"Gezichtsgegevens verzenden...","Scanning Face...":"Gezicht scannen...","Analyzing Facial Attributes...":"Gezichtskenmerken analyseren...","AI Crafting Report..":"AI Crafting-rapport..","Skin Info":"Huidinformatie","Fine Wrinkles":"Fijne rimpels","Eye Wrinkles":"Oog rimpels","Deep Wrinkles":"Diepe rimpels","Dark Circle":"Donkere cirkel","Eye Bag":"Oogzak","Pores":"Poriën","Pigment":"Pigment","Redness":"Roodheid","Oiliness":"Vettigheid","Acnes":"Acne","Acne":"Acne","Skin Health":"Gezondheid van de huid","Instructions":"Instructies","Get Ready to Start Skin Analysis":"Maak je klaar om huidanalyse te starten","Remove the glasses":"Verwijder de glazen","Clean your face":"Maak je gezicht schoon","Be in the right light":"Wees in het juiste licht","Be neutral face and fix position":"Wees neutraal en fixeer de positie","Get Started":"Aan de slag","privacy.text":"Ontdek hoe u uw huid kunt verbeteren met de juiste producten en routines op maat voor u. Upload uw selfie voor gepersonaliseerde aanbevelingen en u kunt er zeker van zijn dat uw afbeelding na analyse wordt verwijderd","See our":"Zie onze","Privacy Policy":"Privacybeleid","for more information":"voor meer informatie","your picture quality is blurry":"uw beeldkwaliteit is wazig","be wearing glasses":"een bril dragen","please remove them":"verwijder ze alstublieft","Improve photo quality":"Verbeter de fotokwaliteit","We noticed you might":"We hebben gemerkt dat je dat misschien wel zou doen","and":"En","for better results":"voor betere resultaten","Tips for taking better selfies":"Tips voor het maken van betere selfies","Continue":"Doorgaan","Generate routine for you":"Creëer routine voor u","Re-take":"Opnieuw nemen","Get recommended products!":"Ontvang aanbevolen producten!","Recommendation Products":"Aanbeveling producten","Products That Just Work For you":"Producten die gewoon voor u werken","My Skin Report":"Mijn huidrapport","Add to cart":"Voeg toe aan winkelwagen","Add again":"Voeg opnieuw toe","Checkout":"Afrekenen","My Routines":"Mijn routines","Your":"Jouw","Routine":"Routine","Morning":"Ochtend","Night":"Nacht","Error":"Fout","The face is not visible in the picture":"Het gezicht is niet zichtbaar op de foto","The input image is not suitable":"De invoerafbeelding is niet geschikt","An error occurred, please check again":"Er is een fout opgetreden. Controleer het opnieuw","Camera permission denied.":"Cameratoestemming geweigerd.","Unable to access the camera.":"Kan geen toegang krijgen tot de camera.","validation.blurry":"Je beeld is wazig","validation.eyeGlass":"Je hebt een bril","validation.brightness":"Het licht op je gezicht is niet geschikt","validation.neutralFace":"Het gezicht is niet neutraal (je hebt misschien een glimlach)","Image is not suitable":"Afbeelding is niet geschikt","Check how you can improve your skin with the proper product and routine":"Ontdek hoe u uw huid kunt verbeteren met het juiste product en de juiste routine","There are no products to display":"Er zijn geen producten om weer te geven","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Begin met het wassen van je gezicht om vuil, olie en onzuiverheden te verwijderen. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Gebruik een toner om de pH-waarde van uw huid in evenwicht te brengen en eventuele overgebleven resten te verwijderen.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Breng een geconcentreerd serum aan dat gericht is op specifieke problemen, zoals verheldering of anti-veroudering. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Dep de oogcrème zachtjes rond de ogen om te hydrateren en wallen of donkere kringen te verminderen.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Breng een spotbehandeling aan op probleemgebieden, zoals acne of puistjes. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Houd de hydratatie vast door een vochtinbrengende crème aan te brengen die bij uw huidtype past. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Bescherm uw huid tegen schadelijke UV-stralen door zonnebrandcrème met breedspectrumbescherming te gebruiken. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Breng een lichtgewicht gezichtsolie aan om vocht vast te houden en uw huid een stralende glans te geven. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Gebruik een rijke nachtcrème om uw huid te helpen herstellen en herstellen terwijl u slaapt. ","Cleanser":"Reiniger","Toner":"Toner","Serum":"Serum","Eye Cream":"Oogcrème","Spot Treatment":"Behandeling ter plaatse","Moisturizer":"Vochtinbrengende crème","Sunscreen":"Zonnebrandcrème","Face Oil":"Gezichtsolie","Night Cream":"Nachtcrème","Add all to cart":"Voeg alles toe aan winkelwagen","All Products":"Alle producten","validation.faceObstruction":"Er zit waarschijnlijk iets op het oppervlak van de gezichtshuid (haar of piercing)","Product added to cart":"Product toegevoegd aan winkelwagen","products added to cart":"producten toegevoegd aan winkelwagen","You reached the limits of your plan":"Je hebt de grenzen van je plan bereikt","Please renew your service for access":"Verleng uw service voor toegang","See the website’s privacy policy":"Zie het privacybeleid van de website"}')},ms:{translation:JSON.parse('{"Skin Analysis":"Analisis Kulit","Look Straight":"Pandang Lurus","Face Position":"Kedudukan Muka","Lighting":"Pencahayaan","Good":"bagus","Not Good":"Tidak Baik","Bad":"teruk","Fair":"Adil","Powered by":"Dikuasakan oleh","Your distance is close to the camera":"Jarak anda dekat dengan kamera","Keep your face inside the circle":"Simpan muka anda di dalam bulatan","Please stand in front of the camera":"Sila berdiri di hadapan kamera","There is more than one person in the picture":"Terdapat lebih daripada seorang dalam gambar","Drag & Drop":"Seret & Lepas","Or":"Ataupun","browse":"semak imbas","Supports: JPEG, JPG, PNG":"Menyokong: JPEG, JPG, PNG","Release to Upload":"Keluarkan untuk Muat Naik","file not supported":"fail tidak disokong","Sending Facial Data...":"Menghantar Data Muka...","Scanning Face...":"Mengimbas Wajah...","Analyzing Facial Attributes...":"Menganalisis Atribut Muka...","AI Crafting Report..":"Laporan Penciptaan AI..","Skin Info":"Maklumat Kulit","Fine Wrinkles":"Kedutan Halus","Eye Wrinkles":"Kedutan Mata","Deep Wrinkles":"Kedutan Dalam","Dark Circle":"Bulatan Gelap","Eye Bag":"Beg Mata","Pores":"Liang pori","Pigment":"Pigmen","Redness":"kemerahan","Oiliness":"Berminyak","Acnes":"Jerawat","Acne":"Jerawat","Skin Health":"Kesihatan Kulit","Instructions":"Arahan","Get Ready to Start Skin Analysis":"Bersedia untuk Memulakan Analisis Kulit","Remove the glasses":"Tanggalkan cermin mata","Clean your face":"Bersihkan muka anda","Be in the right light":"Berada dalam cahaya yang betul","Be neutral face and fix position":"Bersikap neutral dan tetapkan kedudukan","Get Started":"Mulakan","privacy.text":"Temui cara untuk meningkatkan kulit anda dengan produk dan rutin yang betul yang disesuaikan untuk anda. Muat naik swafoto anda untuk cadangan yang diperibadikan, dan yakinlah, imej anda akan dipadamkan selepas analisis","See our":"Lihat kami","Privacy Policy":"Dasar Privasi","for more information":"untuk maklumat lanjut","your picture quality is blurry":"kualiti gambar anda kabur","be wearing glasses":"memakai cermin mata","please remove them":"sila keluarkan mereka","Improve photo quality":"Tingkatkan kualiti foto","We noticed you might":"Kami perasan anda mungkin","and":"dan","for better results":"untuk hasil yang lebih baik","Tips for taking better selfies":"Petua untuk mengambil swafoto yang lebih baik","Continue":"teruskan","Generate routine for you":"Hasilkan rutin untuk anda","Re-take":"Ambil semula","Get recommended products!":"Dapatkan produk yang disyorkan!","Recommendation Products":"Produk Cadangan","Products That Just Work For you":"Produk Yang Hanya Berfungsi Untuk anda","My Skin Report":"Laporan Kulit Saya","Add to cart":"Tambah ke troli","Add again":"Tambah lagi","Checkout":"Checkout","My Routines":"Rutin Saya","Your":"awak","Routine":"Rutin","Morning":"Pagi","Night":"Malam","Error":"ralat","The face is not visible in the picture":"Wajah tidak kelihatan dalam gambar","The input image is not suitable":"Imej input tidak sesuai","An error occurred, please check again":"Ralat telah berlaku, sila semak semula","Camera permission denied.":"Kebenaran kamera ditolak.","Unable to access the camera.":"Tidak dapat mengakses kamera.","validation.blurry":"Imej anda kabur","validation.eyeGlass":"Anda mempunyai cermin mata","validation.brightness":"Cahaya di muka anda tidak sesuai","validation.neutralFace":"Wajah tidak neutral (Anda mungkin tersenyum)","Image is not suitable":"Imej tidak sesuai","Check how you can improve your skin with the proper product and routine":"Semak bagaimana anda boleh memperbaiki kulit anda dengan produk dan rutin yang betul","There are no products to display":"Tiada produk untuk dipaparkan","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Mulakan dengan mencuci muka untuk menghilangkan kotoran, minyak dan kekotoran. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Gunakan penyegar untuk mengimbangi pH kulit anda dan mengeluarkan sebarang sisa yang tertinggal.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Sapukan serum pekat yang menyasarkan kebimbangan khusus, seperti pencerahan atau anti-penuaan. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Tepuk krim mata perlahan-lahan di sekitar kawasan mata untuk melembapkan dan mengurangkan bengkak atau lingkaran hitam.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Sapukan rawatan di kawasan yang bermasalah, seperti jerawat atau jeragat. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Kunci dalam penghidratan dengan menggunakan pelembap yang sesuai dengan jenis kulit anda. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Lindungi kulit anda daripada sinaran UV yang berbahaya dengan menggunakan pelindung matahari dengan perlindungan spektrum luas. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Sapukan minyak muka yang ringan untuk menutup kelembapan dan memberikan kulit anda cahaya berseri. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Gunakan krim malam yang kaya untuk membantu membaiki dan memulihkan kulit anda semasa anda tidur. ","Cleanser":"Pembersih","Toner":"Toner","Serum":"Serum","Eye Cream":"Krim Mata","Spot Treatment":"Rawatan Bintik","Moisturizer":"Pelembap","Sunscreen":"pelindung matahari","Face Oil":"Minyak Muka","Night Cream":"Krim Malam","Add all to cart":"Tambahkan semua ke troli","All Products":"Semua Produk","validation.faceObstruction":"Mungkin ada sesuatu pada permukaan kulit muka (rambut atau tindikan)","Product added to cart":"Produk ditambah ke troli","products added to cart":"produk yang ditambahkan pada troli","You reached the limits of your plan":"Anda telah mencapai had rancangan anda","Please renew your service for access":"Sila perbaharui perkhidmatan anda untuk akses","See the website’s privacy policy":"Lihat dasar privasi tapak web"}')},ja:{translation:JSON.parse('{"Skin Analysis":"肌分析","Look Straight":"まっすぐに見てください","Face Position":"顔の位置","Lighting":"点灯","Good":"良い","Not Good":"良くない","Bad":"悪い","Fair":"公平","Powered by":"搭載","Your distance is close to the camera":"カメラとの距離が近い","Keep your face inside the circle":"顔を円の中に入れてください","Please stand in front of the camera":"カメラの前に立ってください","There is more than one person in the picture":"写真には複数の人物が写っています","Drag & Drop":"ドラッグ&ドロップ","Or":"または","browse":"ブラウズ","Supports: JPEG, JPG, PNG":"サポート: JPEG、JPG、PNG","Release to Upload":"リリースからアップロードまで","file not supported":"ファイルはサポートされていません","Sending Facial Data...":"顔データを送信中...","Scanning Face...":"顔をスキャン中...","Analyzing Facial Attributes...":"顔の属性を分析中...","AI Crafting Report..":"AI製作レポート..","Skin Info":"スキン情報","Fine Wrinkles":"小じわ","Eye Wrinkles":"目のシワ","Deep Wrinkles":"深いシワ","Dark Circle":"ダークサークル","Eye Bag":"目袋","Pores":"毛穴","Pigment":"顔料","Redness":"赤み","Oiliness":"油っぽさ","Acnes":"ニキビ","Acne":"ニキビ","Skin Health":"皮膚の健康","Instructions":"説明書","Get Ready to Start Skin Analysis":"肌分析を始める準備をしましょう","Remove the glasses":"メガネを外してください","Clean your face":"顔をきれいにしてください","Be in the right light":"適切な光の中にいてください","Be neutral face and fix position":"無表情で姿勢を固定する","Get Started":"始めましょう","privacy.text":"あなたに合った適切な製品と習慣で肌を改善する方法を見つけてください。自撮り写真をアップロードすると、カスタマイズされたおすすめが表示されます。画像は分析後に削除されますのでご安心ください。","See our":"私たちのを参照してください","Privacy Policy":"プライバシーポリシー","for more information":"詳細については","your picture quality is blurry":"画質がぼやけてます","be wearing glasses":"メガネをかけている","please remove them":"それらを削除してください","Improve photo quality":"写真の品質を向上させる","We noticed you might":"私たちはあなたがそうかもしれないことに気づきました","and":"そして","for better results":"より良い結果を得るために","Tips for taking better selfies":"より良いセルフィーを撮るためのヒント","Continue":"続く","Generate routine for you":"あなたのためのルーチンを生成する","Re-take":"再撮影","Get recommended products!":"おすすめ商品をゲットしよう!","Recommendation Products":"おすすめ商品","Products That Just Work For you":"あなたにぴったりの製品","My Skin Report":"私の肌レポート","Add to cart":"カートに追加","Add again":"再度追加","Checkout":"チェックアウト","My Routines":"私のルーティン","Your":"あなたの","Routine":"ルーティーン","Morning":"朝","Night":"夜","Error":"エラー","The face is not visible in the picture":"写真では顔が見えない","The input image is not suitable":"入力画像が適切ではありません","An error occurred, please check again":"エラーが発生しました。もう一度確認してください","Camera permission denied.":"カメラの許可が拒否されました。","Unable to access the camera.":"カメラにアクセスできません。","validation.blurry":"画像がぼやけています","validation.eyeGlass":"メガネをお持ちですね","validation.brightness":"あなたの顔に当たる光は適切ではありません","validation.neutralFace":"顔が中性的ではない(笑顔かもしれない)","Image is not suitable":"画像が適切ではありません","Check how you can improve your skin with the proper product and routine":"適切な製品と習慣で肌を改善できる方法を確認してください","There are no products to display":"表示する商品はありません","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"まずは顔を洗って汚れや油分、不純物を取り除くことから始めましょう。","Use a toner to balance your skin’s pH and remove any leftover residue.":"トナーを使用して肌の pH バランスを整え、残った残留物を取り除きます。","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"美白やアンチエイジングなど、特定の悩みをターゲットにした濃縮美容液を塗ります。","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"目の周りにアイクリームを優しくなじませて、潤いを与え、腫れやクマを軽減します。","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"ニキビやシミなどの問題のある部分にスポットトリートメントを適用します。","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"自分の肌タイプに合った保湿剤を塗布して、水分を閉じ込めてください。","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"広範囲の保護機能を持つ日焼け止めを使用して、有害な紫外線から肌を守りましょう。","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"軽いフェイス オイルを塗布して水分を閉じ込め、肌に輝く輝きを与えます。","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"睡眠中に肌の修復と回復を助けるために、濃厚なナイトクリームを使用してください。","Cleanser":"クレンザー","Toner":"トナー","Serum":"血清","Eye Cream":"アイクリーム","Spot Treatment":"スポットトリートメント","Moisturizer":"保湿剤","Sunscreen":"日焼け止め","Face Oil":"フェイスオイル","Night Cream":"ナイトクリーム","Add all to cart":"すべてをカートに追加する","All Products":"すべての製品","validation.faceObstruction":"おそらく顔の皮膚の表面に何か(髪またはピアス)があるでしょう","Product added to cart":"商品をカートに追加しました","products added to cart":"カートに商品が追加されました","You reached the limits of your plan":"プランの制限に達しました","Please renew your service for access":"アクセスするにはサービスを更新してください","See the website’s privacy policy":"ウェブサイトのプライバシーポリシーをご覧ください"}')},ru:{translation:JSON.parse('{"Skin Analysis":"Анализ кожи","Look Straight":"Смотри прямо","Face Position":"Положение лица","Lighting":"Освещение","Good":"Хороший","Not Good":"Не хорошо","Bad":"Плохой","Fair":"Справедливый","Powered by":"Питаться от","Your distance is close to the camera":"Ваше расстояние близко к камере","Keep your face inside the circle":"Держите лицо внутри круга","Please stand in front of the camera":"Пожалуйста, встаньте перед камерой","There is more than one person in the picture":"На фотографии несколько человек","Drag & Drop":"Перетаскивание","Or":"Или","browse":"просматривать","Supports: JPEG, JPG, PNG":"Поддерживает: JPEG, JPG, PNG.","Release to Upload":"Выпуск для загрузки","file not supported":"файл не поддерживается","Sending Facial Data...":"Отправка данных о лице...","Scanning Face...":"Сканирование лица...","Analyzing Facial Attributes...":"Анализ черт лица...","AI Crafting Report..":"Отчет о создании ИИ..","Skin Info":"Информация о скине","Fine Wrinkles":"Мелкие морщины","Eye Wrinkles":"Морщины под глазами","Deep Wrinkles":"Глубокие морщины","Dark Circle":"Темный круг","Eye Bag":"Сумка для глаз","Pores":"Поры","Pigment":"Пигмент","Redness":"Покраснение","Oiliness":"Маслянистость","Acnes":"Прыщи","Acne":"Прыщи","Skin Health":"Здоровье кожи","Instructions":"Инструкции","Get Ready to Start Skin Analysis":"Будьте готовы начать анализ кожи","Remove the glasses":"Снимите очки","Clean your face":"Очистите лицо","Be in the right light":"Будьте в правильном свете","Be neutral face and fix position":"Держите нейтральное лицо и зафиксируйте положение.","Get Started":"Начать","privacy.text":"Узнайте, как улучшить свою кожу с помощью правильных продуктов и процедур, адаптированных специально для вас. Загрузите свое селфи, чтобы получить персональные рекомендации, и будьте уверены, после анализа ваше изображение будет удалено.","See our":"Посмотрите наш","Privacy Policy":"политика конфиденциальности","for more information":"для получения дополнительной информации","your picture quality is blurry":"качество вашего изображения размытое","be wearing glasses":"носить очки","please remove them":"пожалуйста, удалите их","Improve photo quality":"Улучшите качество фотографий","We noticed you might":"Мы заметили, что вы можете","and":"и","for better results":"для лучших результатов","Tips for taking better selfies":"Советы, как делать лучшие селфи","Continue":"Продолжать","Generate routine for you":"Создайте для себя рутину","Re-take":"Пересдать","Get recommended products!":"Приобретайте рекомендованные товары!","Recommendation Products":"Рекомендованные продукты","Products That Just Work For you":"Продукты, которые просто работают на вас","My Skin Report":"Мой отчет о коже","Add to cart":"Добавить в корзину","Add again":"Добавить еще раз","Checkout":"Проверить","My Routines":"Мои рутины","Your":"Твой","Routine":"Рутина","Morning":"Утро","Night":"Ночь","Error":"Ошибка","The face is not visible in the picture":"На фото не видно лица","The input image is not suitable":"Входное изображение не подходит","An error occurred, please check again":"Произошла ошибка, пожалуйста, проверьте еще раз","Camera permission denied.":"Разрешение на использование камеры отклонено.","Unable to access the camera.":"Невозможно получить доступ к камере.","validation.blurry":"Ваше изображение размыто","validation.eyeGlass":"У тебя есть очки","validation.brightness":"Свет на вашем лице не подходит","validation.neutralFace":"Лицо не нейтральное (Вы можете улыбаться)","Image is not suitable":"Изображение не подходит","Check how you can improve your skin with the proper product and routine":"Узнайте, как вы можете улучшить свою кожу с помощью подходящего продукта и регулярного ухода.","There are no products to display":"Нет товаров для отображения","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Начните с умывания лица, чтобы удалить грязь, жир и примеси. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Используйте тоник, чтобы сбалансировать pH вашей кожи и удалить остатки.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Нанесите концентрированную сыворотку, направленную на решение конкретных проблем, например, осветление или омоложение. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Аккуратно промокните крем вокруг глаз, чтобы увлажнить и уменьшить отечность и темные круги.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Нанесите точечное лечение на проблемные участки, например прыщи или пятна. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Зафиксируйте увлажнение, нанеся увлажняющий крем, соответствующий вашему типу кожи. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Защитите свою кожу от вредных ультрафиолетовых лучей, используя солнцезащитный крем широкого спектра действия. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Нанесите легкое масло для лица, чтобы удержать влагу и придать коже сияющее сияние. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Используйте насыщенный ночной крем, чтобы восстановить кожу во время сна. ","Cleanser":"Очищающее средство","Toner":"Тонер","Serum":"сыворотка","Eye Cream":"Крем для глаз","Spot Treatment":"Точечное лечение","Moisturizer":"Увлажняющий крем","Sunscreen":"солнцезащитный крем","Face Oil":"Масло для лица","Night Cream":"Ночной крем","Add all to cart":"Добавить все в корзину","All Products":"Все продукты","validation.faceObstruction":"Вероятно, что-то есть на поверхности кожи лица (волосы или пирсинг)","Product added to cart":"Товар добавлен в корзину","products added to cart":"товары добавлены в корзину","You reached the limits of your plan":"Вы достигли пределов своего плана","Please renew your service for access":"Пожалуйста, обновите услугу для доступа","See the website’s privacy policy":"Ознакомьтесь с политикой конфиденциальности сайта."}')},pl:{translation:JSON.parse('{"Skin Analysis":"Analiza skóry","Look Straight":"Spójrz prosto","Face Position":"Pozycja twarzy","Lighting":"Oświetlenie","Good":"Dobry","Not Good":"Nie dobrze","Bad":"Zły","Fair":"Sprawiedliwy","Powered by":"Obsługiwane przez","Your distance is close to the camera":"Odległość od aparatu jest bliska","Keep your face inside the circle":"Trzymaj twarz wewnątrz okręgu","Please stand in front of the camera":"Proszę stanąć przed kamerą","There is more than one person in the picture":"Na zdjęciu jest więcej niż jedna osoba","Drag & Drop":"Przeciągnij i upuść","Or":"Lub","browse":"przeglądać","Supports: JPEG, JPG, PNG":"Obsługuje: JPEG, JPG, PNG","Release to Upload":"Zwolnij, aby przesłać","file not supported":"plik nie jest obsługiwany","Sending Facial Data...":"Wysyłanie danych twarzy...","Scanning Face...":"Skanowanie twarzy...","Analyzing Facial Attributes...":"Analiza cech twarzy...","AI Crafting Report..":"Raport o tworzeniu AI..","Skin Info":"Informacje o skórze","Fine Wrinkles":"Drobne zmarszczki","Eye Wrinkles":"Zmarszczki oczu","Deep Wrinkles":"Głębokie zmarszczki","Dark Circle":"Ciemny krąg","Eye Bag":"Torba na oczy","Pores":"Pory","Pigment":"Pigment","Redness":"Zaczerwienienie","Oiliness":"Wazeliniarstwo","Acnes":"Trądzik","Acne":"Trądzik","Skin Health":"Zdrowie skóry","Instructions":"Instrukcje","Get Ready to Start Skin Analysis":"Przygotuj się do rozpoczęcia analizy skóry","Remove the glasses":"Zdejmij okulary","Clean your face":"Oczyść twarz","Be in the right light":"Bądź we właściwym świetle","Be neutral face and fix position":"Zachowaj neutralną twarz i ustaloną pozycję","Get Started":"Rozpocznij","privacy.text":"Odkryj, jak poprawić swoją skórę za pomocą odpowiednich produktów i rutyny dostosowanej do Ciebie. Prześlij swoje selfie, aby uzyskać spersonalizowane rekomendacje i bądź pewien, że po analizie Twoje zdjęcie zostanie usunięte","See our":"Zobacz nasze","Privacy Policy":"Polityka prywatności","for more information":"aby uzyskać więcej informacji","your picture quality is blurry":"jakość obrazu jest niewyraźna","be wearing glasses":"nosić okulary","please remove them":"proszę je usunąć","Improve photo quality":"Popraw jakość zdjęć","We noticed you might":"Zauważyliśmy, że możesz","and":"I","for better results":"dla lepszych wyników","Tips for taking better selfies":"Wskazówki, jak robić lepsze selfie","Continue":"Kontynuować","Generate routine for you":"Wygeneruj dla siebie rutynę","Re-take":"Odzyskać","Get recommended products!":"Zdobądź polecane produkty!","Recommendation Products":"Produkty polecane","Products That Just Work For you":"Produkty, które po prostu działają dla Ciebie","My Skin Report":"Raport o mojej skórze","Add to cart":"Dodaj do koszyka","Add again":"Dodaj ponownie","Checkout":"Wymeldować się","My Routines":"Moje rutyny","Your":"Twój","Routine":"Rutyna","Morning":"Poranek","Night":"Noc","Error":"Błąd","The face is not visible in the picture":"Na zdjęciu nie widać twarzy","The input image is not suitable":"Obraz wejściowy nie jest odpowiedni","An error occurred, please check again":"Wystąpił błąd. Sprawdź ponownie","Camera permission denied.":"Odmowa dostępu do aparatu.","Unable to access the camera.":"Nie można uzyskać dostępu do kamery.","validation.blurry":"Twój obraz jest niewyraźny","validation.eyeGlass":"Masz okulary","validation.brightness":"Światło na twojej twarzy jest nieodpowiednie","validation.neutralFace":"Twarz nie jest neutralna (możesz się uśmiechać)","Image is not suitable":"Obraz nie jest odpowiedni","Check how you can improve your skin with the proper product and routine":"Sprawdź, jak możesz poprawić swoją skórę odpowiednim produktem i pielęgnacją","There are no products to display":"Brak produktów do wyświetlenia","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Zacznij od umycia twarzy, aby usunąć brud, olej i zanieczyszczenia. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Użyj toniku, aby zrównoważyć pH skóry i usunąć wszelkie pozostałości.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Zastosuj skoncentrowane serum ukierunkowane na konkretne problemy, takie jak rozjaśnianie lub przeciwdziałanie efektom starzenia. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Delikatnie wklep krem ​​pod oczy w okolicy oczu, aby nawilżyć i zmniejszyć obrzęki i cienie.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Zastosuj kurację punktową na obszarach problematycznych, takich jak trądzik lub przebarwienia. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Zatrzymaj nawilżenie, stosując krem ​​nawilżający odpowiedni do rodzaju skóry. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Chroń swoją skórę przed szkodliwym promieniowaniem UV stosując filtry przeciwsłoneczne o szerokim spektrum ochrony. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Nałóż lekki olejek do twarzy, aby zatrzymać wilgoć i nadać skórze promienny blask. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Stosuj bogaty krem ​​na noc, który pomoże zregenerować i zregenerować skórę podczas snu. ","Cleanser":"Środek czyszczący","Toner":"Toner","Serum":"Serum","Eye Cream":"Krem pod oczy","Spot Treatment":"Leczenie punktowe","Moisturizer":"Nawilżacz","Sunscreen":"Krem przeciwsłoneczny","Face Oil":"Olejek do twarzy","Night Cream":"Krem na noc","Add all to cart":"Dodaj wszystko do koszyka","All Products":"Wszystkie produkty","validation.faceObstruction":"Prawdopodobnie coś znajduje się na powierzchni skóry twarzy (włosy lub piercing)","Product added to cart":"Produkt dodany do koszyka","products added to cart":"produkty dodane do koszyka","You reached the limits of your plan":"Osiągnąłeś granice swojego planu","Please renew your service for access":"Aby uzyskać dostęp, odnów usługę","See the website’s privacy policy":"Zapoznaj się z polityką prywatności serwisu"}')},uk:{translation:JSON.parse('{"Skin Analysis":"Аналіз шкіри","Look Straight":"Дивіться прямо","Face Position":"Положення обличчя","Lighting":"Освітлення","Good":"добре","Not Good":"Не добре","Bad":"погано","Fair":"ярмарок","Powered by":"На основі","Your distance is close to the camera":"Ваша відстань близька до камери","Keep your face inside the circle":"Тримайте своє обличчя всередині кола","Please stand in front of the camera":"Будь ласка, встаньте перед камерою","There is more than one person in the picture":"На малюнку більше однієї людини","Drag & Drop":"Перетягніть і опустіть","Or":"Або","browse":"переглядати","Supports: JPEG, JPG, PNG":"Підтримує: JPEG, JPG, PNG","Release to Upload":"Відпустіть для завантаження","file not supported":"файл не підтримується","Sending Facial Data...":"Надсилання даних обличчя...","Scanning Face...":"Сканування обличчя...","Analyzing Facial Attributes...":"Аналіз особливостей обличчя...","AI Crafting Report..":"Звіт про створення AI..","Skin Info":"Інформація про шкіру","Fine Wrinkles":"Тонкі зморшки","Eye Wrinkles":"Зморшки під очима","Deep Wrinkles":"Глибокі зморшки","Dark Circle":"Темне коло","Eye Bag":"Очний мішок","Pores":"Пори","Pigment":"Пігмент","Redness":"Почервоніння","Oiliness":"жирність","Acnes":"акне","Acne":"акне","Skin Health":"Здоров\'я шкіри","Instructions":"Інструкції","Get Ready to Start Skin Analysis":"Підготуйтеся до аналізу шкіри","Remove the glasses":"Зняти окуляри","Clean your face":"Очистіть обличчя","Be in the right light":"Будьте в правильному світлі","Be neutral face and fix position":"Будьте нейтральним обличчям і зафіксуйте положення","Get Started":"Почніть роботу","privacy.text":"Дізнайтеся, як покращити свою шкіру за допомогою правильних продуктів і розпорядку, спеціально розробленого для вас. Завантажте своє селфі, щоб отримати персоналізовані рекомендації, і будьте певні, ваше зображення буде видалено після аналізу","See our":"Дивіться наш","Privacy Policy":"Політика конфіденційності","for more information":"для отримання додаткової інформації","your picture quality is blurry":"якість вашого зображення розмита","be wearing glasses":"бути в окулярах","please remove them":"будь ласка, видаліть їх","Improve photo quality":"Поліпшення якості фотографій","We noticed you might":"Ми помітили, що ви можете","and":"і","for better results":"для кращих результатів","Tips for taking better selfies":"Поради щодо кращих селфі","Continue":"Продовжити","Generate routine for you":"Створіть для себе розпорядок дня","Re-take":"Перезняти","Get recommended products!":"Отримайте рекомендовані продукти!","Recommendation Products":"Рекомендовані продукти","Products That Just Work For you":"Продукти, які працюють на вас","My Skin Report":"My Skin Report","Add to cart":"Додати в кошик","Add again":"Додайте знову","Checkout":"Оплата","My Routines":"Мої розпорядки","Your":"ваш","Routine":"Рутина","Morning":"Ранок","Night":"ніч","Error":"Помилка","The face is not visible in the picture":"На фото не видно обличчя","The input image is not suitable":"Вхідне зображення не підходить","An error occurred, please check again":"Сталася помилка, перевірте ще раз","Camera permission denied.":"Відмовлено в дозволі на камеру.","Unable to access the camera.":"Неможливо отримати доступ до камери.","validation.blurry":"Ваше зображення розмите","validation.eyeGlass":"У вас є окуляри","validation.brightness":"Світло на вашому обличчі не підходить","validation.neutralFace":"Обличчя не є нейтральним (Ви можете мати посмішку)","Image is not suitable":"Зображення не підходить","Check how you can improve your skin with the proper product and routine":"Перевірте, як ви можете покращити свою шкіру за допомогою відповідного продукту та процедури","There are no products to display":"Немає товарів для відображення","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Почніть з миття обличчя, щоб видалити бруд, жир і домішки. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Використовуйте тонік, щоб збалансувати рН шкіри та видалити будь-які залишки.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Нанесіть концентровану сироватку, спрямовану на конкретні проблеми, наприклад освітлення або запобігання старінню. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Обережно нанесіть крем на область навколо очей, щоб зволожити та зменшити набряки або темні кола.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Нанесіть точкове лікування на будь-які проблемні ділянки, такі як прищі або плями. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Зафіксуйте зволоження, застосовуючи зволожуючий крем, який підходить вашому типу шкіри. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Захистіть свою шкіру від шкідливого ультрафіолетового випромінювання, використовуючи сонцезахисний крем із широким спектром захисту. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Нанесіть легку олію для обличчя, щоб зберегти вологу та надати шкірі сяючого сяйва. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Використовуйте насичений нічний крем, щоб допомогти відновити шкіру під час сну. ","Cleanser":"Очищуючий засіб","Toner":"Тонер","Serum":"Сироватка","Eye Cream":"Крем для очей","Spot Treatment":"Лікування плям","Moisturizer":"Зволожуючий крем","Sunscreen":"Сонцезахисний крем","Face Oil":"Масло для обличчя","Night Cream":"Нічний крем","Add all to cart":"Додати все в кошик","All Products":"Всі продукти","validation.faceObstruction":"Ймовірно, є щось на поверхні шкіри обличчя (волосся або пірсинг)","Product added to cart":"Товар додано в кошик","products added to cart":"продуктів, доданих у кошик","You reached the limits of your plan":"Ви досягли межі свого плану","Please renew your service for access":"Щоб отримати доступ, поновіть послугу","See the website’s privacy policy":"Перегляньте політику конфіденційності веб-сайту"}')},fi:{translation:JSON.parse('{"Skin Analysis":"Ihon analyysi","Look Straight":"Katso Suoraan","Face Position":"Kasvojen asento","Lighting":"Valaistus","Good":"Hyvä","Not Good":"Ei hyvä","Bad":"Huono","Fair":"Reilu","Powered by":"Voimanlähteenä","Your distance is close to the camera":"Etäisyytesi on lähellä kameraa","Keep your face inside the circle":"Pidä kasvosi ympyrän sisällä","Please stand in front of the camera":"Ole hyvä ja seiso kameran edessä","There is more than one person in the picture":"Kuvassa on useampi kuin yksi henkilö","Drag & Drop":"Vedä ja pudota","Or":"Tai","browse":"selata","Supports: JPEG, JPG, PNG":"Tukee: JPEG, JPG, PNG","Release to Upload":"Vapauta lataukseen","file not supported":"tiedostoa ei tueta","Sending Facial Data...":"Lähetetään kasvotietoja...","Scanning Face...":"Skannataan kasvoja...","Analyzing Facial Attributes...":"Analysoidaan kasvojen ominaisuuksia...","AI Crafting Report..":"AI Crafting Report..","Skin Info":"Ihon tiedot","Fine Wrinkles":"Hienoja ryppyjä","Eye Wrinkles":"Silmärypyt","Deep Wrinkles":"Syviä ryppyjä","Dark Circle":"Pimeä ympyrä","Eye Bag":"Silmäpussi","Pores":"huokoset","Pigment":"Pigmentti","Redness":"Punoitus","Oiliness":"Öljyisyys","Acnes":"Akne","Acne":"Akne","Skin Health":"Ihon terveys","Instructions":"Ohjeet","Get Ready to Start Skin Analysis":"Valmistaudu aloittamaan ihoanalyysin","Remove the glasses":"Ota lasit pois","Clean your face":"Puhdista kasvosi","Be in the right light":"Ole oikeassa valossa","Be neutral face and fix position":"Ole neutraali kasvot ja kiinnitä asento","Get Started":"Aloita","privacy.text":"Tutustu siihen, kuinka voit parantaa ihoasi oikeilla tuotteilla ja rutiinilla, jotka on räätälöity sinulle. Lataa selfiesi saadaksesi henkilökohtaisia ​​suosituksia, ja voit olla varma, että kuvasi poistetaan analysoinnin jälkeen","See our":"Katso meidän","Privacy Policy":"Tietosuojakäytäntö","for more information":"saadaksesi lisätietoja","your picture quality is blurry":"kuvanlaatu on epäselvä","be wearing glasses":"käyttää silmälaseja","please remove them":"poista ne","Improve photo quality":"Paranna valokuvan laatua","We noticed you might":"Huomasimme, että saatat","and":"ja","for better results":"parempien tulosten saamiseksi","Tips for taking better selfies":"Vinkkejä parempien selfien ottamiseen","Continue":"Jatkaa","Generate routine for you":"Luo rutiineja sinulle","Re-take":"Ota uudelleen","Get recommended products!":"Hanki suositellut tuotteet!","Recommendation Products":"Suositustuotteet","Products That Just Work For you":"Tuotteet, jotka toimivat juuri sinulle","My Skin Report":"Oma ihoraportti","Add to cart":"Lisää ostoskoriin","Add again":"Lisää uudelleen","Checkout":"Kassalle","My Routines":"Omat rutiinit","Your":"Sinun","Routine":"Rutiini","Morning":"Aamu","Night":"Yö","Error":"Virhe","The face is not visible in the picture":"Kasvot eivät näy kuvassa","The input image is not suitable":"Syöttökuva ei ole sopiva","An error occurred, please check again":"Tapahtui virhe, tarkista uudelleen","Camera permission denied.":"Kameran lupa evätty.","Unable to access the camera.":"Kameraan ei pääse käsiksi.","validation.blurry":"Kuvasi on epäselvä","validation.eyeGlass":"Sinulla on lasit","validation.brightness":"Kasvojen valo ei ole sopiva","validation.neutralFace":"Kasvot eivät ole neutraalit (sinulla saattaa olla hymy)","Image is not suitable":"Kuva ei ole sopiva","Check how you can improve your skin with the proper product and routine":"Tarkista, kuinka voit parantaa ihoasi oikean tuotteen ja rutiinin avulla","There are no products to display":"Näytettäviä tuotteita ei ole","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Aloita pesemällä kasvosi poistaaksesi lian, öljyn ja epäpuhtaudet. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Käytä väriainetta tasapainottaaksesi ihosi pH-arvoa ja poistaaksesi mahdolliset jäämät.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Käytä tiivistettyä seerumia, joka kohdistuu tiettyihin huolenaiheisiin, kuten kirkastukseen tai ikääntymisen estoon. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Taputtele silmänympärysvoidetta varovasti silmänympärysiholle kosteuttaaksesi ja vähentääksesi turvotusta tai tummia silmänalusia.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Levitä pistehoitoa kaikille ongelma-alueille, kuten akneen tai epäpuhtauksiin. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Lukitse kosteus käyttämällä ihotyypillesi sopivaa kosteusvoidetta. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Suojaa ihoasi haitallisilta UV-säteiltä käyttämällä aurinkovoidetta, jossa on laajakirjoinen suoja. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Levitä kevyttä kasvoöljyä kosteuttaaksesi ja antaaksesi ihollesi hehkua. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Käytä täyteläistä yövoidetta korjaamaan ja elvyttämään ihoasi nukkuessasi. ","Cleanser":"Puhdistusaine","Toner":"Väriaine","Serum":"Seerumi","Eye Cream":"Silmänympärysvoide","Spot Treatment":"Pistehoito","Moisturizer":"Kosteusvoide","Sunscreen":"Aurinkosuojavoide","Face Oil":"Kasvoöljy","Night Cream":"Yövoide","Add all to cart":"Lisää kaikki ostoskoriin","All Products":"Kaikki tuotteet","validation.faceObstruction":"Kasvojen ihon pinnalla on luultavasti jotain (hiukset tai lävistykset)","Product added to cart":"Tuote lisätty ostoskoriin","products added to cart":"tuotteet lisätty ostoskoriin","You reached the limits of your plan":"Olet saavuttanut suunnitelmasi rajat","Please renew your service for access":"Uusi palvelusi pääsyä varten","See the website’s privacy policy":"Katso sivuston tietosuojakäytäntö"}')},ur:{translation:JSON.parse('{"Skin Analysis":"جلد کا تجزیہ","Look Straight":"سیدھا دیکھو","Face Position":"چہرے کی پوزیشن","Lighting":"لائٹنگ","Good":"اچھا","Not Good":"اچھا نہیں ہے۔","Bad":"برا","Fair":"میلہ","Powered by":"کی طرف سے طاقت","Your distance is close to the camera":"آپ کا فاصلہ کیمرے کے قریب ہے۔","Keep your face inside the circle":"اپنے چہرے کو دائرے کے اندر رکھیں","Please stand in front of the camera":"براہ کرم کیمرے کے سامنے کھڑے ہوں۔","There is more than one person in the picture":"تصویر میں ایک سے زیادہ لوگ ہیں۔","Drag & Drop":"گھسیٹیں اور چھوڑیں۔","Or":"یا","browse":"براؤز کریں","Supports: JPEG, JPG, PNG":"سپورٹ کرتا ہے: JPEG، JPG، PNG","Release to Upload":"اپ لوڈ کرنے کے لیے ریلیز کریں۔","file not supported":"فائل تعاون یافتہ نہیں ہے۔","Sending Facial Data...":"چہرے کا ڈیٹا بھیج رہا ہے...","Scanning Face...":"چہرہ سکین کیا جا رہا ہے...","Analyzing Facial Attributes...":"چہرے کے اوصاف کا تجزیہ...","AI Crafting Report..":"اے آئی کرافٹنگ رپورٹ ..","Skin Info":"جلد کی معلومات","Fine Wrinkles":"باریک جھریاں","Eye Wrinkles":"آنکھوں کی جھریاں","Deep Wrinkles":"گہری جھریاں","Dark Circle":"ڈارک سرکل","Eye Bag":"آئی بیگ","Pores":"pores","Pigment":"روغن","Redness":"سرخی","Oiliness":"تیل پن","Acnes":"مںہاسی","Acne":"مںہاسی","Skin Health":"جلد کی صحت","Instructions":"ہدایات","Get Ready to Start Skin Analysis":"جلد کا تجزیہ شروع کرنے کے لیے تیار ہو جائیں۔","Remove the glasses":"شیشے کو ہٹا دیں۔","Clean your face":"اپنا چہرہ صاف کریں۔","Be in the right light":"صحیح روشنی میں رہیں","Be neutral face and fix position":"غیر جانبدار چہرہ بنیں اور پوزیشن درست کریں۔","Get Started":"شروع کریں","privacy.text":"دریافت کریں کہ آپ کے لیے موزوں مصنوعات اور معمولات کے ساتھ اپنی جلد کو کیسے بہتر بنایا جائے۔ ذاتی سفارشات کے لیے اپنی سیلفی اپ لوڈ کریں، اور یقین رکھیں، تجزیہ کے بعد آپ کی تصویر حذف کر دی جائے گی۔","See our":"ہماری دیکھیں","Privacy Policy":"رازداری کی پالیسی","for more information":"مزید معلومات کے لیے","your picture quality is blurry":"آپ کی تصویر کا معیار دھندلا ہے۔","be wearing glasses":"عینک پہننا","please remove them":"براہ کرم انہیں ہٹا دیں۔","Improve photo quality":"تصویر کے معیار کو بہتر بنائیں","We noticed you might":"ہم نے محسوس کیا کہ آپ شاید","and":"اور","for better results":"بہتر نتائج کے لیے","Tips for taking better selfies":"بہتر سیلفی لینے کے لیے نکات","Continue":"جاری رکھیں","Generate routine for you":"آپ کے لیے روٹین تیار کریں۔","Re-take":"دوبارہ لینا","Get recommended products!":"تجویز کردہ مصنوعات حاصل کریں!","Recommendation Products":"سفارشی مصنوعات","Products That Just Work For you":"پروڈکٹس جو صرف آپ کے لیے کام کرتی ہیں۔","My Skin Report":"میری جلد کی رپورٹ","Add to cart":"ٹوکری میں شامل کریں۔","Add again":"دوبارہ شامل کریں۔","Checkout":"چیک آؤٹ","My Routines":"میرے معمولات","Your":"آپ کا","Routine":"روٹین","Morning":"صبح","Night":"رات","Error":"خرابی","The face is not visible in the picture":"تصویر میں چہرہ نظر نہیں آ رہا۔","The input image is not suitable":"ان پٹ امیج مناسب نہیں ہے۔","An error occurred, please check again":"ایک خرابی پیش آگئی، براہ کرم دوبارہ چیک کریں۔","Camera permission denied.":"کیمرے کی اجازت مسترد کر دی گئی۔","Unable to access the camera.":"کیمرے تک رسائی حاصل کرنے سے قاصر۔","validation.blurry":"آپ کی تصویر دھندلی ہے۔","validation.eyeGlass":"آپ کے پاس عینک ہے۔","validation.brightness":"آپ کے چہرے پر روشنی مناسب نہیں ہے۔","validation.neutralFace":"چہرہ غیر جانبدار نہیں ہے (آپ کی مسکراہٹ ہو سکتی ہے)","Image is not suitable":"تصویر مناسب نہیں ہے۔","Check how you can improve your skin with the proper product and routine":"چیک کریں کہ آپ مناسب پروڈکٹ اور روٹین کے ساتھ اپنی جلد کو کیسے بہتر بنا سکتے ہیں۔","There are no products to display":"ڈسپلے کرنے کے لیے کوئی پروڈکٹس نہیں ہیں۔","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"گندگی، تیل اور نجاست کو دور کرنے کے لیے اپنے چہرے کو دھو کر شروع کریں۔ ","Use a toner to balance your skin’s pH and remove any leftover residue.":"اپنی جلد کے پی ایچ کو متوازن کرنے کے لیے ٹونر کا استعمال کریں اور باقی بچ جانے والی چیزوں کو ہٹا دیں۔","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"مخصوص خدشات کو نشانہ بناتے ہوئے ایک مرتکز سیرم لگائیں، جیسے چمکانا یا اینٹی ایجنگ۔ ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"آنکھوں کے ارد گرد آنکھوں کی کریم کو آہستہ سے تھپتھپائیں تاکہ ہائیڈریٹ ہو اور سوجن یا سیاہ حلقوں کو کم کیا جا سکے۔","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"کسی بھی دشواری والے علاقوں پر اسپاٹ ٹریٹمنٹ لگائیں، جیسے ایکنی یا داغ۔ ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"آپ کی جلد کی قسم کے مطابق موئسچرائزر لگا کر ہائیڈریشن کو بند کریں۔ ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"براڈ اسپیکٹرم تحفظ کے ساتھ سن اسکرین کا استعمال کرکے اپنی جلد کو نقصان دہ UV شعاعوں سے بچائیں۔ ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"نمی میں سیل کرنے اور اپنی جلد کو چمکدار چمک دینے کے لیے ہلکا پھلکا چہرے کا تیل لگائیں۔ ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"سوتے وقت اپنی جلد کی مرمت اور بحالی میں مدد کے لیے بھرپور نائٹ کریم استعمال کریں۔ ","Cleanser":"صاف کرنے والا","Toner":"ٹونر","Serum":"سیرم","Eye Cream":"آئی کریم","Spot Treatment":"سپاٹ ٹریٹمنٹ","Moisturizer":"موئسچرائزر","Sunscreen":"سن اسکرین","Face Oil":"چہرے کا تیل","Night Cream":"نائٹ کریم","Add all to cart":"سب کو کارٹ میں شامل کریں۔","All Products":"تمام مصنوعات","validation.faceObstruction":"چہرے کی جلد کی سطح پر شاید کچھ ہے (بال یا چھیدنا)","Product added to cart":"پروڈکٹ کو کارٹ میں شامل کیا گیا۔","products added to cart":"مصنوعات کی ٹوکری میں شامل","You reached the limits of your plan":"آپ اپنے منصوبے کی حد تک پہنچ گئے۔","Please renew your service for access":"براہ کرم رسائی کے لیے اپنی سروس کی تجدید کریں۔","See the website’s privacy policy":"ویب سائٹ کی رازداری کی پالیسی دیکھیں"}')},sk:{translation:JSON.parse('{"Skin Analysis":"Analýza pokožky","Look Straight":"Pozrite sa rovno","Face Position":"Poloha tváre","Lighting":"Osvetlenie","Good":"Dobre","Not Good":"Nie je to dobré","Bad":"Zlé","Fair":"Spravodlivé","Powered by":"Poháňané","Your distance is close to the camera":"Vaša vzdialenosť je blízko fotoaparátu","Keep your face inside the circle":"Udržujte svoju tvár v kruhu","Please stand in front of the camera":"Postavte sa prosím pred kameru","There is more than one person in the picture":"Na obrázku je viac osôb","Drag & Drop":"Drag & Drop","Or":"Alebo","browse":"prehliadať","Supports: JPEG, JPG, PNG":"Podporuje: JPEG, JPG, PNG","Release to Upload":"Uvoľnite a nahrajte","file not supported":"súbor nie je podporovaný","Sending Facial Data...":"Odosielajú sa údaje o tvári...","Scanning Face...":"Skenuje sa tvár...","Analyzing Facial Attributes...":"Analýza vlastností tváre...","AI Crafting Report..":"Správa o tvorbe AI..","Skin Info":"Informácie o pokožke","Fine Wrinkles":"Jemné vrásky","Eye Wrinkles":"Očné vrásky","Deep Wrinkles":"Hlboké vrásky","Dark Circle":"Tmavý kruh","Eye Bag":"Taška na oči","Pores":"Póry","Pigment":"Pigment","Redness":"Sčervenanie","Oiliness":"Olejnatosť","Acnes":"Akné","Acne":"Akné","Skin Health":"Zdravie pokožky","Instructions":"Pokyny","Get Ready to Start Skin Analysis":"Pripravte sa na začatie analýzy pleti","Remove the glasses":"Odstráňte okuliare","Clean your face":"Vyčistite si tvár","Be in the right light":"Buďte v správnom svetle","Be neutral face and fix position":"Buďte neutrálna tvár a zafixujte si polohu","Get Started":"Začíname","privacy.text":"Zistite, ako zlepšiť svoju pleť pomocou správnych produktov a rutiny prispôsobenej pre vás. Nahrajte svoju selfie pre prispôsobené odporúčania a buďte si istí, že váš obrázok bude po analýze odstránený","See our":"Pozrite si naše","Privacy Policy":"Zásady ochrany osobných údajov","for more information":"pre viac informácií","your picture quality is blurry":"kvalita vášho obrazu je rozmazaná","be wearing glasses":"nosiť okuliare","please remove them":"prosím odstráňte ich","Improve photo quality":"Zlepšite kvalitu fotografie","We noticed you might":"Všimli sme si, že možno","and":"a","for better results":"pre lepšie výsledky","Tips for taking better selfies":"Tipy na lepšie selfie","Continue":"Pokračovať","Generate routine for you":"Vytvorte pre vás rutinu","Re-take":"Znova vziať","Get recommended products!":"Získajte odporúčané produkty!","Recommendation Products":"Odporúčané produkty","Products That Just Work For you":"Produkty, ktoré fungujú len pre vás","My Skin Report":"Správa o mojej pleti","Add to cart":"Pridať do košíka","Add again":"Pridajte znova","Checkout":"Pokladňa","My Routines":"Moje rutiny","Your":"Váš","Routine":"Rutina","Morning":"ráno","Night":"Noc","Error":"Chyba","The face is not visible in the picture":"Na obrázku nie je viditeľná tvár","The input image is not suitable":"Vstupný obrázok nie je vhodný","An error occurred, please check again":"Vyskytla sa chyba, skontrolujte to znova","Camera permission denied.":"Povolenie fotoaparátu bolo zamietnuté.","Unable to access the camera.":"Nedá sa získať prístup ku kamere.","validation.blurry":"Váš obrázok je rozmazaný","validation.eyeGlass":"Máš okuliare","validation.brightness":"Svetlo na vašej tvári nie je vhodné","validation.neutralFace":"Tvár nie je neutrálna (môžete mať úsmev)","Image is not suitable":"Obrázok nie je vhodný","Check how you can improve your skin with the proper product and routine":"Zistite, ako môžete zlepšiť svoju pleť pomocou správneho produktu a rutiny","There are no products to display":"Neexistujú žiadne produkty na zobrazenie","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Začnite umývaním tváre, aby ste odstránili špinu, olej a nečistoty. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Použite tonikum na vyrovnanie pH pokožky a odstránenie zvyškov.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Naneste koncentrované sérum zamerané na špecifické problémy, ako je rozjasnenie alebo anti-aging. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Jemne vmasírujte očný krém do okolia očí, aby ste hydratovali a zredukovali opuchy alebo tmavé kruhy.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Aplikujte bodové ošetrenie na akékoľvek problémové oblasti, ako je akné alebo škvrny. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Uzamknite hydratáciu nanesením hydratačného krému, ktorý vyhovuje vášmu typu pleti. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Chráňte svoju pokožku pred škodlivými UV lúčmi používaním opaľovacích krémov so širokospektrálnou ochranou. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Naneste ľahký pleťový olej na uzavretie vlhkosti a dodajte pokožke žiarivý lesk. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Použite bohatý nočný krém, ktorý vám pomôže opraviť a obnoviť pokožku počas spánku. ","Cleanser":"Čistiaci prostriedok","Toner":"Toner","Serum":"Sérum","Eye Cream":"Očný krém","Spot Treatment":"Bodové ošetrenie","Moisturizer":"Zvlhčovač","Sunscreen":"Opaľovací krém","Face Oil":"Olej na tvár","Night Cream":"Nočný krém","Add all to cart":"Pridajte všetko do košíka","All Products":"Všetky produkty","validation.faceObstruction":"Pravdepodobne je niečo na povrchu pokožky tváre (vlasy alebo piercing)","Product added to cart":"Produkt bol pridaný do košíka","products added to cart":"produkty pridané do košíka","You reached the limits of your plan":"Dosiahli ste hranice svojho plánu","Please renew your service for access":"Obnovte svoju službu pre prístup","See the website’s privacy policy":"Pozrite si zásady ochrany osobných údajov webovej stránky"}')},pt:{translation:JSON.parse('{"Skin Analysis":"Análise da Pele","Look Straight":"Olhe direito","Face Position":"Posição do rosto","Lighting":"Iluminação","Good":"Bom","Not Good":"Não é bom","Bad":"Ruim","Fair":"Justo","Powered by":"Distribuído por","Your distance is close to the camera":"Sua distância está perto da câmera","Keep your face inside the circle":"Mantenha seu rosto dentro do círculo","Please stand in front of the camera":"Por favor, fique na frente da câmera","There is more than one person in the picture":"Há mais de uma pessoa na foto","Drag & Drop":"Arrastar e soltar","Or":"Ou","browse":"navegar","Supports: JPEG, JPG, PNG":"Suporta: JPEG, JPG, PNG","Release to Upload":"Liberar para fazer upload","file not supported":"arquivo não suportado","Sending Facial Data...":"Enviando dados faciais...","Scanning Face...":"Digitalizando rosto...","Analyzing Facial Attributes...":"Analisando Atributos Faciais...","AI Crafting Report..":"Relatório de criação de IA.","Skin Info":"Informações da pele","Fine Wrinkles":"Rugas Finas","Eye Wrinkles":"Rugas nos olhos","Deep Wrinkles":"Rugas profundas","Dark Circle":"Círculo Negro","Eye Bag":"Bolsa para os olhos","Pores":"Poros","Pigment":"Pigmento","Redness":"Vermelhidão","Oiliness":"Oleosidade","Acnes":"Acne","Acne":"Acne","Skin Health":"Saúde da pele","Instructions":"Instruções","Get Ready to Start Skin Analysis":"Prepare-se para iniciar a análise da pele","Remove the glasses":"Retire os óculos","Clean your face":"Limpe seu rosto","Be in the right light":"Esteja na luz certa","Be neutral face and fix position":"Seja neutro e fixe a posição","Get Started":"Comece","privacy.text":"Descubra como melhorar a sua pele com os produtos certos e uma rotina personalizada para você. Envie sua selfie para recomendações personalizadas e fique tranquilo, sua imagem será excluída após análise","See our":"Veja nosso","Privacy Policy":"política de Privacidade","for more information":"para mais informações","your picture quality is blurry":"a qualidade da sua imagem está desfocada","be wearing glasses":"estar usando óculos","please remove them":"por favor remova-os","Improve photo quality":"Melhorar a qualidade da foto","We noticed you might":"Notamos que você pode","and":"e","for better results":"para melhores resultados","Tips for taking better selfies":"Dicas para tirar selfies melhores","Continue":"Continuar","Generate routine for you":"Gere rotina para você","Re-take":"Retomar","Get recommended products!":"Obtenha produtos recomendados!","Recommendation Products":"Produtos de recomendação","Products That Just Work For you":"Produtos que funcionam para você","My Skin Report":"Meu relatório de pele","Add to cart":"Adicionar ao carrinho","Add again":"Adicionar novamente","Checkout":"Confira","My Routines":"Minhas rotinas","Your":"Seu","Routine":"Rotina","Morning":"Manhã","Night":"Noite","Error":"Erro","The face is not visible in the picture":"O rosto não está visível na foto","The input image is not suitable":"A imagem de entrada não é adequada","An error occurred, please check again":"Ocorreu um erro, verifique novamente","Camera permission denied.":"Permissão da câmera negada.","Unable to access the camera.":"Não é possível acessar a câmera.","validation.blurry":"Sua imagem está borrada","validation.eyeGlass":"Você tem óculos","validation.brightness":"A luz em seu rosto não é adequada","validation.neutralFace":"O rosto não é neutro (você pode sorrir)","Image is not suitable":"A imagem não é adequada","Check how you can improve your skin with the proper product and routine":"Veja como você pode melhorar sua pele com o produto e rotina adequados","There are no products to display":"Não há produtos para exibir","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Comece lavando o rosto para remover sujeira, óleo e impurezas. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Use um toner para equilibrar o pH da pele e remover qualquer resíduo restante.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Aplique um sérum concentrado direcionado a preocupações específicas, como clareador ou antienvelhecimento. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Aplique suavemente o creme para os olhos ao redor da área dos olhos para hidratar e reduzir o inchaço ou as olheiras.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Aplique tratamento local em qualquer área problemática, como acne ou manchas. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Mantenha a hidratação aplicando um hidratante adequado ao seu tipo de pele. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Proteja sua pele dos raios UV prejudiciais usando protetor solar com proteção de amplo espectro. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Aplique um óleo facial leve para reter a umidade e dar à pele um brilho radiante. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Use um creme noturno rico para ajudar a reparar e restaurar a pele enquanto você dorme. ","Cleanser":"Limpador","Toner":"Toner","Serum":"Sérum","Eye Cream":"Creme para os olhos","Spot Treatment":"Tratamento local","Moisturizer":"Hidratante","Sunscreen":"Protetor solar","Face Oil":"Óleo facial","Night Cream":"Creme Noturno","Add all to cart":"Adicionar tudo ao carrinho","All Products":"Todos os produtos","validation.faceObstruction":"Provavelmente há algo na superfície da pele do rosto (cabelo ou piercing)","Product added to cart":"Produto adicionado ao carrinho","products added to cart":"produtos adicionados ao carrinho","You reached the limits of your plan":"Você atingiu os limites do seu plano","Please renew your service for access":"Por favor, renove seu serviço para acesso","See the website’s privacy policy":"Veja a política de privacidade do site"}')},it:{translation:JSON.parse('{"Skin Analysis":"Analisi della pelle","Look Straight":"Guarda dritto","Face Position":"Posizione del viso","Lighting":"Illuminazione","Good":"Bene","Not Good":"Non bene","Bad":"Cattivo","Fair":"Giusto","Powered by":"Offerto da","Your distance is close to the camera":"La tua distanza è vicina alla fotocamera","Keep your face inside the circle":"Mantieni il viso all\'interno del cerchio","Please stand in front of the camera":"Per favore, posizionati davanti alla telecamera","There is more than one person in the picture":"C\'è più di una persona nella foto","Drag & Drop":"Trascina e rilascia","Or":"O","browse":"sfogliare","Supports: JPEG, JPG, PNG":"Supporta: JPEG, JPG, PNG","Release to Upload":"Rilascia per caricare","file not supported":"file non supportato","Sending Facial Data...":"Invio dati facciali...","Scanning Face...":"Scansione volto...","Analyzing Facial Attributes...":"Analisi degli attributi facciali...","AI Crafting Report..":"Rapporto sulla creazione dell\'IA..","Skin Info":"Informazioni sulla pelle","Fine Wrinkles":"Rughe sottili","Eye Wrinkles":"Rughe degli occhi","Deep Wrinkles":"Rughe profonde","Dark Circle":"Cerchio scuro","Eye Bag":"Borsa per gli occhi","Pores":"Pori","Pigment":"Pigmento","Redness":"Arrossamento","Oiliness":"Oleosità","Acnes":"Acne","Acne":"Acne","Skin Health":"Salute della pelle","Instructions":"Istruzioni","Get Ready to Start Skin Analysis":"Preparati a iniziare l\'analisi della pelle","Remove the glasses":"Togliere gli occhiali","Clean your face":"Pulisci il viso","Be in the right light":"Sii nella giusta luce","Be neutral face and fix position":"Sii neutrale e fissa la posizione","Get Started":"Inizia","privacy.text":"Scopri come valorizzare la tua pelle con i prodotti giusti e la routine su misura per te. Carica il tuo selfie per consigli personalizzati e stai certo che la tua immagine verrà eliminata dopo l\'analisi","See our":"Vedi il nostro","Privacy Policy":"politica sulla riservatezza","for more information":"per ulteriori informazioni","your picture quality is blurry":"la qualità dell\'immagine è sfocata","be wearing glasses":"portare gli occhiali","please remove them":"per favore rimuovili","Improve photo quality":"Migliora la qualità delle foto","We noticed you might":"Abbiamo notato che potresti","and":"E","for better results":"per risultati migliori","Tips for taking better selfies":"Suggerimenti per scattare selfie migliori","Continue":"Continuare","Generate routine for you":"Genera routine per te","Re-take":"Riprendere","Get recommended products!":"Ottieni prodotti consigliati!","Recommendation Products":"Prodotti consigliati","Products That Just Work For you":"Prodotti che funzionano proprio per te","My Skin Report":"Il mio resoconto sulla pelle","Add to cart":"Aggiungi al carrello","Add again":"Aggiungi di nuovo","Checkout":"Guardare","My Routines":"Le mie routine","Your":"Tuo","Routine":"Routine","Morning":"Mattina","Night":"Notte","Error":"Errore","The face is not visible in the picture":"Il volto non è visibile nella foto","The input image is not suitable":"L\'immagine in ingresso non è adatta","An error occurred, please check again":"Si è verificato un errore, controlla di nuovo","Camera permission denied.":"Autorizzazione della fotocamera negata.","Unable to access the camera.":"Impossibile accedere alla fotocamera.","validation.blurry":"La tua immagine è sfocata","validation.eyeGlass":"Hai gli occhiali","validation.brightness":"La luce sul tuo viso non è adatta","validation.neutralFace":"Il viso non è neutro (potresti avere un sorriso)","Image is not suitable":"L\'immagine non è adatta","Check how you can improve your skin with the proper product and routine":"Scopri come puoi migliorare la tua pelle con il prodotto e la routine adeguati","There are no products to display":"Non ci sono prodotti da visualizzare","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Inizia lavando il viso per rimuovere sporco, olio e impurità. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Usa un tonico per bilanciare il pH della pelle e rimuovere eventuali residui rimasti.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Applica un siero concentrato mirato a problemi specifici, come schiarente o antietà. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Picchietta delicatamente la crema per gli occhi intorno alla zona degli occhi per idratare e ridurre il gonfiore e le occhiaie.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Applicare un trattamento localizzato su tutte le aree problematiche, come l\'acne o le imperfezioni. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Mantieni l\'idratazione applicando una crema idratante adatta al tuo tipo di pelle. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Proteggi la tua pelle dai dannosi raggi UV utilizzando creme solari con protezione ad ampio spettro. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Applica un olio viso leggero per trattenere l\'umidità e donare alla pelle una luminosità radiosa. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Usa una ricca crema da notte per aiutare a riparare e ripristinare la pelle mentre dormi. ","Cleanser":"Detergente","Toner":"Tonico","Serum":"Siero","Eye Cream":"Crema per gli occhi","Spot Treatment":"Trattamento spot","Moisturizer":"Crema idratante","Sunscreen":"Protezione solare","Face Oil":"Olio per il viso","Night Cream":"Crema da notte","Add all to cart":"Aggiungi tutto al carrello","All Products":"Tutti i prodotti","validation.faceObstruction":"Probabilmente c\'è qualcosa sulla superficie della pelle del viso (peli o piercing)","Product added to cart":"Prodotto aggiunto al carrello","products added to cart":"prodotti aggiunti al carrello","You reached the limits of your plan":"Hai raggiunto i limiti del tuo piano","Please renew your service for access":"Si prega di rinnovare il servizio per l\'accesso","See the website’s privacy policy":"Consulta la privacy policy del sito"}')},sr:{translation:JSON.parse('{"Skin Analysis":"Анализа коже","Look Straight":"Лоок Страигхт","Face Position":"Фаце Поситион","Lighting":"Осветљење","Good":"Добро","Not Good":"Није добро","Bad":"Лоше","Fair":"Сајам","Powered by":"Поверед би","Your distance is close to the camera":"Ваша удаљеност је близу камере","Keep your face inside the circle":"Држите лице унутар круга","Please stand in front of the camera":"Молим вас станите испред камере","There is more than one person in the picture":"На слици је више особа","Drag & Drop":"Превуците и испустите","Or":"Ор","browse":"прегледати","Supports: JPEG, JPG, PNG":"Подржава: ЈПЕГ, ЈПГ, ПНГ","Release to Upload":"Отпустите за отпремање","file not supported":"датотека није подржана","Sending Facial Data...":"Слање података о лицу...","Scanning Face...":"Скенирање лица...","Analyzing Facial Attributes...":"Анализирање атрибута лица...","AI Crafting Report..":"Извештај о изради вештачке интелигенције..","Skin Info":"Информације о кожи","Fine Wrinkles":"Фине Вринклес","Eye Wrinkles":"Боре око очију","Deep Wrinkles":"Дубоке боре","Dark Circle":"Дарк Цирцле","Eye Bag":"Еие Баг","Pores":"Поре","Pigment":"Пигмент","Redness":"Црвенило","Oiliness":"Уљеност","Acnes":"Акне","Acne":"Акне","Skin Health":"Здравље коже","Instructions":"Упутства","Get Ready to Start Skin Analysis":"Припремите се за почетак анализе коже","Remove the glasses":"Скините наочаре","Clean your face":"Очистите лице","Be in the right light":"Будите у правом светлу","Be neutral face and fix position":"Будите неутрални и поправите положај","Get Started":"Започните","privacy.text":"Откријте како да побољшате своју кожу са правим производима и рутином прилагођеном вама. Отпремите свој селфи за персонализоване препоруке и будите сигурни да ће ваша слика бити избрисана након анализе","See our":"Погледајте наше","Privacy Policy":"Политика приватности","for more information":"за више информација","your picture quality is blurry":"квалитет ваше слике је мутан","be wearing glasses":"да носи наочаре","please remove them":"молимо вас да их уклоните","Improve photo quality":"Побољшајте квалитет фотографија","We noticed you might":"Приметили смо да бисте могли","and":"и","for better results":"за боље резултате","Tips for taking better selfies":"Савети за прављење бољих селфија","Continue":"Настави","Generate routine for you":"Генеришите рутину за вас","Re-take":"Поново узми","Get recommended products!":"Набавите препоручене производе!","Recommendation Products":"Препоручени производи","Products That Just Work For you":"Производи који раде за вас","My Skin Report":"Мој извештај о кожи","Add to cart":"Додај у корпу","Add again":"Додајте поново","Checkout":"Цхецкоут","My Routines":"Моје рутине","Your":"Твоје","Routine":"Рутина","Morning":"Јутро","Night":"Ноћ","Error":"Грешка","The face is not visible in the picture":"Лице се не види на слици","The input image is not suitable":"Улазна слика није прикладна","An error occurred, please check again":"Дошло је до грешке, проверите поново","Camera permission denied.":"Дозвола за камеру је одбијена.","Unable to access the camera.":"Није могуће приступити камери.","validation.blurry":"Ваша слика је мутна","validation.eyeGlass":"Имаш наочаре","validation.brightness":"Светло на вашем лицу није прикладно","validation.neutralFace":"Лице није неутрално (можда имате осмех)","Image is not suitable":"Слика није прикладна","Check how you can improve your skin with the proper product and routine":"Проверите како можете побољшати своју кожу одговарајућим производом и рутином","There are no products to display":"Нема производа за приказ","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Почните прањем лица да бисте уклонили прљавштину, уље и нечистоће. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Користите тоник да уравнотежите пХ ваше коже и уклоните све остатке.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Нанесите концентровани серум који циља на специфичне проблеме, као што је посветљивање или против старења. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Нежно утапкајте крему око очију да бисте хидрирали и смањили натеченост или тамне кругове.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Нанесите третман тачака на било која проблематична подручја, као што су акне или флеке. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Закључајте хидратацију наношењем хидратантне креме која одговара вашем типу коже. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Заштитите своју кожу од штетних УВ зрака коришћењем креме за сунчање са заштитом широког спектра. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Нанесите лагано уље за лице како бисте запечатили влагу и дали својој кожи блистав сјај. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Користите богату ноћну крему која ће вам помоћи да поправите и обновите кожу док спавате. ","Cleanser":"Средство за чишћење","Toner":"Тонер","Serum":"Серум","Eye Cream":"Еие Цреам","Spot Treatment":"Спот Треатмент","Moisturizer":"Моистуризер","Sunscreen":"Крема за сунчање","Face Oil":"Уље за лице","Night Cream":"Ноћна крема","Add all to cart":"Додај све у корпу","All Products":"Сви производи","validation.faceObstruction":"Вероватно постоји нешто на површини коже лица (длака или пирсинг)","Product added to cart":"Производ је додат у корпу","products added to cart":"производи додати у корпу","You reached the limits of your plan":"Досегли сте границе свог плана","Please renew your service for access":"Молимо вас да обновите услугу за приступ","See the website’s privacy policy":"Погледајте политику приватности веб локације"}')},hr:{translation:JSON.parse('{"Skin Analysis":"Analiza kože","Look Straight":"Gledaj ravno","Face Position":"Položaj lica","Lighting":"Rasvjeta","Good":"Dobro","Not Good":"Nije dobro","Bad":"Loš","Fair":"Fer","Powered by":"Powered by","Your distance is close to the camera":"Vaša udaljenost je blizu kamere","Keep your face inside the circle":"Držite lice unutar kruga","Please stand in front of the camera":"Molim vas, stanite ispred kamere","There is more than one person in the picture":"Na slici je više od jedne osobe","Drag & Drop":"Povuci i ispusti","Or":"Ili","browse":"pregledavati","Supports: JPEG, JPG, PNG":"Podržava: JPEG, JPG, PNG","Release to Upload":"Otpustite za prijenos","file not supported":"datoteka nije podržana","Sending Facial Data...":"Slanje podataka o licu...","Scanning Face...":"Skeniranje lica...","Analyzing Facial Attributes...":"Analiza atributa lica...","AI Crafting Report..":"Izvješće o AI izradi..","Skin Info":"Informacije o koži","Fine Wrinkles":"Fine bore","Eye Wrinkles":"Bore oko očiju","Deep Wrinkles":"Duboke bore","Dark Circle":"tamni krug","Eye Bag":"Vrećica za oči","Pores":"Pore","Pigment":"Pigment","Redness":"Crvenilo","Oiliness":"Slatkorječivost","Acnes":"Akne","Acne":"Akne","Skin Health":"Zdravlje kože","Instructions":"upute","Get Ready to Start Skin Analysis":"Pripremite se za početak analize kože","Remove the glasses":"Uklonite naočale","Clean your face":"Očistite lice","Be in the right light":"Budite u pravom svjetlu","Be neutral face and fix position":"Budite neutralnog lica i popravite položaj","Get Started":"Započnite","privacy.text":"Otkrijte kako poboljšati svoju kožu pravim proizvodima i rutinom prilagođenom vama. Učitajte svoj selfie za personalizirane preporuke i budite uvjereni da će vaša slika biti izbrisana nakon analize","See our":"Pogledajte naše","Privacy Policy":"Politika privatnosti","for more information":"za više informacija","your picture quality is blurry":"kvaliteta vaše slike je mutna","be wearing glasses":"nositi naočale","please remove them":"molim vas uklonite ih","Improve photo quality":"Poboljšajte kvalitetu fotografije","We noticed you might":"Primijetili smo da možda","and":"i","for better results":"za bolje rezultate","Tips for taking better selfies":"Savjeti za snimanje boljih selfija","Continue":"Nastaviti","Generate routine for you":"Stvorite rutinu za vas","Re-take":"Ponovno snimanje","Get recommended products!":"Nabavite preporučene proizvode!","Recommendation Products":"Preporučeni proizvodi","Products That Just Work For you":"Proizvodi koji rade samo za vas","My Skin Report":"Moje izvješće o koži","Add to cart":"Dodaj u košaricu","Add again":"Dodajte ponovno","Checkout":"Odjava","My Routines":"Moje rutine","Your":"Vaš","Routine":"Rutina","Morning":"Jutro","Night":"Noć","Error":"Greška","The face is not visible in the picture":"Lice se ne vidi na slici","The input image is not suitable":"Ulazna slika nije prikladna","An error occurred, please check again":"Došlo je do pogreške, provjerite ponovno","Camera permission denied.":"Dopuštenje kamere odbijeno.","Unable to access the camera.":"Nije moguće pristupiti kameri.","validation.blurry":"Vaša slika je mutna","validation.eyeGlass":"Imaš naočale","validation.brightness":"Svjetlo na vašem licu nije prikladno","validation.neutralFace":"Lice nije neutralno (Možda imate osmijeh)","Image is not suitable":"Slika nije prikladna","Check how you can improve your skin with the proper product and routine":"Provjerite kako možete poboljšati svoju kožu uz pravilan proizvod i rutinu","There are no products to display":"Nema proizvoda za prikaz","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Započnite pranjem lica kako biste uklonili prljavštinu, masnoću i nečistoće. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Koristite tonik kako biste uravnotežili pH svoje kože i uklonili sve ostatke.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Nanesite koncentrirani serum za određene probleme, poput posvjetljivanja ili sprječavanja starenja. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Nježno utapkajte kremu za područje oko očiju kako biste hidratizirali i smanjili natečenost ili podočnjake.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Nanesite tretman na bilo koje problematično područje, poput akni ili mrlja. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Zadržite hidrataciju nanošenjem hidratantne kreme koja odgovara vašem tipu kože. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Zaštitite svoju kožu od štetnih UV zraka korištenjem krema za sunčanje sa zaštitom širokog spektra. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Nanesite lagano ulje za lice kako biste zadržali vlagu i dali svojoj koži blistav sjaj. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Koristite bogatu noćnu kremu za oporavak i obnavljanje kože dok spavate. ","Cleanser":"Sredstvo za čišćenje","Toner":"Toner","Serum":"Serum","Eye Cream":"Krema za oči","Spot Treatment":"Liječenje mrlja","Moisturizer":"Ovlaživač","Sunscreen":"Krema za sunčanje","Face Oil":"Ulje za lice","Night Cream":"Noćna krema","Add all to cart":"Dodaj sve u košaricu","All Products":"Svi proizvodi","validation.faceObstruction":"Vjerojatno postoji nešto na površini kože lica (dlake ili piercing)","Product added to cart":"Proizvod dodan u košaricu","products added to cart":"proizvoda dodanih u košaricu","You reached the limits of your plan":"Dosegli ste granice svog plana","Please renew your service for access":"Obnovite uslugu za pristup","See the website’s privacy policy":"Pogledajte politiku privatnosti web stranice"}')},tl:{translation:JSON.parse('{"Skin Analysis":"Pagsusuri sa Balat","Look Straight":"Tumingin ng Diretso","Face Position":"Posisyon ng Mukha","Lighting":"Pag-iilaw","Good":"Mabuti","Not Good":"Hindi Maganda","Bad":"Masama","Fair":"Patas","Powered by":"Pinapatakbo ng","Your distance is close to the camera":"Ang iyong distansya ay malapit sa camera","Keep your face inside the circle":"Panatilihin ang iyong mukha sa loob ng bilog","Please stand in front of the camera":"Mangyaring tumayo sa harap ng camera","There is more than one person in the picture":"Mayroong higit sa isang tao sa larawan","Drag & Drop":"I-drag at I-drop","Or":"O kaya","browse":"mag-browse","Supports: JPEG, JPG, PNG":"Sinusuportahan ang: JPEG, JPG, PNG","Release to Upload":"I-release sa Upload","file not supported":"hindi suportado ang file","Sending Facial Data...":"Nagpapadala ng Data sa Mukha...","Scanning Face...":"Ini-scan ang Mukha...","Analyzing Facial Attributes...":"Pagsusuri sa Mga Katangian ng Mukha...","AI Crafting Report..":"Ulat sa AI Crafting..","Skin Info":"Impormasyon sa Balat","Fine Wrinkles":"Mga Pinong Wrinkles","Eye Wrinkles":"Mga Lukot sa Mata","Deep Wrinkles":"Malalim na Wrinkles","Dark Circle":"Madilim na Bilog","Eye Bag":"Eye Bag","Pores":"Mga pores","Pigment":"Pigment","Redness":"Pamumula","Oiliness":"Kalangisan","Acnes":"Acne","Acne":"Acne","Skin Health":"Kalusugan ng Balat","Instructions":"Mga tagubilin","Get Ready to Start Skin Analysis":"Maghanda upang Simulan ang Pagsusuri ng Balat","Remove the glasses":"Tanggalin ang salamin","Clean your face":"Linisin ang iyong mukha","Be in the right light":"Maging nasa tamang liwanag","Be neutral face and fix position":"Maging neutral ang mukha at ayusin ang posisyon","Get Started":"Magsimula","privacy.text":"Tuklasin kung paano pagandahin ang iyong balat gamit ang mga tamang produkto at routine na iniakma para sa iyo. I-upload ang iyong selfie para sa mga personalized na rekomendasyon, at makatitiyak, ang iyong larawan ay tatanggalin pagkatapos ng pagsusuri","See our":"Tingnan ang aming","Privacy Policy":"Patakaran sa Privacy","for more information":"para sa karagdagang impormasyon","your picture quality is blurry":"malabo ang kalidad ng iyong larawan","be wearing glasses":"magsuot ng salamin","please remove them":"mangyaring alisin ang mga ito","Improve photo quality":"Pagbutihin ang kalidad ng larawan","We noticed you might":"Napansin namin na baka","and":"at","for better results":"para sa mas magandang resulta","Tips for taking better selfies":"Mga tip para sa pagkuha ng mas mahusay na mga selfie","Continue":"Magpatuloy","Generate routine for you":"Bumuo ng routine para sa iyo","Re-take":"Muling kunin","Get recommended products!":"Kumuha ng mga inirerekomendang produkto!","Recommendation Products":"Mga Produktong Rekomendasyon","Products That Just Work For you":"Mga Produktong Gumagana Lang Para sa Iyo","My Skin Report":"Ulat sa Balat Ko","Add to cart":"Idagdag sa cart","Add again":"Idagdag muli","Checkout":"Checkout","My Routines":"Aking Mga Gawain","Your":"Iyong","Routine":"nakagawian","Morning":"Umaga","Night":"Gabi","Error":"Error","The face is not visible in the picture":"Ang mukha ay hindi nakikita sa larawan","The input image is not suitable":"Ang input na imahe ay hindi angkop","An error occurred, please check again":"May naganap na error, pakisuri muli","Camera permission denied.":"Tinanggihan ang pahintulot sa camera.","Unable to access the camera.":"Hindi ma-access ang camera.","validation.blurry":"Malabo ang iyong larawan","validation.eyeGlass":"May salamin ka","validation.brightness":"Ang liwanag sa iyong mukha ay hindi angkop","validation.neutralFace":"Hindi neutral ang mukha (Maaaring may ngiti ka)","Image is not suitable":"Hindi angkop ang larawan","Check how you can improve your skin with the proper product and routine":"Suriin kung paano mo mapapabuti ang iyong balat sa tamang produkto at gawain","There are no products to display":"Walang mga produktong ipapakita","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Magsimula sa pamamagitan ng paghuhugas ng iyong mukha upang alisin ang dumi, langis, at mga dumi. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Gumamit ng toner para balansehin ang pH ng iyong balat at alisin ang anumang natitirang nalalabi.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Mag-apply ng concentrated serum na nagta-target ng mga partikular na alalahanin, tulad ng pagpapaputi o anti-aging. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Dahan-dahang i-pat ang eye cream sa paligid ng bahagi ng mata upang mag-hydrate at mabawasan ang puffiness o dark circles.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Mag-apply ng spot treatment sa anumang lugar na may problema, tulad ng acne o blemishes. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"I-lock ang hydration sa pamamagitan ng paglalagay ng moisturizer na angkop sa uri ng iyong balat. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Protektahan ang iyong balat mula sa mapaminsalang UV rays sa pamamagitan ng paggamit ng sunscreen na may malawak na spectrum na proteksyon. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Mag-apply ng magaan na face oil upang ma-seal ang moisture at bigyan ang iyong balat ng maningning na glow. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Gumamit ng masaganang night cream para makatulong sa pag-aayos at pagpapanumbalik ng iyong balat habang natutulog ka. ","Cleanser":"Panlinis","Toner":"Toner","Serum":"Serum","Eye Cream":"Cream sa Mata","Spot Treatment":"Paggamot sa Spot","Moisturizer":"Moisturizer","Sunscreen":"Sunscreen","Face Oil":"Langis sa Mukha","Night Cream":"Cream sa Gabi","Add all to cart":"Idagdag ang lahat sa cart","All Products":"Lahat ng Produkto","validation.faceObstruction":"Marahil ay mayroong isang bagay sa ibabaw ng balat ng mukha (buhok o butas)","Product added to cart":"Idinagdag ang produkto sa cart","products added to cart":"mga produktong idinagdag sa cart","You reached the limits of your plan":"Naabot mo ang mga limitasyon ng iyong plano","Please renew your service for access":"Mangyaring i-renew ang iyong serbisyo para sa pag-access","See the website’s privacy policy":"Tingnan ang patakaran sa privacy ng website"}')},et:{translation:JSON.parse('{"Skin Analysis":"Naha analüüs","Look Straight":"Vaata otse","Face Position":"Näo asend","Lighting":"Valgustus","Good":"Hea","Not Good":"Pole hea","Bad":"Halb","Fair":"Õiglane","Powered by":"Toiteallikaks","Your distance is close to the camera":"Teie kaugus on kaamerale lähedal","Keep your face inside the circle":"Hoidke oma nägu ringi sees","Please stand in front of the camera":"Palun seisa kaamera ees","There is more than one person in the picture":"Pildil on rohkem kui üks inimene","Drag & Drop":"Drag & Drop","Or":"Või","browse":"sirvida","Supports: JPEG, JPG, PNG":"Toetab: JPEG, JPG, PNG","Release to Upload":"Vabastage üleslaadimiseks","file not supported":"faili ei toetata","Sending Facial Data...":"Näoandmete saatmine...","Scanning Face...":"Näo skannimine...","Analyzing Facial Attributes...":"Näo omaduste analüüsimine...","AI Crafting Report..":"AI meisterdamisaruanne..","Skin Info":"Naha teave","Fine Wrinkles":"Peened kortsud","Eye Wrinkles":"Silma kortsud","Deep Wrinkles":"Sügavad kortsud","Dark Circle":"Tume ring","Eye Bag":"Silma kott","Pores":"Poorid","Pigment":"Pigment","Redness":"Punetus","Oiliness":"Õlisust","Acnes":"Akne","Acne":"Akne","Skin Health":"Naha tervis","Instructions":"Juhised","Get Ready to Start Skin Analysis":"Olge valmis alustama nahaanalüüsi","Remove the glasses":"Eemaldage prillid","Clean your face":"Puhastage oma nägu","Be in the right light":"Olge õiges valguses","Be neutral face and fix position":"Olge neutraalne nägu ja fikseerige asend","Get Started":"Alustage","privacy.text":"Avastage, kuidas parandada oma nahka teile kohandatud õigete toodete ja rutiiniga. Isikupärastatud soovituste saamiseks laadige oma selfie üles ja võite olla kindel, teie pilt kustutatakse pärast analüüsi","See our":"Vaadake meie","Privacy Policy":"Privaatsuspoliitika","for more information":"lisateabe saamiseks","your picture quality is blurry":"teie pildikvaliteet on udune","be wearing glasses":"prille kandma","please remove them":"palun eemaldage need","Improve photo quality":"Parandage foto kvaliteeti","We noticed you might":"Märkasime, et võite","and":"ja","for better results":"paremate tulemuste saamiseks","Tips for taking better selfies":"Näpunäiteid paremate selfide tegemiseks","Continue":"Jätka","Generate routine for you":"Looge teile rutiin","Re-take":"Võtke uuesti","Get recommended products!":"Hankige soovitatud tooteid!","Recommendation Products":"Soovituslikud tooted","Products That Just Work For you":"Tooted, mis töötavad just teie jaoks","My Skin Report":"Minu naha aruanne","Add to cart":"Lisa ostukorvi","Add again":"Lisa uuesti","Checkout":"Kassasse","My Routines":"Minu rutiinid","Your":"Sinu","Routine":"Rutiinne","Morning":"Hommik","Night":"Öö","Error":"Viga","The face is not visible in the picture":"Pildil ei ole nägu näha","The input image is not suitable":"Sisendpilt ei sobi","An error occurred, please check again":"Ilmnes viga, kontrollige uuesti","Camera permission denied.":"Kaamera luba on keelatud.","Unable to access the camera.":"Kaamerale ei pääse juurde.","validation.blurry":"Teie pilt on udune","validation.eyeGlass":"Sul on prillid","validation.brightness":"Valgus näole ei sobi","validation.neutralFace":"Nägu ei ole neutraalne (teil võib olla naeratus)","Image is not suitable":"Pilt ei sobi","Check how you can improve your skin with the proper product and routine":"Kontrollige, kuidas saate õige toote ja rutiini abil oma nahka parandada","There are no products to display":"Kuvamiseks pole tooteid","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Alustage näo pesemisega, et eemaldada mustus, õli ja mustus. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Kasutage toonikut, et tasakaalustada naha pH-taset ja eemaldada kõik järelejäänud jäägid.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Kasutage kontsentreeritud seerumit, mis on suunatud konkreetsetele probleemidele, nagu sära andev või vananemisvastane toime. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Patsutage silmaümbruskreemi õrnalt ümber silmaümbruse, et niisutada ja vähendada turseid või tumedaid ringe.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Kandke punkthooldust kõikidele probleemsetele kohtadele, nagu akne või plekid. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Lukustage hüdratsioon, kandes nahatüübile sobivat niisutajat. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Kaitske oma nahka kahjulike UV-kiirte eest, kasutades laia spektriga päikesekaitsekreemi. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Kandke kerget näoõli, et suletada niiskust ja anda nahale särav sära. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Kasutage rikkalikku öökreemi, mis aitab magada nahka parandada ja taastada. ","Cleanser":"Puhastusvahend","Toner":"Tooner","Serum":"Seerum","Eye Cream":"Silmaümbruskreem","Spot Treatment":"Kohapealne ravi","Moisturizer":"Niisutaja","Sunscreen":"Päikesekaitsekreem","Face Oil":"Näoõli","Night Cream":"Öökreem","Add all to cart":"Lisa kõik ostukorvi","All Products":"Kõik tooted","validation.faceObstruction":"Tõenäoliselt on näonaha pinnal midagi (juuksed või augustamine)","Product added to cart":"Toode lisatud ostukorvi","products added to cart":"tooted lisatud ostukorvi","You reached the limits of your plan":"Jõudsite oma plaani piirini","Please renew your service for access":"Juurdepääsu saamiseks uuendage oma teenust","See the website’s privacy policy":"Vaadake veebisaidi privaatsuspoliitikat"}')},fr:{translation:JSON.parse('{"Skin Analysis":"Analyse de la peau","Look Straight":"Regardez droit","Face Position":"Position du visage","Lighting":"Éclairage","Good":"Bien","Not Good":"Pas bon","Bad":"Mauvais","Fair":"Équitable","Powered by":"Alimenté par","Your distance is close to the camera":"Votre distance est proche de la caméra","Keep your face inside the circle":"Gardez votre visage à l\'intérieur du cercle","Please stand in front of the camera":"Veuillez vous tenir devant la caméra","There is more than one person in the picture":"Il y a plus d\'une personne sur la photo","Drag & Drop":"Glisser-déposer","Or":"Ou","browse":"parcourir","Supports: JPEG, JPG, PNG":"Prise en charge : JPEG, JPG, PNG","Release to Upload":"Libérer pour télécharger","file not supported":"fichier non pris en charge","Sending Facial Data...":"Envoi de données faciales...","Scanning Face...":"Numérisation du visage...","Analyzing Facial Attributes...":"Analyse des attributs du visage...","AI Crafting Report..":"Rapport de création d\'IA.","Skin Info":"Informations sur la peau","Fine Wrinkles":"Rides fines","Eye Wrinkles":"Rides des yeux","Deep Wrinkles":"Rides profondes","Dark Circle":"Cercle noir","Eye Bag":"Sac pour les yeux","Pores":"Pores","Pigment":"Pigment","Redness":"Rougeur","Oiliness":"Onctuosité","Acnes":"Acné","Acne":"Acné","Skin Health":"Santé de la peau","Instructions":"Instructions","Get Ready to Start Skin Analysis":"Préparez-vous à commencer l\'analyse de la peau","Remove the glasses":"Retirez les lunettes","Clean your face":"Nettoyez votre visage","Be in the right light":"Soyez sous le bon jour","Be neutral face and fix position":"Soyez neutre et fixez votre position","Get Started":"Commencer","privacy.text":"Découvrez comment sublimer votre peau avec les bons produits et une routine adaptée à vos besoins. Téléchargez votre selfie pour des recommandations personnalisées, et rassurez-vous, votre image sera supprimée après analyse","See our":"Voir notre","Privacy Policy":"politique de confidentialité","for more information":"pour plus d\'informations","your picture quality is blurry":"la qualité de votre image est floue","be wearing glasses":"porter des lunettes","please remove them":"veuillez les supprimer","Improve photo quality":"Améliorer la qualité des photos","We noticed you might":"Nous avons remarqué que vous pourriez","and":"et","for better results":"pour de meilleurs résultats","Tips for taking better selfies":"Conseils pour prendre de meilleurs selfies","Continue":"Continuer","Generate routine for you":"Générez une routine pour vous","Re-take":"Reprendre","Get recommended products!":"Obtenez des produits recommandés !","Recommendation Products":"Produits recommandés","Products That Just Work For you":"Des produits qui fonctionnent juste pour vous","My Skin Report":"Mon rapport sur la peau","Add to cart":"Ajouter au panier","Add again":"Ajouter à nouveau","Checkout":"Vérifier","My Routines":"Mes routines","Your":"Ton","Routine":"Routine","Morning":"Matin","Night":"Nuit","Error":"Erreur","The face is not visible in the picture":"Le visage n\'est pas visible sur la photo","The input image is not suitable":"L\'image d\'entrée ne convient pas","An error occurred, please check again":"Une erreur s\'est produite, veuillez vérifier à nouveau","Camera permission denied.":"Autorisation de la caméra refusée.","Unable to access the camera.":"Impossible d\'accéder à la caméra.","validation.blurry":"Votre image est floue","validation.eyeGlass":"tu as des lunettes","validation.brightness":"La lumière sur votre visage n\'est pas adaptée","validation.neutralFace":"Le visage n\'est pas neutre (Vous pouvez avoir un sourire)","Image is not suitable":"L\'image ne convient pas","Check how you can improve your skin with the proper product and routine":"Vérifiez comment vous pouvez améliorer votre peau avec le produit et la routine appropriés","There are no products to display":"Il n\'y a aucun produit à afficher","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Commencez par vous laver le visage pour éliminer la saleté, l’huile et les impuretés. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Utilisez un tonique pour équilibrer le pH de votre peau et éliminer tout résidu restant.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Appliquez un sérum concentré ciblant des préoccupations spécifiques, comme éclaircissantes ou anti-âge. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Appliquez doucement la crème pour les yeux autour du contour des yeux pour hydrater et réduire les poches ou les cernes.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Appliquez un traitement localisé sur toutes les zones à problèmes, telles que l\'acné ou les imperfections. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Conservez l\'hydratation en appliquant une crème hydratante adaptée à votre type de peau. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Protégez votre peau des rayons UV nocifs en utilisant un écran solaire offrant une protection à large spectre. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Appliquez une huile légère pour le visage pour retenir l’humidité et donner à votre peau un éclat radieux. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Utilisez une crème de nuit riche pour aider à réparer et restaurer votre peau pendant que vous dormez. ","Cleanser":"Nettoyant","Toner":"Tonique","Serum":"Sérum","Eye Cream":"Crème pour les yeux","Spot Treatment":"Traitement localisé","Moisturizer":"Crème hydratante","Sunscreen":"Crème solaire","Face Oil":"Huile Visage","Night Cream":"Crème de Nuit","Add all to cart":"Tout ajouter au panier","All Products":"Tous les produits","validation.faceObstruction":"Il y a probablement quelque chose à la surface de la peau du visage (cheveux ou piercing)","Product added to cart":"Produit ajouté au panier","products added to cart":"produits ajoutés au panier","You reached the limits of your plan":"Vous avez atteint les limites de votre plan","Please renew your service for access":"Veuillez renouveler votre service pour y accéder","See the website’s privacy policy":"Voir la politique de confidentialité du site"}')},el:{translation:JSON.parse('{"Skin Analysis":"Ανάλυση δέρματος","Look Straight":"Κοιτάξτε ευθεία","Face Position":"Θέση προσώπου","Lighting":"Φωτισμός","Good":"Καλός","Not Good":"Δεν είναι καλό","Bad":"Κακός","Fair":"Εκθεση","Powered by":"Τροφοδοτείται από","Your distance is close to the camera":"Η απόσταση σας είναι κοντά στην κάμερα","Keep your face inside the circle":"Κρατήστε το πρόσωπό σας μέσα στον κύκλο","Please stand in front of the camera":"Παρακαλώ σταθείτε μπροστά στην κάμερα","There is more than one person in the picture":"Υπάρχουν περισσότερα από ένα άτομα στην εικόνα","Drag & Drop":"Μεταφορά και απόθεση","Or":"Ή","browse":"ξεφυλλίζω","Supports: JPEG, JPG, PNG":"Υποστηρίζει: JPEG, JPG, PNG","Release to Upload":"Αφήστε για μεταφόρτωση","file not supported":"αρχείο δεν υποστηρίζεται","Sending Facial Data...":"Αποστολή δεδομένων προσώπου...","Scanning Face...":"Σάρωση προσώπου...","Analyzing Facial Attributes...":"Ανάλυση ιδιοτήτων προσώπου...","AI Crafting Report..":"Αναφορά τεχνητής νοημοσύνης..","Skin Info":"Πληροφορίες δέρματος","Fine Wrinkles":"Λεπτές ρυτίδες","Eye Wrinkles":"Ρυτίδες ματιών","Deep Wrinkles":"Βαθιές ρυτίδες","Dark Circle":"Σκοτεινός Κύκλος","Eye Bag":"Τσάντα ματιών","Pores":"Πόροι","Pigment":"Χρώμα","Redness":"Ερυθρότητα","Oiliness":"Ελλαιώδες","Acnes":"Ακμή","Acne":"Ακμή","Skin Health":"Υγεία του δέρματος","Instructions":"Οδηγίες","Get Ready to Start Skin Analysis":"Ετοιμαστείτε να ξεκινήσετε την ανάλυση δέρματος","Remove the glasses":"Αφαιρέστε τα γυαλιά","Clean your face":"Καθαρίστε το πρόσωπό σας","Be in the right light":"Να είστε στο σωστό φως","Be neutral face and fix position":"Να είστε ουδέτερο πρόσωπο και να σταθεροποιήσετε τη θέση","Get Started":"Ξεκινήστε","privacy.text":"Ανακαλύψτε πώς να βελτιώσετε το δέρμα σας με τα κατάλληλα προϊόντα και τη ρουτίνα που είναι προσαρμοσμένη για εσάς. Ανεβάστε τη selfie σας για εξατομικευμένες προτάσεις και να είστε σίγουροι ότι η εικόνα σας θα διαγραφεί μετά την ανάλυση","See our":"Δείτε το δικό μας","Privacy Policy":"Πολιτική Απορρήτου","for more information":"για περισσότερες πληροφορίες","your picture quality is blurry":"η ποιότητα της εικόνας σας είναι θολή","be wearing glasses":"να φοράτε γυαλιά","please remove them":"παρακαλώ αφαιρέστε τα","Improve photo quality":"Βελτιώστε την ποιότητα της φωτογραφίας","We noticed you might":"Παρατηρήσαμε ότι μπορείς","and":"και","for better results":"για καλύτερα αποτελέσματα","Tips for taking better selfies":"Συμβουλές για καλύτερες selfies","Continue":"Συνεχίζω","Generate routine for you":"Δημιουργήστε ρουτίνα για εσάς","Re-take":"Ξαναπαίρνω","Get recommended products!":"Λάβετε προτεινόμενα προϊόντα!","Recommendation Products":"Προϊόντα Σύστασης","Products That Just Work For you":"Προϊόντα που λειτουργούν μόνο για εσάς","My Skin Report":"My Skin Report","Add to cart":"Προσθήκη στο καλάθι","Add again":"Προσθέστε ξανά","Checkout":"Αποχώρηση","My Routines":"Οι ρουτίνες μου","Your":"Σας","Routine":"Ρουτίνα","Morning":"Πρωί","Night":"Νύχτα","Error":"Σφάλμα","The face is not visible in the picture":"Το πρόσωπο δεν φαίνεται στην εικόνα","The input image is not suitable":"Η εικόνα εισόδου δεν είναι κατάλληλη","An error occurred, please check again":"Παρουσιάστηκε σφάλμα, ελέγξτε ξανά","Camera permission denied.":"Η άδεια κάμερας απορρίφθηκε.","Unable to access the camera.":"Δεν είναι δυνατή η πρόσβαση στην κάμερα.","validation.blurry":"Η εικόνα σας είναι θολή","validation.eyeGlass":"Έχεις γυαλιά","validation.brightness":"Το φως στο πρόσωπό σας δεν είναι κατάλληλο","validation.neutralFace":"Το πρόσωπο δεν είναι ουδέτερο (Μπορεί να έχετε ένα χαμόγελο)","Image is not suitable":"Η εικόνα δεν είναι κατάλληλη","Check how you can improve your skin with the proper product and routine":"Ελέγξτε πώς μπορείτε να βελτιώσετε το δέρμα σας με το κατάλληλο προϊόν και τη ρουτίνα","There are no products to display":"Δεν υπάρχουν προϊόντα προς εμφάνιση","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Ξεκινήστε πλένοντας το πρόσωπό σας για να αφαιρέσετε ρύπους, λάδια και ακαθαρσίες. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Χρησιμοποιήστε ένα τονωτικό για να εξισορροπήσετε το pH του δέρματός σας και να αφαιρέσετε τυχόν υπολείμματα.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Εφαρμόστε έναν συμπυκνωμένο ορό που στοχεύει σε συγκεκριμένες ανησυχίες, όπως λεύκανση ή αντιγήρανση. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Απλώστε απαλά την κρέμα ματιών γύρω από την περιοχή των ματιών για να ενυδατώσει και να μειώσει το πρήξιμο ή τους μαύρους κύκλους.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Εφαρμόστε θεραπεία με σημεία σε οποιεσδήποτε προβληματικές περιοχές, όπως ακμή ή κηλίδες. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Κλείστε την ενυδάτωση εφαρμόζοντας μια ενυδατική κρέμα που ταιριάζει στον τύπο του δέρματός σας. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Προστατέψτε το δέρμα σας από τις βλαβερές ακτίνες UV χρησιμοποιώντας αντηλιακό με προστασία ευρέος φάσματος. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Απλώστε ένα ελαφρύ λάδι προσώπου για να σφραγίσει την υγρασία και να δώσει στο δέρμα σας μια λαμπερή λάμψη. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Χρησιμοποιήστε μια πλούσια κρέμα νύχτας για να σας βοηθήσει να επανορθώσετε και να αποκαταστήσετε το δέρμα σας ενώ κοιμάστε. ","Cleanser":"Καθαριστικό","Toner":"Τονίζων","Serum":"Ορρός","Eye Cream":"Κρέμα Ματιών","Spot Treatment":"Θεραπεία κηλίδων","Moisturizer":"Ενυδατική κρέμα","Sunscreen":"Αντηλιακό","Face Oil":"Λάδι προσώπου","Night Cream":"Κρέμα Νύχτας","Add all to cart":"Προσθήκη όλων στο καλάθι","All Products":"Όλα τα Προϊόντα","validation.faceObstruction":"Πιθανότατα υπάρχει κάτι στην επιφάνεια του δέρματος του προσώπου (τρίχες ή τρύπημα)","Product added to cart":"Το προϊόν προστέθηκε στο καλάθι","products added to cart":"προϊόντα που προστέθηκαν στο καλάθι","You reached the limits of your plan":"Φτάσατε στα όρια του σχεδίου σας","Please renew your service for access":"Ανανεώστε την υπηρεσία σας για πρόσβαση","See the website’s privacy policy":"Δείτε την πολιτική απορρήτου του ιστότοπου"}')},bg:{translation:JSON.parse('{"Skin Analysis":"Анализ на кожата","Look Straight":"Гледай направо","Face Position":"Позиция на лицето","Lighting":"Осветление","Good":"добре","Not Good":"Не е добре","Bad":"лошо","Fair":"Справедлива","Powered by":"Осъществено от","Your distance is close to the camera":"Разстоянието ви е близо до камерата","Keep your face inside the circle":"Дръжте лицето си вътре в кръга","Please stand in front of the camera":"Моля, застанете пред камерата","There is more than one person in the picture":"На снимката има повече от един човек","Drag & Drop":"Плъзнете и пуснете","Or":"или","browse":"разглеждате","Supports: JPEG, JPG, PNG":"Поддържа: JPEG, JPG, PNG","Release to Upload":"Освободете за качване","file not supported":"файлът не се поддържа","Sending Facial Data...":"Изпращане на лицеви данни...","Scanning Face...":"Сканиране на лицето...","Analyzing Facial Attributes...":"Анализиране на характеристиките на лицето...","AI Crafting Report..":"Доклад за AI Crafting..","Skin Info":"Информация за кожата","Fine Wrinkles":"Фини бръчки","Eye Wrinkles":"Очни бръчки","Deep Wrinkles":"Дълбоки бръчки","Dark Circle":"тъмен кръг","Eye Bag":"Торбичка под очите","Pores":"Пори","Pigment":"Пигмент","Redness":"Зачервяване","Oiliness":"Омазняване","Acnes":"акне","Acne":"акне","Skin Health":"Здраве на кожата","Instructions":"Инструкции","Get Ready to Start Skin Analysis":"Пригответе се да започнете анализ на кожата","Remove the glasses":"Махнете очилата","Clean your face":"Почистете лицето си","Be in the right light":"Бъдете в правилната светлина","Be neutral face and fix position":"Бъдете неутрално лице и фиксирайте позицията","Get Started":"Започнете","privacy.text":"Открийте как да подобрите кожата си с правилните продукти и рутина, съобразена с вас. Качете вашето селфи за персонализирани препоръки и бъдете сигурни, че вашето изображение ще бъде изтрито след анализ","See our":"Вижте нашите","Privacy Policy":"Политика за поверителност","for more information":"за повече информация","your picture quality is blurry":"качеството на картината ви е размазано","be wearing glasses":"да носите очила","please remove them":"моля, премахнете ги","Improve photo quality":"Подобрете качеството на снимките","We noticed you might":"Забелязахме, че може","and":"и","for better results":"за по-добри резултати","Tips for taking better selfies":"Съвети за правене на по-добри селфита","Continue":"Продължи","Generate routine for you":"Създайте рутина за вас","Re-take":"Повторно вземане","Get recommended products!":"Вземете препоръчани продукти!","Recommendation Products":"Препоръчителни продукти","Products That Just Work For you":"Продукти, които работят само за вас","My Skin Report":"Моят доклад за кожата","Add to cart":"Добавяне в количката","Add again":"Добавете отново","Checkout":"Плащане","My Routines":"Моите съчетания","Your":"Вашият","Routine":"Рутина","Morning":"сутрин","Night":"нощ","Error":"Грешка","The face is not visible in the picture":"Лицето не се вижда на снимката","The input image is not suitable":"Въведеното изображение не е подходящо","An error occurred, please check again":"Възникна грешка, моля, проверете отново","Camera permission denied.":"Разрешението за камерата е отказано.","Unable to access the camera.":"Няма достъп до камерата.","validation.blurry":"Вашето изображение е размазано","validation.eyeGlass":"Имате очила","validation.brightness":"Светлината на лицето ви не е подходяща","validation.neutralFace":"Лицето не е неутрално (може да имате усмивка)","Image is not suitable":"Изображението не е подходящо","Check how you can improve your skin with the proper product and routine":"Вижте как можете да подобрите кожата си с правилния продукт и рутина","There are no products to display":"Няма продукти за показване","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Започнете с измиване на лицето, за да премахнете мръсотията, маслото и примесите. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Използвайте тоник, за да балансирате рН на кожата си и да премахнете всички остатъци.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Нанесете концентриран серум, насочен към специфични проблеми, като изсветляване или против стареене. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Внимателно потупвайте околоочния крем около очите, за да хидратирате и намалите подпухналостта или тъмните кръгове.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Нанесете точково лечение върху всякакви проблемни зони, като акне или петна. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Заключете хидратацията, като нанесете овлажнител, който отговаря на вашия тип кожа. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Защитете кожата си от вредните UV лъчи, като използвате слънцезащитен крем с широкоспектърна защита. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Нанесете леко масло за лице, за да запечатате влагата и да придадете на кожата си сияйна светлина. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Използвайте богат нощен крем, за да възстановите кожата си, докато спите. ","Cleanser":"Почистващо средство","Toner":"Тонер","Serum":"Серум","Eye Cream":"Околоочен крем","Spot Treatment":"Лечение на петна","Moisturizer":"Овлажнител","Sunscreen":"Слънцезащитен крем","Face Oil":"Масло за лице","Night Cream":"Нощен крем","Add all to cart":"Добавете всички в количката","All Products":"Всички продукти","validation.faceObstruction":"Вероятно има нещо на повърхността на кожата на лицето (косми или пиърсинг)","Product added to cart":"Продуктът е добавен в количката","products added to cart":"продукти, добавени в количката","You reached the limits of your plan":"Достигнахте границите на вашия план","Please renew your service for access":"Моля, подновете услугата си за достъп","See the website’s privacy policy":"Вижте политиката за поверителност на уебсайта"}')},ro:{translation:JSON.parse('{"Skin Analysis":"Analiza pielii","Look Straight":"Uită-te drept","Face Position":"Poziția feței","Lighting":"Iluminat","Good":"Bun","Not Good":"Nu e bun","Bad":"Rău","Fair":"Corect","Powered by":"Cu sprijinul","Your distance is close to the camera":"Distanța ta este aproape de cameră","Keep your face inside the circle":"Ține-ți fața în interiorul cercului","Please stand in front of the camera":"Vă rugăm să stați în fața camerei","There is more than one person in the picture":"Există mai mult de o persoană în imagine","Drag & Drop":"Trageți și plasați","Or":"Sau","browse":"răsfoiește","Supports: JPEG, JPG, PNG":"Suporta: JPEG, JPG, PNG","Release to Upload":"Eliberați pentru a încărca","file not supported":"fișierul nu este acceptat","Sending Facial Data...":"Se trimit date faciale...","Scanning Face...":"Se scanează chipul...","Analyzing Facial Attributes...":"Se analizează atributele faciale...","AI Crafting Report..":"Raport despre crearea AI..","Skin Info":"Informații despre piele","Fine Wrinkles":"Riduri fine","Eye Wrinkles":"Ridurile ochilor","Deep Wrinkles":"Riduri adânci","Dark Circle":"Cercul întunecat","Eye Bag":"Geanta pentru ochi","Pores":"Porii","Pigment":"Pigment","Redness":"Roşeaţă","Oiliness":"Oleositate","Acnes":"Acnee","Acne":"Acnee","Skin Health":"Sănătatea pielii","Instructions":"Instrucţiuni","Get Ready to Start Skin Analysis":"Pregătește-te pentru a începe analiza pielii","Remove the glasses":"Scoateți ochelarii","Clean your face":"Curățați-vă fața","Be in the right light":"Fii în lumina potrivită","Be neutral face and fix position":"Fiți neutru față și fixați poziția","Get Started":"Începeți","privacy.text":"Descoperă cum să-ți îmbunătățești pielea cu produsele potrivite și rutina potrivită pentru tine. Încarcă-ți selfie-ul pentru recomandări personalizate și fii sigur că imaginea ta va fi ștearsă după analiză","See our":"Vezi noastre","Privacy Policy":"Politica de confidențialitate","for more information":"pentru mai multe informații","your picture quality is blurry":"calitatea imaginii dvs. este neclară","be wearing glasses":"să poarte ochelari","please remove them":"vă rog să le eliminați","Improve photo quality":"Îmbunătățiți calitatea fotografiei","We noticed you might":"Am observat că s-ar putea","and":"şi","for better results":"pentru rezultate mai bune","Tips for taking better selfies":"Sfaturi pentru a face selfie-uri mai bune","Continue":"Continua","Generate routine for you":"Generați rutină pentru dvs","Re-take":"Relua","Get recommended products!":"Obțineți produse recomandate!","Recommendation Products":"Produse de recomandare","Products That Just Work For you":"Produse care funcționează doar pentru tine","My Skin Report":"Raportul meu de piele","Add to cart":"Adaugă in coş","Add again":"Adaugă din nou","Checkout":"Verifică","My Routines":"Rutinele mele","Your":"Dvs","Routine":"Rutină","Morning":"Dimineaţă","Night":"Noapte","Error":"Eroare","The face is not visible in the picture":"Fața nu este vizibilă în imagine","The input image is not suitable":"Imaginea de intrare nu este potrivită","An error occurred, please check again":"A apărut o eroare, vă rugăm să verificați din nou","Camera permission denied.":"Permisiunea camerei a fost refuzată.","Unable to access the camera.":"Nu se poate accesa camera.","validation.blurry":"Imaginea ta este neclară","validation.eyeGlass":"Ai ochelari","validation.brightness":"Lumina de pe fata ta nu este potrivita","validation.neutralFace":"Fața nu este neutră (poate avea un zâmbet)","Image is not suitable":"Imaginea nu este potrivită","Check how you can improve your skin with the proper product and routine":"Verificați cum vă puteți îmbunătăți pielea cu produsul și rutina adecvate","There are no products to display":"Nu există produse de afișat","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Începeți prin a vă spăla fața pentru a îndepărta murdăria, uleiul și impuritățile. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Utilizați un toner pentru a echilibra pH-ul pielii și pentru a elimina orice reziduuri rămase.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Aplicați un ser concentrat care vizează probleme specifice, cum ar fi strălucirea sau anti-îmbătrânire. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Lipiți ușor crema de ochi în jurul zonei ochilor pentru a hidrata și a reduce umflarea sau cearcănele.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Aplicați tratament la fața locului pe orice zone cu probleme, cum ar fi acneea sau petele. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Asigurați-vă hidratarea aplicând o cremă hidratantă care se potrivește tipului dvs. de piele. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Protejați-vă pielea de razele UV dăunătoare utilizând protecție solară cu protecție cu spectru larg. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Aplicați un ulei ușor de față pentru a etanșa umiditatea și pentru a oferi pielii o strălucire strălucitoare. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Utilizați o cremă bogată de noapte pentru a vă ajuta să vă reparați și să vă refaceți pielea în timp ce dormiți. ","Cleanser":"Demachiant","Toner":"Toner","Serum":"Ser","Eye Cream":"Crema de ochi","Spot Treatment":"Tratamentul punctual","Moisturizer":"Cremă hidratantă","Sunscreen":"Cremă de protecție solară","Face Oil":"Ulei de față","Night Cream":"Crema de noapte","Add all to cart":"Adăugați totul în coș","All Products":"Toate produsele","validation.faceObstruction":"Probabil că există ceva pe suprafața pielii feței (păr sau piercing)","Product added to cart":"Produs adăugat în coș","products added to cart":"produse adăugate în coș","You reached the limits of your plan":"Ai atins limitele planului tău","Please renew your service for access":"Vă rugăm să vă reînnoiți serviciul pentru acces","See the website’s privacy policy":"Consultați politica de confidențialitate a site-ului"}')},hi:{translation:JSON.parse('{"Skin Analysis":"त्वचा विश्लेषण","Look Straight":"सीधे देखना","Face Position":"चेहरे की स्थिति","Lighting":"प्रकाश","Good":"अच्छा","Not Good":"अच्छा नहीं है","Bad":"खराब","Fair":"गोरा","Powered by":"द्वारा संचालित","Your distance is close to the camera":"आपकी दूरी कैमरे के करीब है","Keep your face inside the circle":"अपना चेहरा गोले के अंदर रखें","Please stand in front of the camera":"कृपया कैमरे के सामने खड़े हों","There is more than one person in the picture":"चित्र में एक से अधिक व्यक्ति हैं","Drag & Drop":"खींचें और छोड़ें","Or":"या","browse":"ब्राउज़","Supports: JPEG, JPG, PNG":"समर्थन करता है: जेपीईजी, जेपीजी, पीएनजी","Release to Upload":"अपलोड करने के लिए जारी करें","file not supported":"फ़ाइल समर्थित नहीं है","Sending Facial Data...":"चेहरे का डेटा भेजा जा रहा है...","Scanning Face...":"चेहरा स्कैन किया जा रहा है...","Analyzing Facial Attributes...":"चेहरे की विशेषताओं का विश्लेषण...","AI Crafting Report..":"एआई क्राफ्टिंग रिपोर्ट..","Skin Info":"त्वचा की जानकारी","Fine Wrinkles":"महीन झुर्रियाँ","Eye Wrinkles":"आँखों की झुर्रियाँ","Deep Wrinkles":"गहरी झुर्रियाँ","Dark Circle":"डार्क सर्कल","Eye Bag":"आंख के काले घेरे","Pores":"छिद्र","Pigment":"रंग","Redness":"लालपन","Oiliness":"चाटुकारिता","Acnes":"मुंहासा","Acne":"मुंहासा","Skin Health":"त्वचा का स्वास्थ्य","Instructions":"निर्देश","Get Ready to Start Skin Analysis":"त्वचा विश्लेषण शुरू करने के लिए तैयार हो जाइए","Remove the glasses":"चश्मा हटाओ","Clean your face":"अपना चेहरा साफ़ करें","Be in the right light":"सही रोशनी में रहें","Be neutral face and fix position":"तटस्थ रहें और स्थिति ठीक करें","Get Started":"शुरू हो जाओ","privacy.text":"जानें कि आपके लिए उपयुक्त उत्पादों और दिनचर्या से अपनी त्वचा को कैसे निखारा जाए। वैयक्तिकृत अनुशंसाओं के लिए अपनी सेल्फी अपलोड करें और निश्चिंत रहें, विश्लेषण के बाद आपकी छवि हटा दी जाएगी","See our":"हमारा देखें","Privacy Policy":"गोपनीयता नीति","for more information":"अधिक जानकारी के लिए","your picture quality is blurry":"आपकी तस्वीर की गुणवत्ता धुंधली है","be wearing glasses":"चश्मा पहने रहना","please remove them":"कृपया उन्हें हटा दें","Improve photo quality":"फ़ोटो की गुणवत्ता सुधारें","We noticed you might":"हमने देखा कि आप हो सकते हैं","and":"और","for better results":"बेहतर परिणाम के लिए","Tips for taking better selfies":"बेहतर सेल्फी लेने के टिप्स","Continue":"जारी रखना","Generate routine for you":"आपके लिए दिनचर्या बनाएं","Re-take":"पुन: ले","Get recommended products!":"अनुशंसित उत्पाद प्राप्त करें!","Recommendation Products":"सिफ़ारिश उत्पाद","Products That Just Work For you":"उत्पाद जो आपके लिए बिल्कुल काम करते हैं","My Skin Report":"मेरी त्वचा रिपोर्ट","Add to cart":"कार्ट में जोड़ें","Add again":"पुनः जोड़ें","Checkout":"चेक आउट","My Routines":"मेरी दिनचर्या","Your":"आपका","Routine":"दिनचर्या","Morning":"सुबह","Night":"रात","Error":"गलती","The face is not visible in the picture":"तस्वीर में चेहरा नजर नहीं आ रहा है","The input image is not suitable":"इनपुट छवि उपयुक्त नहीं है","An error occurred, please check again":"कोई त्रुटि उत्पन्न हुई, कृपया पुनः जाँचें","Camera permission denied.":"कैमरे की अनुमति अस्वीकृत.","Unable to access the camera.":"कैमरे तक पहुंचने में असमर्थ.","validation.blurry":"आपकी छवि धुंधली है","validation.eyeGlass":"आपके पास चश्मा है","validation.brightness":"आपके चेहरे पर रोशनी उपयुक्त नहीं है","validation.neutralFace":"चेहरा तटस्थ नहीं है (आपके चेहरे पर मुस्कान हो सकती है)","Image is not suitable":"छवि उपयुक्त नहीं है","Check how you can improve your skin with the proper product and routine":"जांचें कि आप उचित उत्पाद और दिनचर्या से अपनी त्वचा को कैसे बेहतर बना सकते हैं","There are no products to display":"प्रदर्शित करने के लिए कोई उत्पाद नही हैं","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"गंदगी, तेल और अशुद्धियाँ हटाने के लिए अपना चेहरा धोकर शुरुआत करें। ","Use a toner to balance your skin’s pH and remove any leftover residue.":"अपनी त्वचा के पीएच को संतुलित करने और बचे हुए अवशेषों को हटाने के लिए टोनर का उपयोग करें।","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"ब्राइटनिंग या एंटी-एजिंग जैसी विशिष्ट चिंताओं को ध्यान में रखते हुए एक केंद्रित सीरम लगाएं। ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"आंखों को नमी प्रदान करने और सूजन या काले घेरों को कम करने के लिए आंखों के आसपास आई क्रीम को धीरे से थपथपाएं।","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"किसी भी समस्या वाले क्षेत्र, जैसे मुँहासे या दाग-धब्बे, पर स्पॉट ट्रीटमेंट लागू करें। ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"अपनी त्वचा के प्रकार के अनुरूप मॉइस्चराइज़र लगाकर जलयोजन बनाए रखें। ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"ब्रॉड-स्पेक्ट्रम सुरक्षा वाले सनस्क्रीन का उपयोग करके अपनी त्वचा को हानिकारक यूवी किरणों से बचाएं। ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"नमी बनाए रखने और अपनी त्वचा को चमकदार चमक देने के लिए हल्के चेहरे का तेल लगाएं। ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"सोते समय अपनी त्वचा की मरम्मत और पुनर्स्थापना में मदद के लिए एक समृद्ध नाइट क्रीम का उपयोग करें। ","Cleanser":"cleanser","Toner":"टोनर","Serum":"सीरम","Eye Cream":"आँख का क्रीम","Spot Treatment":"स्पॉट ट्रीटमेंट","Moisturizer":"मॉइस्चराइज़र","Sunscreen":"सनस्क्रीन","Face Oil":"चेहरे का तेल","Night Cream":"नाइट क्रीम","Add all to cart":"सभी को कार्ट में जोड़ें","All Products":"सभी प्रोडक्ट","validation.faceObstruction":"संभवतः चेहरे की त्वचा की सतह पर कुछ है (बाल या छेदन)","Product added to cart":"उत्पाद कार्ट में जोड़ा गया","products added to cart":"उत्पाद कार्ट में जोड़े गए","You reached the limits of your plan":"आप अपनी योजना की सीमा तक पहुंच गए","Please renew your service for access":"कृपया पहुंच के लिए अपनी सेवा नवीनीकृत करें","See the website’s privacy policy":"वेबसाइट की गोपनीयता नीति देखें"}')},ko:{translation:JSON.parse('{"Skin Analysis":"피부 분석","Look Straight":"똑바로 봐","Face Position":"얼굴 위치","Lighting":"조명","Good":"좋은","Not Good":"좋지 않음","Bad":"나쁜","Fair":"공정한","Powered by":"제공:","Your distance is close to the camera":"당신의 거리는 카메라에 가깝습니다","Keep your face inside the circle":"얼굴을 원 안에 유지하세요.","Please stand in front of the camera":"카메라 앞에 서주세요","There is more than one person in the picture":"사진에 사람이 한 명 이상 있습니다","Drag & Drop":"드래그 앤 드롭","Or":"또는","browse":"먹다","Supports: JPEG, JPG, PNG":"지원: JPEG, JPG, PNG","Release to Upload":"업로드하려면 릴리스하세요.","file not supported":"지원되지 않는 파일","Sending Facial Data...":"얼굴 데이터를 보내는 중...","Scanning Face...":"얼굴 스캔 중...","Analyzing Facial Attributes...":"얼굴 속성 분석 중...","AI Crafting Report..":"AI 크래프팅 리포트..","Skin Info":"스킨 정보","Fine Wrinkles":"잔주름","Eye Wrinkles":"눈가 주름","Deep Wrinkles":"깊은 주름","Dark Circle":"다크서클","Eye Bag":"아이백","Pores":"모공","Pigment":"그림 물감","Redness":"홍반","Oiliness":"유질","Acnes":"좌창","Acne":"좌창","Skin Health":"피부 건강","Instructions":"지침","Get Ready to Start Skin Analysis":"피부 분석을 시작할 준비를 하세요","Remove the glasses":"안경을 제거하세요","Clean your face":"얼굴을 깨끗이 하세요","Be in the right light":"올바른 빛을 받으십시오","Be neutral face and fix position":"중립 얼굴을 유지하고 위치를 고정합니다.","Get Started":"시작하기","privacy.text":"귀하에게 꼭 맞는 제품과 루틴을 통해 피부를 개선하는 방법을 알아보세요. 맞춤형 추천을 받으려면 셀카를 업로드하세요. 분석 후 이미지가 삭제되므로 안심하세요.","See our":"우리를 참조하십시오","Privacy Policy":"개인 정보 보호 정책","for more information":"자세한 내용은","your picture quality is blurry":"화질이 흐릿해요","be wearing glasses":"안경을 쓰고 있다","please remove them":"제거해주세요","Improve photo quality":"사진 품질 향상","We noticed you might":"우리는 당신이 그럴 수도 있다는 것을 알았습니다","and":"그리고","for better results":"더 나은 결과를 위해","Tips for taking better selfies":"더 나은 셀카를 찍는 팁","Continue":"계속하다","Generate routine for you":"당신을 위한 루틴 생성","Re-take":"다시 잡다","Get recommended products!":"추천상품 받아가세요!","Recommendation Products":"추천상품","Products That Just Work For you":"당신에게 꼭 맞는 제품","My Skin Report":"나의 피부 보고서","Add to cart":"장바구니에 추가","Add again":"다시 추가","Checkout":"점검","My Routines":"내 루틴","Your":"당신의","Routine":"루틴","Morning":"아침","Night":"밤","Error":"오류","The face is not visible in the picture":"사진에는 ​​얼굴이 안보이네요","The input image is not suitable":"입력 이미지가 적합하지 않습니다.","An error occurred, please check again":"오류가 발생했습니다. 다시 확인해 주세요.","Camera permission denied.":"카메라 권한이 거부되었습니다.","Unable to access the camera.":"카메라에 액세스할 수 없습니다.","validation.blurry":"이미지가 흐릿합니다","validation.eyeGlass":"당신은 안경을 가지고 있습니다","validation.brightness":"얼굴에 비치는 빛이 적합하지 않아요","validation.neutralFace":"얼굴이 중립적이지 않음 (웃으실 수도 있음)","Image is not suitable":"이미지가 적합하지 않습니다","Check how you can improve your skin with the proper product and routine":"올바른 제품과 루틴으로 어떻게 피부를 개선할 수 있는지 확인해 보세요.","There are no products to display":"표시할 상품이 없습니다.","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"먼저 얼굴을 씻어 먼지, 기름, 불순물을 제거하세요. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"토너를 사용하여 피부의 pH 균형을 맞추고 남은 잔여물을 제거하세요.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"브라이트닝, 안티에이징 등 특정 고민을 겨냥한 농축 세럼을 발라보세요. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"아이크림을 눈가 주위에 가볍게 두드려 수분을 공급하고 붓기나 다크서클을 줄여줍니다.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"여드름이나 잡티 등 문제가 있는 부위에 스팟 트리트먼트를 발라주세요. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"피부 타입에 맞는 보습제를 발라 수분을 유지하세요. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"광범위한 스펙트럼 보호 기능을 갖춘 자외선 차단제를 사용하여 유해한 자외선으로부터 피부를 보호하세요. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"가벼운 페이스 오일을 발라 수분을 가두어 피부를 윤기나게 가꿔보세요. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"잠자는 동안 피부를 회복하고 회복하는 데 도움이 되는 풍부한 나이트 크림을 사용하세요. ","Cleanser":"세제","Toner":"토너","Serum":"혈청","Eye Cream":"아이크림","Spot Treatment":"스팟 트리트먼트","Moisturizer":"보습제","Sunscreen":"자외선 차단제","Face Oil":"페이스 오일","Night Cream":"나이트크림","Add all to cart":"장바구니에 모두 추가","All Products":"모든 제품","validation.faceObstruction":"아마도 얼굴 피부 표면에 뭔가(머리카락이나 피어싱 등)가 있을 것입니다.","Product added to cart":"장바구니에 추가된 제품","products added to cart":"장바구니에 추가된 제품","You reached the limits of your plan":"계획의 한도에 도달했습니다.","Please renew your service for access":"액세스하려면 서비스를 갱신하세요.","See the website’s privacy policy":"웹사이트의 개인정보 보호정책을 확인하세요"}')},he:{translation:JSON.parse('{"Skin Analysis":"ניתוח עור","Look Straight":"תראה ישר","Face Position":"מיקום פנים","Lighting":"תְאוּרָה","Good":"טוֹב","Not Good":"לא טוב","Bad":"רַע","Fair":"הוֹגֶן","Powered by":"מופעל על ידי","Your distance is close to the camera":"המרחק שלך קרוב למצלמה","Keep your face inside the circle":"שמור את הפנים שלך בתוך המעגל","Please stand in front of the camera":"נא לעמוד מול המצלמה","There is more than one person in the picture":"בתמונה יש יותר מאדם אחד","Drag & Drop":"גרור ושחרר","Or":"אוֹ","browse":"לְדַפדֵף","Supports: JPEG, JPG, PNG":"תומך: JPEG, JPG, PNG","Release to Upload":"שחרר להעלאה","file not supported":"הקובץ אינו נתמך","Sending Facial Data...":"שולח נתוני פנים...","Scanning Face...":"סורק פנים...","Analyzing Facial Attributes...":"ניתוח תכונות פנים...","AI Crafting Report..":"דוח יצירה של AI..","Skin Info":"מידע על העור","Fine Wrinkles":"קמטים עדינים","Eye Wrinkles":"קמטים בעיניים","Deep Wrinkles":"קמטים עמוקים","Dark Circle":"עיגול אפל","Eye Bag":"תיק עיניים","Pores":"נקבוביות","Pigment":"פִּיגמֶנט","Redness":"אוֹדֶם","Oiliness":"שַמנוּנִיוּת","Acnes":"אַקְנֶה","Acne":"אַקְנֶה","Skin Health":"בריאות העור","Instructions":"הוראות","Get Ready to Start Skin Analysis":"התכונן להתחיל בניתוח עור","Remove the glasses":"הסר את המשקפיים","Clean your face":"נקה את הפנים שלך","Be in the right light":"להיות באור הנכון","Be neutral face and fix position":"היו פנים ניטרליים וקבעו את המיקום","Get Started":"התחל","privacy.text":"גלה כיצד לשפר את העור שלך עם המוצרים והשגרה הנכונים המותאמים לך. העלה את הסלפי שלך לקבלת המלצות מותאמות אישית, והיו בטוחים שהתמונה שלך תימחק לאחר הניתוח","See our":"ראה שלנו","Privacy Policy":"מדיניות פרטיות","for more information":"למידע נוסף","your picture quality is blurry":"איכות התמונה שלך מטושטשת","be wearing glasses":"להיות עם משקפיים","please remove them":"אנא הסר אותם","Improve photo quality":"שפר את איכות הצילום","We noticed you might":"שמנו לב שאולי","and":"ו","for better results":"לתוצאות טובות יותר","Tips for taking better selfies":"טיפים לצילום סלפי טוב יותר","Continue":"לְהַמשִׁיך","Generate routine for you":"צור לך שגרה","Re-take":"לְצַלֵם שׁוּב","Get recommended products!":"קבלו מוצרים מומלצים!","Recommendation Products":"מוצרי המלצה","Products That Just Work For you":"מוצרים שעובדים בדיוק בשבילך","My Skin Report":"דוח העור שלי","Add to cart":"הוסף לעגלה","Add again":"הוסף שוב","Checkout":"קופה","My Routines":"השגרה שלי","Your":"שֶׁלְךָ","Routine":"שִׁגרָתִי","Morning":"שַׁחַר","Night":"לַיְלָה","Error":"שְׁגִיאָה","The face is not visible in the picture":"הפנים לא נראים בתמונה","The input image is not suitable":"תמונת הקלט אינה מתאימה","An error occurred, please check again":"אירעה שגיאה, אנא בדוק שוב","Camera permission denied.":"הרשאת המצלמה נדחתה.","Unable to access the camera.":"אין אפשרות לגשת למצלמה.","validation.blurry":"התמונה שלך מטושטשת","validation.eyeGlass":"יש לך משקפיים","validation.brightness":"האור על הפנים שלך לא מתאים","validation.neutralFace":"הפנים לא ניטרליות (אולי יש לך חיוך)","Image is not suitable":"תמונה לא מתאימה","Check how you can improve your skin with the proper product and routine":"בדוק כיצד תוכל לשפר את העור שלך עם המוצר והשגרה הנכונים","There are no products to display":"אין מוצרים להציג","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"התחל על ידי שטיפת הפנים שלך כדי להסיר לכלוך, שמן ולכלוכים. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"השתמש בטונר כדי לאזן את ה-pH של העור שלך ולהסיר שאריות שאריות.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"יש למרוח סרום מרוכז המכוון לדאגות ספציפיות, כמו הבהרה או אנטי אייג\'ינג. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"טפח בעדינות את קרם העיניים מסביב לאזור העיניים כדי לחות ולהפחית נפיחות או עיגולים כהים.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"החל טיפול נקודתי על כל אזור בעייתי, כגון אקנה או כתמים. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"נעל את הלחות על ידי מריחת קרם לחות המתאים לסוג העור שלך. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"הגן על העור שלך מפני קרני UV מזיקות על ידי שימוש בקרם הגנה עם הגנה רחבה. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"מרחי שמן פנים קל משקל כדי לאטום לחות ולהעניק לעור שלך זוהר זוהר. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"השתמש בקרם לילה עשיר כדי לעזור בשיקום ושיקום העור שלך בזמן השינה. ","Cleanser":"חומר ניקוי","Toner":"טונר","Serum":"נַסיוֹב","Eye Cream":"קרם עיניים","Spot Treatment":"טיפול נקודתי","Moisturizer":"קרם לחות","Sunscreen":"קרם הגנה","Face Oil":"שמן פנים","Night Cream":"קרם לילה","Add all to cart":"הוסף הכל לעגלה","All Products":"כל המוצרים","validation.faceObstruction":"כנראה יש משהו על פני עור הפנים (שיער או פירסינג)","Product added to cart":"המוצר נוסף לעגלה","products added to cart":"מוצרים שנוספו לעגלה","You reached the limits of your plan":"הגעת לגבולות התוכנית שלך","Please renew your service for access":"אנא חדש את השירות שלך לגישה","See the website’s privacy policy":"עיין במדיניות הפרטיות של האתר"}')},vi:{translation:JSON.parse('{"Skin Analysis":"Phân tích da","Look Straight":"Nhìn thẳng","Face Position":"Vị trí khuôn mặt","Lighting":"Chiếu sáng","Good":"Tốt","Not Good":"Không tốt","Bad":"Xấu","Fair":"Hội chợ","Powered by":"Được cung cấp bởi","Your distance is close to the camera":"Khoảng cách của bạn gần với máy ảnh","Keep your face inside the circle":"Giữ khuôn mặt của bạn bên trong vòng tròn","Please stand in front of the camera":"Hãy đứng trước camera","There is more than one person in the picture":"Có nhiều hơn một người trong bức ảnh","Drag & Drop":"Kéo và thả","Or":"Hoặc","browse":"duyệt qua","Supports: JPEG, JPG, PNG":"Hỗ trợ: JPEG, JPG, PNG","Release to Upload":"Phát hành để tải lên","file not supported":"tập tin không được hỗ trợ","Sending Facial Data...":"Đang gửi dữ liệu khuôn mặt...","Scanning Face...":"Đang quét khuôn mặt...","Analyzing Facial Attributes...":"Phân tích đặc điểm khuôn mặt...","AI Crafting Report..":"Báo cáo chế tạo AI..","Skin Info":"Thông tin da","Fine Wrinkles":"nếp nhăn tốt","Eye Wrinkles":"nếp nhăn ở mắt","Deep Wrinkles":"nếp nhăn sâu","Dark Circle":"Vòng tròn tối","Eye Bag":"Túi mắt","Pores":"lỗ chân lông","Pigment":"Sắc tố","Redness":"Đỏ","Oiliness":"Dầu","Acnes":"Mụn trứng cá","Acne":"Mụn trứng cá","Skin Health":"Sức khỏe làn da","Instructions":"Hướng dẫn","Get Ready to Start Skin Analysis":"Hãy sẵn sàng để bắt đầu phân tích da","Remove the glasses":"Tháo kính","Clean your face":"Làm sạch khuôn mặt của bạn","Be in the right light":"Ở trong ánh sáng phù hợp","Be neutral face and fix position":"Hãy giữ vẻ mặt trung lập và cố định vị trí","Get Started":"Bắt đầu","privacy.text":"Khám phá cách cải thiện làn da của bạn với các sản phẩm phù hợp và thói quen phù hợp với bạn. Tải ảnh selfie của bạn lên để nhận các đề xuất được cá nhân hóa và hãy yên tâm, hình ảnh của bạn sẽ bị xóa sau khi phân tích","See our":"Xem của chúng tôi","Privacy Policy":"Chính sách bảo mật","for more information":"để biết thêm thông tin","your picture quality is blurry":"chất lượng hình ảnh của bạn bị mờ","be wearing glasses":"đeo kính","please remove them":"vui lòng loại bỏ chúng","Improve photo quality":"Cải thiện chất lượng ảnh","We noticed you might":"Chúng tôi nhận thấy bạn có thể","and":"Và","for better results":"để có kết quả tốt hơn","Tips for taking better selfies":"Mẹo để chụp ảnh selfie đẹp hơn","Continue":"Tiếp tục","Generate routine for you":"Tạo thói quen cho bạn","Re-take":"Thi lại","Get recommended products!":"Nhận sản phẩm được đề xuất!","Recommendation Products":"Sản phẩm khuyến nghị","Products That Just Work For you":"Sản phẩm phù hợp với bạn","My Skin Report":"Báo cáo làn da của tôi","Add to cart":"Thêm vào giỏ hàng","Add again":"Thêm lại","Checkout":"Thanh toán","My Routines":"Thói quen của tôi","Your":"Của bạn","Routine":"Lịch trình","Morning":"Buổi sáng","Night":"Đêm","Error":"Lỗi","The face is not visible in the picture":"Khuôn mặt không nhìn thấy được trong ảnh","The input image is not suitable":"Hình ảnh đầu vào không phù hợp","An error occurred, please check again":"Đã xảy ra lỗi, vui lòng kiểm tra lại","Camera permission denied.":"Quyền sử dụng máy ảnh bị từ chối.","Unable to access the camera.":"Không thể truy cập vào máy ảnh.","validation.blurry":"Hình ảnh của bạn bị mờ","validation.eyeGlass":"Bạn có kính","validation.brightness":"Ánh sáng trên khuôn mặt của bạn không phù hợp","validation.neutralFace":"Khuôn mặt không trung tính (Bạn có thể mỉm cười)","Image is not suitable":"Hình ảnh không phù hợp","Check how you can improve your skin with the proper product and routine":"Kiểm tra cách bạn có thể cải thiện làn da của mình bằng sản phẩm và thói quen phù hợp","There are no products to display":"Không có sản phẩm nào để hiển thị","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Bắt đầu bằng cách rửa mặt để loại bỏ bụi bẩn, dầu và tạp chất. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Sử dụng mực để cân bằng độ pH cho làn da của bạn và loại bỏ mọi chất cặn còn sót lại.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Áp dụng huyết thanh đậm đặc nhắm vào các mối quan tâm cụ thể, như làm sáng hoặc chống lão hóa. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Nhẹ nhàng vỗ nhẹ kem quanh vùng mắt để cấp nước và giảm bọng mắt hoặc quầng thâm.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Áp dụng phương pháp điều trị tại chỗ trên bất kỳ khu vực có vấn đề nào, chẳng hạn như mụn trứng cá hoặc vết thâm. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Khóa độ ẩm bằng cách thoa kem dưỡng ẩm phù hợp với loại da của bạn. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Bảo vệ làn da của bạn khỏi các tia UV có hại bằng cách sử dụng kem chống nắng có khả năng bảo vệ phổ rộng. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Thoa một loại dầu nhẹ lên mặt để giữ ẩm và mang lại làn da sáng rạng rỡ. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Sử dụng kem dưỡng da ban đêm giàu dưỡng chất để giúp sửa chữa và phục hồi làn da của bạn trong khi bạn ngủ. ","Cleanser":"Sữa rửa mặt","Toner":"Mực toner","Serum":"Huyết thanh","Eye Cream":"Kem mắt","Spot Treatment":"Điều trị tại chỗ","Moisturizer":"Kem dưỡng ẩm","Sunscreen":"Kem chống nắng","Face Oil":"Dầu mặt","Night Cream":"Kem dưỡng ban đêm","Add all to cart":"Thêm tất cả vào giỏ hàng","All Products":"Tất cả sản phẩm","validation.faceObstruction":"Có thể có vật gì đó trên bề mặt da mặt (tóc hoặc lỗ xỏ khuyên)","Product added to cart":"Sản phẩm đã được thêm vào giỏ hàng","products added to cart":"sản phẩm đã thêm vào giỏ hàng","You reached the limits of your plan":"Bạn đã đạt đến giới hạn trong kế hoạch của mình","Please renew your service for access":"Vui lòng gia hạn dịch vụ của bạn để truy cập","See the website’s privacy policy":"Xem chính sách quyền riêng tư của trang web"}')},fa:{translation:JSON.parse('{"Skin Analysis":"تجزیه و تحلیل پوست","Look Straight":"مستقیم نگاه کن","Face Position":"موقعیت صورت","Lighting":"نورپردازی","Good":"خوب","Not Good":"خوب نیست","Bad":"بد","Fair":"منصفانه","Powered by":"پشتیبانی شده توسط","Your distance is close to the camera":"فاصله شما به دوربین نزدیک است","Keep your face inside the circle":"صورت خود را داخل دایره نگه دارید","Please stand in front of the camera":"لطفا جلوی دوربین بایستید","There is more than one person in the picture":"بیش از یک نفر در تصویر وجود دارد","Drag & Drop":"کشیدن و رها کردن","Or":"یا","browse":"مرور کنید","Supports: JPEG, JPG, PNG":"پشتیبانی از: JPEG، JPG، PNG","Release to Upload":"برای آپلود رها کنید","file not supported":"فایل پشتیبانی نمی شود","Sending Facial Data...":"ارسال اطلاعات چهره...","Scanning Face...":"اسکن چهره...","Analyzing Facial Attributes...":"تجزیه و تحلیل ویژگی های صورت ...","AI Crafting Report..":"گزارش ساخت هوش مصنوعی..","Skin Info":"اطلاعات پوست","Fine Wrinkles":"چین و چروک های ظریف","Eye Wrinkles":"چین و چروک چشم","Deep Wrinkles":"چین و چروک عمیق","Dark Circle":"دایره تاریک","Eye Bag":"کیف چشم","Pores":"منافذ","Pigment":"رنگدانه","Redness":"سرخی","Oiliness":"چرب بودن","Acnes":"آکنه","Acne":"آکنه","Skin Health":"سلامت پوست","Instructions":"دستورالعمل ها","Get Ready to Start Skin Analysis":"برای شروع تجزیه و تحلیل پوست آماده شوید","Remove the glasses":"عینک را بردارید","Clean your face":"صورتت را تمیز کن","Be in the right light":"در نور مناسب باشید","Be neutral face and fix position":"صورت خنثی باشید و وضعیت را ثابت کنید","Get Started":"شروع کنید","privacy.text":"کشف کنید که چگونه می توانید پوست خود را با محصولات مناسب و روتین مناسب برای شما تقویت کنید. سلفی خود را برای توصیه های شخصی بارگذاری کنید، و مطمئن باشید که تصویر شما پس از تجزیه و تحلیل حذف خواهد شد","See our":"ما را ببینید","Privacy Policy":"سیاست حفظ حریم خصوصی","for more information":"برای اطلاعات بیشتر","your picture quality is blurry":"کیفیت عکس شما تار است","be wearing glasses":"عینک زدن باشد","please remove them":"لطفا آنها را حذف کنید","Improve photo quality":"بهبود کیفیت عکس","We noticed you might":"ما متوجه شدیم که ممکن است","and":"و","for better results":"برای نتایج بهتر","Tips for taking better selfies":"نکاتی برای گرفتن سلفی بهتر","Continue":"ادامه دهید","Generate routine for you":"برای شما روتین ایجاد کنید","Re-take":"دوباره بگیر","Get recommended products!":"محصولات توصیه شده را دریافت کنید!","Recommendation Products":"محصولات پیشنهادی","Products That Just Work For you":"محصولاتی که فقط برای شما کار می کنند","My Skin Report":"گزارش پوست من","Add to cart":"به سبد خرید اضافه کنید","Add again":"دوباره اضافه کنید","Checkout":"تسویه حساب","My Routines":"روتین های من","Your":"شما","Routine":"روال","Morning":"صبح","Night":"شب","Error":"خطا","The face is not visible in the picture":"صورت در تصویر مشخص نیست","The input image is not suitable":"تصویر ورودی مناسب نیست","An error occurred, please check again":"خطایی رخ داده است، لطفاً دوباره بررسی کنید","Camera permission denied.":"اجازه دوربین رد شد.","Unable to access the camera.":"دسترسی به دوربین امکان پذیر نیست.","validation.blurry":"تصویر شما تار است","validation.eyeGlass":"عینک داری","validation.brightness":"نور صورت شما مناسب نیست","validation.neutralFace":"صورت خنثی نیست (شاید لبخند بزنید)","Image is not suitable":"تصویر مناسب نیست","Check how you can improve your skin with the proper product and routine":"بررسی کنید که چگونه می توانید پوست خود را با محصول مناسب و روتین بهبود بخشید","There are no products to display":"هیچ محصولی برای نمایش وجود ندارد","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"برای از بین بردن کثیفی، چربی و ناخالصی ها، با شستن صورت خود شروع کنید. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"از یک تونر برای متعادل کردن pH پوست خود استفاده کنید و هر گونه باقیمانده را از بین ببرید.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"از سرم غلیظی استفاده کنید که نگرانی های خاصی را هدف قرار می دهد، مانند روشن کننده یا ضد پیری. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"کرم دور چشم را به آرامی دور دور چشم بزنید تا آبرسانی کند و پف یا سیاهی دور چشم را کاهش دهد.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"درمان نقطه ای را روی هر ناحیه مشکل دار مانند آکنه یا لک انجام دهید. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"با استفاده از مرطوب کننده ای که مناسب نوع پوست شما است، هیدراتاسیون خود را حفظ کنید. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"با استفاده از کرم ضد آفتاب با طیف وسیع حفاظت از پوست خود در برابر اشعه های مضر UV محافظت کنید. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"یک روغن سبک وزن روی صورت بمالید تا رطوبت آن را ببندد و به پوست شما درخشندگی ببخشد. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"از یک کرم شب غنی برای کمک به ترمیم و ترمیم پوست در هنگام خواب استفاده کنید. ","Cleanser":"پاک کننده","Toner":"تونر","Serum":"سرم","Eye Cream":"کرم دور چشم","Spot Treatment":"درمان لکه","Moisturizer":"مرطوب کننده","Sunscreen":"ضد آفتاب","Face Oil":"روغن صورت","Night Cream":"کرم شب","Add all to cart":"همه را به سبد خرید اضافه کنید","All Products":"همه محصولات","validation.faceObstruction":"احتمالاً چیزی روی سطح پوست صورت وجود دارد (مو یا سوراخ کردن)","Product added to cart":"محصول به سبد خرید اضافه شد","products added to cart":"محصولات اضافه شده به سبد خرید","You reached the limits of your plan":"شما به محدودیت های برنامه خود رسیدید","Please renew your service for access":"لطفاً سرویس خود را برای دسترسی تمدید کنید","See the website’s privacy policy":"سیاست حفظ حریم خصوصی وب سایت را ببینید"}')},cs:{translation:JSON.parse('{"Skin Analysis":"Analýza pleti","Look Straight":"Podívejte se rovně","Face Position":"Pozice obličeje","Lighting":"Osvětlení","Good":"Dobrý","Not Good":"Není dobrý","Bad":"Špatný","Fair":"Veletrh","Powered by":"Provozováno na","Your distance is close to the camera":"Vaše vzdálenost je blízko fotoaparátu","Keep your face inside the circle":"Udržujte svůj obličej uvnitř kruhu","Please stand in front of the camera":"Postavte se prosím před kameru","There is more than one person in the picture":"Na obrázku je více než jedna osoba","Drag & Drop":"Drag & Drop","Or":"Nebo","browse":"prohlížet","Supports: JPEG, JPG, PNG":"Podporuje: JPEG, JPG, PNG","Release to Upload":"Uvolněte pro nahrání","file not supported":"soubor není podporován","Sending Facial Data...":"Odesílání údajů o obličeji...","Scanning Face...":"Skenování obličeje...","Analyzing Facial Attributes...":"Analýza rysů obličeje...","AI Crafting Report..":"Zpráva o tvorbě AI..","Skin Info":"Informace o kůži","Fine Wrinkles":"Jemné vrásky","Eye Wrinkles":"Oční vrásky","Deep Wrinkles":"Hluboké vrásky","Dark Circle":"Temný kruh","Eye Bag":"Oční vak","Pores":"Póry","Pigment":"Pigment","Redness":"Zarudnutí","Oiliness":"Olejnatost","Acnes":"Akné","Acne":"Akné","Skin Health":"Zdraví kůže","Instructions":"Instrukce","Get Ready to Start Skin Analysis":"Připravte se na analýzu pleti","Remove the glasses":"Odstraňte brýle","Clean your face":"Vyčistěte si obličej","Be in the right light":"Buďte ve správném světle","Be neutral face and fix position":"Buďte neutrální a zafixujte si pozici","Get Started":"Začněte","privacy.text":"Objevte, jak vylepšit svou pleť pomocí správných produktů a rutiny šité na míru vám. Nahrajte své selfie pro personalizovaná doporučení a buďte si jisti, že váš obrázek bude po analýze smazán","See our":"Podívejte se na naše","Privacy Policy":"Zásady ochrany osobních údajů","for more information":"pro více informací","your picture quality is blurry":"kvalita vašeho obrázku je rozmazaná","be wearing glasses":"nosit brýle","please remove them":"prosím odstraňte je","Improve photo quality":"Zlepšete kvalitu fotografií","We noticed you might":"Všimli jsme si, že možná","and":"a","for better results":"pro lepší výsledky","Tips for taking better selfies":"Tipy pro pořizování lepších selfie","Continue":"Pokračovat","Generate routine for you":"Vytvořte pro vás rutinu","Re-take":"Znovudobytí","Get recommended products!":"Získejte doporučené produkty!","Recommendation Products":"Doporučené produkty","Products That Just Work For you":"Produkty, které pro vás fungují","My Skin Report":"Zpráva o mé pleti","Add to cart":"Přidat do košíku","Add again":"Přidejte znovu","Checkout":"Pokladna","My Routines":"Moje rutiny","Your":"Vaše","Routine":"Rutina","Morning":"Ráno","Night":"Noc","Error":"Chyba","The face is not visible in the picture":"Na obrázku není vidět obličej","The input image is not suitable":"Vstupní obrázek není vhodný","An error occurred, please check again":"Došlo k chybě, zkontrolujte prosím znovu","Camera permission denied.":"Povolení fotoaparátu odepřeno.","Unable to access the camera.":"Nelze získat přístup ke kameře.","validation.blurry":"Váš obrázek je rozmazaný","validation.eyeGlass":"Máš brýle","validation.brightness":"Světlo na vaší tváři není vhodné","validation.neutralFace":"Obličej není neutrální (můžete mít úsměv)","Image is not suitable":"Obrázek není vhodný","Check how you can improve your skin with the proper product and routine":"Podívejte se, jak můžete zlepšit svou pleť správným produktem a rutinou","There are no products to display":"Nejsou žádné produkty k zobrazení","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Začněte umytím obličeje, abyste odstranili špínu, olej a nečistoty. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Použijte tonikum k vyrovnání pH pokožky a odstranění zbytků.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Aplikujte koncentrované sérum zaměřené na specifické problémy, jako je rozjasnění nebo anti-aging. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Jemně vmasírujte oční krém do okolí očí pro hydrataci a redukci otoků nebo tmavých kruhů.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Aplikujte bodové ošetření na jakékoli problémové oblasti, jako je akné nebo skvrny. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Uzamkněte hydrataci aplikací hydratačního krému, který vyhovuje vašemu typu pleti. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Chraňte svou pokožku před škodlivými UV paprsky používáním opalovacího krému se širokospektrální ochranou. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Naneste lehký obličejový olej, který uzavře vlhkost a dodá vaší pleti zářivý lesk. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Používejte bohatý noční krém, který vám pomůže opravit a obnovit pokožku během spánku. ","Cleanser":"Čistič","Toner":"Toner","Serum":"Sérum","Eye Cream":"Oční krém","Spot Treatment":"Bodové ošetření","Moisturizer":"Zvlhčovač","Sunscreen":"Opalovací krém","Face Oil":"Olej na obličej","Night Cream":"Noční krém","Add all to cart":"Přidejte vše do košíku","All Products":"Všechny produkty","validation.faceObstruction":"Pravděpodobně je něco na povrchu pokožky obličeje (vlasy nebo piercing)","Product added to cart":"Produkt přidán do košíku","products added to cart":"produkty přidány do košíku","You reached the limits of your plan":"Dosáhli jste limitů svého plánu","Please renew your service for access":"Obnovte svou službu pro přístup","See the website’s privacy policy":"Podívejte se na zásady ochrany osobních údajů webu"}')},id:{translation:JSON.parse('{"Skin Analysis":"Analisis Kulit","Look Straight":"Lihat Lurus","Face Position":"Posisi Wajah","Lighting":"Penerangan","Good":"Bagus","Not Good":"Tidak bagus","Bad":"Buruk","Fair":"Adil","Powered by":"Didukung oleh","Your distance is close to the camera":"Jarak Anda dekat dengan kamera","Keep your face inside the circle":"Pertahankan wajah Anda di dalam lingkaran","Please stand in front of the camera":"Silakan berdiri di depan kamera","There is more than one person in the picture":"Ada lebih dari satu orang di dalam gambar","Drag & Drop":"Seret & Jatuhkan","Or":"Atau","browse":"jelajahi","Supports: JPEG, JPG, PNG":"Mendukung: JPEG, JPG, PNG","Release to Upload":"Lepaskan untuk Mengunggah","file not supported":"berkas tidak didukung","Sending Facial Data...":"Mengirim Data Wajah...","Scanning Face...":"Memindai Wajah...","Analyzing Facial Attributes...":"Menganalisis Atribut Wajah...","AI Crafting Report..":"Laporan Pembuatan AI..","Skin Info":"Info Kulit","Fine Wrinkles":"Kerutan Halus","Eye Wrinkles":"Kerutan Mata","Deep Wrinkles":"Kerutan Dalam","Dark Circle":"Lingkaran Hitam","Eye Bag":"Kantong Mata","Pores":"pori-pori","Pigment":"Pigmen","Redness":"Kemerahan","Oiliness":"Sifat manis mulut","Acnes":"Jerawat","Acne":"Jerawat","Skin Health":"Kesehatan Kulit","Instructions":"instruksi","Get Ready to Start Skin Analysis":"Bersiaplah untuk Memulai Analisis Kulit","Remove the glasses":"Lepaskan kacamatanya","Clean your face":"Bersihkan wajahmu","Be in the right light":"Berada dalam cahaya yang tepat","Be neutral face and fix position":"Bersikaplah netral dan perbaiki posisi","Get Started":"Memulai","privacy.text":"Temukan cara mempercantik kulit Anda dengan produk dan rutinitas yang tepat yang disesuaikan untuk Anda. Unggah selfie Anda untuk mendapatkan rekomendasi yang dipersonalisasi, dan yakinlah, gambar Anda akan dihapus setelah dianalisis","See our":"Lihat kami","Privacy Policy":"Kebijakan Privasi","for more information":"untuk informasi lebih lanjut","your picture quality is blurry":"kualitas gambar Anda buram","be wearing glasses":"memakai kacamata","please remove them":"tolong hapus mereka","Improve photo quality":"Tingkatkan kualitas foto","We noticed you might":"Kami memperhatikan Anda mungkin","and":"Dan","for better results":"untuk hasil yang lebih baik","Tips for taking better selfies":"Kiat untuk mengambil foto selfie yang lebih baik","Continue":"Melanjutkan","Generate routine for you":"Hasilkan rutinitas untuk Anda","Re-take":"Merebut kembali","Get recommended products!":"Dapatkan produk yang direkomendasikan!","Recommendation Products":"Produk Rekomendasi","Products That Just Work For you":"Produk Yang Cocok Untuk Anda","My Skin Report":"Laporan Kulit Saya","Add to cart":"Tambahkan ke troli","Add again":"Tambahkan lagi","Checkout":"Check-out","My Routines":"Rutinitas saya","Your":"Milikmu","Routine":"Rutin","Morning":"Pagi","Night":"Malam","Error":"Kesalahan","The face is not visible in the picture":"Wajahnya tidak terlihat di gambar","The input image is not suitable":"Gambar masukan tidak sesuai","An error occurred, please check again":"Terjadi kesalahan, harap periksa kembali","Camera permission denied.":"Izin kamera ditolak.","Unable to access the camera.":"Tidak dapat mengakses kamera.","validation.blurry":"Gambar Anda buram","validation.eyeGlass":"Anda punya kacamata","validation.brightness":"Cahaya di wajahmu tidak cocok","validation.neutralFace":"Wajahnya tidak netral (Anda mungkin tersenyum)","Image is not suitable":"Gambar tidak cocok","Check how you can improve your skin with the proper product and routine":"Periksa bagaimana Anda dapat memperbaiki kulit Anda dengan produk dan rutinitas yang tepat","There are no products to display":"Tidak ada produk untuk ditampilkan","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Mulailah dengan mencuci muka untuk menghilangkan kotoran, minyak, dan kotoran. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Gunakan toner untuk menyeimbangkan pH kulit Anda dan menghilangkan sisa residu.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Oleskan serum terkonsentrasi yang menargetkan masalah tertentu, seperti mencerahkan atau anti penuaan. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Tepuk-tepuk krim mata dengan lembut di sekitar area mata untuk melembabkan dan mengurangi bengkak atau lingkaran hitam.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Oleskan perawatan spot pada area yang bermasalah, seperti jerawat atau noda. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Kunci hidrasi dengan mengoleskan pelembab yang sesuai dengan jenis kulit Anda. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Lindungi kulit Anda dari sinar UV yang berbahaya dengan menggunakan tabir surya dengan perlindungan spektrum luas. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Oleskan minyak wajah ringan untuk mengunci kelembapan dan membuat kulit Anda bersinar. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Gunakan krim malam yang kaya untuk membantu memperbaiki dan memulihkan kulit Anda saat Anda tidur. ","Cleanser":"Pembersih","Toner":"toner","Serum":"Serum","Eye Cream":"Krim Mata","Spot Treatment":"Perawatan Tempat","Moisturizer":"Pelembab","Sunscreen":"Tabir surya","Face Oil":"Minyak Wajah","Night Cream":"Krim Malam","Add all to cart":"Tambahkan semua ke troli","All Products":"Semua Produk","validation.faceObstruction":"Kemungkinan ada sesuatu pada permukaan kulit wajah (rambut atau tindik)","Product added to cart":"Produk ditambahkan ke troli","products added to cart":"produk ditambahkan ke keranjang","You reached the limits of your plan":"Anda mencapai batas rencana Anda","Please renew your service for access":"Harap perbarui layanan Anda untuk akses","See the website’s privacy policy":"Lihat kebijakan privasi situs web"}')},lv:{translation:JSON.parse('{"Skin Analysis":"Ādas analīze","Look Straight":"Skaties taisni","Face Position":"Sejas pozīcija","Lighting":"Apgaismojums","Good":"Labi","Not Good":"Nav labi","Bad":"Slikti","Fair":"Godīgi","Powered by":"Nodrošina","Your distance is close to the camera":"Jūsu attālums ir tuvu kamerai","Keep your face inside the circle":"Turiet seju apļa iekšpusē","Please stand in front of the camera":"Lūdzu, stāviet kameras priekšā","There is more than one person in the picture":"Attēlā ir vairāk nekā viens cilvēks","Drag & Drop":"Velciet un nometiet","Or":"Or","browse":"pārlūkot","Supports: JPEG, JPG, PNG":"Atbalsta: JPEG, JPG, PNG","Release to Upload":"Atlaidiet, lai augšupielādētu","file not supported":"fails netiek atbalstīts","Sending Facial Data...":"Notiek sejas datu sūtīšana...","Scanning Face...":"Notiek sejas skenēšana...","Analyzing Facial Attributes...":"Notiek sejas īpašību analīze...","AI Crafting Report..":"AI izstrādes ziņojums..","Skin Info":"Informācija par ādu","Fine Wrinkles":"Smalkas grumbas","Eye Wrinkles":"Acu grumbas","Deep Wrinkles":"Dziļas grumbas","Dark Circle":"Tumšais aplis","Eye Bag":"Acu maisiņš","Pores":"Poras","Pigment":"Pigments","Redness":"Apsārtums","Oiliness":"Eļļainība","Acnes":"Pinnes","Acne":"Pinnes","Skin Health":"Ādas veselība","Instructions":"Norādījumi","Get Ready to Start Skin Analysis":"Esiet gatavs sākt ādas analīzi","Remove the glasses":"Noņemiet brilles","Clean your face":"Notīriet seju","Be in the right light":"Esiet pareizajā gaismā","Be neutral face and fix position":"Esiet neitrāla seja un nofiksējiet pozīciju","Get Started":"Sāciet darbu","privacy.text":"Atklājiet, kā uzlabot savu ādu ar jums piemērotiem produktiem un rutīnu. Augšupielādējiet savu pašbildi, lai saņemtu personalizētus ieteikumus, un esiet drošs, pēc analīzes jūsu attēls tiks dzēsts","See our":"Skatiet mūsu","Privacy Policy":"Privātuma politika","for more information":"lai iegūtu vairāk informācijas","your picture quality is blurry":"jūsu attēla kvalitāte ir izplūdusi","be wearing glasses":"valkāt brilles","please remove them":"lūdzu, noņemiet tos","Improve photo quality":"Uzlabojiet fotoattēlu kvalitāti","We noticed you might":"Mēs pamanījām, ka jūs varētu","and":"un","for better results":"labākiem rezultātiem","Tips for taking better selfies":"Padomi labāku selfiju uzņemšanai","Continue":"Turpināt","Generate routine for you":"Izveidojiet rutīnu jums","Re-take":"Ņem atkārtoti","Get recommended products!":"Iegūstiet ieteicamos produktus!","Recommendation Products":"Ieteikuma produkti","Products That Just Work For you":"Produkti, kas darbojas tieši jums","My Skin Report":"Pārskats par manu ādu","Add to cart":"Pievienot grozam","Add again":"Pievienojiet vēlreiz","Checkout":"Izrakstīšanās","My Routines":"Manas rutīnas","Your":"Jūsu","Routine":"Rutīna","Morning":"Rīts","Night":"Nakts","Error":"Kļūda","The face is not visible in the picture":"Seja bildē nav redzama","The input image is not suitable":"Ievades attēls nav piemērots","An error occurred, please check again":"Radās kļūda. Lūdzu, pārbaudiet vēlreiz","Camera permission denied.":"Kameras atļauja liegta.","Unable to access the camera.":"Nevar piekļūt kamerai.","validation.blurry":"Jūsu attēls ir izplūdis","validation.eyeGlass":"Tev ir brilles","validation.brightness":"Gaisma uz jūsu sejas nav piemērota","validation.neutralFace":"Seja nav neitrāla (jums var būt smaids)","Image is not suitable":"Attēls nav piemērots","Check how you can improve your skin with the proper product and routine":"Pārbaudiet, kā jūs varat uzlabot savu ādu ar atbilstošu produktu un rutīnu","There are no products to display":"Nav neviena produkta, ko parādīt","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Sāciet ar sejas mazgāšanu, lai noņemtu netīrumus, eļļu un netīrumus. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Izmantojiet toniku, lai līdzsvarotu ādas pH un noņemtu visus atlikumus.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Uzklājiet koncentrētu serumu, kas vērsts uz specifiskām problēmām, piemēram, balināšanu vai pretnovecošanos. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Viegli uzklājiet acu krēmu ap acu zonu, lai mitrinātu un samazinātu pietūkumu vai tumšos lokus.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Uzklājiet traipu uz visām problemātiskajām zonām, piemēram, pinnēm vai plankumiem. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Nofiksējiet hidratāciju, uzklājot mitrinātāju, kas atbilst jūsu ādas tipam. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Aizsargājiet savu ādu no kaitīgiem UV stariem, izmantojot sauļošanās līdzekli ar plaša spektra aizsardzību. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Uzklājiet vieglu sejas eļļu, lai nostiprinātu mitrumu un piešķirtu ādai mirdzošu mirdzumu. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Izmantojiet bagātīgu nakts krēmu, lai palīdzētu atjaunot un atjaunot ādu miega laikā. ","Cleanser":"Tīrīšanas līdzeklis","Toner":"Toneris","Serum":"Serums","Eye Cream":"Acu krēms","Spot Treatment":"Vietu ārstēšana","Moisturizer":"Mitrinātājs","Sunscreen":"Saules aizsargkrēms","Face Oil":"Sejas eļļa","Night Cream":"Nakts krēms","Add all to cart":"Pievienot visu grozam","All Products":"Visi produkti","validation.faceObstruction":"Visticamāk, uz sejas ādas virsmas ir kaut kas (mati vai pīrsings)","Product added to cart":"Prece pievienota grozam","products added to cart":"produkti pievienoti grozam","You reached the limits of your plan":"Jūs sasniedzāt sava plāna robežas","Please renew your service for access":"Lūdzu, atjaunojiet savu pakalpojumu, lai piekļūtu","See the website’s privacy policy":"Skatiet vietnes privātuma politiku"}')},no:{translation:JSON.parse('{"Skin Analysis":"Hudanalyse","Look Straight":"Se rett ut","Face Position":"Ansiktsposisjon","Lighting":"Belysning","Good":"God","Not Good":"Ikke bra","Bad":"Dårlig","Fair":"Rettferdig","Powered by":"Drevet av","Your distance is close to the camera":"Avstanden din er nær kameraet","Keep your face inside the circle":"Hold ansiktet innenfor sirkelen","Please stand in front of the camera":"Vennligst stå foran kameraet","There is more than one person in the picture":"Det er mer enn én person på bildet","Drag & Drop":"Dra og slipp","Or":"Eller","browse":"bla","Supports: JPEG, JPG, PNG":"Støtter: JPEG, JPG, PNG","Release to Upload":"Slipp for å laste opp","file not supported":"fil støttes ikke","Sending Facial Data...":"Sender ansiktsdata...","Scanning Face...":"Skanner ansikt...","Analyzing Facial Attributes...":"Analyserer ansiktsegenskaper...","AI Crafting Report..":"AI Crafting Report..","Skin Info":"Hudinformasjon","Fine Wrinkles":"Fine rynker","Eye Wrinkles":"Øye rynker","Deep Wrinkles":"Dype rynker","Dark Circle":"Mørk sirkel","Eye Bag":"Øyeveske","Pores":"Porer","Pigment":"Pigment","Redness":"Rødhet","Oiliness":"Fethet","Acnes":"Akne","Acne":"Akne","Skin Health":"Hudhelse","Instructions":"Instruksjoner","Get Ready to Start Skin Analysis":"Gjør deg klar til å starte hudanalyse","Remove the glasses":"Fjern glassene","Clean your face":"Rengjør ansiktet ditt","Be in the right light":"Vær i det rette lyset","Be neutral face and fix position":"Vær nøytral i ansiktet og fiks posisjon","Get Started":"Kom i gang","privacy.text":"Oppdag hvordan du kan forbedre huden din med de riktige produktene og rutinene som er skreddersydd for deg. Last opp selfien din for personlig tilpassede anbefalinger, og vær sikker på at bildet ditt vil bli slettet etter analyse","See our":"Se vår","Privacy Policy":"Personvernerklæring","for more information":"for mer informasjon","your picture quality is blurry":"bildekvaliteten din er uskarp","be wearing glasses":"ha på briller","please remove them":"vennligst fjern dem","Improve photo quality":"Forbedre bildekvaliteten","We noticed you might":"Vi la merke til at du kanskje","and":"og","for better results":"for bedre resultater","Tips for taking better selfies":"Tips for å ta bedre selfies","Continue":"Fortsette","Generate routine for you":"Generer rutiner for deg","Re-take":"Ta på nytt","Get recommended products!":"Få anbefalte produkter!","Recommendation Products":"Anbefalte produkter","Products That Just Work For you":"Produkter som bare fungerer for deg","My Skin Report":"Min hudrapport","Add to cart":"Legg i handlekurv","Add again":"Legg til igjen","Checkout":"Kasse","My Routines":"Mine rutiner","Your":"Din","Routine":"Rutine","Morning":"Morgen","Night":"Natt","Error":"Feil","The face is not visible in the picture":"Ansiktet er ikke synlig på bildet","The input image is not suitable":"Inndatabildet er ikke egnet","An error occurred, please check again":"Det oppsto en feil, vennligst sjekk på nytt","Camera permission denied.":"Kameratillatelse nektet.","Unable to access the camera.":"Får ikke tilgang til kameraet.","validation.blurry":"Bildet ditt er uskarpt","validation.eyeGlass":"Du har briller","validation.brightness":"Lyset i ansiktet ditt er ikke egnet","validation.neutralFace":"Ansiktet er ikke nøytralt (du kan ha et smil)","Image is not suitable":"Bildet er ikke egnet","Check how you can improve your skin with the proper product and routine":"Sjekk hvordan du kan forbedre huden din med riktig produkt og rutine","There are no products to display":"Det er ingen produkter å vise","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Start med å vaske ansiktet for å fjerne smuss, olje og urenheter. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Bruk en toner for å balansere hudens pH og fjerne eventuelle rester.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Påfør et konsentrert serum rettet mot spesifikke bekymringer, som lysere eller anti-aldring. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Klapp forsiktig øyekrem rundt øyeområdet for å fukte og redusere hevelser eller mørke ringer.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Påfør punktbehandling på alle problemområder, for eksempel akne eller urenheter. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Lås på fuktighet ved å bruke en fuktighetskrem som passer din hudtype. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Beskytt huden din mot skadelige UV-stråler ved å bruke solkrem med bredspektret beskyttelse. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Påfør en lett ansiktsolje for å forsegle fuktighet og gi huden din en strålende glød. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Bruk en fyldig nattkrem for å reparere og gjenopprette huden mens du sover. ","Cleanser":"Rensemiddel","Toner":"Toner","Serum":"Serum","Eye Cream":"Øyekrem","Spot Treatment":"Spotbehandling","Moisturizer":"Fuktighetskrem","Sunscreen":"Solkrem","Face Oil":"Ansiktsolje","Night Cream":"Nattkrem","Add all to cart":"Legg alt i handlekurven","All Products":"Alle produkter","validation.faceObstruction":"Det er sannsynligvis noe på overflaten av ansiktshuden (hår eller piercing)","Product added to cart":"Produktet er lagt i handlekurven","products added to cart":"produkter lagt i handlekurven","You reached the limits of your plan":"Du nådde grensene for planen din","Please renew your service for access":"Vennligst forny tjenesten for tilgang","See the website’s privacy policy":"Se nettstedets personvernerklæring"}')},da:{translation:JSON.parse('{"Skin Analysis":"Hudanalyse","Look Straight":"Se lige ud","Face Position":"Ansigtsposition","Lighting":"Belysning","Good":"God","Not Good":"Ikke godt","Bad":"Dårligt","Fair":"Retfærdig","Powered by":"Drevet af","Your distance is close to the camera":"Din afstand er tæt på kameraet","Keep your face inside the circle":"Hold dit ansigt inde i cirklen","Please stand in front of the camera":"Stil dig venligst foran kameraet","There is more than one person in the picture":"Der er mere end én person på billedet","Drag & Drop":"Træk og slip","Or":"Eller","browse":"gennemse","Supports: JPEG, JPG, PNG":"Understøtter: JPEG, JPG, PNG","Release to Upload":"Slip for at uploade","file not supported":"fil understøttes ikke","Sending Facial Data...":"Sender ansigtsdata...","Scanning Face...":"Scanner ansigt...","Analyzing Facial Attributes...":"Analyse af ansigtsegenskaber...","AI Crafting Report..":"AI Crafting Report..","Skin Info":"Hud info","Fine Wrinkles":"Fine rynker","Eye Wrinkles":"Øjenrynker","Deep Wrinkles":"Dybe rynker","Dark Circle":"Mørk cirkel","Eye Bag":"Øjentaske","Pores":"Porer","Pigment":"Pigment","Redness":"Rødme","Oiliness":"Fedtethed","Acnes":"Acne","Acne":"Acne","Skin Health":"Hudsundhed","Instructions":"Instruktioner","Get Ready to Start Skin Analysis":"Gør dig klar til at starte hudanalyse","Remove the glasses":"Fjern glassene","Clean your face":"Rens dit ansigt","Be in the right light":"Vær i det rigtige lys","Be neutral face and fix position":"Vær neutralt ansigt og fastgør position","Get Started":"Kom i gang","privacy.text":"Opdag, hvordan du forbedrer din hud med de rigtige produkter og rutiner, der er skræddersyet til dig. Upload din selfie for at få personlige anbefalinger, og vær sikker på, dit billede vil blive slettet efter analyse","See our":"Se vores","Privacy Policy":"Privatlivspolitik","for more information":"for mere information","your picture quality is blurry":"din billedkvalitet er sløret","be wearing glasses":"have briller på","please remove them":"venligst fjern dem","Improve photo quality":"Forbedre billedkvaliteten","We noticed you might":"Vi har bemærket, at du måske","and":"og","for better results":"for bedre resultater","Tips for taking better selfies":"Tips til at tage bedre selfies","Continue":"Fortsætte","Generate routine for you":"Skab rutine for dig","Re-take":"Gentag","Get recommended products!":"Få anbefalede produkter!","Recommendation Products":"Anbefalede produkter","Products That Just Work For you":"Produkter, der bare fungerer for dig","My Skin Report":"Min hud rapport","Add to cart":"Tilføj til kurv","Add again":"Tilføj igen","Checkout":"Checkout","My Routines":"Mine rutiner","Your":"Dine","Routine":"Rutine","Morning":"Morgen","Night":"Nat","Error":"Fejl","The face is not visible in the picture":"Ansigtet er ikke synligt på billedet","The input image is not suitable":"Indgangsbilledet er ikke egnet","An error occurred, please check again":"Der opstod en fejl. Tjek venligst igen","Camera permission denied.":"Kameratilladelse nægtet.","Unable to access the camera.":"Kan ikke få adgang til kameraet.","validation.blurry":"Dit billede er sløret","validation.eyeGlass":"Du har briller","validation.brightness":"Lyset på dit ansigt er ikke egnet","validation.neutralFace":"Ansigtet er ikke neutralt (du kan have et smil)","Image is not suitable":"Billedet er ikke egnet","Check how you can improve your skin with the proper product and routine":"Tjek, hvordan du kan forbedre din hud med det rigtige produkt og rutine","There are no products to display":"Der er ingen produkter at vise","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Start med at vaske dit ansigt for at fjerne snavs, olie og urenheder. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Brug en toner til at afbalancere din huds pH og fjerne eventuelle rester.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Påfør et koncentreret serum rettet mod specifikke bekymringer, såsom lysnende eller anti-aging. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Dup forsigtigt øjencremen omkring øjenområdet for at fugte og reducere hævelser eller mørke rande.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Påfør pletbehandling på alle problemområder, såsom acne eller pletter. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Lås på hydrering ved at påføre en fugtighedscreme, der passer til din hudtype. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Beskyt din hud mod skadelige UV-stråler ved at bruge solcreme med bredspektret beskyttelse. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Påfør en let ansigtsolie for at forsegle fugt og give din hud en strålende glød. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Brug en rig natcreme til at hjælpe med at reparere og genoprette din hud, mens du sover. ","Cleanser":"Rensemiddel","Toner":"Toner","Serum":"Serum","Eye Cream":"Øjencreme","Spot Treatment":"Pletbehandling","Moisturizer":"Fugtighedscreme","Sunscreen":"Solcreme","Face Oil":"Ansigtsolie","Night Cream":"Natcreme","Add all to cart":"Tilføj alt til indkøbskurven","All Products":"Alle produkter","validation.faceObstruction":"Der er sandsynligvis noget på overfladen af ​​ansigtshuden (hår eller piercing)","Product added to cart":"Produkt tilføjet til indkøbskurv","products added to cart":"produkter lagt i indkøbskurven","You reached the limits of your plan":"Du nåede grænserne for din plan","Please renew your service for access":"Forny venligst din tjeneste for at få adgang","See the website’s privacy policy":"Se hjemmesidens privatlivspolitik"}')},th:{translation:JSON.parse('{"Skin Analysis":"การวิเคราะห์ผิวหนัง","Look Straight":"ดูตรง","Face Position":"ตำแหน่งใบหน้า","Lighting":"แสงสว่าง","Good":"ดี","Not Good":"ไม่ดี","Bad":"แย่","Fair":"ยุติธรรม","Powered by":"ขับเคลื่อนโดย","Your distance is close to the camera":"ระยะห่างของคุณใกล้กับกล้อง","Keep your face inside the circle":"ให้ใบหน้าของคุณอยู่ในวงกลม","Please stand in front of the camera":"กรุณายืนหน้ากล้องครับ","There is more than one person in the picture":"มีคนมากกว่าหนึ่งคนในภาพ","Drag & Drop":"ลากและวาง","Or":"หรือ","browse":"เรียกดู","Supports: JPEG, JPG, PNG":"รองรับ: JPEG, JPG, PNG","Release to Upload":"ปล่อยเพื่ออัปโหลด","file not supported":"ไม่รองรับไฟล์","Sending Facial Data...":"กำลังส่งข้อมูลใบหน้า...","Scanning Face...":"กำลังสแกนใบหน้า...","Analyzing Facial Attributes...":"กำลังวิเคราะห์ลักษณะใบหน้า...","AI Crafting Report..":"รายงานการประดิษฐ์ AI..","Skin Info":"ข้อมูลผิวหนัง","Fine Wrinkles":"ริ้วรอยละเอียด","Eye Wrinkles":"ริ้วรอยรอบดวงตา","Deep Wrinkles":"ริ้วรอยลึก","Dark Circle":"วงกลมมืด","Eye Bag":"ถุงใต้ตา","Pores":"รูขุมขน","Pigment":"เม็ดสี","Redness":"รอยแดง","Oiliness":"ความมัน","Acnes":"สิว","Acne":"สิว","Skin Health":"สุขภาพผิว","Instructions":"คำแนะนำ","Get Ready to Start Skin Analysis":"เตรียมพร้อมเริ่มการวิเคราะห์ผิวหนัง","Remove the glasses":"ถอดแว่นตาออก","Clean your face":"ทำความสะอาดใบหน้าของคุณ","Be in the right light":"อยู่ในแสงที่เหมาะสม","Be neutral face and fix position":"ทำหน้าเป็นกลางและแก้ไขตำแหน่ง","Get Started":"เริ่มต้นเลย","privacy.text":"ค้นพบวิธีปรับปรุงผิวของคุณด้วยผลิตภัณฑ์ที่เหมาะสมและกิจวัตรที่เหมาะกับคุณ อัปโหลดภาพเซลฟี่ของคุณเพื่อรับคำแนะนำส่วนตัว และมั่นใจได้ว่าภาพของคุณจะถูกลบหลังการวิเคราะห์","See our":"ดูของเรา","Privacy Policy":"นโยบายความเป็นส่วนตัว","for more information":"สำหรับข้อมูลเพิ่มเติม","your picture quality is blurry":"คุณภาพของภาพของคุณไม่ชัด","be wearing glasses":"จะสวมแว่นตา","please remove them":"โปรดลบออก","Improve photo quality":"ปรับปรุงคุณภาพของภาพถ่าย","We noticed you might":"เราสังเกตเห็นว่าคุณอาจ","and":"และ","for better results":"เพื่อผลลัพธ์ที่ดีกว่า","Tips for taking better selfies":"เคล็ดลับในการเซลฟี่ให้ดีขึ้น","Continue":"ดำเนินการต่อ","Generate routine for you":"สร้างกิจวัตรสำหรับคุณ","Re-take":"ถ่ายใหม่","Get recommended products!":"รับสินค้าแนะนำ!","Recommendation Products":"สินค้าแนะนำ","Products That Just Work For you":"ผลิตภัณฑ์ที่เหมาะกับคุณ","My Skin Report":"รายงานผิวของฉัน","Add to cart":"เพิ่มลงในรถเข็น","Add again":"เพิ่มอีกครั้ง","Checkout":"ชำระเงิน","My Routines":"กิจวัตรของฉัน","Your":"ของคุณ","Routine":"กิจวัตรประจำวัน","Morning":"เช้า","Night":"กลางคืน","Error":"ข้อผิดพลาด","The face is not visible in the picture":"ไม่เห็นใบหน้าในภาพ","The input image is not suitable":"รูปภาพที่ป้อนไม่เหมาะสม","An error occurred, please check again":"เกิดข้อผิดพลาด โปรดตรวจสอบอีกครั้ง","Camera permission denied.":"การอนุญาตกล้องถูกปฏิเสธ","Unable to access the camera.":"ไม่สามารถเข้าถึงกล้องได้","validation.blurry":"ภาพของคุณเบลอ","validation.eyeGlass":"คุณมีแว่นตา","validation.brightness":"แสงบนใบหน้าของคุณไม่เหมาะ","validation.neutralFace":"หน้าตาไม่เป็นกลาง (อาจยิ้มได้)","Image is not suitable":"รูปภาพไม่เหมาะสม","Check how you can improve your skin with the proper product and routine":"ตรวจสอบว่าคุณสามารถปรับปรุงผิวของคุณด้วยผลิตภัณฑ์และกิจวัตรที่เหมาะสมได้อย่างไร","There are no products to display":"ไม่มีสินค้าที่จะแสดง","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"เริ่มต้นด้วยการล้างหน้าเพื่อขจัดสิ่งสกปรก ความมัน และสิ่งสกปรก ","Use a toner to balance your skin’s pH and remove any leftover residue.":"ใช้โทนเนอร์เพื่อปรับสมดุล pH ของผิวและขจัดสิ่งตกค้าง","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"ใช้เซรั่มเข้มข้นโดยเน้นไปที่ข้อกังวลเฉพาะ เช่น ความกระจ่างใสหรือการต่อต้านวัย ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"แตะครีมบำรุงรอบดวงตาเบาๆ รอบดวงตาเพื่อเพิ่มความชุ่มชื้นและลดอาการบวมหรือรอยคล้ำ","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"ใช้ทรีทเมนต์เฉพาะจุดกับบริเวณที่มีปัญหา เช่น สิวหรือรอยตำหนิ ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"ล็อคความชุ่มชื้นด้วยการทามอยเจอร์ไรเซอร์ที่เหมาะกับสภาพผิวของคุณ ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"ปกป้องผิวของคุณจากรังสียูวีที่เป็นอันตรายโดยใช้ครีมกันแดดที่มีการป้องกันในวงกว้าง ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"ทาน้ำมันบำรุงผิวหน้าเนื้อบางเบาเพื่อกักเก็บความชุ่มชื้นและให้ผิวของคุณเปล่งประกายเปล่งประกาย ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"ใช้ไนท์ครีมเข้มข้นเพื่อช่วยซ่อมแซมและฟื้นฟูผิวขณะนอนหลับ ","Cleanser":"คลีนเซอร์","Toner":"ผงหมึก","Serum":"เซรั่ม","Eye Cream":"ครีมบำรุงรอบดวงตา","Spot Treatment":"การรักษาเฉพาะจุด","Moisturizer":"มอยเจอร์ไรเซอร์","Sunscreen":"ครีมกันแดด","Face Oil":"น้ำมันทาหน้า","Night Cream":"ไนท์ครีม","Add all to cart":"เพิ่มทั้งหมดลงในรถเข็น","All Products":"สินค้าทั้งหมด","validation.faceObstruction":"อาจมีอะไรบางอย่างบนผิวหน้า (ผม หรือ เจาะ)","Product added to cart":"สินค้าถูกเพิ่มลงตะกร้าแล้ว","products added to cart":"สินค้าถูกเพิ่มลงตะกร้า","You reached the limits of your plan":"คุณถึงขีดจำกัดของแผนของคุณแล้ว","Please renew your service for access":"โปรดต่ออายุบริการของคุณเพื่อการเข้าถึง","See the website’s privacy policy":"ดูนโยบายความเป็นส่วนตัวของเว็บไซต์"}')},sv:{translation:JSON.parse('{"Skin Analysis":"Hudanalys","Look Straight":"Se rak ut","Face Position":"Ansiktsposition","Lighting":"Belysning","Good":"Bra","Not Good":"Inte bra","Bad":"Dålig","Fair":"Rättvis","Powered by":"Drivs av","Your distance is close to the camera":"Ditt avstånd är nära kameran","Keep your face inside the circle":"Håll ditt ansikte inom cirkeln","Please stand in front of the camera":"Vänligen ställ dig framför kameran","There is more than one person in the picture":"Det är mer än en person på bilden","Drag & Drop":"Dra och släpp","Or":"Eller","browse":"bläddra","Supports: JPEG, JPG, PNG":"Stöder: JPEG, JPG, PNG","Release to Upload":"Släpp för att ladda upp","file not supported":"fil stöds inte","Sending Facial Data...":"Skickar ansiktsdata...","Scanning Face...":"Skannar ansikte...","Analyzing Facial Attributes...":"Analyserar ansiktsegenskaper...","AI Crafting Report..":"AI Crafting Report..","Skin Info":"Hudinformation","Fine Wrinkles":"Fina rynkor","Eye Wrinkles":"Ögonrynkor","Deep Wrinkles":"Djupa rynkor","Dark Circle":"Mörk cirkel","Eye Bag":"Ögonväska","Pores":"Porer","Pigment":"Pigment","Redness":"Rodnad","Oiliness":"Fetighet","Acnes":"Acne","Acne":"Acne","Skin Health":"Hudens hälsa","Instructions":"Instruktioner","Get Ready to Start Skin Analysis":"Gör dig redo att börja hudanalys","Remove the glasses":"Ta bort glasen","Clean your face":"Rengör ditt ansikte","Be in the right light":"Var i rätt ljus","Be neutral face and fix position":"Var neutralt ansikte och fixa position","Get Started":"Kom igång","privacy.text":"Upptäck hur du förbättrar din hud med rätt produkter och rutiner som är skräddarsydda för dig. Ladda upp din selfie för personliga rekommendationer, och var säker, din bild kommer att raderas efter analys","See our":"Se vår","Privacy Policy":"Sekretesspolicy","for more information":"för mer information","your picture quality is blurry":"din bildkvalitet är suddig","be wearing glasses":"ha glasögon på sig","please remove them":"snälla ta bort dem","Improve photo quality":"Förbättra fotokvaliteten","We noticed you might":"Vi märkte att du kanske","and":"och","for better results":"för bättre resultat","Tips for taking better selfies":"Tips för att ta bättre selfies","Continue":"Fortsätta","Generate routine for you":"Skapa rutin åt dig","Re-take":"Ta om","Get recommended products!":"Få rekommenderade produkter!","Recommendation Products":"Rekommendationsprodukter","Products That Just Work For you":"Produkter som bara fungerar för dig","My Skin Report":"My Skin Report","Add to cart":"Lägg till i varukorgen","Add again":"Lägg till igen","Checkout":"Kassa","My Routines":"Mina rutiner","Your":"Din","Routine":"Rutin","Morning":"Morgon","Night":"Natt","Error":"Fel","The face is not visible in the picture":"Ansiktet syns inte på bilden","The input image is not suitable":"Ingångsbilden är inte lämplig","An error occurred, please check again":"Ett fel uppstod, kontrollera igen","Camera permission denied.":"Kameratillstånd nekad.","Unable to access the camera.":"Det går inte att komma åt kameran.","validation.blurry":"Din bild är suddig","validation.eyeGlass":"Du har glasögon","validation.brightness":"Ljuset i ditt ansikte är inte lämpligt","validation.neutralFace":"Ansiktet är inte neutralt (du kanske har ett leende)","Image is not suitable":"Bilden är inte lämplig","Check how you can improve your skin with the proper product and routine":"Kolla hur du kan förbättra din hud med rätt produkt och rutin","There are no products to display":"Det finns inga produkter att visa","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Börja med att tvätta ansiktet för att ta bort smuts, olja och orenheter. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Använd en ansiktsvatten för att balansera hudens pH och ta bort eventuella rester.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Applicera ett koncentrerat serum med inriktning på specifika problem, som ljusning eller anti-aging. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Klappa försiktigt ögonkrämen runt ögonområdet för att återfukta och minska svullnader eller mörka ringar.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Applicera punktbehandling på alla problemområden, såsom akne eller fläckar. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Lås in återfuktning genom att applicera en fuktkräm som passar din hudtyp. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Skydda din hud från skadliga UV-strålar genom att använda solskyddsmedel med brett spektrumskydd. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Applicera en lätt ansiktsolja för att täta in fukt och ge din hud en strålande lyster. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Använd en rik nattkräm för att reparera och återställa din hud medan du sover. ","Cleanser":"Rengöringsmedel","Toner":"Toner","Serum":"Serum","Eye Cream":"Ögonkräm","Spot Treatment":"Fläckbehandling","Moisturizer":"Fuktighetskräm","Sunscreen":"Solskyddsmedel","Face Oil":"Ansiktsolja","Night Cream":"Nattkräm","Add all to cart":"Lägg allt i varukorgen","All Products":"Alla produkter","validation.faceObstruction":"Det finns förmodligen något på ytan av ansiktshuden (hår eller piercing)","Product added to cart":"Produkten har lagts till i kundvagnen","products added to cart":"produkter läggs till i kundvagnen","You reached the limits of your plan":"Du nådde gränserna för din plan","Please renew your service for access":"Vänligen förnya din tjänst för åtkomst","See the website’s privacy policy":"Se webbplatsens sekretesspolicy"}')},es:{translation:JSON.parse('{"Skin Analysis":"Analyse de la peau","Look Straight":"Regardez droit","Face Position":"Position du visage","Lighting":"Éclairage","Good":"Bien","Not Good":"Pas bon","Bad":"Mauvais","Fair":"Équitable","Powered by":"Alimenté par","Your distance is close to the camera":"Votre distance est proche de la caméra","Keep your face inside the circle":"Gardez votre visage à l\'intérieur du cercle","Please stand in front of the camera":"Veuillez vous tenir devant la caméra","There is more than one person in the picture":"Il y a plus d\'une personne sur la photo","Drag & Drop":"Glisser-déposer","Or":"Ou","browse":"parcourir","Supports: JPEG, JPG, PNG":"Prise en charge : JPEG, JPG, PNG","Release to Upload":"Libérer pour télécharger","file not supported":"fichier non pris en charge","Sending Facial Data...":"Envoi de données faciales...","Scanning Face...":"Numérisation du visage...","Analyzing Facial Attributes...":"Analyse des attributs du visage...","AI Crafting Report..":"Rapport de création d\'IA.","Skin Info":"Informations sur la peau","Fine Wrinkles":"Arrugas finas","Eye Wrinkles":"Rides des yeux","Deep Wrinkles":"Rides profondes","Dark Circle":"Cercle noir","Eye Bag":"Sac pour les yeux","Pores":"Pores","Pigment":"Pigmento","Redness":"Rougeur","Oiliness":"Onctuosité","Acnes":"Acné","Acne":"Acné","Skin Health":"Santé de la peau","Instructions":"Instructions","Get Ready to Start Skin Analysis":"Préparez-vous à commencer l\'analyse de la peau","Remove the glasses":"Retirez les lunettes","Clean your face":"Nettoyez votre visage","Be in the right light":"Soyez sous le bon jour","Be neutral face and fix position":"Soyez neutre et fixez votre position","Get Started":"Commencer","privacy.text":"Descubra cómo mejorar su piel con los productos adecuados y la rutina adaptada a usted. Sube tu selfie para obtener recomendaciones personalizadas y ten la seguridad de que tu imagen se eliminará después del análisis.","See our":"Voir notre","Privacy Policy":"politique de confidentialité","for more information":"pour plus d\'informations","your picture quality is blurry":"la qualité de votre image est floue","be wearing glasses":"porter des lunettes","please remove them":"veuillez les supprimer","Improve photo quality":"Améliorer la qualité des photos","We noticed you might":"Nous avons remarqué que vous pourriez","and":"et","for better results":"pour de meilleurs résultats","Tips for taking better selfies":"Conseils pour prendre de meilleurs selfies","Continue":"Continuer","Generate routine for you":"Générez une routine pour vous","Re-take":"Reprendre","Get recommended products!":"Obtenez des produits recommandés !","Recommendation Products":"Produits recommandés","Products That Just Work For you":"Des produits qui fonctionnent juste pour vous","My Skin Report":"Mon rapport sur la peau","Add to cart":"Ajouter au panier","Add again":"Ajouter à nouveau","Checkout":"Vérifier","My Routines":"Mes routines","Your":"Ton","Routine":"Routine","Morning":"Matin","Night":"Nuit","Error":"Erreur","The face is not visible in the picture":"Le visage n\'est pas visible sur la photo","The input image is not suitable":"L\'image d\'entrée ne convient pas","An error occurred, please check again":"Une erreur s\'est produite, veuillez vérifier à nouveau","Camera permission denied.":"Autorisation de la caméra refusée.","Unable to access the camera.":"Impossible d\'accéder à la caméra.","validation.blurry":"Tu imagen esta borrosa","validation.eyeGlass":"tienes gafas","validation.brightness":"La luz en tu cara no es la adecuada.","validation.neutralFace":"La cara no es neutral (puede que tengas una sonrisa)","Image is not suitable":"L\'image ne convient pas","Check how you can improve your skin with the proper product and routine":"Vérifiez comment vous pouvez améliorer votre peau avec le produit et la routine appropriés","There are no products to display":"Il n\'y a aucun produit à afficher","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Commencez par vous laver le visage pour éliminer la saleté, l’huile et les impuretés. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Utilisez un tonique pour équilibrer le pH de votre peau et éliminer tout résidu restant.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Appliquez un sérum concentré ciblant des préoccupations spécifiques, comme éclaircissantes ou anti-âge. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Appliquez doucement la crème pour les yeux autour du contour des yeux pour hydrater et réduire les poches ou les cernes.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Appliquez un traitement localisé sur toutes les zones à problèmes, telles que l\'acné ou les imperfections. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Conservez l\'hydratation en appliquant une crème hydratante adaptée à votre type de peau. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Protégez votre peau des rayons UV nocifs en utilisant un écran solaire offrant une protection à large spectre. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Appliquez une huile légère pour le visage pour retenir l’humidité et donner à votre peau un éclat radieux. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Utilisez une crème de nuit riche pour aider à réparer et restaurer votre peau pendant que vous dormez. ","Cleanser":"Nettoyant","Toner":"Tonique","Serum":"Sérum","Eye Cream":"Crème pour les yeux","Spot Treatment":"Traitement localisé","Moisturizer":"Crème hydratante","Sunscreen":"Crème solaire","Face Oil":"Huile Visage","Night Cream":"Crème de Nuit","Add all to cart":"Añadir todo al carrito","All Products":"Todos los productos","validation.faceObstruction":"Probablemente haya algo en la superficie de la piel del rostro (pelo o piercing).","Product added to cart":"Producto agregado al carrito","products added to cart":"productos agregados al carrito","You reached the limits of your plan":"Llegaste a los límites de tu plan.","Please renew your service for access":"Por favor renueve su servicio para acceder","See the website’s privacy policy":"Ver la política de privacidad del sitio web"}')},ar:{translation:JSON.parse('{"Skin Analysis":"تحليل الجلد","Look Straight":"تبدو مستقيمة","Face Position":"موقف الوجه","Lighting":"إضاءة","Good":"جيد","Not Good":"ليس جيدا","Bad":"سيء","Fair":"عدل","Powered by":"مدعوم من","Your distance is close to the camera":"المسافة الخاصة بك قريبة من الكاميرا","Keep your face inside the circle":"أبقِ وجهك داخل الدائرة","Please stand in front of the camera":"يرجى الوقوف أمام الكاميرا","There is more than one person in the picture":"يوجد أكثر من شخص في الصورة","Drag & Drop":"السحب والإسقاط","Or":"أو","browse":"تصفح","Supports: JPEG, JPG, PNG":"يدعم: JPEG، JPG، PNG","Release to Upload":"الافراج للتحميل","file not supported":"الملف غير مدعوم","Sending Facial Data...":"إرسال بيانات الوجه...","Scanning Face...":"مسح الوجه...","Analyzing Facial Attributes...":"تحليل سمات الوجه...","AI Crafting Report..":"تقرير صياغة الذكاء الاصطناعي..","Skin Info":"معلومات الجلد","Fine Wrinkles":"التجاعيد الدقيقة","Eye Wrinkles":"تجاعيد العين","Deep Wrinkles":"التجاعيد العميقة","Dark Circle":"الدائرة المظلمة","Eye Bag":"حقيبة العين","Pores":"المسام","Pigment":"الصباغ","Redness":"احمرار","Oiliness":"زيتية","Acnes":"حَبُّ الشّبَاب","Acne":"حَبُّ الشّبَاب","Skin Health":"صحة الجلد","Instructions":"تعليمات","Get Ready to Start Skin Analysis":"استعد لبدء تحليل الجلد","Remove the glasses":"قم بإزالة النظارات","Clean your face":"نظف وجهك","Be in the right light":"كن في الضوء الصحيح","Be neutral face and fix position":"كن محايدًا للوجه وثبت الموقف","Get Started":"ابدأ","privacy.text":"اكتشف كيفية تحسين بشرتك باستخدام المنتجات المناسبة والروتين المناسب لك. قم بتحميل صورتك الشخصية للحصول على توصيات مخصصة، وكن مطمئنًا، سيتم حذف صورتك بعد التحليل","See our":"انظر لدينا","Privacy Policy":"سياسة الخصوصية","for more information":"لمزيد من المعلومات","your picture quality is blurry":"جودة صورتك ضبابية","be wearing glasses":"يكون يرتدي النظارات","please remove them":"يرجى إزالتها","Improve photo quality":"تحسين جودة الصورة","We noticed you might":"لقد لاحظنا أنك قد تفعل ذلك","and":"و","for better results":"للحصول على نتائج أفضل","Tips for taking better selfies":"نصائح لالتقاط صور سيلفي أفضل","Continue":"يكمل","Generate routine for you":"إنشاء روتين بالنسبة لك","Re-take":"إعادة اتخاذ","Get recommended products!":"احصل على المنتجات الموصى بها!","Recommendation Products":"منتجات التوصية","Products That Just Work For you":"المنتجات التي تناسبك فقط","My Skin Report":"تقرير بشرتي","Add to cart":"أضف إلى السلة","Add again":"أضف مرة أخرى","Checkout":"الدفع","My Routines":"روتيناتي","Your":"لك","Routine":"روتين","Morning":"صباح","Night":"ليلة","Error":"خطأ","The face is not visible in the picture":"الوجه غير ظاهر في الصورة","The input image is not suitable":"صورة الإدخال غير مناسبة","An error occurred, please check again":"حدث خطأ، يرجى التحقق مرة أخرى","Camera permission denied.":"تم رفض إذن الكاميرا.","Unable to access the camera.":"غير قادر على الوصول إلى الكاميرا.","validation.blurry":"صورتك ضبابية","validation.eyeGlass":"لديك نظارات","validation.brightness":"الضوء على وجهك غير مناسب","validation.neutralFace":"الوجه ليس محايدًا (قد تبتسم)","Image is not suitable":"الصورة غير مناسبة","Check how you can improve your skin with the proper product and routine":"تحقق من كيفية تحسين بشرتك باستخدام المنتج والروتين المناسبين","There are no products to display":"لا توجد منتجات لعرضها","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"ابدأ بغسل وجهك لإزالة الأوساخ والزيوت والشوائب. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"استخدمي التونر لموازنة درجة حموضة بشرتك وإزالة أي بقايا متبقية.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"ضعي مصلًا مركّزًا يستهدف اهتمامات محددة، مثل تفتيح البشرة أو مكافحة الشيخوخة. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"ضعي كريم العين بلطف حول منطقة العين لترطيبها وتقليل الانتفاخ أو الهالات السوداء.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"ضعي علاجًا موضعيًا على أي مناطق تعاني من مشاكل، مثل حب الشباب أو العيوب. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"احتفظي بالترطيب من خلال وضع مرطب يناسب نوع بشرتك. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"قم بحماية بشرتك من الأشعة فوق البنفسجية الضارة باستخدام واقي الشمس ذو الحماية واسعة النطاق. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"ضعي زيت وجه خفيف الوزن للحفاظ على الرطوبة ومنح بشرتك توهجًا مشعًا. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"استخدمي كريمًا ليليًا غنيًا للمساعدة في إصلاح واستعادة بشرتك أثناء النوم. ","Cleanser":"منظف","Toner":"الحبر","Serum":"مصل","Eye Cream":"كريم العين","Spot Treatment":"علاج البقع","Moisturizer":"مرطب","Sunscreen":"واقي الشمس","Face Oil":"زيت الوجه","Night Cream":"كريم الليل","Add all to cart":"أضف الكل إلى سلة التسوق","All Products":"جميع المنتجات","validation.faceObstruction":"من المحتمل أن يكون هناك شيء ما على سطح بشرة الوجه (شعر أو ثقب)","Product added to cart":"تمت إضافة المنتج إلى سلة التسوق","products added to cart":"المنتجات المضافة إلى سلة التسوق","You reached the limits of your plan":"لقد وصلت إلى حدود خطتك","Please renew your service for access":"يرجى تجديد الخدمة للوصول إليها","See the website’s privacy policy":"راجع سياسة الخصوصية الخاصة بالموقع"}')}};function qa(e){return qa="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},qa(e)}function Ja(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Ya(i.key),i)}}function Ya(e){var t=function(e){if("object"!=qa(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=qa(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==qa(t)?t:t+""}Sn.init({resources:Va,lng:"en",fallbackLng:"en",interpolation:{escapeValue:!1}});var Ka=function(){return e=function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.opts=t,this.w=new Bn(t).init(),this.el=this.w.config.element,new Wa(this).initModules()},t=[{key:"render",value:function(){var e=this;return new Promise((function(t,n){null!==e.el?(e.w.globals.faceID=Ia.randomId(),e.core.setupElements()):n(new Error("Element not found"))}))}},{key:"onload",value:function(e){var t=this;return new Promise((function(n,i){"function"==typeof e?t.w.globals.onload=function(t){try{e(t)}catch(e){i(new Error("Error calling:",e.message))}}:i(new Error("function not valid"))}))}},{key:"onClickProblem",value:function(e){var t=this;return new Promise((function(n,i){"function"==typeof e?t.w.globals.onClickProblem=function(t){try{e(t)}catch(e){i(new Error("Error calling:",e.message))}}:i(new Error("function not valid"))}))}},{key:"onAddToCart",value:function(e){var t=this;return new Promise((function(n,i){"function"==typeof e?t.w.globals.onAddToCart=function(t){try{e(t)}catch(e){i(new Error("Error calling:",e.message))}}:i(new Error("function not valid"))}))}},{key:"onCheckout",value:function(e){var t=this;return new Promise((function(n,i){"function"==typeof e?t.w.globals.onCheckout=function(t){try{e(t)}catch(e){i(new Error("Error calling:",e.message))}}:i(new Error("function not valid"))}))}},{key:"onClickProduct",value:function(e){var t=this;return new Promise((function(n,i){"function"==typeof e?t.w.globals.onClickProduct=function(t){try{e(t)}catch(e){i(new Error("Error calling:",e.message))}}:i(new Error("function not valid"))}))}},{key:"onDisplayProducts",value:function(e){var t=this;return new Promise((function(n,i){"function"==typeof e?t.w.globals.onDisplayProducts=function(t){try{e(t)}catch(e){i(new Error("Error calling:",e.message))}}:i(new Error("function not valid"))}))}},{key:"onDisplayRoutines",value:function(e){var t=this;return new Promise((function(n,i){"function"==typeof e?t.w.globals.onDisplayRoutines=function(t){try{e(t)}catch(e){i(new Error("Error calling:",e.message))}}:i(new Error("function not valid"))}))}},{key:"onCloseModal",value:function(e){var t=this;return new Promise((function(n,i){"function"==typeof e?t.w.globals.onCloseModal=function(t){try{e(t)}catch(e){i(new Error("Error calling:",e.message))}}:i(new Error("function not valid"))}))}},{key:"onResetData",value:function(e){var t=this;return new Promise((function(n,i){"function"==typeof e?t.w.globals.onRefresh=function(n){try{t.w.globals.productLists&&(t.w.globals.productLists=[]),t.w.globals.productAddToCart&&(t.w.globals.productAddToCart=[]),t.w.globals.productLoader=!1,e(n)}catch(e){i(new Error("Error calling:",e.message))}}:i(new Error("function not valid"))}))}}],t&&Ja(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}()})(),i.default})()));
2
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.FaceAge=t():e.FaceAge=t()}(this,(()=>(()=>{var e={866:function(e,t,n){(function(){"use strict";function e(e){var t=0;return function(){return t<e.length?{done:!1,value:e[t++]}:{done:!0}}}var t="function"==typeof Object.defineProperties?Object.defineProperty:function(e,t,n){return e==Array.prototype||e==Object.prototype||(e[t]=n.value),e},i=function(e){e=["object"==typeof globalThis&&globalThis,e,"object"==typeof window&&window,"object"==typeof self&&self,"object"==typeof n.g&&n.g];for(var t=0;t<e.length;++t){var i=e[t];if(i&&i.Math==Math)return i}throw Error("Cannot find global object")}(this);function r(e,n){if(n)e:{var r=i;e=e.split(".");for(var a=0;a<e.length-1;a++){var o=e[a];if(!(o in r))break e;r=r[o]}(n=n(a=r[e=e[e.length-1]]))!=a&&null!=n&&t(r,e,{configurable:!0,writable:!0,value:n})}}function a(e){return(e={next:e})[Symbol.iterator]=function(){return this},e}function o(t){var n="undefined"!=typeof Symbol&&Symbol.iterator&&t[Symbol.iterator];return n?n.call(t):{next:e(t)}}function s(){this.i=!1,this.g=null,this.o=void 0,this.j=1,this.m=0,this.h=null}function l(e){if(e.i)throw new TypeError("Generator is already running");e.i=!0}function u(e,t){e.h={F:t,G:!0},e.j=e.m}function c(e){this.g=new s,this.h=e}function d(e,t,n,i){try{var r=t.call(e.g.g,n);if(!(r instanceof Object))throw new TypeError("Iterator result "+r+" is not an object");if(!r.done)return e.g.i=!1,r;var a=r.value}catch(t){return e.g.g=null,u(e.g,t),p(e)}return e.g.g=null,i.call(e.g,a),p(e)}function p(e){for(;e.g.j;)try{var t=e.h(e.g);if(t)return e.g.i=!1,{value:t.value,done:!1}}catch(t){e.g.o=void 0,u(e.g,t)}if(e.g.i=!1,e.g.h){if(t=e.g.h,e.g.h=null,t.G)throw t.F;return{value:t.return,done:!0}}return{value:void 0,done:!0}}function h(e){this.next=function(t){return l(e.g),e.g.g?t=d(e,e.g.g.next,t,e.g.l):(e.g.l(t),t=p(e)),t},this.throw=function(t){return l(e.g),e.g.g?t=d(e,e.g.g.throw,t,e.g.l):(u(e.g,t),t=p(e)),t},this.return=function(t){return function(e,t){l(e.g);var n=e.g.g;return n?d(e,"return"in n?n.return:function(e){return{value:e,done:!0}},t,e.g.return):(e.g.return(t),p(e))}(e,t)},this[Symbol.iterator]=function(){return this}}function m(e){function t(t){return e.next(t)}function n(t){return e.throw(t)}return new Promise((function(i,r){!function e(a){a.done?i(a.value):Promise.resolve(a.value).then(t,n).then(e,r)}(e.next())}))}r("Symbol",(function(e){function n(e,n){this.g=e,t(this,"description",{configurable:!0,writable:!0,value:n})}if(e)return e;n.prototype.toString=function(){return this.g};var i="jscomp_symbol_"+(1e9*Math.random()>>>0)+"_",r=0;return function e(t){if(this instanceof e)throw new TypeError("Symbol is not a constructor");return new n(i+(t||"")+"_"+r++,t)}})),r("Symbol.iterator",(function(n){if(n)return n;n=Symbol("Symbol.iterator");for(var r="Array Int8Array Uint8Array Uint8ClampedArray Int16Array Uint16Array Int32Array Uint32Array Float32Array Float64Array".split(" "),o=0;o<r.length;o++){var s=i[r[o]];"function"==typeof s&&"function"!=typeof s.prototype[n]&&t(s.prototype,n,{configurable:!0,writable:!0,value:function(){return a(e(this))}})}return n})),s.prototype.l=function(e){this.o=e},s.prototype.return=function(e){this.h={return:e},this.j=this.m},r("Promise",(function(e){function t(e){this.h=0,this.i=void 0,this.g=[],this.o=!1;var t=this.j();try{e(t.resolve,t.reject)}catch(e){t.reject(e)}}function n(){this.g=null}function r(e){return e instanceof t?e:new t((function(t){t(e)}))}if(e)return e;n.prototype.h=function(e){if(null==this.g){this.g=[];var t=this;this.i((function(){t.l()}))}this.g.push(e)};var a=i.setTimeout;n.prototype.i=function(e){a(e,0)},n.prototype.l=function(){for(;this.g&&this.g.length;){var e=this.g;this.g=[];for(var t=0;t<e.length;++t){var n=e[t];e[t]=null;try{n()}catch(e){this.j(e)}}}this.g=null},n.prototype.j=function(e){this.i((function(){throw e}))},t.prototype.j=function(){function e(e){return function(i){n||(n=!0,e.call(t,i))}}var t=this,n=!1;return{resolve:e(this.A),reject:e(this.l)}},t.prototype.A=function(e){if(e===this)this.l(new TypeError("A Promise cannot resolve to itself"));else if(e instanceof t)this.C(e);else{e:switch(typeof e){case"object":var n=null!=e;break e;case"function":n=!0;break e;default:n=!1}n?this.v(e):this.m(e)}},t.prototype.v=function(e){var t=void 0;try{t=e.then}catch(e){return void this.l(e)}"function"==typeof t?this.D(t,e):this.m(e)},t.prototype.l=function(e){this.u(2,e)},t.prototype.m=function(e){this.u(1,e)},t.prototype.u=function(e,t){if(0!=this.h)throw Error("Cannot settle("+e+", "+t+"): Promise already settled in state"+this.h);this.h=e,this.i=t,2===this.h&&this.B(),this.H()},t.prototype.B=function(){var e=this;a((function(){if(e.I()){var t=i.console;void 0!==t&&t.error(e.i)}}),1)},t.prototype.I=function(){if(this.o)return!1;var e=i.CustomEvent,t=i.Event,n=i.dispatchEvent;return void 0===n||("function"==typeof e?e=new e("unhandledrejection",{cancelable:!0}):"function"==typeof t?e=new t("unhandledrejection",{cancelable:!0}):(e=i.document.createEvent("CustomEvent")).initCustomEvent("unhandledrejection",!1,!0,e),e.promise=this,e.reason=this.i,n(e))},t.prototype.H=function(){if(null!=this.g){for(var e=0;e<this.g.length;++e)s.h(this.g[e]);this.g=null}};var s=new n;return t.prototype.C=function(e){var t=this.j();e.s(t.resolve,t.reject)},t.prototype.D=function(e,t){var n=this.j();try{e.call(t,n.resolve,n.reject)}catch(e){n.reject(e)}},t.prototype.then=function(e,n){function i(e,t){return"function"==typeof e?function(t){try{r(e(t))}catch(e){a(e)}}:t}var r,a,o=new t((function(e,t){r=e,a=t}));return this.s(i(e,r),i(n,a)),o},t.prototype.catch=function(e){return this.then(void 0,e)},t.prototype.s=function(e,t){function n(){switch(i.h){case 1:e(i.i);break;case 2:t(i.i);break;default:throw Error("Unexpected state: "+i.h)}}var i=this;null==this.g?s.h(n):this.g.push(n),this.o=!0},t.resolve=r,t.reject=function(e){return new t((function(t,n){n(e)}))},t.race=function(e){return new t((function(t,n){for(var i=o(e),a=i.next();!a.done;a=i.next())r(a.value).s(t,n)}))},t.all=function(e){var n=o(e),i=n.next();return i.done?r([]):new t((function(e,t){function a(t){return function(n){o[t]=n,0==--s&&e(o)}}var o=[],s=0;do{o.push(void 0),s++,r(i.value).s(a(o.length-1),t),i=n.next()}while(!i.done)}))},t}));var f="function"==typeof Object.assign?Object.assign:function(e,t){for(var n=1;n<arguments.length;n++){var i=arguments[n];if(i)for(var r in i)Object.prototype.hasOwnProperty.call(i,r)&&(e[r]=i[r])}return e};r("Object.assign",(function(e){return e||f}));var g=this||self,y={facingMode:"user",width:640,height:480};function v(e,t){this.video=e,this.i=0,this.h=Object.assign(Object.assign({},y),t)}function b(e){window.requestAnimationFrame((function(){!function(e){var t=null;e.video.paused||e.video.currentTime===e.i||(e.i=e.video.currentTime,t=e.h.onFrame()),t?t.then((function(){b(e)})):b(e)}(e)}))}v.prototype.stop=function(){var e,t,n,i=this;return m(new h(new c((function(r){if(i.g){for(e=i.g.getTracks(),t=o(e),n=t.next();!n.done;n=t.next())n.value.stop();i.g=void 0}r.j=0}))))},v.prototype.start=function(){var e,t=this;return m(new h(new c((function(n){return navigator.mediaDevices&&navigator.mediaDevices.getUserMedia||alert("No navigator.mediaDevices.getUserMedia exists."),e=t.h,n.return(navigator.mediaDevices.getUserMedia({video:{facingMode:e.facingMode,width:e.width,height:e.height}}).then((function(e){!function(e,t){e.g=t,e.video.srcObject=t,e.video.onloadedmetadata=function(){e.video.play(),b(e)}}(t,e)})).catch((function(e){var t="Failed to acquire camera feed: "+e;throw console.error(t),alert(t),e})))}))))};var k,w=["Camera"],S=g;w[0]in S||void 0===S.execScript||S.execScript("var "+w[0]);for(;w.length&&(k=w.shift());)w.length||void 0===v?S=S[k]&&S[k]!==Object.prototype[k]?S[k]:S[k]={}:S[k]=v}).call(this)},610:function(e,t,n){(function(){"use strict";var e;function t(e){var t=0;return function(){return t<e.length?{done:!1,value:e[t++]}:{done:!0}}}var i,r="function"==typeof Object.defineProperties?Object.defineProperty:function(e,t,n){return e==Array.prototype||e==Object.prototype||(e[t]=n.value),e},a=function(e){e=["object"==typeof globalThis&&globalThis,e,"object"==typeof window&&window,"object"==typeof self&&self,"object"==typeof n.g&&n.g];for(var t=0;t<e.length;++t){var i=e[t];if(i&&i.Math==Math)return i}throw Error("Cannot find global object")}(this);function o(e,t){if(t)e:{var n=a;e=e.split(".");for(var i=0;i<e.length-1;i++){var o=e[i];if(!(o in n))break e;n=n[o]}(t=t(i=n[e=e[e.length-1]]))!=i&&null!=t&&r(n,e,{configurable:!0,writable:!0,value:t})}}function s(e){return(e={next:e})[Symbol.iterator]=function(){return this},e}function l(e){var n="undefined"!=typeof Symbol&&Symbol.iterator&&e[Symbol.iterator];return n?n.call(e):{next:t(e)}}function u(e){if(!(e instanceof Array)){e=l(e);for(var t,n=[];!(t=e.next()).done;)n.push(t.value);e=n}return e}if(o("Symbol",(function(e){function t(e,t){this.g=e,r(this,"description",{configurable:!0,writable:!0,value:t})}if(e)return e;t.prototype.toString=function(){return this.g};var n="jscomp_symbol_"+(1e9*Math.random()>>>0)+"_",i=0;return function e(r){if(this instanceof e)throw new TypeError("Symbol is not a constructor");return new t(n+(r||"")+"_"+i++,r)}})),o("Symbol.iterator",(function(e){if(e)return e;e=Symbol("Symbol.iterator");for(var n="Array Int8Array Uint8Array Uint8ClampedArray Int16Array Uint16Array Int32Array Uint32Array Float32Array Float64Array".split(" "),i=0;i<n.length;i++){var o=a[n[i]];"function"==typeof o&&"function"!=typeof o.prototype[e]&&r(o.prototype,e,{configurable:!0,writable:!0,value:function(){return s(t(this))}})}return e})),"function"==typeof Object.setPrototypeOf)i=Object.setPrototypeOf;else{var c;e:{var d={};try{d.__proto__={a:!0},c=d.a;break e}catch(e){}c=!1}i=c?function(e,t){if(e.__proto__=t,e.__proto__!==t)throw new TypeError(e+" is not extensible");return e}:null}var p=i;function h(){this.l=!1,this.h=null,this.j=void 0,this.g=1,this.s=this.m=0,this.i=null}function m(e){if(e.l)throw new TypeError("Generator is already running");e.l=!0}function f(e,t){e.i={K:t,L:!0},e.g=e.m||e.s}function g(e,t,n){return e.g=n,{value:t}}function y(e){this.g=new h,this.h=e}function v(e,t,n,i){try{var r=t.call(e.g.h,n);if(!(r instanceof Object))throw new TypeError("Iterator result "+r+" is not an object");if(!r.done)return e.g.l=!1,r;var a=r.value}catch(t){return e.g.h=null,f(e.g,t),b(e)}return e.g.h=null,i.call(e.g,a),b(e)}function b(e){for(;e.g.g;)try{var t=e.h(e.g);if(t)return e.g.l=!1,{value:t.value,done:!1}}catch(t){e.g.j=void 0,f(e.g,t)}if(e.g.l=!1,e.g.i){if(t=e.g.i,e.g.i=null,t.L)throw t.K;return{value:t.return,done:!0}}return{value:void 0,done:!0}}function k(e){this.next=function(t){return m(e.g),e.g.h?t=v(e,e.g.h.next,t,e.g.o):(e.g.o(t),t=b(e)),t},this.throw=function(t){return m(e.g),e.g.h?t=v(e,e.g.h.throw,t,e.g.o):(f(e.g,t),t=b(e)),t},this.return=function(t){return function(e,t){m(e.g);var n=e.g.h;return n?v(e,"return"in n?n.return:function(e){return{value:e,done:!0}},t,e.g.return):(e.g.return(t),b(e))}(e,t)},this[Symbol.iterator]=function(){return this}}function w(e,t){return t=new k(new y(t)),p&&e.prototype&&p(t,e.prototype),t}h.prototype.o=function(e){this.j=e},h.prototype.return=function(e){this.i={return:e},this.g=this.s};var S="function"==typeof Object.assign?Object.assign:function(e,t){for(var n=1;n<arguments.length;n++){var i=arguments[n];if(i)for(var r in i)Object.prototype.hasOwnProperty.call(i,r)&&(e[r]=i[r])}return e};o("Object.assign",(function(e){return e||S})),o("Promise",(function(e){function t(e){this.h=0,this.i=void 0,this.g=[],this.o=!1;var t=this.j();try{e(t.resolve,t.reject)}catch(e){t.reject(e)}}function n(){this.g=null}function i(e){return e instanceof t?e:new t((function(t){t(e)}))}if(e)return e;n.prototype.h=function(e){if(null==this.g){this.g=[];var t=this;this.i((function(){t.l()}))}this.g.push(e)};var r=a.setTimeout;n.prototype.i=function(e){r(e,0)},n.prototype.l=function(){for(;this.g&&this.g.length;){var e=this.g;this.g=[];for(var t=0;t<e.length;++t){var n=e[t];e[t]=null;try{n()}catch(e){this.j(e)}}}this.g=null},n.prototype.j=function(e){this.i((function(){throw e}))},t.prototype.j=function(){function e(e){return function(i){n||(n=!0,e.call(t,i))}}var t=this,n=!1;return{resolve:e(this.D),reject:e(this.l)}},t.prototype.D=function(e){if(e===this)this.l(new TypeError("A Promise cannot resolve to itself"));else if(e instanceof t)this.I(e);else{e:switch(typeof e){case"object":var n=null!=e;break e;case"function":n=!0;break e;default:n=!1}n?this.C(e):this.m(e)}},t.prototype.C=function(e){var t=void 0;try{t=e.then}catch(e){return void this.l(e)}"function"==typeof t?this.J(t,e):this.m(e)},t.prototype.l=function(e){this.s(2,e)},t.prototype.m=function(e){this.s(1,e)},t.prototype.s=function(e,t){if(0!=this.h)throw Error("Cannot settle("+e+", "+t+"): Promise already settled in state"+this.h);this.h=e,this.i=t,2===this.h&&this.H(),this.A()},t.prototype.H=function(){var e=this;r((function(){if(e.B()){var t=a.console;void 0!==t&&t.error(e.i)}}),1)},t.prototype.B=function(){if(this.o)return!1;var e=a.CustomEvent,t=a.Event,n=a.dispatchEvent;return void 0===n||("function"==typeof e?e=new e("unhandledrejection",{cancelable:!0}):"function"==typeof t?e=new t("unhandledrejection",{cancelable:!0}):(e=a.document.createEvent("CustomEvent")).initCustomEvent("unhandledrejection",!1,!0,e),e.promise=this,e.reason=this.i,n(e))},t.prototype.A=function(){if(null!=this.g){for(var e=0;e<this.g.length;++e)o.h(this.g[e]);this.g=null}};var o=new n;return t.prototype.I=function(e){var t=this.j();e.F(t.resolve,t.reject)},t.prototype.J=function(e,t){var n=this.j();try{e.call(t,n.resolve,n.reject)}catch(e){n.reject(e)}},t.prototype.then=function(e,n){function i(e,t){return"function"==typeof e?function(t){try{r(e(t))}catch(e){a(e)}}:t}var r,a,o=new t((function(e,t){r=e,a=t}));return this.F(i(e,r),i(n,a)),o},t.prototype.catch=function(e){return this.then(void 0,e)},t.prototype.F=function(e,t){function n(){switch(i.h){case 1:e(i.i);break;case 2:t(i.i);break;default:throw Error("Unexpected state: "+i.h)}}var i=this;null==this.g?o.h(n):this.g.push(n),this.o=!0},t.resolve=i,t.reject=function(e){return new t((function(t,n){n(e)}))},t.race=function(e){return new t((function(t,n){for(var r=l(e),a=r.next();!a.done;a=r.next())i(a.value).F(t,n)}))},t.all=function(e){var n=l(e),r=n.next();return r.done?i([]):new t((function(e,t){function a(t){return function(n){o[t]=n,0==--s&&e(o)}}var o=[],s=0;do{o.push(void 0),s++,i(r.value).F(a(o.length-1),t),r=n.next()}while(!r.done)}))},t})),o("Array.prototype.keys",(function(e){return e||function(){return function(e,t){e instanceof String&&(e+="");var n=0,i=!1,r={next:function(){if(!i&&n<e.length){var r=n++;return{value:t(r,e[r]),done:!1}}return i=!0,{done:!0,value:void 0}}};return r[Symbol.iterator]=function(){return r},r}(this,(function(e){return e}))}}));var P=this||self;function x(e,t){e=e.split(".");var n,i=P;e[0]in i||void 0===i.execScript||i.execScript("var "+e[0]);for(;e.length&&(n=e.shift());)e.length||void 0===t?i=i[n]&&i[n]!==Object.prototype[n]?i[n]:i[n]={}:i[n]=t}function C(e,t){var n=void 0;return new(n||(n=Promise))((function(i,r){function a(e){try{s(t.next(e))}catch(e){r(e)}}function o(e){try{s(t.throw(e))}catch(e){r(e)}}function s(e){e.done?i(e.value):new n((function(t){t(e.value)})).then(a,o)}s((t=t.apply(e,void 0)).next())}))}var A=[[61,146],[146,91],[91,181],[181,84],[84,17],[17,314],[314,405],[405,321],[321,375],[375,291],[61,185],[185,40],[40,39],[39,37],[37,0],[0,267],[267,269],[269,270],[270,409],[409,291],[78,95],[95,88],[88,178],[178,87],[87,14],[14,317],[317,402],[402,318],[318,324],[324,308],[78,191],[191,80],[80,81],[81,82],[82,13],[13,312],[312,311],[311,310],[310,415],[415,308]],T=[[263,249],[249,390],[390,373],[373,374],[374,380],[380,381],[381,382],[382,362],[263,466],[466,388],[388,387],[387,386],[386,385],[385,384],[384,398],[398,362]],j=[[276,283],[283,282],[282,295],[295,285],[300,293],[293,334],[334,296],[296,336]],_=[[33,7],[7,163],[163,144],[144,145],[145,153],[153,154],[154,155],[155,133],[33,246],[246,161],[161,160],[160,159],[159,158],[158,157],[157,173],[173,133]],E=[[46,53],[53,52],[52,65],[65,55],[70,63],[63,105],[105,66],[66,107]],R=[[10,338],[338,297],[297,332],[332,284],[284,251],[251,389],[389,356],[356,454],[454,323],[323,361],[361,288],[288,397],[397,365],[365,379],[379,378],[378,400],[400,377],[377,152],[152,148],[148,176],[176,149],[149,150],[150,136],[136,172],[172,58],[58,132],[132,93],[93,234],[234,127],[127,162],[162,21],[21,54],[54,103],[103,67],[67,109],[109,10]],I=[].concat(u(A),u(T),u(j),u(_),u(E),u(R));function z(e,t,n){if(n=e.createShader(0===n?e.VERTEX_SHADER:e.FRAGMENT_SHADER),e.shaderSource(n,t),e.compileShader(n),!e.getShaderParameter(n,e.COMPILE_STATUS))throw Error("Could not compile WebGL shader.\n\n"+e.getShaderInfoLog(n));return n}function L(e,t){this.g=e,this.i=t,this.j=0}function O(e,t){var n=e.i;if(void 0===e.l){var i=z(n,"\n attribute vec2 aVertex;\n attribute vec2 aTex;\n varying vec2 vTex;\n void main(void) {\n gl_Position = vec4(aVertex, 0.0, 1.0);\n vTex = aTex;\n }",0),r=z(n,"\n precision highp float;\n varying vec2 vTex;\n uniform sampler2D sampler0;\n void main(){\n gl_FragColor = texture2D(sampler0, vTex);\n }",1),a=n.createProgram();if(n.attachShader(a,i),n.attachShader(a,r),n.linkProgram(a),!n.getProgramParameter(a,n.LINK_STATUS))throw Error("Could not compile WebGL program.\n\n"+n.getProgramInfoLog(a));i=e.l=a,n.useProgram(i),r=n.getUniformLocation(i,"sampler0"),e.h={v:n.getAttribLocation(i,"aVertex"),u:n.getAttribLocation(i,"aTex"),M:r},e.o=n.createBuffer(),n.bindBuffer(n.ARRAY_BUFFER,e.o),n.enableVertexAttribArray(e.h.v),n.vertexAttribPointer(e.h.v,2,n.FLOAT,!1,0,0),n.bufferData(n.ARRAY_BUFFER,new Float32Array([-1,-1,-1,1,1,1,1,-1]),n.STATIC_DRAW),n.bindBuffer(n.ARRAY_BUFFER,null),e.m=n.createBuffer(),n.bindBuffer(n.ARRAY_BUFFER,e.m),n.enableVertexAttribArray(e.h.u),n.vertexAttribPointer(e.h.u,2,n.FLOAT,!1,0,0),n.bufferData(n.ARRAY_BUFFER,new Float32Array([0,1,0,0,1,0,1,1]),n.STATIC_DRAW),n.bindBuffer(n.ARRAY_BUFFER,null),n.uniform1i(r,0)}i=e.h,n.useProgram(e.l),n.canvas.width=t.width,n.canvas.height=t.height,n.viewport(0,0,t.width,t.height),n.activeTexture(n.TEXTURE0),e.g.bindTexture2d(t.glName),n.enableVertexAttribArray(i.v),n.bindBuffer(n.ARRAY_BUFFER,e.o),n.vertexAttribPointer(i.v,2,n.FLOAT,!1,0,0),n.enableVertexAttribArray(i.u),n.bindBuffer(n.ARRAY_BUFFER,e.m),n.vertexAttribPointer(i.u,2,n.FLOAT,!1,0,0),n.bindFramebuffer(n.DRAW_FRAMEBUFFER?n.DRAW_FRAMEBUFFER:n.FRAMEBUFFER,null),n.drawArrays(n.TRIANGLE_FAN,0,4),n.disableVertexAttribArray(i.v),n.disableVertexAttribArray(i.u),n.bindBuffer(n.ARRAY_BUFFER,null),e.g.bindTexture2d(0)}function M(e){this.g=e}var F=new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,9,1,7,0,65,0,253,15,26,11]);function D(e,t){return t+e}function B(e,t){window[e]=t}function N(e){for(var t=[],n=e.size(),i=0;i<n;++i){var r=e.get(i);t.push({x:r.x,y:r.y,z:r.z,visibility:r.hasVisibility?r.visibility:void 0})}return t}function G(e){for(var t=[],n=e.size(),i=0;i<n;++i){var r=e.get(i);t.push({index:r.index,score:r.score,label:r.hasLabel?r.label:void 0,displayName:r.hasDisplayName?r.displayName:void 0})}return t}function U(e,t,n){this.graph=e,this.locateFile=t,this.g=n}function H(e){if(this.h=e,this.listeners={},this.j={},this.l={},this.s=this.D=!0,this.B=Promise.resolve(),this.locateFile=e&&e.locateFile||D,"object"==typeof window)e=window.location.pathname.toString().substring(0,window.location.pathname.toString().lastIndexOf("/"))+"/";else{if("undefined"==typeof location)throw Error("solutions can only be loaded on a web page or in a web worker");e=location.pathname.toString().substring(0,location.pathname.toString().lastIndexOf("/"))+"/"}this.C=e}function W(e,t,n){if(n.isNumber())return n.getNumber();if(n.isRect())return n.getRect();if(n.isLandmarks())return n.getLandmarks();if(n.isLandmarksList())return n.getLandmarksList();if(n.isClassificationsList())return n.getClassificationsList();if(n.isObjectDetectionList())return n.getObjectDetectionList();if(n.isTexture2d()){var i=e.l[t];return i||(i=new L(e.g,e.o),e.l[t]=i),O(e=i,n=n.getTexture2d()),e.i.canvas}}function V(e,t){for(var n=t.name||"$",i=[].concat(u(t.wants)),r=new e.g.StringList,a=l(t.wants),o=a.next();!o.done;o=a.next())r.push_back(o.value);a=e.g.PacketListener.implement({onResults:function(r){return C(e,(function e(){var a,o,s,u,c,d=this;return w(e,(function(e){if(1==e.g){for(a={},o=0;o<t.wants.length;++o)a[i[o]]=r.get(o);var p;if(p=t.outs){for(var h={},m=l(Object.keys(p)),f=m.next();!f.done;f=m.next()){var y=p[f=f.value];if("string"==typeof y)h[f]=W(d,f,a[y]);else{var v=a[y.stream];if(void 0!==v){if("detection_list"===y.type){var b=v.getRectList(),k=v.getLandmarksList();v=v.getClassificationsList();var w=[];if(b)for(var S=0;S<b.size();++S){var P={boundingBox:b.get(S),landmarks:N(k.get(S)),G:G(v.get(S))};w.push(P)}h[f]=w}else if("landmarks"===y.type)b=v.getLandmarks(),h[f]=b?N(b):void 0;else if("landmarks_list"===y.type){if(b=v.getLandmarksList()){for(k=[],v=b.size(),w=0;w<v;++w)S=b.get(w),k.push(N(S));b=k}else b=void 0;h[f]=b}else if("rect_list"===y.type){if(b=v.getRectList()){for(k=[],v=b.size(),w=0;w<v;++w)S=b.get(w),k.push(S);b=k}else b=void 0;h[f]=b}else if("classifications_list"===y.type){if(b=v.getClassificationsList()){for(k=[],v=b.size(),w=0;w<v;++w)S=b.get(w),k.push(G(S));b=k}else b=void 0;h[f]=b}else if("object_detection_list"===y.type){if(b=v.getObjectDetectionList()){for(k=[],v=b.size(),w=0;w<v;++w){var x=b.get(w);P=(S=k).push;for(var C=x.id,A=x.keypoints,T=[],j=A.size(),_=0;_<j;++_){var E=A.get(_);T.push({id:E.id,point3d:{x:E.point3d.x,y:E.point3d.y,z:E.point3d.z},point2d:{x:E.point2d.x,y:E.point2d.y,depth:E.point2d.depth}})}P.call(S,{id:C,keypoints:T,visibility:x.visibility})}b=k}else b=void 0;h[f]=b}else{if("texture"!==y.type)throw Error("Unknown output config type: '"+y.type+"'");(b=d.l[f])||(b=new L(d.g,d.o),d.l[f]=b),O(b,k=v.getTexture2d()),h[f]=b.i.canvas}y.transform&&h[f]&&(h[f]=y.transform(h[f]))}}}p=h}else p=a;return s=p,(u=d.listeners[n])?e=g(e,d.B,3):(e.g=0,e=void 0),e}if(c=u(s))return d.B=c,e.return(c);e.g=0}))}))}}),e.i.attachMultiListener(r,a),r.delete()}function q(e){e=e||{},this.g=new H({locateFile:e.locateFile,files:[{url:"face_detection_solution_packed_assets_loader.js"},{simd:!0,url:"face_detection_solution_simd_wasm_bin.js"},{simd:!1,url:"face_detection_solution_wasm_bin.js"}],graph:{url:"face_detection.binarypb"},listeners:[{wants:["detections","image_transformed"],outs:{image:"image_transformed",detections:{type:"detection_list",stream:"detections"}}}],inputs:{image:{type:"video",stream:"input_frames_gpu"}},options:{selfieMode:{type:1,graphOptionXref:{calculatorType:"GlScalerCalculator",calculatorIndex:1,fieldName:"flip_horizontal"}},minDetectionConfidence:{type:0,graphOptionXref:{calculatorType:"TensorsToDetectionsCalculator",calculatorName:"facedetectionfrontgpu__facedetectionfrontcommon__TensorsToDetectionsCalculator",fieldName:"min_score_thresh"}}}})}U.prototype.toArrayBuffer=function(){return C(this,(function e(){var t,n=this;return w(e,(function(e){return 1==e.g?(n.graph.url?e=g(e,fetch(n.locateFile(n.graph.url,n.g)),3):(e.g=2,e=void 0),e):2!=e.g&&(t=e.j).body?e.return(t.arrayBuffer()):e.return(new ArrayBuffer(0))}))}))},(e=H.prototype).close=function(){return this.i&&this.i.delete(),Promise.resolve()},e.reset=function(){return C(this,(function e(){var t=this;return w(e,(function(e){t.i&&(t.i.reset(),t.j={},t.l={}),e.g=0}))}))},e.setOptions=function(e){if(this.h.options){for(var t=[],n=l(Object.keys(e)),i=n.next();!i.done;i=n.next()){var r=i.value;(i=this.h.options[r])&&i.graphOptionXref&&(r={valueNumber:0===i.type?e[r]:0,valueBoolean:1===i.type&&e[r]},i=Object.assign(Object.assign(Object.assign({},{calculatorName:"",calculatorIndex:0}),i.graphOptionXref),r),t.push(i))}0!==t.length&&(this.s=!0,this.A=t)}},e.initialize=function(){return C(this,(function e(){var t=this;return w(e,(function(e){return 1==e.g?g(e,C(t,(function e(){var t,n,i,r,a,o,s,u,c,d=this;return w(e,(function(e){switch(e.g){case 1:return t=d,d.D?(B("createMediapipeSolutionsWasm",{locateFile:d.locateFile}),B("createMediapipeSolutionsPackedAssets",{locateFile:d.locateFile}),n=d.h.files||[],g(e,function(){return C(this,(function e(){return w(e,(function(e){switch(e.g){case 1:return e.m=2,g(e,WebAssembly.instantiate(F),4);case 4:e.g=3,e.m=0;break;case 2:return e.m=0,e.i=null,e.return(!1);case 3:return e.return(!0)}}))}))}(),2)):e.return();case 2:return i=e.j,g(e,Promise.all(n.map((function(e){return void 0===e.simd||e.simd&&i||!e.simd&&!i?function(e){var t=document.createElement("script");return t.setAttribute("src",e),t.setAttribute("crossorigin","anonymous"),document.body.appendChild(t),new Promise((function(e){t.addEventListener("load",(function(){e()}),!1)}))}(t.locateFile(e.url,t.C)):Promise.resolve()}))),3);case 3:return r=window.createMediapipeSolutionsWasm,a=window.createMediapipeSolutionsPackedAssets,g(e,r(a),4);case 4:return d.g=e.j,d.m=document.createElement("canvas"),d.g.canvas=d.m,d.g.createContext(d.m,!0,!0,{}),d.i=new d.g.SolutionWasm,o=new U(d.h.graph,d.locateFile,d.C),g(e,d.loadGraph(o),5);case 5:if(d.h.listeners)for(s=l(d.h.listeners),u=s.next();!u.done;u=s.next())c=u.value,V(d,c);d.D=!1,e.g=0}}))})),2):g(e,C(t,(function e(){var t,n,i,r,a,o=this;return w(e,(function(e){if(!o.s)return e.return();if(!(t=o.m.getContext("webgl2"))&&!(t=o.m.getContext("webgl")))return alert("Failed to create WebGL canvas context when passing video frame."),e.return();if(o.o=t,o.A){for(n=new o.g.GraphOptionChangeRequestList,i=l(o.A),r=i.next();!r.done;r=i.next())a=r.value,n.push_back(a);o.i.changeOptions(n),n.delete(),o.A=void 0}o.s=!1,e.g=0}))})),0)}))}))},e.loadGraph=function(e){return C(this,(function t(){var n,i=this;return w(t,(function(t){if(1==t.g)return g(t,e.toArrayBuffer(),2);n=t.j,i.i.loadGraph(n),t.g=0}))}))},e.send=function(e,t){return C(this,(function n(){var i,r,a,o,s,u,c,d,p,h=this;return w(n,(function(n){if(1==n.g)return h.h.inputs?(i=1e3*(t||performance.now()),g(n,h.B,2)):n.return();if(3!=n.g)return g(n,h.initialize(),3);for(r=new h.g.PacketDataList,a=l(Object.keys(e)),o=a.next();!o.done;o=a.next())if(s=o.value,u=h.h.inputs[s]){e:{var m=h,f=e[s];switch(u.type){case"video":var y=m.j[u.stream];if(y||(y=new L(m.g,m.o),m.j[u.stream]=y),0===(m=y).j&&(m.j=m.g.createTexture()),f instanceof HTMLVideoElement){var v=f.videoWidth;y=f.videoHeight}else f instanceof HTMLImageElement?(v=f.naturalWidth,y=f.naturalHeight):(v=f.width,y=f.height);y={glName:m.j,width:v,height:y},(v=m.i).canvas.width=y.width,v.canvas.height=y.height,v.activeTexture(v.TEXTURE0),m.g.bindTexture2d(m.j),v.texImage2D(v.TEXTURE_2D,0,v.RGBA,v.RGBA,v.UNSIGNED_BYTE,f),m.g.bindTexture2d(0),m=y;break e;case"detections":for((y=m.j[u.stream])||(y=new M(m.g),m.j[u.stream]=y),(m=y).data||(m.data=new m.g.DetectionListData),m.data.reset(f.length),y=0;y<f.length;++y){v=f[y],m.data.setBoundingBox(y,v.boundingBox);for(var b=0;b<v.landmarks.length;++b){var k=v.landmarks[b],w=!!k.visibility;m.data.addNormalizedLandmark(y,Object.assign(Object.assign({},k),{hasVisibility:w,visibility:w?k.visibility:0}))}for(b=0;b<v.G.length;++b){w=!!(k=v.G[b]).index;var S=!!k.label,P=!!k.displayName;m.data.addClassification(y,{score:k.score,hasIndex:w,index:w?k.index:-1,hasLabel:S,label:S?k.label:"",hasDisplayName:P,displayName:P?k.displayName:""})}}m=m.data;break e;default:m={}}}switch(c=m,d=u.stream,u.type){case"video":r.pushTexture2d(Object.assign(Object.assign({},c),{stream:d,timestamp:i}));break;case"detections":(p=c).stream=d,p.timestamp=i,r.pushDetectionList(p);break;default:throw Error("Unknown input config type: '"+u.type+"'")}}h.i.send(r),r.delete(),n.g=0}))}))},e.onResults=function(e,t){this.listeners[t||"$"]=e},x("Solution",H),x("OptionType",{NUMBER:0,BOOL:1,0:"NUMBER",1:"BOOL"}),(e=q.prototype).close=function(){return this.g.close(),Promise.resolve()},e.onResults=function(e){this.g.onResults(e)},e.initialize=function(){return C(this,(function e(){var t=this;return w(e,(function(e){return g(e,t.g.initialize(),0)}))}))},e.reset=function(){this.g.reset()},e.send=function(e){return C(this,(function t(){var n=this;return w(t,(function(t){return g(t,n.g.send(e),0)}))}))},e.setOptions=function(e){this.g.setOptions(e)},x("FaceDetection",q),x("FACEDETECTION_LIPS",A),x("FACEDETECTION_LEFT_EYE",T),x("FACEDETECTION_LEFT_EYEBROW",j),x("FACEDETECTION_RIGHT_EYE",_),x("FACEDETECTION_RIGHT_EYEBROW",E),x("FACEDETECTION_FACE_OVAL",R),x("FACEDETECTION_CONTOURS",I),x("FACEDETECTION_TESSELATION",[[127,34],[34,139],[139,127],[11,0],[0,37],[37,11],[232,231],[231,120],[120,232],[72,37],[37,39],[39,72],[128,121],[121,47],[47,128],[232,121],[121,128],[128,232],[104,69],[69,67],[67,104],[175,171],[171,148],[148,175],[118,50],[50,101],[101,118],[73,39],[39,40],[40,73],[9,151],[151,108],[108,9],[48,115],[115,131],[131,48],[194,204],[204,211],[211,194],[74,40],[40,185],[185,74],[80,42],[42,183],[183,80],[40,92],[92,186],[186,40],[230,229],[229,118],[118,230],[202,212],[212,214],[214,202],[83,18],[18,17],[17,83],[76,61],[61,146],[146,76],[160,29],[29,30],[30,160],[56,157],[157,173],[173,56],[106,204],[204,194],[194,106],[135,214],[214,192],[192,135],[203,165],[165,98],[98,203],[21,71],[71,68],[68,21],[51,45],[45,4],[4,51],[144,24],[24,23],[23,144],[77,146],[146,91],[91,77],[205,50],[50,187],[187,205],[201,200],[200,18],[18,201],[91,106],[106,182],[182,91],[90,91],[91,181],[181,90],[85,84],[84,17],[17,85],[206,203],[203,36],[36,206],[148,171],[171,140],[140,148],[92,40],[40,39],[39,92],[193,189],[189,244],[244,193],[159,158],[158,28],[28,159],[247,246],[246,161],[161,247],[236,3],[3,196],[196,236],[54,68],[68,104],[104,54],[193,168],[168,8],[8,193],[117,228],[228,31],[31,117],[189,193],[193,55],[55,189],[98,97],[97,99],[99,98],[126,47],[47,100],[100,126],[166,79],[79,218],[218,166],[155,154],[154,26],[26,155],[209,49],[49,131],[131,209],[135,136],[136,150],[150,135],[47,126],[126,217],[217,47],[223,52],[52,53],[53,223],[45,51],[51,134],[134,45],[211,170],[170,140],[140,211],[67,69],[69,108],[108,67],[43,106],[106,91],[91,43],[230,119],[119,120],[120,230],[226,130],[130,247],[247,226],[63,53],[53,52],[52,63],[238,20],[20,242],[242,238],[46,70],[70,156],[156,46],[78,62],[62,96],[96,78],[46,53],[53,63],[63,46],[143,34],[34,227],[227,143],[123,117],[117,111],[111,123],[44,125],[125,19],[19,44],[236,134],[134,51],[51,236],[216,206],[206,205],[205,216],[154,153],[153,22],[22,154],[39,37],[37,167],[167,39],[200,201],[201,208],[208,200],[36,142],[142,100],[100,36],[57,212],[212,202],[202,57],[20,60],[60,99],[99,20],[28,158],[158,157],[157,28],[35,226],[226,113],[113,35],[160,159],[159,27],[27,160],[204,202],[202,210],[210,204],[113,225],[225,46],[46,113],[43,202],[202,204],[204,43],[62,76],[76,77],[77,62],[137,123],[123,116],[116,137],[41,38],[38,72],[72,41],[203,129],[129,142],[142,203],[64,98],[98,240],[240,64],[49,102],[102,64],[64,49],[41,73],[73,74],[74,41],[212,216],[216,207],[207,212],[42,74],[74,184],[184,42],[169,170],[170,211],[211,169],[170,149],[149,176],[176,170],[105,66],[66,69],[69,105],[122,6],[6,168],[168,122],[123,147],[147,187],[187,123],[96,77],[77,90],[90,96],[65,55],[55,107],[107,65],[89,90],[90,180],[180,89],[101,100],[100,120],[120,101],[63,105],[105,104],[104,63],[93,137],[137,227],[227,93],[15,86],[86,85],[85,15],[129,102],[102,49],[49,129],[14,87],[87,86],[86,14],[55,8],[8,9],[9,55],[100,47],[47,121],[121,100],[145,23],[23,22],[22,145],[88,89],[89,179],[179,88],[6,122],[122,196],[196,6],[88,95],[95,96],[96,88],[138,172],[172,136],[136,138],[215,58],[58,172],[172,215],[115,48],[48,219],[219,115],[42,80],[80,81],[81,42],[195,3],[3,51],[51,195],[43,146],[146,61],[61,43],[171,175],[175,199],[199,171],[81,82],[82,38],[38,81],[53,46],[46,225],[225,53],[144,163],[163,110],[110,144],[52,65],[65,66],[66,52],[229,228],[228,117],[117,229],[34,127],[127,234],[234,34],[107,108],[108,69],[69,107],[109,108],[108,151],[151,109],[48,64],[64,235],[235,48],[62,78],[78,191],[191,62],[129,209],[209,126],[126,129],[111,35],[35,143],[143,111],[117,123],[123,50],[50,117],[222,65],[65,52],[52,222],[19,125],[125,141],[141,19],[221,55],[55,65],[65,221],[3,195],[195,197],[197,3],[25,7],[7,33],[33,25],[220,237],[237,44],[44,220],[70,71],[71,139],[139,70],[122,193],[193,245],[245,122],[247,130],[130,33],[33,247],[71,21],[21,162],[162,71],[170,169],[169,150],[150,170],[188,174],[174,196],[196,188],[216,186],[186,92],[92,216],[2,97],[97,167],[167,2],[141,125],[125,241],[241,141],[164,167],[167,37],[37,164],[72,38],[38,12],[12,72],[38,82],[82,13],[13,38],[63,68],[68,71],[71,63],[226,35],[35,111],[111,226],[101,50],[50,205],[205,101],[206,92],[92,165],[165,206],[209,198],[198,217],[217,209],[165,167],[167,97],[97,165],[220,115],[115,218],[218,220],[133,112],[112,243],[243,133],[239,238],[238,241],[241,239],[214,135],[135,169],[169,214],[190,173],[173,133],[133,190],[171,208],[208,32],[32,171],[125,44],[44,237],[237,125],[86,87],[87,178],[178,86],[85,86],[86,179],[179,85],[84,85],[85,180],[180,84],[83,84],[84,181],[181,83],[201,83],[83,182],[182,201],[137,93],[93,132],[132,137],[76,62],[62,183],[183,76],[61,76],[76,184],[184,61],[57,61],[61,185],[185,57],[212,57],[57,186],[186,212],[214,207],[207,187],[187,214],[34,143],[143,156],[156,34],[79,239],[239,237],[237,79],[123,137],[137,177],[177,123],[44,1],[1,4],[4,44],[201,194],[194,32],[32,201],[64,102],[102,129],[129,64],[213,215],[215,138],[138,213],[59,166],[166,219],[219,59],[242,99],[99,97],[97,242],[2,94],[94,141],[141,2],[75,59],[59,235],[235,75],[24,110],[110,228],[228,24],[25,130],[130,226],[226,25],[23,24],[24,229],[229,23],[22,23],[23,230],[230,22],[26,22],[22,231],[231,26],[112,26],[26,232],[232,112],[189,190],[190,243],[243,189],[221,56],[56,190],[190,221],[28,56],[56,221],[221,28],[27,28],[28,222],[222,27],[29,27],[27,223],[223,29],[30,29],[29,224],[224,30],[247,30],[30,225],[225,247],[238,79],[79,20],[20,238],[166,59],[59,75],[75,166],[60,75],[75,240],[240,60],[147,177],[177,215],[215,147],[20,79],[79,166],[166,20],[187,147],[147,213],[213,187],[112,233],[233,244],[244,112],[233,128],[128,245],[245,233],[128,114],[114,188],[188,128],[114,217],[217,174],[174,114],[131,115],[115,220],[220,131],[217,198],[198,236],[236,217],[198,131],[131,134],[134,198],[177,132],[132,58],[58,177],[143,35],[35,124],[124,143],[110,163],[163,7],[7,110],[228,110],[110,25],[25,228],[356,389],[389,368],[368,356],[11,302],[302,267],[267,11],[452,350],[350,349],[349,452],[302,303],[303,269],[269,302],[357,343],[343,277],[277,357],[452,453],[453,357],[357,452],[333,332],[332,297],[297,333],[175,152],[152,377],[377,175],[347,348],[348,330],[330,347],[303,304],[304,270],[270,303],[9,336],[336,337],[337,9],[278,279],[279,360],[360,278],[418,262],[262,431],[431,418],[304,408],[408,409],[409,304],[310,415],[415,407],[407,310],[270,409],[409,410],[410,270],[450,348],[348,347],[347,450],[422,430],[430,434],[434,422],[313,314],[314,17],[17,313],[306,307],[307,375],[375,306],[387,388],[388,260],[260,387],[286,414],[414,398],[398,286],[335,406],[406,418],[418,335],[364,367],[367,416],[416,364],[423,358],[358,327],[327,423],[251,284],[284,298],[298,251],[281,5],[5,4],[4,281],[373,374],[374,253],[253,373],[307,320],[320,321],[321,307],[425,427],[427,411],[411,425],[421,313],[313,18],[18,421],[321,405],[405,406],[406,321],[320,404],[404,405],[405,320],[315,16],[16,17],[17,315],[426,425],[425,266],[266,426],[377,400],[400,369],[369,377],[322,391],[391,269],[269,322],[417,465],[465,464],[464,417],[386,257],[257,258],[258,386],[466,260],[260,388],[388,466],[456,399],[399,419],[419,456],[284,332],[332,333],[333,284],[417,285],[285,8],[8,417],[346,340],[340,261],[261,346],[413,441],[441,285],[285,413],[327,460],[460,328],[328,327],[355,371],[371,329],[329,355],[392,439],[439,438],[438,392],[382,341],[341,256],[256,382],[429,420],[420,360],[360,429],[364,394],[394,379],[379,364],[277,343],[343,437],[437,277],[443,444],[444,283],[283,443],[275,440],[440,363],[363,275],[431,262],[262,369],[369,431],[297,338],[338,337],[337,297],[273,375],[375,321],[321,273],[450,451],[451,349],[349,450],[446,342],[342,467],[467,446],[293,334],[334,282],[282,293],[458,461],[461,462],[462,458],[276,353],[353,383],[383,276],[308,324],[324,325],[325,308],[276,300],[300,293],[293,276],[372,345],[345,447],[447,372],[352,345],[345,340],[340,352],[274,1],[1,19],[19,274],[456,248],[248,281],[281,456],[436,427],[427,425],[425,436],[381,256],[256,252],[252,381],[269,391],[391,393],[393,269],[200,199],[199,428],[428,200],[266,330],[330,329],[329,266],[287,273],[273,422],[422,287],[250,462],[462,328],[328,250],[258,286],[286,384],[384,258],[265,353],[353,342],[342,265],[387,259],[259,257],[257,387],[424,431],[431,430],[430,424],[342,353],[353,276],[276,342],[273,335],[335,424],[424,273],[292,325],[325,307],[307,292],[366,447],[447,345],[345,366],[271,303],[303,302],[302,271],[423,266],[266,371],[371,423],[294,455],[455,460],[460,294],[279,278],[278,294],[294,279],[271,272],[272,304],[304,271],[432,434],[434,427],[427,432],[272,407],[407,408],[408,272],[394,430],[430,431],[431,394],[395,369],[369,400],[400,395],[334,333],[333,299],[299,334],[351,417],[417,168],[168,351],[352,280],[280,411],[411,352],[325,319],[319,320],[320,325],[295,296],[296,336],[336,295],[319,403],[403,404],[404,319],[330,348],[348,349],[349,330],[293,298],[298,333],[333,293],[323,454],[454,447],[447,323],[15,16],[16,315],[315,15],[358,429],[429,279],[279,358],[14,15],[15,316],[316,14],[285,336],[336,9],[9,285],[329,349],[349,350],[350,329],[374,380],[380,252],[252,374],[318,402],[402,403],[403,318],[6,197],[197,419],[419,6],[318,319],[319,325],[325,318],[367,364],[364,365],[365,367],[435,367],[367,397],[397,435],[344,438],[438,439],[439,344],[272,271],[271,311],[311,272],[195,5],[5,281],[281,195],[273,287],[287,291],[291,273],[396,428],[428,199],[199,396],[311,271],[271,268],[268,311],[283,444],[444,445],[445,283],[373,254],[254,339],[339,373],[282,334],[334,296],[296,282],[449,347],[347,346],[346,449],[264,447],[447,454],[454,264],[336,296],[296,299],[299,336],[338,10],[10,151],[151,338],[278,439],[439,455],[455,278],[292,407],[407,415],[415,292],[358,371],[371,355],[355,358],[340,345],[345,372],[372,340],[346,347],[347,280],[280,346],[442,443],[443,282],[282,442],[19,94],[94,370],[370,19],[441,442],[442,295],[295,441],[248,419],[419,197],[197,248],[263,255],[255,359],[359,263],[440,275],[275,274],[274,440],[300,383],[383,368],[368,300],[351,412],[412,465],[465,351],[263,467],[467,466],[466,263],[301,368],[368,389],[389,301],[395,378],[378,379],[379,395],[412,351],[351,419],[419,412],[436,426],[426,322],[322,436],[2,164],[164,393],[393,2],[370,462],[462,461],[461,370],[164,0],[0,267],[267,164],[302,11],[11,12],[12,302],[268,12],[12,13],[13,268],[293,300],[300,301],[301,293],[446,261],[261,340],[340,446],[330,266],[266,425],[425,330],[426,423],[423,391],[391,426],[429,355],[355,437],[437,429],[391,327],[327,326],[326,391],[440,457],[457,438],[438,440],[341,382],[382,362],[362,341],[459,457],[457,461],[461,459],[434,430],[430,394],[394,434],[414,463],[463,362],[362,414],[396,369],[369,262],[262,396],[354,461],[461,457],[457,354],[316,403],[403,402],[402,316],[315,404],[404,403],[403,315],[314,405],[405,404],[404,314],[313,406],[406,405],[405,313],[421,418],[418,406],[406,421],[366,401],[401,361],[361,366],[306,408],[408,407],[407,306],[291,409],[409,408],[408,291],[287,410],[410,409],[409,287],[432,436],[436,410],[410,432],[434,416],[416,411],[411,434],[264,368],[368,383],[383,264],[309,438],[438,457],[457,309],[352,376],[376,401],[401,352],[274,275],[275,4],[4,274],[421,428],[428,262],[262,421],[294,327],[327,358],[358,294],[433,416],[416,367],[367,433],[289,455],[455,439],[439,289],[462,370],[370,326],[326,462],[2,326],[326,370],[370,2],[305,460],[460,455],[455,305],[254,449],[449,448],[448,254],[255,261],[261,446],[446,255],[253,450],[450,449],[449,253],[252,451],[451,450],[450,252],[256,452],[452,451],[451,256],[341,453],[453,452],[452,341],[413,464],[464,463],[463,413],[441,413],[413,414],[414,441],[258,442],[442,441],[441,258],[257,443],[443,442],[442,257],[259,444],[444,443],[443,259],[260,445],[445,444],[444,260],[467,342],[342,445],[445,467],[459,458],[458,250],[250,459],[289,392],[392,290],[290,289],[290,328],[328,460],[460,290],[376,433],[433,435],[435,376],[250,290],[290,392],[392,250],[411,416],[416,433],[433,411],[341,463],[463,464],[464,341],[453,464],[464,465],[465,453],[357,465],[465,412],[412,357],[343,412],[412,399],[399,343],[360,363],[363,440],[440,360],[437,399],[399,456],[456,437],[420,456],[456,363],[363,420],[401,435],[435,288],[288,401],[372,383],[383,353],[353,372],[339,255],[255,249],[249,339],[448,261],[261,255],[255,448],[133,243],[243,190],[190,133],[133,155],[155,112],[112,133],[33,246],[246,247],[247,33],[33,130],[130,25],[25,33],[398,384],[384,286],[286,398],[362,398],[398,414],[414,362],[362,463],[463,341],[341,362],[263,359],[359,467],[467,263],[263,249],[249,255],[255,263],[466,467],[467,260],[260,466],[75,60],[60,166],[166,75],[238,239],[239,79],[79,238],[162,127],[127,139],[139,162],[72,11],[11,37],[37,72],[121,232],[232,120],[120,121],[73,72],[72,39],[39,73],[114,128],[128,47],[47,114],[233,232],[232,128],[128,233],[103,104],[104,67],[67,103],[152,175],[175,148],[148,152],[119,118],[118,101],[101,119],[74,73],[73,40],[40,74],[107,9],[9,108],[108,107],[49,48],[48,131],[131,49],[32,194],[194,211],[211,32],[184,74],[74,185],[185,184],[191,80],[80,183],[183,191],[185,40],[40,186],[186,185],[119,230],[230,118],[118,119],[210,202],[202,214],[214,210],[84,83],[83,17],[17,84],[77,76],[76,146],[146,77],[161,160],[160,30],[30,161],[190,56],[56,173],[173,190],[182,106],[106,194],[194,182],[138,135],[135,192],[192,138],[129,203],[203,98],[98,129],[54,21],[21,68],[68,54],[5,51],[51,4],[4,5],[145,144],[144,23],[23,145],[90,77],[77,91],[91,90],[207,205],[205,187],[187,207],[83,201],[201,18],[18,83],[181,91],[91,182],[182,181],[180,90],[90,181],[181,180],[16,85],[85,17],[17,16],[205,206],[206,36],[36,205],[176,148],[148,140],[140,176],[165,92],[92,39],[39,165],[245,193],[193,244],[244,245],[27,159],[159,28],[28,27],[30,247],[247,161],[161,30],[174,236],[236,196],[196,174],[103,54],[54,104],[104,103],[55,193],[193,8],[8,55],[111,117],[117,31],[31,111],[221,189],[189,55],[55,221],[240,98],[98,99],[99,240],[142,126],[126,100],[100,142],[219,166],[166,218],[218,219],[112,155],[155,26],[26,112],[198,209],[209,131],[131,198],[169,135],[135,150],[150,169],[114,47],[47,217],[217,114],[224,223],[223,53],[53,224],[220,45],[45,134],[134,220],[32,211],[211,140],[140,32],[109,67],[67,108],[108,109],[146,43],[43,91],[91,146],[231,230],[230,120],[120,231],[113,226],[226,247],[247,113],[105,63],[63,52],[52,105],[241,238],[238,242],[242,241],[124,46],[46,156],[156,124],[95,78],[78,96],[96,95],[70,46],[46,63],[63,70],[116,143],[143,227],[227,116],[116,123],[123,111],[111,116],[1,44],[44,19],[19,1],[3,236],[236,51],[51,3],[207,216],[216,205],[205,207],[26,154],[154,22],[22,26],[165,39],[39,167],[167,165],[199,200],[200,208],[208,199],[101,36],[36,100],[100,101],[43,57],[57,202],[202,43],[242,20],[20,99],[99,242],[56,28],[28,157],[157,56],[124,35],[35,113],[113,124],[29,160],[160,27],[27,29],[211,204],[204,210],[210,211],[124,113],[113,46],[46,124],[106,43],[43,204],[204,106],[96,62],[62,77],[77,96],[227,137],[137,116],[116,227],[73,41],[41,72],[72,73],[36,203],[203,142],[142,36],[235,64],[64,240],[240,235],[48,49],[49,64],[64,48],[42,41],[41,74],[74,42],[214,212],[212,207],[207,214],[183,42],[42,184],[184,183],[210,169],[169,211],[211,210],[140,170],[170,176],[176,140],[104,105],[105,69],[69,104],[193,122],[122,168],[168,193],[50,123],[123,187],[187,50],[89,96],[96,90],[90,89],[66,65],[65,107],[107,66],[179,89],[89,180],[180,179],[119,101],[101,120],[120,119],[68,63],[63,104],[104,68],[234,93],[93,227],[227,234],[16,15],[15,85],[85,16],[209,129],[129,49],[49,209],[15,14],[14,86],[86,15],[107,55],[55,9],[9,107],[120,100],[100,121],[121,120],[153,145],[145,22],[22,153],[178,88],[88,179],[179,178],[197,6],[6,196],[196,197],[89,88],[88,96],[96,89],[135,138],[138,136],[136,135],[138,215],[215,172],[172,138],[218,115],[115,219],[219,218],[41,42],[42,81],[81,41],[5,195],[195,51],[51,5],[57,43],[43,61],[61,57],[208,171],[171,199],[199,208],[41,81],[81,38],[38,41],[224,53],[53,225],[225,224],[24,144],[144,110],[110,24],[105,52],[52,66],[66,105],[118,229],[229,117],[117,118],[227,34],[34,234],[234,227],[66,107],[107,69],[69,66],[10,109],[109,151],[151,10],[219,48],[48,235],[235,219],[183,62],[62,191],[191,183],[142,129],[129,126],[126,142],[116,111],[111,143],[143,116],[118,117],[117,50],[50,118],[223,222],[222,52],[52,223],[94,19],[19,141],[141,94],[222,221],[221,65],[65,222],[196,3],[3,197],[197,196],[45,220],[220,44],[44,45],[156,70],[70,139],[139,156],[188,122],[122,245],[245,188],[139,71],[71,162],[162,139],[149,170],[170,150],[150,149],[122,188],[188,196],[196,122],[206,216],[216,92],[92,206],[164,2],[2,167],[167,164],[242,141],[141,241],[241,242],[0,164],[164,37],[37,0],[11,72],[72,12],[12,11],[12,38],[38,13],[13,12],[70,63],[63,71],[71,70],[31,226],[226,111],[111,31],[36,101],[101,205],[205,36],[203,206],[206,165],[165,203],[126,209],[209,217],[217,126],[98,165],[165,97],[97,98],[237,220],[220,218],[218,237],[237,239],[239,241],[241,237],[210,214],[214,169],[169,210],[140,171],[171,32],[32,140],[241,125],[125,237],[237,241],[179,86],[86,178],[178,179],[180,85],[85,179],[179,180],[181,84],[84,180],[180,181],[182,83],[83,181],[181,182],[194,201],[201,182],[182,194],[177,137],[137,132],[132,177],[184,76],[76,183],[183,184],[185,61],[61,184],[184,185],[186,57],[57,185],[185,186],[216,212],[212,186],[186,216],[192,214],[214,187],[187,192],[139,34],[34,156],[156,139],[218,79],[79,237],[237,218],[147,123],[123,177],[177,147],[45,44],[44,4],[4,45],[208,201],[201,32],[32,208],[98,64],[64,129],[129,98],[192,213],[213,138],[138,192],[235,59],[59,219],[219,235],[141,242],[242,97],[97,141],[97,2],[2,141],[141,97],[240,75],[75,235],[235,240],[229,24],[24,228],[228,229],[31,25],[25,226],[226,31],[230,23],[23,229],[229,230],[231,22],[22,230],[230,231],[232,26],[26,231],[231,232],[233,112],[112,232],[232,233],[244,189],[189,243],[243,244],[189,221],[221,190],[190,189],[222,28],[28,221],[221,222],[223,27],[27,222],[222,223],[224,29],[29,223],[223,224],[225,30],[30,224],[224,225],[113,247],[247,225],[225,113],[99,60],[60,240],[240,99],[213,147],[147,215],[215,213],[60,20],[20,166],[166,60],[192,187],[187,213],[213,192],[243,112],[112,244],[244,243],[244,233],[233,245],[245,244],[245,128],[128,188],[188,245],[188,114],[114,174],[174,188],[134,131],[131,220],[220,134],[174,217],[217,236],[236,174],[236,198],[198,134],[134,236],[215,177],[177,58],[58,215],[156,143],[143,124],[124,156],[25,110],[110,7],[7,25],[31,228],[228,25],[25,31],[264,356],[356,368],[368,264],[0,11],[11,267],[267,0],[451,452],[452,349],[349,451],[267,302],[302,269],[269,267],[350,357],[357,277],[277,350],[350,452],[452,357],[357,350],[299,333],[333,297],[297,299],[396,175],[175,377],[377,396],[280,347],[347,330],[330,280],[269,303],[303,270],[270,269],[151,9],[9,337],[337,151],[344,278],[278,360],[360,344],[424,418],[418,431],[431,424],[270,304],[304,409],[409,270],[272,310],[310,407],[407,272],[322,270],[270,410],[410,322],[449,450],[450,347],[347,449],[432,422],[422,434],[434,432],[18,313],[313,17],[17,18],[291,306],[306,375],[375,291],[259,387],[387,260],[260,259],[424,335],[335,418],[418,424],[434,364],[364,416],[416,434],[391,423],[423,327],[327,391],[301,251],[251,298],[298,301],[275,281],[281,4],[4,275],[254,373],[373,253],[253,254],[375,307],[307,321],[321,375],[280,425],[425,411],[411,280],[200,421],[421,18],[18,200],[335,321],[321,406],[406,335],[321,320],[320,405],[405,321],[314,315],[315,17],[17,314],[423,426],[426,266],[266,423],[396,377],[377,369],[369,396],[270,322],[322,269],[269,270],[413,417],[417,464],[464,413],[385,386],[386,258],[258,385],[248,456],[456,419],[419,248],[298,284],[284,333],[333,298],[168,417],[417,8],[8,168],[448,346],[346,261],[261,448],[417,413],[413,285],[285,417],[326,327],[327,328],[328,326],[277,355],[355,329],[329,277],[309,392],[392,438],[438,309],[381,382],[382,256],[256,381],[279,429],[429,360],[360,279],[365,364],[364,379],[379,365],[355,277],[277,437],[437,355],[282,443],[443,283],[283,282],[281,275],[275,363],[363,281],[395,431],[431,369],[369,395],[299,297],[297,337],[337,299],[335,273],[273,321],[321,335],[348,450],[450,349],[349,348],[359,446],[446,467],[467,359],[283,293],[293,282],[282,283],[250,458],[458,462],[462,250],[300,276],[276,383],[383,300],[292,308],[308,325],[325,292],[283,276],[276,293],[293,283],[264,372],[372,447],[447,264],[346,352],[352,340],[340,346],[354,274],[274,19],[19,354],[363,456],[456,281],[281,363],[426,436],[436,425],[425,426],[380,381],[381,252],[252,380],[267,269],[269,393],[393,267],[421,200],[200,428],[428,421],[371,266],[266,329],[329,371],[432,287],[287,422],[422,432],[290,250],[250,328],[328,290],[385,258],[258,384],[384,385],[446,265],[265,342],[342,446],[386,387],[387,257],[257,386],[422,424],[424,430],[430,422],[445,342],[342,276],[276,445],[422,273],[273,424],[424,422],[306,292],[292,307],[307,306],[352,366],[366,345],[345,352],[268,271],[271,302],[302,268],[358,423],[423,371],[371,358],[327,294],[294,460],[460,327],[331,279],[279,294],[294,331],[303,271],[271,304],[304,303],[436,432],[432,427],[427,436],[304,272],[272,408],[408,304],[395,394],[394,431],[431,395],[378,395],[395,400],[400,378],[296,334],[334,299],[299,296],[6,351],[351,168],[168,6],[376,352],[352,411],[411,376],[307,325],[325,320],[320,307],[285,295],[295,336],[336,285],[320,319],[319,404],[404,320],[329,330],[330,349],[349,329],[334,293],[293,333],[333,334],[366,323],[323,447],[447,366],[316,15],[15,315],[315,316],[331,358],[358,279],[279,331],[317,14],[14,316],[316,317],[8,285],[285,9],[9,8],[277,329],[329,350],[350,277],[253,374],[374,252],[252,253],[319,318],[318,403],[403,319],[351,6],[6,419],[419,351],[324,318],[318,325],[325,324],[397,367],[367,365],[365,397],[288,435],[435,397],[397,288],[278,344],[344,439],[439,278],[310,272],[272,311],[311,310],[248,195],[195,281],[281,248],[375,273],[273,291],[291,375],[175,396],[396,199],[199,175],[312,311],[311,268],[268,312],[276,283],[283,445],[445,276],[390,373],[373,339],[339,390],[295,282],[282,296],[296,295],[448,449],[449,346],[346,448],[356,264],[264,454],[454,356],[337,336],[336,299],[299,337],[337,338],[338,151],[151,337],[294,278],[278,455],[455,294],[308,292],[292,415],[415,308],[429,358],[358,355],[355,429],[265,340],[340,372],[372,265],[352,346],[346,280],[280,352],[295,442],[442,282],[282,295],[354,19],[19,370],[370,354],[285,441],[441,295],[295,285],[195,248],[248,197],[197,195],[457,440],[440,274],[274,457],[301,300],[300,368],[368,301],[417,351],[351,465],[465,417],[251,301],[301,389],[389,251],[394,395],[395,379],[379,394],[399,412],[412,419],[419,399],[410,436],[436,322],[322,410],[326,2],[2,393],[393,326],[354,370],[370,461],[461,354],[393,164],[164,267],[267,393],[268,302],[302,12],[12,268],[312,268],[268,13],[13,312],[298,293],[293,301],[301,298],[265,446],[446,340],[340,265],[280,330],[330,425],[425,280],[322,426],[426,391],[391,322],[420,429],[429,437],[437,420],[393,391],[391,326],[326,393],[344,440],[440,438],[438,344],[458,459],[459,461],[461,458],[364,434],[434,394],[394,364],[428,396],[396,262],[262,428],[274,354],[354,457],[457,274],[317,316],[316,402],[402,317],[316,315],[315,403],[403,316],[315,314],[314,404],[404,315],[314,313],[313,405],[405,314],[313,421],[421,406],[406,313],[323,366],[366,361],[361,323],[292,306],[306,407],[407,292],[306,291],[291,408],[408,306],[291,287],[287,409],[409,291],[287,432],[432,410],[410,287],[427,434],[434,411],[411,427],[372,264],[264,383],[383,372],[459,309],[309,457],[457,459],[366,352],[352,401],[401,366],[1,274],[274,4],[4,1],[418,421],[421,262],[262,418],[331,294],[294,358],[358,331],[435,433],[433,367],[367,435],[392,289],[289,439],[439,392],[328,462],[462,326],[326,328],[94,2],[2,370],[370,94],[289,305],[305,455],[455,289],[339,254],[254,448],[448,339],[359,255],[255,446],[446,359],[254,253],[253,449],[449,254],[253,252],[252,450],[450,253],[252,256],[256,451],[451,252],[256,341],[341,452],[452,256],[414,413],[413,463],[463,414],[286,441],[441,414],[414,286],[286,258],[258,441],[441,286],[258,257],[257,442],[442,258],[257,259],[259,443],[443,257],[259,260],[260,444],[444,259],[260,467],[467,445],[445,260],[309,459],[459,250],[250,309],[305,289],[289,290],[290,305],[305,290],[290,460],[460,305],[401,376],[376,435],[435,401],[309,250],[250,392],[392,309],[376,411],[411,433],[433,376],[453,341],[341,464],[464,453],[357,453],[453,465],[465,357],[343,357],[357,412],[412,343],[437,343],[343,399],[399,437],[344,360],[360,440],[440,344],[420,437],[437,456],[456,420],[360,420],[420,363],[363,360],[361,401],[401,288],[288,361],[265,372],[372,353],[353,265],[390,339],[339,249],[249,390],[339,448],[448,255],[255,339]])}).call(this)},643:function(e){e.exports=function(){"use strict";function e(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function t(t){for(var i=1;i<arguments.length;i++){var r=null!=arguments[i]?arguments[i]:{};i%2?e(Object(r),!0).forEach((function(e){var i,a,o;i=t,a=e,o=r[e],(a=n(a))in i?Object.defineProperty(i,a,{value:o,enumerable:!0,configurable:!0,writable:!0}):i[a]=o})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):e(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}))}return t}function n(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var i=n.call(e,t||"default");if("object"!=typeof i)return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}function i(e){return i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i(e)}function r(e,t){for(var i=0;i<t.length;i++){var r=t[i];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,n(r.key),r)}}function a(e){return function(e){if(Array.isArray(e))return o(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return o(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?o(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function o(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,i=new Array(t);n<t;n++)i[n]=e[n];return i}var s="undefined"!=typeof window&&void 0!==window.document,l=s?window:{},u=!(!s||!l.document.documentElement)&&"ontouchstart"in l.document.documentElement,c=!!s&&"PointerEvent"in l,d="cropper",p="all",h="crop",m="move",f="zoom",g="e",y="w",v="s",b="n",k="ne",w="nw",S="se",P="sw",x="".concat(d,"-crop"),C="".concat(d,"-disabled"),A="".concat(d,"-hidden"),T="".concat(d,"-hide"),j="".concat(d,"-invisible"),_="".concat(d,"-modal"),E="".concat(d,"-move"),R="".concat(d,"Action"),I="".concat(d,"Preview"),z="crop",L="move",O="none",M="crop",F="cropend",D="cropmove",B="cropstart",N="dblclick",G=c?"pointerdown":u?"touchstart":"mousedown",U=c?"pointermove":u?"touchmove":"mousemove",H=c?"pointerup pointercancel":u?"touchend touchcancel":"mouseup",W="ready",V="resize",q="wheel",J="zoom",Y="image/jpeg",K=/^e|w|s|n|se|sw|ne|nw|all|crop|move|zoom$/,$=/^data:/,Z=/^data:image\/jpeg;base64,/,X=/^img|canvas$/i,Q={viewMode:0,dragMode:z,initialAspectRatio:NaN,aspectRatio:NaN,data:null,preview:"",responsive:!0,restore:!0,checkCrossOrigin:!0,checkOrientation:!0,modal:!0,guides:!0,center:!0,highlight:!0,background:!0,autoCrop:!0,autoCropArea:.8,movable:!0,rotatable:!0,scalable:!0,zoomable:!0,zoomOnTouch:!0,zoomOnWheel:!0,wheelZoomRatio:.1,cropBoxMovable:!0,cropBoxResizable:!0,toggleDragModeOnDblclick:!0,minCanvasWidth:0,minCanvasHeight:0,minCropBoxWidth:0,minCropBoxHeight:0,minContainerWidth:200,minContainerHeight:100,ready:null,cropstart:null,cropmove:null,cropend:null,crop:null,zoom:null},ee=Number.isNaN||l.isNaN;function te(e){return"number"==typeof e&&!ee(e)}var ne=function(e){return e>0&&e<1/0};function ie(e){return void 0===e}function re(e){return"object"===i(e)&&null!==e}var ae=Object.prototype.hasOwnProperty;function oe(e){if(!re(e))return!1;try{var t=e.constructor,n=t.prototype;return t&&n&&ae.call(n,"isPrototypeOf")}catch(e){return!1}}function se(e){return"function"==typeof e}var le=Array.prototype.slice;function ue(e){return Array.from?Array.from(e):le.call(e)}function ce(e,t){return e&&se(t)&&(Array.isArray(e)||te(e.length)?ue(e).forEach((function(n,i){t.call(e,n,i,e)})):re(e)&&Object.keys(e).forEach((function(n){t.call(e,e[n],n,e)}))),e}var de=Object.assign||function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];return re(e)&&n.length>0&&n.forEach((function(t){re(t)&&Object.keys(t).forEach((function(n){e[n]=t[n]}))})),e},pe=/\.\d*(?:0|9){12}\d*$/;function he(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1e11;return pe.test(e)?Math.round(e*t)/t:e}var me=/^width|height|left|top|marginLeft|marginTop$/;function fe(e,t){var n=e.style;ce(t,(function(e,t){me.test(t)&&te(e)&&(e="".concat(e,"px")),n[t]=e}))}function ge(e,t){if(t)if(te(e.length))ce(e,(function(e){ge(e,t)}));else if(e.classList)e.classList.add(t);else{var n=e.className.trim();n?n.indexOf(t)<0&&(e.className="".concat(n," ").concat(t)):e.className=t}}function ye(e,t){t&&(te(e.length)?ce(e,(function(e){ye(e,t)})):e.classList?e.classList.remove(t):e.className.indexOf(t)>=0&&(e.className=e.className.replace(t,"")))}function ve(e,t,n){t&&(te(e.length)?ce(e,(function(e){ve(e,t,n)})):n?ge(e,t):ye(e,t))}var be=/([a-z\d])([A-Z])/g;function ke(e){return e.replace(be,"$1-$2").toLowerCase()}function we(e,t){return re(e[t])?e[t]:e.dataset?e.dataset[t]:e.getAttribute("data-".concat(ke(t)))}function Se(e,t,n){re(n)?e[t]=n:e.dataset?e.dataset[t]=n:e.setAttribute("data-".concat(ke(t)),n)}var Pe=/\s\s*/,xe=function(){var e=!1;if(s){var t=!1,n=function(){},i=Object.defineProperty({},"once",{get:function(){return e=!0,t},set:function(e){t=e}});l.addEventListener("test",n,i),l.removeEventListener("test",n,i)}return e}();function Ce(e,t,n){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},r=n;t.trim().split(Pe).forEach((function(t){if(!xe){var a=e.listeners;a&&a[t]&&a[t][n]&&(r=a[t][n],delete a[t][n],0===Object.keys(a[t]).length&&delete a[t],0===Object.keys(a).length&&delete e.listeners)}e.removeEventListener(t,r,i)}))}function Ae(e,t,n){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},r=n;t.trim().split(Pe).forEach((function(t){if(i.once&&!xe){var a=e.listeners,o=void 0===a?{}:a;r=function(){delete o[t][n],e.removeEventListener(t,r,i);for(var a=arguments.length,s=new Array(a),l=0;l<a;l++)s[l]=arguments[l];n.apply(e,s)},o[t]||(o[t]={}),o[t][n]&&e.removeEventListener(t,o[t][n],i),o[t][n]=r,e.listeners=o}e.addEventListener(t,r,i)}))}function Te(e,t,n){var i;return se(Event)&&se(CustomEvent)?i=new CustomEvent(t,{detail:n,bubbles:!0,cancelable:!0}):(i=document.createEvent("CustomEvent")).initCustomEvent(t,!0,!0,n),e.dispatchEvent(i)}function je(e){var t=e.getBoundingClientRect();return{left:t.left+(window.pageXOffset-document.documentElement.clientLeft),top:t.top+(window.pageYOffset-document.documentElement.clientTop)}}var _e=l.location,Ee=/^(\w+:)\/\/([^:/?#]*):?(\d*)/i;function Re(e){var t=e.match(Ee);return null!==t&&(t[1]!==_e.protocol||t[2]!==_e.hostname||t[3]!==_e.port)}function Ie(e){var t="timestamp=".concat((new Date).getTime());return e+(-1===e.indexOf("?")?"?":"&")+t}function ze(e){var t=e.rotate,n=e.scaleX,i=e.scaleY,r=e.translateX,a=e.translateY,o=[];te(r)&&0!==r&&o.push("translateX(".concat(r,"px)")),te(a)&&0!==a&&o.push("translateY(".concat(a,"px)")),te(t)&&0!==t&&o.push("rotate(".concat(t,"deg)")),te(n)&&1!==n&&o.push("scaleX(".concat(n,")")),te(i)&&1!==i&&o.push("scaleY(".concat(i,")"));var s=o.length?o.join(" "):"none";return{WebkitTransform:s,msTransform:s,transform:s}}function Le(e,n){var i=e.pageX,r=e.pageY,a={endX:i,endY:r};return n?a:t({startX:i,startY:r},a)}function Oe(e){var t=e.aspectRatio,n=e.height,i=e.width,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"contain",a=ne(i),o=ne(n);if(a&&o){var s=n*t;"contain"===r&&s>i||"cover"===r&&s<i?n=i/t:i=n*t}else a?n=i/t:o&&(i=n*t);return{width:i,height:n}}var Me=String.fromCharCode;var Fe=/^data:.*,/;function De(e){var t,n=new DataView(e);try{var i,r,a;if(255===n.getUint8(0)&&216===n.getUint8(1))for(var o=n.byteLength,s=2;s+1<o;){if(255===n.getUint8(s)&&225===n.getUint8(s+1)){r=s;break}s+=1}if(r){var l=r+10;if("Exif"===function(e,t,n){var i="";n+=t;for(var r=t;r<n;r+=1)i+=Me(e.getUint8(r));return i}(n,r+4,4)){var u=n.getUint16(l);if(((i=18761===u)||19789===u)&&42===n.getUint16(l+2,i)){var c=n.getUint32(l+4,i);c>=8&&(a=l+c)}}}if(a){var d,p,h=n.getUint16(a,i);for(p=0;p<h;p+=1)if(d=a+12*p+2,274===n.getUint16(d,i)){d+=8,t=n.getUint16(d,i),n.setUint16(d,1,i);break}}}catch(e){t=1}return t}var Be={render:function(){this.initContainer(),this.initCanvas(),this.initCropBox(),this.renderCanvas(),this.cropped&&this.renderCropBox()},initContainer:function(){var e=this.element,t=this.options,n=this.container,i=this.cropper,r=Number(t.minContainerWidth),a=Number(t.minContainerHeight);ge(i,A),ye(e,A);var o={width:Math.max(n.offsetWidth,r>=0?r:200),height:Math.max(n.offsetHeight,a>=0?a:100)};this.containerData=o,fe(i,{width:o.width,height:o.height}),ge(e,A),ye(i,A)},initCanvas:function(){var e=this.containerData,t=this.imageData,n=this.options.viewMode,i=Math.abs(t.rotate)%180==90,r=i?t.naturalHeight:t.naturalWidth,a=i?t.naturalWidth:t.naturalHeight,o=r/a,s=e.width,l=e.height;e.height*o>e.width?3===n?s=e.height*o:l=e.width/o:3===n?l=e.width/o:s=e.height*o;var u={aspectRatio:o,naturalWidth:r,naturalHeight:a,width:s,height:l};this.canvasData=u,this.limited=1===n||2===n,this.limitCanvas(!0,!0),u.width=Math.min(Math.max(u.width,u.minWidth),u.maxWidth),u.height=Math.min(Math.max(u.height,u.minHeight),u.maxHeight),u.left=(e.width-u.width)/2,u.top=(e.height-u.height)/2,u.oldLeft=u.left,u.oldTop=u.top,this.initialCanvasData=de({},u)},limitCanvas:function(e,t){var n=this.options,i=this.containerData,r=this.canvasData,a=this.cropBoxData,o=n.viewMode,s=r.aspectRatio,l=this.cropped&&a;if(e){var u=Number(n.minCanvasWidth)||0,c=Number(n.minCanvasHeight)||0;o>1?(u=Math.max(u,i.width),c=Math.max(c,i.height),3===o&&(c*s>u?u=c*s:c=u/s)):o>0&&(u?u=Math.max(u,l?a.width:0):c?c=Math.max(c,l?a.height:0):l&&(u=a.width,(c=a.height)*s>u?u=c*s:c=u/s));var d=Oe({aspectRatio:s,width:u,height:c});u=d.width,c=d.height,r.minWidth=u,r.minHeight=c,r.maxWidth=1/0,r.maxHeight=1/0}if(t)if(o>(l?0:1)){var p=i.width-r.width,h=i.height-r.height;r.minLeft=Math.min(0,p),r.minTop=Math.min(0,h),r.maxLeft=Math.max(0,p),r.maxTop=Math.max(0,h),l&&this.limited&&(r.minLeft=Math.min(a.left,a.left+(a.width-r.width)),r.minTop=Math.min(a.top,a.top+(a.height-r.height)),r.maxLeft=a.left,r.maxTop=a.top,2===o&&(r.width>=i.width&&(r.minLeft=Math.min(0,p),r.maxLeft=Math.max(0,p)),r.height>=i.height&&(r.minTop=Math.min(0,h),r.maxTop=Math.max(0,h))))}else r.minLeft=-r.width,r.minTop=-r.height,r.maxLeft=i.width,r.maxTop=i.height},renderCanvas:function(e,t){var n=this.canvasData,i=this.imageData;if(t){var r=function(e){var t=e.width,n=e.height,i=e.degree;if(90==(i=Math.abs(i)%180))return{width:n,height:t};var r=i%90*Math.PI/180,a=Math.sin(r),o=Math.cos(r),s=t*o+n*a,l=t*a+n*o;return i>90?{width:l,height:s}:{width:s,height:l}}({width:i.naturalWidth*Math.abs(i.scaleX||1),height:i.naturalHeight*Math.abs(i.scaleY||1),degree:i.rotate||0}),a=r.width,o=r.height,s=n.width*(a/n.naturalWidth),l=n.height*(o/n.naturalHeight);n.left-=(s-n.width)/2,n.top-=(l-n.height)/2,n.width=s,n.height=l,n.aspectRatio=a/o,n.naturalWidth=a,n.naturalHeight=o,this.limitCanvas(!0,!1)}(n.width>n.maxWidth||n.width<n.minWidth)&&(n.left=n.oldLeft),(n.height>n.maxHeight||n.height<n.minHeight)&&(n.top=n.oldTop),n.width=Math.min(Math.max(n.width,n.minWidth),n.maxWidth),n.height=Math.min(Math.max(n.height,n.minHeight),n.maxHeight),this.limitCanvas(!1,!0),n.left=Math.min(Math.max(n.left,n.minLeft),n.maxLeft),n.top=Math.min(Math.max(n.top,n.minTop),n.maxTop),n.oldLeft=n.left,n.oldTop=n.top,fe(this.canvas,de({width:n.width,height:n.height},ze({translateX:n.left,translateY:n.top}))),this.renderImage(e),this.cropped&&this.limited&&this.limitCropBox(!0,!0)},renderImage:function(e){var t=this.canvasData,n=this.imageData,i=n.naturalWidth*(t.width/t.naturalWidth),r=n.naturalHeight*(t.height/t.naturalHeight);de(n,{width:i,height:r,left:(t.width-i)/2,top:(t.height-r)/2}),fe(this.image,de({width:n.width,height:n.height},ze(de({translateX:n.left,translateY:n.top},n)))),e&&this.output()},initCropBox:function(){var e=this.options,t=this.canvasData,n=e.aspectRatio||e.initialAspectRatio,i=Number(e.autoCropArea)||.8,r={width:t.width,height:t.height};n&&(t.height*n>t.width?r.height=r.width/n:r.width=r.height*n),this.cropBoxData=r,this.limitCropBox(!0,!0),r.width=Math.min(Math.max(r.width,r.minWidth),r.maxWidth),r.height=Math.min(Math.max(r.height,r.minHeight),r.maxHeight),r.width=Math.max(r.minWidth,r.width*i),r.height=Math.max(r.minHeight,r.height*i),r.left=t.left+(t.width-r.width)/2,r.top=t.top+(t.height-r.height)/2,r.oldLeft=r.left,r.oldTop=r.top,this.initialCropBoxData=de({},r)},limitCropBox:function(e,t){var n=this.options,i=this.containerData,r=this.canvasData,a=this.cropBoxData,o=this.limited,s=n.aspectRatio;if(e){var l=Number(n.minCropBoxWidth)||0,u=Number(n.minCropBoxHeight)||0,c=o?Math.min(i.width,r.width,r.width+r.left,i.width-r.left):i.width,d=o?Math.min(i.height,r.height,r.height+r.top,i.height-r.top):i.height;l=Math.min(l,i.width),u=Math.min(u,i.height),s&&(l&&u?u*s>l?u=l/s:l=u*s:l?u=l/s:u&&(l=u*s),d*s>c?d=c/s:c=d*s),a.minWidth=Math.min(l,c),a.minHeight=Math.min(u,d),a.maxWidth=c,a.maxHeight=d}t&&(o?(a.minLeft=Math.max(0,r.left),a.minTop=Math.max(0,r.top),a.maxLeft=Math.min(i.width,r.left+r.width)-a.width,a.maxTop=Math.min(i.height,r.top+r.height)-a.height):(a.minLeft=0,a.minTop=0,a.maxLeft=i.width-a.width,a.maxTop=i.height-a.height))},renderCropBox:function(){var e=this.options,t=this.containerData,n=this.cropBoxData;(n.width>n.maxWidth||n.width<n.minWidth)&&(n.left=n.oldLeft),(n.height>n.maxHeight||n.height<n.minHeight)&&(n.top=n.oldTop),n.width=Math.min(Math.max(n.width,n.minWidth),n.maxWidth),n.height=Math.min(Math.max(n.height,n.minHeight),n.maxHeight),this.limitCropBox(!1,!0),n.left=Math.min(Math.max(n.left,n.minLeft),n.maxLeft),n.top=Math.min(Math.max(n.top,n.minTop),n.maxTop),n.oldLeft=n.left,n.oldTop=n.top,e.movable&&e.cropBoxMovable&&Se(this.face,R,n.width>=t.width&&n.height>=t.height?m:p),fe(this.cropBox,de({width:n.width,height:n.height},ze({translateX:n.left,translateY:n.top}))),this.cropped&&this.limited&&this.limitCanvas(!0,!0),this.disabled||this.output()},output:function(){this.preview(),Te(this.element,M,this.getData())}},Ne={initPreview:function(){var e=this.element,t=this.crossOrigin,n=this.options.preview,i=t?this.crossOriginUrl:this.url,r=e.alt||"The image to preview",a=document.createElement("img");if(t&&(a.crossOrigin=t),a.src=i,a.alt=r,this.viewBox.appendChild(a),this.viewBoxImage=a,n){var o=n;"string"==typeof n?o=e.ownerDocument.querySelectorAll(n):n.querySelector&&(o=[n]),this.previews=o,ce(o,(function(e){var n=document.createElement("img");Se(e,I,{width:e.offsetWidth,height:e.offsetHeight,html:e.innerHTML}),t&&(n.crossOrigin=t),n.src=i,n.alt=r,n.style.cssText='display:block;width:100%;height:auto;min-width:0!important;min-height:0!important;max-width:none!important;max-height:none!important;image-orientation:0deg!important;"',e.innerHTML="",e.appendChild(n)}))}},resetPreview:function(){ce(this.previews,(function(e){var t=we(e,I);fe(e,{width:t.width,height:t.height}),e.innerHTML=t.html,function(e,t){if(re(e[t]))try{delete e[t]}catch(n){e[t]=void 0}else if(e.dataset)try{delete e.dataset[t]}catch(n){e.dataset[t]=void 0}else e.removeAttribute("data-".concat(ke(t)))}(e,I)}))},preview:function(){var e=this.imageData,t=this.canvasData,n=this.cropBoxData,i=n.width,r=n.height,a=e.width,o=e.height,s=n.left-t.left-e.left,l=n.top-t.top-e.top;this.cropped&&!this.disabled&&(fe(this.viewBoxImage,de({width:a,height:o},ze(de({translateX:-s,translateY:-l},e)))),ce(this.previews,(function(t){var n=we(t,I),u=n.width,c=n.height,d=u,p=c,h=1;i&&(p=r*(h=u/i)),r&&p>c&&(d=i*(h=c/r),p=c),fe(t,{width:d,height:p}),fe(t.getElementsByTagName("img")[0],de({width:a*h,height:o*h},ze(de({translateX:-s*h,translateY:-l*h},e))))})))}},Ge={bind:function(){var e=this.element,t=this.options,n=this.cropper;se(t.cropstart)&&Ae(e,B,t.cropstart),se(t.cropmove)&&Ae(e,D,t.cropmove),se(t.cropend)&&Ae(e,F,t.cropend),se(t.crop)&&Ae(e,M,t.crop),se(t.zoom)&&Ae(e,J,t.zoom),Ae(n,G,this.onCropStart=this.cropStart.bind(this)),t.zoomable&&t.zoomOnWheel&&Ae(n,q,this.onWheel=this.wheel.bind(this),{passive:!1,capture:!0}),t.toggleDragModeOnDblclick&&Ae(n,N,this.onDblclick=this.dblclick.bind(this)),Ae(e.ownerDocument,U,this.onCropMove=this.cropMove.bind(this)),Ae(e.ownerDocument,H,this.onCropEnd=this.cropEnd.bind(this)),t.responsive&&Ae(window,V,this.onResize=this.resize.bind(this))},unbind:function(){var e=this.element,t=this.options,n=this.cropper;se(t.cropstart)&&Ce(e,B,t.cropstart),se(t.cropmove)&&Ce(e,D,t.cropmove),se(t.cropend)&&Ce(e,F,t.cropend),se(t.crop)&&Ce(e,M,t.crop),se(t.zoom)&&Ce(e,J,t.zoom),Ce(n,G,this.onCropStart),t.zoomable&&t.zoomOnWheel&&Ce(n,q,this.onWheel,{passive:!1,capture:!0}),t.toggleDragModeOnDblclick&&Ce(n,N,this.onDblclick),Ce(e.ownerDocument,U,this.onCropMove),Ce(e.ownerDocument,H,this.onCropEnd),t.responsive&&Ce(window,V,this.onResize)}},Ue={resize:function(){if(!this.disabled){var e,t,n=this.options,i=this.container,r=this.containerData,a=i.offsetWidth/r.width,o=i.offsetHeight/r.height,s=Math.abs(a-1)>Math.abs(o-1)?a:o;1!==s&&(n.restore&&(e=this.getCanvasData(),t=this.getCropBoxData()),this.render(),n.restore&&(this.setCanvasData(ce(e,(function(t,n){e[n]=t*s}))),this.setCropBoxData(ce(t,(function(e,n){t[n]=e*s})))))}},dblclick:function(){var e,t;this.disabled||this.options.dragMode===O||this.setDragMode((e=this.dragBox,t=x,(e.classList?e.classList.contains(t):e.className.indexOf(t)>-1)?L:z))},wheel:function(e){var t=this,n=Number(this.options.wheelZoomRatio)||.1,i=1;this.disabled||(e.preventDefault(),this.wheeling||(this.wheeling=!0,setTimeout((function(){t.wheeling=!1}),50),e.deltaY?i=e.deltaY>0?1:-1:e.wheelDelta?i=-e.wheelDelta/120:e.detail&&(i=e.detail>0?1:-1),this.zoom(-i*n,e)))},cropStart:function(e){var t=e.buttons,n=e.button;if(!(this.disabled||("mousedown"===e.type||"pointerdown"===e.type&&"mouse"===e.pointerType)&&(te(t)&&1!==t||te(n)&&0!==n||e.ctrlKey))){var i,r=this.options,a=this.pointers;e.changedTouches?ce(e.changedTouches,(function(e){a[e.identifier]=Le(e)})):a[e.pointerId||0]=Le(e),i=Object.keys(a).length>1&&r.zoomable&&r.zoomOnTouch?f:we(e.target,R),K.test(i)&&!1!==Te(this.element,B,{originalEvent:e,action:i})&&(e.preventDefault(),this.action=i,this.cropping=!1,i===h&&(this.cropping=!0,ge(this.dragBox,_)))}},cropMove:function(e){var t=this.action;if(!this.disabled&&t){var n=this.pointers;e.preventDefault(),!1!==Te(this.element,D,{originalEvent:e,action:t})&&(e.changedTouches?ce(e.changedTouches,(function(e){de(n[e.identifier]||{},Le(e,!0))})):de(n[e.pointerId||0]||{},Le(e,!0)),this.change(e))}},cropEnd:function(e){if(!this.disabled){var t=this.action,n=this.pointers;e.changedTouches?ce(e.changedTouches,(function(e){delete n[e.identifier]})):delete n[e.pointerId||0],t&&(e.preventDefault(),Object.keys(n).length||(this.action=""),this.cropping&&(this.cropping=!1,ve(this.dragBox,_,this.cropped&&this.options.modal)),Te(this.element,F,{originalEvent:e,action:t}))}}},He={change:function(e){var n,i=this.options,r=this.canvasData,a=this.containerData,o=this.cropBoxData,s=this.pointers,l=this.action,u=i.aspectRatio,c=o.left,d=o.top,x=o.width,C=o.height,T=c+x,j=d+C,_=0,E=0,R=a.width,I=a.height,z=!0;!u&&e.shiftKey&&(u=x&&C?x/C:1),this.limited&&(_=o.minLeft,E=o.minTop,R=_+Math.min(a.width,r.width,r.left+r.width),I=E+Math.min(a.height,r.height,r.top+r.height));var L=s[Object.keys(s)[0]],O={x:L.endX-L.startX,y:L.endY-L.startY},M=function(e){switch(e){case g:T+O.x>R&&(O.x=R-T);break;case y:c+O.x<_&&(O.x=_-c);break;case b:d+O.y<E&&(O.y=E-d);break;case v:j+O.y>I&&(O.y=I-j)}};switch(l){case p:c+=O.x,d+=O.y;break;case g:if(O.x>=0&&(T>=R||u&&(d<=E||j>=I))){z=!1;break}M(g),(x+=O.x)<0&&(l=y,c-=x=-x),u&&(C=x/u,d+=(o.height-C)/2);break;case b:if(O.y<=0&&(d<=E||u&&(c<=_||T>=R))){z=!1;break}M(b),C-=O.y,d+=O.y,C<0&&(l=v,d-=C=-C),u&&(x=C*u,c+=(o.width-x)/2);break;case y:if(O.x<=0&&(c<=_||u&&(d<=E||j>=I))){z=!1;break}M(y),x-=O.x,c+=O.x,x<0&&(l=g,c-=x=-x),u&&(C=x/u,d+=(o.height-C)/2);break;case v:if(O.y>=0&&(j>=I||u&&(c<=_||T>=R))){z=!1;break}M(v),(C+=O.y)<0&&(l=b,d-=C=-C),u&&(x=C*u,c+=(o.width-x)/2);break;case k:if(u){if(O.y<=0&&(d<=E||T>=R)){z=!1;break}M(b),C-=O.y,d+=O.y,x=C*u}else M(b),M(g),O.x>=0?T<R?x+=O.x:O.y<=0&&d<=E&&(z=!1):x+=O.x,O.y<=0?d>E&&(C-=O.y,d+=O.y):(C-=O.y,d+=O.y);x<0&&C<0?(l=P,d-=C=-C,c-=x=-x):x<0?(l=w,c-=x=-x):C<0&&(l=S,d-=C=-C);break;case w:if(u){if(O.y<=0&&(d<=E||c<=_)){z=!1;break}M(b),C-=O.y,d+=O.y,x=C*u,c+=o.width-x}else M(b),M(y),O.x<=0?c>_?(x-=O.x,c+=O.x):O.y<=0&&d<=E&&(z=!1):(x-=O.x,c+=O.x),O.y<=0?d>E&&(C-=O.y,d+=O.y):(C-=O.y,d+=O.y);x<0&&C<0?(l=S,d-=C=-C,c-=x=-x):x<0?(l=k,c-=x=-x):C<0&&(l=P,d-=C=-C);break;case P:if(u){if(O.x<=0&&(c<=_||j>=I)){z=!1;break}M(y),x-=O.x,c+=O.x,C=x/u}else M(v),M(y),O.x<=0?c>_?(x-=O.x,c+=O.x):O.y>=0&&j>=I&&(z=!1):(x-=O.x,c+=O.x),O.y>=0?j<I&&(C+=O.y):C+=O.y;x<0&&C<0?(l=k,d-=C=-C,c-=x=-x):x<0?(l=S,c-=x=-x):C<0&&(l=w,d-=C=-C);break;case S:if(u){if(O.x>=0&&(T>=R||j>=I)){z=!1;break}M(g),C=(x+=O.x)/u}else M(v),M(g),O.x>=0?T<R?x+=O.x:O.y>=0&&j>=I&&(z=!1):x+=O.x,O.y>=0?j<I&&(C+=O.y):C+=O.y;x<0&&C<0?(l=w,d-=C=-C,c-=x=-x):x<0?(l=P,c-=x=-x):C<0&&(l=k,d-=C=-C);break;case m:this.move(O.x,O.y),z=!1;break;case f:this.zoom(function(e){var n=t({},e),i=0;return ce(e,(function(e,t){delete n[t],ce(n,(function(t){var n=Math.abs(e.startX-t.startX),r=Math.abs(e.startY-t.startY),a=Math.abs(e.endX-t.endX),o=Math.abs(e.endY-t.endY),s=Math.sqrt(n*n+r*r),l=(Math.sqrt(a*a+o*o)-s)/s;Math.abs(l)>Math.abs(i)&&(i=l)}))})),i}(s),e),z=!1;break;case h:if(!O.x||!O.y){z=!1;break}n=je(this.cropper),c=L.startX-n.left,d=L.startY-n.top,x=o.minWidth,C=o.minHeight,O.x>0?l=O.y>0?S:k:O.x<0&&(c-=x,l=O.y>0?P:w),O.y<0&&(d-=C),this.cropped||(ye(this.cropBox,A),this.cropped=!0,this.limited&&this.limitCropBox(!0,!0))}z&&(o.width=x,o.height=C,o.left=c,o.top=d,this.action=l,this.renderCropBox()),ce(s,(function(e){e.startX=e.endX,e.startY=e.endY}))}},We={crop:function(){return!this.ready||this.cropped||this.disabled||(this.cropped=!0,this.limitCropBox(!0,!0),this.options.modal&&ge(this.dragBox,_),ye(this.cropBox,A),this.setCropBoxData(this.initialCropBoxData)),this},reset:function(){return this.ready&&!this.disabled&&(this.imageData=de({},this.initialImageData),this.canvasData=de({},this.initialCanvasData),this.cropBoxData=de({},this.initialCropBoxData),this.renderCanvas(),this.cropped&&this.renderCropBox()),this},clear:function(){return this.cropped&&!this.disabled&&(de(this.cropBoxData,{left:0,top:0,width:0,height:0}),this.cropped=!1,this.renderCropBox(),this.limitCanvas(!0,!0),this.renderCanvas(),ye(this.dragBox,_),ge(this.cropBox,A)),this},replace:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return!this.disabled&&e&&(this.isImg&&(this.element.src=e),t?(this.url=e,this.image.src=e,this.ready&&(this.viewBoxImage.src=e,ce(this.previews,(function(t){t.getElementsByTagName("img")[0].src=e})))):(this.isImg&&(this.replaced=!0),this.options.data=null,this.uncreate(),this.load(e))),this},enable:function(){return this.ready&&this.disabled&&(this.disabled=!1,ye(this.cropper,C)),this},disable:function(){return this.ready&&!this.disabled&&(this.disabled=!0,ge(this.cropper,C)),this},destroy:function(){var e=this.element;return e[d]?(e[d]=void 0,this.isImg&&this.replaced&&(e.src=this.originalUrl),this.uncreate(),this):this},move:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e,n=this.canvasData,i=n.left,r=n.top;return this.moveTo(ie(e)?e:i+Number(e),ie(t)?t:r+Number(t))},moveTo:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e,n=this.canvasData,i=!1;return e=Number(e),t=Number(t),this.ready&&!this.disabled&&this.options.movable&&(te(e)&&(n.left=e,i=!0),te(t)&&(n.top=t,i=!0),i&&this.renderCanvas(!0)),this},zoom:function(e,t){var n=this.canvasData;return e=(e=Number(e))<0?1/(1-e):1+e,this.zoomTo(n.width*e/n.naturalWidth,null,t)},zoomTo:function(e,t,n){var i=this.options,r=this.canvasData,a=r.width,o=r.height,s=r.naturalWidth,l=r.naturalHeight;if((e=Number(e))>=0&&this.ready&&!this.disabled&&i.zoomable){var u=s*e,c=l*e;if(!1===Te(this.element,J,{ratio:e,oldRatio:a/s,originalEvent:n}))return this;if(n){var d=this.pointers,p=je(this.cropper),h=d&&Object.keys(d).length?function(e){var t=0,n=0,i=0;return ce(e,(function(e){var r=e.startX,a=e.startY;t+=r,n+=a,i+=1})),{pageX:t/=i,pageY:n/=i}}(d):{pageX:n.pageX,pageY:n.pageY};r.left-=(u-a)*((h.pageX-p.left-r.left)/a),r.top-=(c-o)*((h.pageY-p.top-r.top)/o)}else oe(t)&&te(t.x)&&te(t.y)?(r.left-=(u-a)*((t.x-r.left)/a),r.top-=(c-o)*((t.y-r.top)/o)):(r.left-=(u-a)/2,r.top-=(c-o)/2);r.width=u,r.height=c,this.renderCanvas(!0)}return this},rotate:function(e){return this.rotateTo((this.imageData.rotate||0)+Number(e))},rotateTo:function(e){return te(e=Number(e))&&this.ready&&!this.disabled&&this.options.rotatable&&(this.imageData.rotate=e%360,this.renderCanvas(!0,!0)),this},scaleX:function(e){var t=this.imageData.scaleY;return this.scale(e,te(t)?t:1)},scaleY:function(e){var t=this.imageData.scaleX;return this.scale(te(t)?t:1,e)},scale:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e,n=this.imageData,i=!1;return e=Number(e),t=Number(t),this.ready&&!this.disabled&&this.options.scalable&&(te(e)&&(n.scaleX=e,i=!0),te(t)&&(n.scaleY=t,i=!0),i&&this.renderCanvas(!0,!0)),this},getData:function(){var e,t=arguments.length>0&&void 0!==arguments[0]&&arguments[0],n=this.options,i=this.imageData,r=this.canvasData,a=this.cropBoxData;if(this.ready&&this.cropped){e={x:a.left-r.left,y:a.top-r.top,width:a.width,height:a.height};var o=i.width/i.naturalWidth;if(ce(e,(function(t,n){e[n]=t/o})),t){var s=Math.round(e.y+e.height),l=Math.round(e.x+e.width);e.x=Math.round(e.x),e.y=Math.round(e.y),e.width=l-e.x,e.height=s-e.y}}else e={x:0,y:0,width:0,height:0};return n.rotatable&&(e.rotate=i.rotate||0),n.scalable&&(e.scaleX=i.scaleX||1,e.scaleY=i.scaleY||1),e},setData:function(e){var t=this.options,n=this.imageData,i=this.canvasData,r={};if(this.ready&&!this.disabled&&oe(e)){var a=!1;t.rotatable&&te(e.rotate)&&e.rotate!==n.rotate&&(n.rotate=e.rotate,a=!0),t.scalable&&(te(e.scaleX)&&e.scaleX!==n.scaleX&&(n.scaleX=e.scaleX,a=!0),te(e.scaleY)&&e.scaleY!==n.scaleY&&(n.scaleY=e.scaleY,a=!0)),a&&this.renderCanvas(!0,!0);var o=n.width/n.naturalWidth;te(e.x)&&(r.left=e.x*o+i.left),te(e.y)&&(r.top=e.y*o+i.top),te(e.width)&&(r.width=e.width*o),te(e.height)&&(r.height=e.height*o),this.setCropBoxData(r)}return this},getContainerData:function(){return this.ready?de({},this.containerData):{}},getImageData:function(){return this.sized?de({},this.imageData):{}},getCanvasData:function(){var e=this.canvasData,t={};return this.ready&&ce(["left","top","width","height","naturalWidth","naturalHeight"],(function(n){t[n]=e[n]})),t},setCanvasData:function(e){var t=this.canvasData,n=t.aspectRatio;return this.ready&&!this.disabled&&oe(e)&&(te(e.left)&&(t.left=e.left),te(e.top)&&(t.top=e.top),te(e.width)?(t.width=e.width,t.height=e.width/n):te(e.height)&&(t.height=e.height,t.width=e.height*n),this.renderCanvas(!0)),this},getCropBoxData:function(){var e,t=this.cropBoxData;return this.ready&&this.cropped&&(e={left:t.left,top:t.top,width:t.width,height:t.height}),e||{}},setCropBoxData:function(e){var t,n,i=this.cropBoxData,r=this.options.aspectRatio;return this.ready&&this.cropped&&!this.disabled&&oe(e)&&(te(e.left)&&(i.left=e.left),te(e.top)&&(i.top=e.top),te(e.width)&&e.width!==i.width&&(t=!0,i.width=e.width),te(e.height)&&e.height!==i.height&&(n=!0,i.height=e.height),r&&(t?i.height=i.width/r:n&&(i.width=i.height*r)),this.renderCropBox()),this},getCroppedCanvas:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(!this.ready||!window.HTMLCanvasElement)return null;var t=this.canvasData,n=function(e,t,n,i){var r=t.aspectRatio,o=t.naturalWidth,s=t.naturalHeight,l=t.rotate,u=void 0===l?0:l,c=t.scaleX,d=void 0===c?1:c,p=t.scaleY,h=void 0===p?1:p,m=n.aspectRatio,f=n.naturalWidth,g=n.naturalHeight,y=i.fillColor,v=void 0===y?"transparent":y,b=i.imageSmoothingEnabled,k=void 0===b||b,w=i.imageSmoothingQuality,S=void 0===w?"low":w,P=i.maxWidth,x=void 0===P?1/0:P,C=i.maxHeight,A=void 0===C?1/0:C,T=i.minWidth,j=void 0===T?0:T,_=i.minHeight,E=void 0===_?0:_,R=document.createElement("canvas"),I=R.getContext("2d"),z=Oe({aspectRatio:m,width:x,height:A}),L=Oe({aspectRatio:m,width:j,height:E},"cover"),O=Math.min(z.width,Math.max(L.width,f)),M=Math.min(z.height,Math.max(L.height,g)),F=Oe({aspectRatio:r,width:x,height:A}),D=Oe({aspectRatio:r,width:j,height:E},"cover"),B=Math.min(F.width,Math.max(D.width,o)),N=Math.min(F.height,Math.max(D.height,s)),G=[-B/2,-N/2,B,N];return R.width=he(O),R.height=he(M),I.fillStyle=v,I.fillRect(0,0,O,M),I.save(),I.translate(O/2,M/2),I.rotate(u*Math.PI/180),I.scale(d,h),I.imageSmoothingEnabled=k,I.imageSmoothingQuality=S,I.drawImage.apply(I,[e].concat(a(G.map((function(e){return Math.floor(he(e))}))))),I.restore(),R}(this.image,this.imageData,t,e);if(!this.cropped)return n;var i=this.getData(e.rounded),r=i.x,o=i.y,s=i.width,l=i.height,u=n.width/Math.floor(t.naturalWidth);1!==u&&(r*=u,o*=u,s*=u,l*=u);var c=s/l,d=Oe({aspectRatio:c,width:e.maxWidth||1/0,height:e.maxHeight||1/0}),p=Oe({aspectRatio:c,width:e.minWidth||0,height:e.minHeight||0},"cover"),h=Oe({aspectRatio:c,width:e.width||(1!==u?n.width:s),height:e.height||(1!==u?n.height:l)}),m=h.width,f=h.height;m=Math.min(d.width,Math.max(p.width,m)),f=Math.min(d.height,Math.max(p.height,f));var g=document.createElement("canvas"),y=g.getContext("2d");g.width=he(m),g.height=he(f),y.fillStyle=e.fillColor||"transparent",y.fillRect(0,0,m,f);var v=e.imageSmoothingEnabled,b=void 0===v||v,k=e.imageSmoothingQuality;y.imageSmoothingEnabled=b,k&&(y.imageSmoothingQuality=k);var w,S,P,x,C,A,T=n.width,j=n.height,_=r,E=o;_<=-s||_>T?(_=0,w=0,P=0,C=0):_<=0?(P=-_,_=0,C=w=Math.min(T,s+_)):_<=T&&(P=0,C=w=Math.min(s,T-_)),w<=0||E<=-l||E>j?(E=0,S=0,x=0,A=0):E<=0?(x=-E,E=0,A=S=Math.min(j,l+E)):E<=j&&(x=0,A=S=Math.min(l,j-E));var R=[_,E,w,S];if(C>0&&A>0){var I=m/s;R.push(P*I,x*I,C*I,A*I)}return y.drawImage.apply(y,[n].concat(a(R.map((function(e){return Math.floor(he(e))}))))),g},setAspectRatio:function(e){var t=this.options;return this.disabled||ie(e)||(t.aspectRatio=Math.max(0,e)||NaN,this.ready&&(this.initCropBox(),this.cropped&&this.renderCropBox())),this},setDragMode:function(e){var t=this.options,n=this.dragBox,i=this.face;if(this.ready&&!this.disabled){var r=e===z,a=t.movable&&e===L;e=r||a?e:O,t.dragMode=e,Se(n,R,e),ve(n,x,r),ve(n,E,a),t.cropBoxMovable||(Se(i,R,e),ve(i,x,r),ve(i,E,a))}return this}},Ve=l.Cropper,qe=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),!t||!X.test(t.tagName))throw new Error("The first argument is required and must be an <img> or <canvas> element.");this.element=t,this.options=de({},Q,oe(n)&&n),this.cropped=!1,this.disabled=!1,this.pointers={},this.ready=!1,this.reloading=!1,this.replaced=!1,this.sized=!1,this.sizing=!1,this.init()}return t=e,i=[{key:"noConflict",value:function(){return window.Cropper=Ve,e}},{key:"setDefaults",value:function(e){de(Q,oe(e)&&e)}}],(n=[{key:"init",value:function(){var e,t=this.element,n=t.tagName.toLowerCase();if(!t[d]){if(t[d]=this,"img"===n){if(this.isImg=!0,e=t.getAttribute("src")||"",this.originalUrl=e,!e)return;e=t.src}else"canvas"===n&&window.HTMLCanvasElement&&(e=t.toDataURL());this.load(e)}}},{key:"load",value:function(e){var t,n,i,r,a=this;if(e){this.url=e,this.imageData={};var o=this.element,s=this.options;if(s.rotatable||s.scalable||(s.checkOrientation=!1),s.checkOrientation&&window.ArrayBuffer)if($.test(e))Z.test(e)?this.read((t=e.replace(Fe,""),n=atob(t),i=new ArrayBuffer(n.length),ce(r=new Uint8Array(i),(function(e,t){r[t]=n.charCodeAt(t)})),i)):this.clone();else{var l=new XMLHttpRequest,u=this.clone.bind(this);this.reloading=!0,this.xhr=l,l.onabort=u,l.onerror=u,l.ontimeout=u,l.onprogress=function(){l.getResponseHeader("content-type")!==Y&&l.abort()},l.onload=function(){a.read(l.response)},l.onloadend=function(){a.reloading=!1,a.xhr=null},s.checkCrossOrigin&&Re(e)&&o.crossOrigin&&(e=Ie(e)),l.open("GET",e,!0),l.responseType="arraybuffer",l.withCredentials="use-credentials"===o.crossOrigin,l.send()}else this.clone()}}},{key:"read",value:function(e){var t=this.options,n=this.imageData,i=De(e),r=0,a=1,o=1;if(i>1){this.url=function(e,t){for(var n=[],i=new Uint8Array(e);i.length>0;)n.push(Me.apply(null,ue(i.subarray(0,8192)))),i=i.subarray(8192);return"data:".concat(t,";base64,").concat(btoa(n.join("")))}(e,Y);var s=function(e){var t=0,n=1,i=1;switch(e){case 2:n=-1;break;case 3:t=-180;break;case 4:i=-1;break;case 5:t=90,i=-1;break;case 6:t=90;break;case 7:t=90,n=-1;break;case 8:t=-90}return{rotate:t,scaleX:n,scaleY:i}}(i);r=s.rotate,a=s.scaleX,o=s.scaleY}t.rotatable&&(n.rotate=r),t.scalable&&(n.scaleX=a,n.scaleY=o),this.clone()}},{key:"clone",value:function(){var e=this.element,t=this.url,n=e.crossOrigin,i=t;this.options.checkCrossOrigin&&Re(t)&&(n||(n="anonymous"),i=Ie(t)),this.crossOrigin=n,this.crossOriginUrl=i;var r=document.createElement("img");n&&(r.crossOrigin=n),r.src=i||t,r.alt=e.alt||"The image to crop",this.image=r,r.onload=this.start.bind(this),r.onerror=this.stop.bind(this),ge(r,T),e.parentNode.insertBefore(r,e.nextSibling)}},{key:"start",value:function(){var e=this,t=this.image;t.onload=null,t.onerror=null,this.sizing=!0;var n=l.navigator&&/(?:iPad|iPhone|iPod).*?AppleWebKit/i.test(l.navigator.userAgent),i=function(t,n){de(e.imageData,{naturalWidth:t,naturalHeight:n,aspectRatio:t/n}),e.initialImageData=de({},e.imageData),e.sizing=!1,e.sized=!0,e.build()};if(!t.naturalWidth||n){var r=document.createElement("img"),a=document.body||document.documentElement;this.sizingImage=r,r.onload=function(){i(r.width,r.height),n||a.removeChild(r)},r.src=t.src,n||(r.style.cssText="left:0;max-height:none!important;max-width:none!important;min-height:0!important;min-width:0!important;opacity:0;position:absolute;top:0;z-index:-1;",a.appendChild(r))}else i(t.naturalWidth,t.naturalHeight)}},{key:"stop",value:function(){var e=this.image;e.onload=null,e.onerror=null,e.parentNode.removeChild(e),this.image=null}},{key:"build",value:function(){if(this.sized&&!this.ready){var e=this.element,t=this.options,n=this.image,i=e.parentNode,r=document.createElement("div");r.innerHTML='<div class="cropper-container" touch-action="none"><div class="cropper-wrap-box"><div class="cropper-canvas"></div></div><div class="cropper-drag-box"></div><div class="cropper-crop-box"><span class="cropper-view-box"></span><span class="cropper-dashed dashed-h"></span><span class="cropper-dashed dashed-v"></span><span class="cropper-center"></span><span class="cropper-face"></span><span class="cropper-line line-e" data-cropper-action="e"></span><span class="cropper-line line-n" data-cropper-action="n"></span><span class="cropper-line line-w" data-cropper-action="w"></span><span class="cropper-line line-s" data-cropper-action="s"></span><span class="cropper-point point-e" data-cropper-action="e"></span><span class="cropper-point point-n" data-cropper-action="n"></span><span class="cropper-point point-w" data-cropper-action="w"></span><span class="cropper-point point-s" data-cropper-action="s"></span><span class="cropper-point point-ne" data-cropper-action="ne"></span><span class="cropper-point point-nw" data-cropper-action="nw"></span><span class="cropper-point point-sw" data-cropper-action="sw"></span><span class="cropper-point point-se" data-cropper-action="se"></span></div></div>';var a=r.querySelector(".".concat(d,"-container")),o=a.querySelector(".".concat(d,"-canvas")),s=a.querySelector(".".concat(d,"-drag-box")),l=a.querySelector(".".concat(d,"-crop-box")),u=l.querySelector(".".concat(d,"-face"));this.container=i,this.cropper=a,this.canvas=o,this.dragBox=s,this.cropBox=l,this.viewBox=a.querySelector(".".concat(d,"-view-box")),this.face=u,o.appendChild(n),ge(e,A),i.insertBefore(a,e.nextSibling),ye(n,T),this.initPreview(),this.bind(),t.initialAspectRatio=Math.max(0,t.initialAspectRatio)||NaN,t.aspectRatio=Math.max(0,t.aspectRatio)||NaN,t.viewMode=Math.max(0,Math.min(3,Math.round(t.viewMode)))||0,ge(l,A),t.guides||ge(l.getElementsByClassName("".concat(d,"-dashed")),A),t.center||ge(l.getElementsByClassName("".concat(d,"-center")),A),t.background&&ge(a,"".concat(d,"-bg")),t.highlight||ge(u,j),t.cropBoxMovable&&(ge(u,E),Se(u,R,p)),t.cropBoxResizable||(ge(l.getElementsByClassName("".concat(d,"-line")),A),ge(l.getElementsByClassName("".concat(d,"-point")),A)),this.render(),this.ready=!0,this.setDragMode(t.dragMode),t.autoCrop&&this.crop(),this.setData(t.data),se(t.ready)&&Ae(e,W,t.ready,{once:!0}),Te(e,W)}}},{key:"unbuild",value:function(){if(this.ready){this.ready=!1,this.unbind(),this.resetPreview();var e=this.cropper.parentNode;e&&e.removeChild(this.cropper),ye(this.element,A)}}},{key:"uncreate",value:function(){this.ready?(this.unbuild(),this.ready=!1,this.cropped=!1):this.sizing?(this.sizingImage.onload=null,this.sizing=!1,this.sized=!1):this.reloading?(this.xhr.onabort=null,this.xhr.abort()):this.image&&this.stop()}}])&&r(t.prototype,n),i&&r(t,i),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,n,i}();return de(qe.prototype,Be,Ne,Ge,Ue,He,We),qe}()},543:function(e,t,n){var i;e=n.nmd(e),function(){var r,a="Expected a function",o="__lodash_hash_undefined__",s="__lodash_placeholder__",l=32,u=128,c=1/0,d=9007199254740991,p=NaN,h=4294967295,m=[["ary",u],["bind",1],["bindKey",2],["curry",8],["curryRight",16],["flip",512],["partial",l],["partialRight",64],["rearg",256]],f="[object Arguments]",g="[object Array]",y="[object Boolean]",v="[object Date]",b="[object Error]",k="[object Function]",w="[object GeneratorFunction]",S="[object Map]",P="[object Number]",x="[object Object]",C="[object Promise]",A="[object RegExp]",T="[object Set]",j="[object String]",_="[object Symbol]",E="[object WeakMap]",R="[object ArrayBuffer]",I="[object DataView]",z="[object Float32Array]",L="[object Float64Array]",O="[object Int8Array]",M="[object Int16Array]",F="[object Int32Array]",D="[object Uint8Array]",B="[object Uint8ClampedArray]",N="[object Uint16Array]",G="[object Uint32Array]",U=/\b__p \+= '';/g,H=/\b(__p \+=) '' \+/g,W=/(__e\(.*?\)|\b__t\)) \+\n'';/g,V=/&(?:amp|lt|gt|quot|#39);/g,q=/[&<>"']/g,J=RegExp(V.source),Y=RegExp(q.source),K=/<%-([\s\S]+?)%>/g,$=/<%([\s\S]+?)%>/g,Z=/<%=([\s\S]+?)%>/g,X=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Q=/^\w*$/,ee=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,te=/[\\^$.*+?()[\]{}|]/g,ne=RegExp(te.source),ie=/^\s+/,re=/\s/,ae=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,oe=/\{\n\/\* \[wrapped with (.+)\] \*/,se=/,? & /,le=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,ue=/[()=,{}\[\]\/\s]/,ce=/\\(\\)?/g,de=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,pe=/\w*$/,he=/^[-+]0x[0-9a-f]+$/i,me=/^0b[01]+$/i,fe=/^\[object .+?Constructor\]$/,ge=/^0o[0-7]+$/i,ye=/^(?:0|[1-9]\d*)$/,ve=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,be=/($^)/,ke=/['\n\r\u2028\u2029\\]/g,we="\\ud800-\\udfff",Se="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",Pe="\\u2700-\\u27bf",xe="a-z\\xdf-\\xf6\\xf8-\\xff",Ce="A-Z\\xc0-\\xd6\\xd8-\\xde",Ae="\\ufe0e\\ufe0f",Te="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",je="["+we+"]",_e="["+Te+"]",Ee="["+Se+"]",Re="\\d+",Ie="["+Pe+"]",ze="["+xe+"]",Le="[^"+we+Te+Re+Pe+xe+Ce+"]",Oe="\\ud83c[\\udffb-\\udfff]",Me="[^"+we+"]",Fe="(?:\\ud83c[\\udde6-\\uddff]){2}",De="[\\ud800-\\udbff][\\udc00-\\udfff]",Be="["+Ce+"]",Ne="\\u200d",Ge="(?:"+ze+"|"+Le+")",Ue="(?:"+Be+"|"+Le+")",He="(?:['’](?:d|ll|m|re|s|t|ve))?",We="(?:['’](?:D|LL|M|RE|S|T|VE))?",Ve="(?:"+Ee+"|"+Oe+")?",qe="["+Ae+"]?",Je=qe+Ve+"(?:"+Ne+"(?:"+[Me,Fe,De].join("|")+")"+qe+Ve+")*",Ye="(?:"+[Ie,Fe,De].join("|")+")"+Je,Ke="(?:"+[Me+Ee+"?",Ee,Fe,De,je].join("|")+")",$e=RegExp("['’]","g"),Ze=RegExp(Ee,"g"),Xe=RegExp(Oe+"(?="+Oe+")|"+Ke+Je,"g"),Qe=RegExp([Be+"?"+ze+"+"+He+"(?="+[_e,Be,"$"].join("|")+")",Ue+"+"+We+"(?="+[_e,Be+Ge,"$"].join("|")+")",Be+"?"+Ge+"+"+He,Be+"+"+We,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Re,Ye].join("|"),"g"),et=RegExp("["+Ne+we+Se+Ae+"]"),tt=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,nt=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],it=-1,rt={};rt[z]=rt[L]=rt[O]=rt[M]=rt[F]=rt[D]=rt[B]=rt[N]=rt[G]=!0,rt[f]=rt[g]=rt[R]=rt[y]=rt[I]=rt[v]=rt[b]=rt[k]=rt[S]=rt[P]=rt[x]=rt[A]=rt[T]=rt[j]=rt[E]=!1;var at={};at[f]=at[g]=at[R]=at[I]=at[y]=at[v]=at[z]=at[L]=at[O]=at[M]=at[F]=at[S]=at[P]=at[x]=at[A]=at[T]=at[j]=at[_]=at[D]=at[B]=at[N]=at[G]=!0,at[b]=at[k]=at[E]=!1;var ot={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},st=parseFloat,lt=parseInt,ut="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g,ct="object"==typeof self&&self&&self.Object===Object&&self,dt=ut||ct||Function("return this")(),pt=t&&!t.nodeType&&t,ht=pt&&e&&!e.nodeType&&e,mt=ht&&ht.exports===pt,ft=mt&&ut.process,gt=function(){try{return ht&&ht.require&&ht.require("util").types||ft&&ft.binding&&ft.binding("util")}catch(e){}}(),yt=gt&&gt.isArrayBuffer,vt=gt&&gt.isDate,bt=gt&&gt.isMap,kt=gt&&gt.isRegExp,wt=gt&&gt.isSet,St=gt&&gt.isTypedArray;function Pt(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}function xt(e,t,n,i){for(var r=-1,a=null==e?0:e.length;++r<a;){var o=e[r];t(i,o,n(o),e)}return i}function Ct(e,t){for(var n=-1,i=null==e?0:e.length;++n<i&&!1!==t(e[n],n,e););return e}function At(e,t){for(var n=null==e?0:e.length;n--&&!1!==t(e[n],n,e););return e}function Tt(e,t){for(var n=-1,i=null==e?0:e.length;++n<i;)if(!t(e[n],n,e))return!1;return!0}function jt(e,t){for(var n=-1,i=null==e?0:e.length,r=0,a=[];++n<i;){var o=e[n];t(o,n,e)&&(a[r++]=o)}return a}function _t(e,t){return!(null==e||!e.length)&&Bt(e,t,0)>-1}function Et(e,t,n){for(var i=-1,r=null==e?0:e.length;++i<r;)if(n(t,e[i]))return!0;return!1}function Rt(e,t){for(var n=-1,i=null==e?0:e.length,r=Array(i);++n<i;)r[n]=t(e[n],n,e);return r}function It(e,t){for(var n=-1,i=t.length,r=e.length;++n<i;)e[r+n]=t[n];return e}function zt(e,t,n,i){var r=-1,a=null==e?0:e.length;for(i&&a&&(n=e[++r]);++r<a;)n=t(n,e[r],r,e);return n}function Lt(e,t,n,i){var r=null==e?0:e.length;for(i&&r&&(n=e[--r]);r--;)n=t(n,e[r],r,e);return n}function Ot(e,t){for(var n=-1,i=null==e?0:e.length;++n<i;)if(t(e[n],n,e))return!0;return!1}var Mt=Ht("length");function Ft(e,t,n){var i;return n(e,(function(e,n,r){if(t(e,n,r))return i=n,!1})),i}function Dt(e,t,n,i){for(var r=e.length,a=n+(i?1:-1);i?a--:++a<r;)if(t(e[a],a,e))return a;return-1}function Bt(e,t,n){return t==t?function(e,t,n){for(var i=n-1,r=e.length;++i<r;)if(e[i]===t)return i;return-1}(e,t,n):Dt(e,Gt,n)}function Nt(e,t,n,i){for(var r=n-1,a=e.length;++r<a;)if(i(e[r],t))return r;return-1}function Gt(e){return e!=e}function Ut(e,t){var n=null==e?0:e.length;return n?qt(e,t)/n:p}function Ht(e){return function(t){return null==t?r:t[e]}}function Wt(e){return function(t){return null==e?r:e[t]}}function Vt(e,t,n,i,r){return r(e,(function(e,r,a){n=i?(i=!1,e):t(n,e,r,a)})),n}function qt(e,t){for(var n,i=-1,a=e.length;++i<a;){var o=t(e[i]);o!==r&&(n=n===r?o:n+o)}return n}function Jt(e,t){for(var n=-1,i=Array(e);++n<e;)i[n]=t(n);return i}function Yt(e){return e?e.slice(0,pn(e)+1).replace(ie,""):e}function Kt(e){return function(t){return e(t)}}function $t(e,t){return Rt(t,(function(t){return e[t]}))}function Zt(e,t){return e.has(t)}function Xt(e,t){for(var n=-1,i=e.length;++n<i&&Bt(t,e[n],0)>-1;);return n}function Qt(e,t){for(var n=e.length;n--&&Bt(t,e[n],0)>-1;);return n}var en=Wt({À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"IJ",ij:"ij",Œ:"Oe",œ:"oe",ʼn:"'n",ſ:"s"}),tn=Wt({"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"});function nn(e){return"\\"+ot[e]}function rn(e){return et.test(e)}function an(e){var t=-1,n=Array(e.size);return e.forEach((function(e,i){n[++t]=[i,e]})),n}function on(e,t){return function(n){return e(t(n))}}function sn(e,t){for(var n=-1,i=e.length,r=0,a=[];++n<i;){var o=e[n];o!==t&&o!==s||(e[n]=s,a[r++]=n)}return a}function ln(e){var t=-1,n=Array(e.size);return e.forEach((function(e){n[++t]=e})),n}function un(e){var t=-1,n=Array(e.size);return e.forEach((function(e){n[++t]=[e,e]})),n}function cn(e){return rn(e)?function(e){for(var t=Xe.lastIndex=0;Xe.test(e);)++t;return t}(e):Mt(e)}function dn(e){return rn(e)?function(e){return e.match(Xe)||[]}(e):function(e){return e.split("")}(e)}function pn(e){for(var t=e.length;t--&&re.test(e.charAt(t)););return t}var hn=Wt({"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'"}),mn=function e(t){var n,i=(t=null==t?dt:mn.defaults(dt.Object(),t,mn.pick(dt,nt))).Array,re=t.Date,we=t.Error,Se=t.Function,Pe=t.Math,xe=t.Object,Ce=t.RegExp,Ae=t.String,Te=t.TypeError,je=i.prototype,_e=Se.prototype,Ee=xe.prototype,Re=t["__core-js_shared__"],Ie=_e.toString,ze=Ee.hasOwnProperty,Le=0,Oe=(n=/[^.]+$/.exec(Re&&Re.keys&&Re.keys.IE_PROTO||""))?"Symbol(src)_1."+n:"",Me=Ee.toString,Fe=Ie.call(xe),De=dt._,Be=Ce("^"+Ie.call(ze).replace(te,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Ne=mt?t.Buffer:r,Ge=t.Symbol,Ue=t.Uint8Array,He=Ne?Ne.allocUnsafe:r,We=on(xe.getPrototypeOf,xe),Ve=xe.create,qe=Ee.propertyIsEnumerable,Je=je.splice,Ye=Ge?Ge.isConcatSpreadable:r,Ke=Ge?Ge.iterator:r,Xe=Ge?Ge.toStringTag:r,et=function(){try{var e=la(xe,"defineProperty");return e({},"",{}),e}catch(e){}}(),ot=t.clearTimeout!==dt.clearTimeout&&t.clearTimeout,ut=re&&re.now!==dt.Date.now&&re.now,ct=t.setTimeout!==dt.setTimeout&&t.setTimeout,pt=Pe.ceil,ht=Pe.floor,ft=xe.getOwnPropertySymbols,gt=Ne?Ne.isBuffer:r,Mt=t.isFinite,Wt=je.join,fn=on(xe.keys,xe),gn=Pe.max,yn=Pe.min,vn=re.now,bn=t.parseInt,kn=Pe.random,wn=je.reverse,Sn=la(t,"DataView"),Pn=la(t,"Map"),xn=la(t,"Promise"),Cn=la(t,"Set"),An=la(t,"WeakMap"),Tn=la(xe,"create"),jn=An&&new An,_n={},En=Ma(Sn),Rn=Ma(Pn),In=Ma(xn),zn=Ma(Cn),Ln=Ma(An),On=Ge?Ge.prototype:r,Mn=On?On.valueOf:r,Fn=On?On.toString:r;function Dn(e){if(es(e)&&!Ho(e)&&!(e instanceof Un)){if(e instanceof Gn)return e;if(ze.call(e,"__wrapped__"))return Fa(e)}return new Gn(e)}var Bn=function(){function e(){}return function(t){if(!Qo(t))return{};if(Ve)return Ve(t);e.prototype=t;var n=new e;return e.prototype=r,n}}();function Nn(){}function Gn(e,t){this.__wrapped__=e,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=r}function Un(e){this.__wrapped__=e,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=h,this.__views__=[]}function Hn(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var i=e[t];this.set(i[0],i[1])}}function Wn(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var i=e[t];this.set(i[0],i[1])}}function Vn(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var i=e[t];this.set(i[0],i[1])}}function qn(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new Vn;++t<n;)this.add(e[t])}function Jn(e){var t=this.__data__=new Wn(e);this.size=t.size}function Yn(e,t){var n=Ho(e),i=!n&&Uo(e),r=!n&&!i&&Jo(e),a=!n&&!i&&!r&&ls(e),o=n||i||r||a,s=o?Jt(e.length,Ae):[],l=s.length;for(var u in e)!t&&!ze.call(e,u)||o&&("length"==u||r&&("offset"==u||"parent"==u)||a&&("buffer"==u||"byteLength"==u||"byteOffset"==u)||fa(u,l))||s.push(u);return s}function Kn(e){var t=e.length;return t?e[Vi(0,t-1)]:r}function $n(e,t){return Ra(Ar(e),ai(t,0,e.length))}function Zn(e){return Ra(Ar(e))}function Xn(e,t,n){(n!==r&&!Bo(e[t],n)||n===r&&!(t in e))&&ii(e,t,n)}function Qn(e,t,n){var i=e[t];ze.call(e,t)&&Bo(i,n)&&(n!==r||t in e)||ii(e,t,n)}function ei(e,t){for(var n=e.length;n--;)if(Bo(e[n][0],t))return n;return-1}function ti(e,t,n,i){return ci(e,(function(e,r,a){t(i,e,n(e),a)})),i}function ni(e,t){return e&&Tr(t,Es(t),e)}function ii(e,t,n){"__proto__"==t&&et?et(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}function ri(e,t){for(var n=-1,a=t.length,o=i(a),s=null==e;++n<a;)o[n]=s?r:Cs(e,t[n]);return o}function ai(e,t,n){return e==e&&(n!==r&&(e=e<=n?e:n),t!==r&&(e=e>=t?e:t)),e}function oi(e,t,n,i,a,o){var s,l=1&t,u=2&t,c=4&t;if(n&&(s=a?n(e,i,a,o):n(e)),s!==r)return s;if(!Qo(e))return e;var d=Ho(e);if(d){if(s=function(e){var t=e.length,n=new e.constructor(t);return t&&"string"==typeof e[0]&&ze.call(e,"index")&&(n.index=e.index,n.input=e.input),n}(e),!l)return Ar(e,s)}else{var p=da(e),h=p==k||p==w;if(Jo(e))return kr(e,l);if(p==x||p==f||h&&!a){if(s=u||h?{}:ha(e),!l)return u?function(e,t){return Tr(e,ca(e),t)}(e,function(e,t){return e&&Tr(t,Rs(t),e)}(s,e)):function(e,t){return Tr(e,ua(e),t)}(e,ni(s,e))}else{if(!at[p])return a?e:{};s=function(e,t,n){var i,r=e.constructor;switch(t){case R:return wr(e);case y:case v:return new r(+e);case I:return function(e,t){var n=t?wr(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.byteLength)}(e,n);case z:case L:case O:case M:case F:case D:case B:case N:case G:return Sr(e,n);case S:return new r;case P:case j:return new r(e);case A:return function(e){var t=new e.constructor(e.source,pe.exec(e));return t.lastIndex=e.lastIndex,t}(e);case T:return new r;case _:return i=e,Mn?xe(Mn.call(i)):{}}}(e,p,l)}}o||(o=new Jn);var m=o.get(e);if(m)return m;o.set(e,s),as(e)?e.forEach((function(i){s.add(oi(i,t,n,i,e,o))})):ts(e)&&e.forEach((function(i,r){s.set(r,oi(i,t,n,r,e,o))}));var g=d?r:(c?u?ta:ea:u?Rs:Es)(e);return Ct(g||e,(function(i,r){g&&(i=e[r=i]),Qn(s,r,oi(i,t,n,r,e,o))})),s}function si(e,t,n){var i=n.length;if(null==e)return!i;for(e=xe(e);i--;){var a=n[i],o=t[a],s=e[a];if(s===r&&!(a in e)||!o(s))return!1}return!0}function li(e,t,n){if("function"!=typeof e)throw new Te(a);return Ta((function(){e.apply(r,n)}),t)}function ui(e,t,n,i){var r=-1,a=_t,o=!0,s=e.length,l=[],u=t.length;if(!s)return l;n&&(t=Rt(t,Kt(n))),i?(a=Et,o=!1):t.length>=200&&(a=Zt,o=!1,t=new qn(t));e:for(;++r<s;){var c=e[r],d=null==n?c:n(c);if(c=i||0!==c?c:0,o&&d==d){for(var p=u;p--;)if(t[p]===d)continue e;l.push(c)}else a(t,d,i)||l.push(c)}return l}Dn.templateSettings={escape:K,evaluate:$,interpolate:Z,variable:"",imports:{_:Dn}},Dn.prototype=Nn.prototype,Dn.prototype.constructor=Dn,Gn.prototype=Bn(Nn.prototype),Gn.prototype.constructor=Gn,Un.prototype=Bn(Nn.prototype),Un.prototype.constructor=Un,Hn.prototype.clear=function(){this.__data__=Tn?Tn(null):{},this.size=0},Hn.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},Hn.prototype.get=function(e){var t=this.__data__;if(Tn){var n=t[e];return n===o?r:n}return ze.call(t,e)?t[e]:r},Hn.prototype.has=function(e){var t=this.__data__;return Tn?t[e]!==r:ze.call(t,e)},Hn.prototype.set=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=Tn&&t===r?o:t,this},Wn.prototype.clear=function(){this.__data__=[],this.size=0},Wn.prototype.delete=function(e){var t=this.__data__,n=ei(t,e);return!(n<0||(n==t.length-1?t.pop():Je.call(t,n,1),--this.size,0))},Wn.prototype.get=function(e){var t=this.__data__,n=ei(t,e);return n<0?r:t[n][1]},Wn.prototype.has=function(e){return ei(this.__data__,e)>-1},Wn.prototype.set=function(e,t){var n=this.__data__,i=ei(n,e);return i<0?(++this.size,n.push([e,t])):n[i][1]=t,this},Vn.prototype.clear=function(){this.size=0,this.__data__={hash:new Hn,map:new(Pn||Wn),string:new Hn}},Vn.prototype.delete=function(e){var t=oa(this,e).delete(e);return this.size-=t?1:0,t},Vn.prototype.get=function(e){return oa(this,e).get(e)},Vn.prototype.has=function(e){return oa(this,e).has(e)},Vn.prototype.set=function(e,t){var n=oa(this,e),i=n.size;return n.set(e,t),this.size+=n.size==i?0:1,this},qn.prototype.add=qn.prototype.push=function(e){return this.__data__.set(e,o),this},qn.prototype.has=function(e){return this.__data__.has(e)},Jn.prototype.clear=function(){this.__data__=new Wn,this.size=0},Jn.prototype.delete=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n},Jn.prototype.get=function(e){return this.__data__.get(e)},Jn.prototype.has=function(e){return this.__data__.has(e)},Jn.prototype.set=function(e,t){var n=this.__data__;if(n instanceof Wn){var i=n.__data__;if(!Pn||i.length<199)return i.push([e,t]),this.size=++n.size,this;n=this.__data__=new Vn(i)}return n.set(e,t),this.size=n.size,this};var ci=Er(vi),di=Er(bi,!0);function pi(e,t){var n=!0;return ci(e,(function(e,i,r){return n=!!t(e,i,r)})),n}function hi(e,t,n){for(var i=-1,a=e.length;++i<a;){var o=e[i],s=t(o);if(null!=s&&(l===r?s==s&&!ss(s):n(s,l)))var l=s,u=o}return u}function mi(e,t){var n=[];return ci(e,(function(e,i,r){t(e,i,r)&&n.push(e)})),n}function fi(e,t,n,i,r){var a=-1,o=e.length;for(n||(n=ma),r||(r=[]);++a<o;){var s=e[a];t>0&&n(s)?t>1?fi(s,t-1,n,i,r):It(r,s):i||(r[r.length]=s)}return r}var gi=Rr(),yi=Rr(!0);function vi(e,t){return e&&gi(e,t,Es)}function bi(e,t){return e&&yi(e,t,Es)}function ki(e,t){return jt(t,(function(t){return $o(e[t])}))}function wi(e,t){for(var n=0,i=(t=gr(t,e)).length;null!=e&&n<i;)e=e[Oa(t[n++])];return n&&n==i?e:r}function Si(e,t,n){var i=t(e);return Ho(e)?i:It(i,n(e))}function Pi(e){return null==e?e===r?"[object Undefined]":"[object Null]":Xe&&Xe in xe(e)?function(e){var t=ze.call(e,Xe),n=e[Xe];try{e[Xe]=r;var i=!0}catch(e){}var a=Me.call(e);return i&&(t?e[Xe]=n:delete e[Xe]),a}(e):function(e){return Me.call(e)}(e)}function xi(e,t){return e>t}function Ci(e,t){return null!=e&&ze.call(e,t)}function Ai(e,t){return null!=e&&t in xe(e)}function Ti(e,t,n){for(var a=n?Et:_t,o=e[0].length,s=e.length,l=s,u=i(s),c=1/0,d=[];l--;){var p=e[l];l&&t&&(p=Rt(p,Kt(t))),c=yn(p.length,c),u[l]=!n&&(t||o>=120&&p.length>=120)?new qn(l&&p):r}p=e[0];var h=-1,m=u[0];e:for(;++h<o&&d.length<c;){var f=p[h],g=t?t(f):f;if(f=n||0!==f?f:0,!(m?Zt(m,g):a(d,g,n))){for(l=s;--l;){var y=u[l];if(!(y?Zt(y,g):a(e[l],g,n)))continue e}m&&m.push(g),d.push(f)}}return d}function ji(e,t,n){var i=null==(e=xa(e,t=gr(t,e)))?e:e[Oa(Ya(t))];return null==i?r:Pt(i,e,n)}function _i(e){return es(e)&&Pi(e)==f}function Ei(e,t,n,i,a){return e===t||(null==e||null==t||!es(e)&&!es(t)?e!=e&&t!=t:function(e,t,n,i,a,o){var s=Ho(e),l=Ho(t),u=s?g:da(e),c=l?g:da(t),d=(u=u==f?x:u)==x,p=(c=c==f?x:c)==x,h=u==c;if(h&&Jo(e)){if(!Jo(t))return!1;s=!0,d=!1}if(h&&!d)return o||(o=new Jn),s||ls(e)?Xr(e,t,n,i,a,o):function(e,t,n,i,r,a,o){switch(n){case I:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case R:return!(e.byteLength!=t.byteLength||!a(new Ue(e),new Ue(t)));case y:case v:case P:return Bo(+e,+t);case b:return e.name==t.name&&e.message==t.message;case A:case j:return e==t+"";case S:var s=an;case T:var l=1&i;if(s||(s=ln),e.size!=t.size&&!l)return!1;var u=o.get(e);if(u)return u==t;i|=2,o.set(e,t);var c=Xr(s(e),s(t),i,r,a,o);return o.delete(e),c;case _:if(Mn)return Mn.call(e)==Mn.call(t)}return!1}(e,t,u,n,i,a,o);if(!(1&n)){var m=d&&ze.call(e,"__wrapped__"),k=p&&ze.call(t,"__wrapped__");if(m||k){var w=m?e.value():e,C=k?t.value():t;return o||(o=new Jn),a(w,C,n,i,o)}}return!!h&&(o||(o=new Jn),function(e,t,n,i,a,o){var s=1&n,l=ea(e),u=l.length;if(u!=ea(t).length&&!s)return!1;for(var c=u;c--;){var d=l[c];if(!(s?d in t:ze.call(t,d)))return!1}var p=o.get(e),h=o.get(t);if(p&&h)return p==t&&h==e;var m=!0;o.set(e,t),o.set(t,e);for(var f=s;++c<u;){var g=e[d=l[c]],y=t[d];if(i)var v=s?i(y,g,d,t,e,o):i(g,y,d,e,t,o);if(!(v===r?g===y||a(g,y,n,i,o):v)){m=!1;break}f||(f="constructor"==d)}if(m&&!f){var b=e.constructor,k=t.constructor;b==k||!("constructor"in e)||!("constructor"in t)||"function"==typeof b&&b instanceof b&&"function"==typeof k&&k instanceof k||(m=!1)}return o.delete(e),o.delete(t),m}(e,t,n,i,a,o))}(e,t,n,i,Ei,a))}function Ri(e,t,n,i){var a=n.length,o=a,s=!i;if(null==e)return!o;for(e=xe(e);a--;){var l=n[a];if(s&&l[2]?l[1]!==e[l[0]]:!(l[0]in e))return!1}for(;++a<o;){var u=(l=n[a])[0],c=e[u],d=l[1];if(s&&l[2]){if(c===r&&!(u in e))return!1}else{var p=new Jn;if(i)var h=i(c,d,u,e,t,p);if(!(h===r?Ei(d,c,3,i,p):h))return!1}}return!0}function Ii(e){return!(!Qo(e)||(t=e,Oe&&Oe in t))&&($o(e)?Be:fe).test(Ma(e));var t}function zi(e){return"function"==typeof e?e:null==e?nl:"object"==typeof e?Ho(e)?Di(e[0],e[1]):Fi(e):dl(e)}function Li(e){if(!ka(e))return fn(e);var t=[];for(var n in xe(e))ze.call(e,n)&&"constructor"!=n&&t.push(n);return t}function Oi(e,t){return e<t}function Mi(e,t){var n=-1,r=Vo(e)?i(e.length):[];return ci(e,(function(e,i,a){r[++n]=t(e,i,a)})),r}function Fi(e){var t=sa(e);return 1==t.length&&t[0][2]?Sa(t[0][0],t[0][1]):function(n){return n===e||Ri(n,e,t)}}function Di(e,t){return ya(e)&&wa(t)?Sa(Oa(e),t):function(n){var i=Cs(n,e);return i===r&&i===t?As(n,e):Ei(t,i,3)}}function Bi(e,t,n,i,a){e!==t&&gi(t,(function(o,s){if(a||(a=new Jn),Qo(o))!function(e,t,n,i,a,o,s){var l=Ca(e,n),u=Ca(t,n),c=s.get(u);if(c)Xn(e,n,c);else{var d=o?o(l,u,n+"",e,t,s):r,p=d===r;if(p){var h=Ho(u),m=!h&&Jo(u),f=!h&&!m&&ls(u);d=u,h||m||f?Ho(l)?d=l:qo(l)?d=Ar(l):m?(p=!1,d=kr(u,!0)):f?(p=!1,d=Sr(u,!0)):d=[]:is(u)||Uo(u)?(d=l,Uo(l)?d=gs(l):Qo(l)&&!$o(l)||(d=ha(u))):p=!1}p&&(s.set(u,d),a(d,u,i,o,s),s.delete(u)),Xn(e,n,d)}}(e,t,s,n,Bi,i,a);else{var l=i?i(Ca(e,s),o,s+"",e,t,a):r;l===r&&(l=o),Xn(e,s,l)}}),Rs)}function Ni(e,t){var n=e.length;if(n)return fa(t+=t<0?n:0,n)?e[t]:r}function Gi(e,t,n){t=t.length?Rt(t,(function(e){return Ho(e)?function(t){return wi(t,1===e.length?e[0]:e)}:e})):[nl];var i=-1;t=Rt(t,Kt(aa()));var r=Mi(e,(function(e,n,r){var a=Rt(t,(function(t){return t(e)}));return{criteria:a,index:++i,value:e}}));return function(e){var t=e.length;for(e.sort((function(e,t){return function(e,t,n){for(var i=-1,r=e.criteria,a=t.criteria,o=r.length,s=n.length;++i<o;){var l=Pr(r[i],a[i]);if(l)return i>=s?l:l*("desc"==n[i]?-1:1)}return e.index-t.index}(e,t,n)}));t--;)e[t]=e[t].value;return e}(r)}function Ui(e,t,n){for(var i=-1,r=t.length,a={};++i<r;){var o=t[i],s=wi(e,o);n(s,o)&&$i(a,gr(o,e),s)}return a}function Hi(e,t,n,i){var r=i?Nt:Bt,a=-1,o=t.length,s=e;for(e===t&&(t=Ar(t)),n&&(s=Rt(e,Kt(n)));++a<o;)for(var l=0,u=t[a],c=n?n(u):u;(l=r(s,c,l,i))>-1;)s!==e&&Je.call(s,l,1),Je.call(e,l,1);return e}function Wi(e,t){for(var n=e?t.length:0,i=n-1;n--;){var r=t[n];if(n==i||r!==a){var a=r;fa(r)?Je.call(e,r,1):lr(e,r)}}return e}function Vi(e,t){return e+ht(kn()*(t-e+1))}function qi(e,t){var n="";if(!e||t<1||t>d)return n;do{t%2&&(n+=e),(t=ht(t/2))&&(e+=e)}while(t);return n}function Ji(e,t){return ja(Pa(e,t,nl),e+"")}function Yi(e){return Kn(Bs(e))}function Ki(e,t){var n=Bs(e);return Ra(n,ai(t,0,n.length))}function $i(e,t,n,i){if(!Qo(e))return e;for(var a=-1,o=(t=gr(t,e)).length,s=o-1,l=e;null!=l&&++a<o;){var u=Oa(t[a]),c=n;if("__proto__"===u||"constructor"===u||"prototype"===u)return e;if(a!=s){var d=l[u];(c=i?i(d,u,l):r)===r&&(c=Qo(d)?d:fa(t[a+1])?[]:{})}Qn(l,u,c),l=l[u]}return e}var Zi=jn?function(e,t){return jn.set(e,t),e}:nl,Xi=et?function(e,t){return et(e,"toString",{configurable:!0,enumerable:!1,value:Qs(t),writable:!0})}:nl;function Qi(e){return Ra(Bs(e))}function er(e,t,n){var r=-1,a=e.length;t<0&&(t=-t>a?0:a+t),(n=n>a?a:n)<0&&(n+=a),a=t>n?0:n-t>>>0,t>>>=0;for(var o=i(a);++r<a;)o[r]=e[r+t];return o}function tr(e,t){var n;return ci(e,(function(e,i,r){return!(n=t(e,i,r))})),!!n}function nr(e,t,n){var i=0,r=null==e?i:e.length;if("number"==typeof t&&t==t&&r<=2147483647){for(;i<r;){var a=i+r>>>1,o=e[a];null!==o&&!ss(o)&&(n?o<=t:o<t)?i=a+1:r=a}return r}return ir(e,t,nl,n)}function ir(e,t,n,i){var a=0,o=null==e?0:e.length;if(0===o)return 0;for(var s=(t=n(t))!=t,l=null===t,u=ss(t),c=t===r;a<o;){var d=ht((a+o)/2),p=n(e[d]),h=p!==r,m=null===p,f=p==p,g=ss(p);if(s)var y=i||f;else y=c?f&&(i||h):l?f&&h&&(i||!m):u?f&&h&&!m&&(i||!g):!m&&!g&&(i?p<=t:p<t);y?a=d+1:o=d}return yn(o,4294967294)}function rr(e,t){for(var n=-1,i=e.length,r=0,a=[];++n<i;){var o=e[n],s=t?t(o):o;if(!n||!Bo(s,l)){var l=s;a[r++]=0===o?0:o}}return a}function ar(e){return"number"==typeof e?e:ss(e)?p:+e}function or(e){if("string"==typeof e)return e;if(Ho(e))return Rt(e,or)+"";if(ss(e))return Fn?Fn.call(e):"";var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function sr(e,t,n){var i=-1,r=_t,a=e.length,o=!0,s=[],l=s;if(n)o=!1,r=Et;else if(a>=200){var u=t?null:qr(e);if(u)return ln(u);o=!1,r=Zt,l=new qn}else l=t?[]:s;e:for(;++i<a;){var c=e[i],d=t?t(c):c;if(c=n||0!==c?c:0,o&&d==d){for(var p=l.length;p--;)if(l[p]===d)continue e;t&&l.push(d),s.push(c)}else r(l,d,n)||(l!==s&&l.push(d),s.push(c))}return s}function lr(e,t){return null==(e=xa(e,t=gr(t,e)))||delete e[Oa(Ya(t))]}function ur(e,t,n,i){return $i(e,t,n(wi(e,t)),i)}function cr(e,t,n,i){for(var r=e.length,a=i?r:-1;(i?a--:++a<r)&&t(e[a],a,e););return n?er(e,i?0:a,i?a+1:r):er(e,i?a+1:0,i?r:a)}function dr(e,t){var n=e;return n instanceof Un&&(n=n.value()),zt(t,(function(e,t){return t.func.apply(t.thisArg,It([e],t.args))}),n)}function pr(e,t,n){var r=e.length;if(r<2)return r?sr(e[0]):[];for(var a=-1,o=i(r);++a<r;)for(var s=e[a],l=-1;++l<r;)l!=a&&(o[a]=ui(o[a]||s,e[l],t,n));return sr(fi(o,1),t,n)}function hr(e,t,n){for(var i=-1,a=e.length,o=t.length,s={};++i<a;){var l=i<o?t[i]:r;n(s,e[i],l)}return s}function mr(e){return qo(e)?e:[]}function fr(e){return"function"==typeof e?e:nl}function gr(e,t){return Ho(e)?e:ya(e,t)?[e]:La(ys(e))}var yr=Ji;function vr(e,t,n){var i=e.length;return n=n===r?i:n,!t&&n>=i?e:er(e,t,n)}var br=ot||function(e){return dt.clearTimeout(e)};function kr(e,t){if(t)return e.slice();var n=e.length,i=He?He(n):new e.constructor(n);return e.copy(i),i}function wr(e){var t=new e.constructor(e.byteLength);return new Ue(t).set(new Ue(e)),t}function Sr(e,t){var n=t?wr(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}function Pr(e,t){if(e!==t){var n=e!==r,i=null===e,a=e==e,o=ss(e),s=t!==r,l=null===t,u=t==t,c=ss(t);if(!l&&!c&&!o&&e>t||o&&s&&u&&!l&&!c||i&&s&&u||!n&&u||!a)return 1;if(!i&&!o&&!c&&e<t||c&&n&&a&&!i&&!o||l&&n&&a||!s&&a||!u)return-1}return 0}function xr(e,t,n,r){for(var a=-1,o=e.length,s=n.length,l=-1,u=t.length,c=gn(o-s,0),d=i(u+c),p=!r;++l<u;)d[l]=t[l];for(;++a<s;)(p||a<o)&&(d[n[a]]=e[a]);for(;c--;)d[l++]=e[a++];return d}function Cr(e,t,n,r){for(var a=-1,o=e.length,s=-1,l=n.length,u=-1,c=t.length,d=gn(o-l,0),p=i(d+c),h=!r;++a<d;)p[a]=e[a];for(var m=a;++u<c;)p[m+u]=t[u];for(;++s<l;)(h||a<o)&&(p[m+n[s]]=e[a++]);return p}function Ar(e,t){var n=-1,r=e.length;for(t||(t=i(r));++n<r;)t[n]=e[n];return t}function Tr(e,t,n,i){var a=!n;n||(n={});for(var o=-1,s=t.length;++o<s;){var l=t[o],u=i?i(n[l],e[l],l,n,e):r;u===r&&(u=e[l]),a?ii(n,l,u):Qn(n,l,u)}return n}function jr(e,t){return function(n,i){var r=Ho(n)?xt:ti,a=t?t():{};return r(n,e,aa(i,2),a)}}function _r(e){return Ji((function(t,n){var i=-1,a=n.length,o=a>1?n[a-1]:r,s=a>2?n[2]:r;for(o=e.length>3&&"function"==typeof o?(a--,o):r,s&&ga(n[0],n[1],s)&&(o=a<3?r:o,a=1),t=xe(t);++i<a;){var l=n[i];l&&e(t,l,i,o)}return t}))}function Er(e,t){return function(n,i){if(null==n)return n;if(!Vo(n))return e(n,i);for(var r=n.length,a=t?r:-1,o=xe(n);(t?a--:++a<r)&&!1!==i(o[a],a,o););return n}}function Rr(e){return function(t,n,i){for(var r=-1,a=xe(t),o=i(t),s=o.length;s--;){var l=o[e?s:++r];if(!1===n(a[l],l,a))break}return t}}function Ir(e){return function(t){var n=rn(t=ys(t))?dn(t):r,i=n?n[0]:t.charAt(0),a=n?vr(n,1).join(""):t.slice(1);return i[e]()+a}}function zr(e){return function(t){return zt($s(Us(t).replace($e,"")),e,"")}}function Lr(e){return function(){var t=arguments;switch(t.length){case 0:return new e;case 1:return new e(t[0]);case 2:return new e(t[0],t[1]);case 3:return new e(t[0],t[1],t[2]);case 4:return new e(t[0],t[1],t[2],t[3]);case 5:return new e(t[0],t[1],t[2],t[3],t[4]);case 6:return new e(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new e(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}var n=Bn(e.prototype),i=e.apply(n,t);return Qo(i)?i:n}}function Or(e){return function(t,n,i){var a=xe(t);if(!Vo(t)){var o=aa(n,3);t=Es(t),n=function(e){return o(a[e],e,a)}}var s=e(t,n,i);return s>-1?a[o?t[s]:s]:r}}function Mr(e){return Qr((function(t){var n=t.length,i=n,o=Gn.prototype.thru;for(e&&t.reverse();i--;){var s=t[i];if("function"!=typeof s)throw new Te(a);if(o&&!l&&"wrapper"==ia(s))var l=new Gn([],!0)}for(i=l?i:n;++i<n;){var u=ia(s=t[i]),c="wrapper"==u?na(s):r;l=c&&va(c[0])&&424==c[1]&&!c[4].length&&1==c[9]?l[ia(c[0])].apply(l,c[3]):1==s.length&&va(s)?l[u]():l.thru(s)}return function(){var e=arguments,i=e[0];if(l&&1==e.length&&Ho(i))return l.plant(i).value();for(var r=0,a=n?t[r].apply(this,e):i;++r<n;)a=t[r].call(this,a);return a}}))}function Fr(e,t,n,a,o,s,l,c,d,p){var h=t&u,m=1&t,f=2&t,g=24&t,y=512&t,v=f?r:Lr(e);return function u(){for(var b=arguments.length,k=i(b),w=b;w--;)k[w]=arguments[w];if(g)var S=ra(u),P=function(e,t){for(var n=e.length,i=0;n--;)e[n]===t&&++i;return i}(k,S);if(a&&(k=xr(k,a,o,g)),s&&(k=Cr(k,s,l,g)),b-=P,g&&b<p){var x=sn(k,S);return Wr(e,t,Fr,u.placeholder,n,k,x,c,d,p-b)}var C=m?n:this,A=f?C[e]:e;return b=k.length,c?k=function(e,t){for(var n=e.length,i=yn(t.length,n),a=Ar(e);i--;){var o=t[i];e[i]=fa(o,n)?a[o]:r}return e}(k,c):y&&b>1&&k.reverse(),h&&d<b&&(k.length=d),this&&this!==dt&&this instanceof u&&(A=v||Lr(A)),A.apply(C,k)}}function Dr(e,t){return function(n,i){return function(e,t,n,i){return vi(e,(function(e,r,a){t(i,n(e),r,a)})),i}(n,e,t(i),{})}}function Br(e,t){return function(n,i){var a;if(n===r&&i===r)return t;if(n!==r&&(a=n),i!==r){if(a===r)return i;"string"==typeof n||"string"==typeof i?(n=or(n),i=or(i)):(n=ar(n),i=ar(i)),a=e(n,i)}return a}}function Nr(e){return Qr((function(t){return t=Rt(t,Kt(aa())),Ji((function(n){var i=this;return e(t,(function(e){return Pt(e,i,n)}))}))}))}function Gr(e,t){var n=(t=t===r?" ":or(t)).length;if(n<2)return n?qi(t,e):t;var i=qi(t,pt(e/cn(t)));return rn(t)?vr(dn(i),0,e).join(""):i.slice(0,e)}function Ur(e){return function(t,n,a){return a&&"number"!=typeof a&&ga(t,n,a)&&(n=a=r),t=ps(t),n===r?(n=t,t=0):n=ps(n),function(e,t,n,r){for(var a=-1,o=gn(pt((t-e)/(n||1)),0),s=i(o);o--;)s[r?o:++a]=e,e+=n;return s}(t,n,a=a===r?t<n?1:-1:ps(a),e)}}function Hr(e){return function(t,n){return"string"==typeof t&&"string"==typeof n||(t=fs(t),n=fs(n)),e(t,n)}}function Wr(e,t,n,i,a,o,s,u,c,d){var p=8&t;t|=p?l:64,4&(t&=~(p?64:l))||(t&=-4);var h=[e,t,a,p?o:r,p?s:r,p?r:o,p?r:s,u,c,d],m=n.apply(r,h);return va(e)&&Aa(m,h),m.placeholder=i,_a(m,e,t)}function Vr(e){var t=Pe[e];return function(e,n){if(e=fs(e),(n=null==n?0:yn(hs(n),292))&&Mt(e)){var i=(ys(e)+"e").split("e");return+((i=(ys(t(i[0]+"e"+(+i[1]+n)))+"e").split("e"))[0]+"e"+(+i[1]-n))}return t(e)}}var qr=Cn&&1/ln(new Cn([,-0]))[1]==c?function(e){return new Cn(e)}:sl;function Jr(e){return function(t){var n=da(t);return n==S?an(t):n==T?un(t):function(e,t){return Rt(t,(function(t){return[t,e[t]]}))}(t,e(t))}}function Yr(e,t,n,o,c,d,p,h){var m=2&t;if(!m&&"function"!=typeof e)throw new Te(a);var f=o?o.length:0;if(f||(t&=-97,o=c=r),p=p===r?p:gn(hs(p),0),h=h===r?h:hs(h),f-=c?c.length:0,64&t){var g=o,y=c;o=c=r}var v=m?r:na(e),b=[e,t,n,o,c,g,y,d,p,h];if(v&&function(e,t){var n=e[1],i=t[1],r=n|i,a=r<131,o=i==u&&8==n||i==u&&256==n&&e[7].length<=t[8]||384==i&&t[7].length<=t[8]&&8==n;if(!a&&!o)return e;1&i&&(e[2]=t[2],r|=1&n?0:4);var l=t[3];if(l){var c=e[3];e[3]=c?xr(c,l,t[4]):l,e[4]=c?sn(e[3],s):t[4]}(l=t[5])&&(c=e[5],e[5]=c?Cr(c,l,t[6]):l,e[6]=c?sn(e[5],s):t[6]),(l=t[7])&&(e[7]=l),i&u&&(e[8]=null==e[8]?t[8]:yn(e[8],t[8])),null==e[9]&&(e[9]=t[9]),e[0]=t[0],e[1]=r}(b,v),e=b[0],t=b[1],n=b[2],o=b[3],c=b[4],!(h=b[9]=b[9]===r?m?0:e.length:gn(b[9]-f,0))&&24&t&&(t&=-25),t&&1!=t)k=8==t||16==t?function(e,t,n){var a=Lr(e);return function o(){for(var s=arguments.length,l=i(s),u=s,c=ra(o);u--;)l[u]=arguments[u];var d=s<3&&l[0]!==c&&l[s-1]!==c?[]:sn(l,c);return(s-=d.length)<n?Wr(e,t,Fr,o.placeholder,r,l,d,r,r,n-s):Pt(this&&this!==dt&&this instanceof o?a:e,this,l)}}(e,t,h):t!=l&&33!=t||c.length?Fr.apply(r,b):function(e,t,n,r){var a=1&t,o=Lr(e);return function t(){for(var s=-1,l=arguments.length,u=-1,c=r.length,d=i(c+l),p=this&&this!==dt&&this instanceof t?o:e;++u<c;)d[u]=r[u];for(;l--;)d[u++]=arguments[++s];return Pt(p,a?n:this,d)}}(e,t,n,o);else var k=function(e,t,n){var i=1&t,r=Lr(e);return function t(){return(this&&this!==dt&&this instanceof t?r:e).apply(i?n:this,arguments)}}(e,t,n);return _a((v?Zi:Aa)(k,b),e,t)}function Kr(e,t,n,i){return e===r||Bo(e,Ee[n])&&!ze.call(i,n)?t:e}function $r(e,t,n,i,a,o){return Qo(e)&&Qo(t)&&(o.set(t,e),Bi(e,t,r,$r,o),o.delete(t)),e}function Zr(e){return is(e)?r:e}function Xr(e,t,n,i,a,o){var s=1&n,l=e.length,u=t.length;if(l!=u&&!(s&&u>l))return!1;var c=o.get(e),d=o.get(t);if(c&&d)return c==t&&d==e;var p=-1,h=!0,m=2&n?new qn:r;for(o.set(e,t),o.set(t,e);++p<l;){var f=e[p],g=t[p];if(i)var y=s?i(g,f,p,t,e,o):i(f,g,p,e,t,o);if(y!==r){if(y)continue;h=!1;break}if(m){if(!Ot(t,(function(e,t){if(!Zt(m,t)&&(f===e||a(f,e,n,i,o)))return m.push(t)}))){h=!1;break}}else if(f!==g&&!a(f,g,n,i,o)){h=!1;break}}return o.delete(e),o.delete(t),h}function Qr(e){return ja(Pa(e,r,Ha),e+"")}function ea(e){return Si(e,Es,ua)}function ta(e){return Si(e,Rs,ca)}var na=jn?function(e){return jn.get(e)}:sl;function ia(e){for(var t=e.name+"",n=_n[t],i=ze.call(_n,t)?n.length:0;i--;){var r=n[i],a=r.func;if(null==a||a==e)return r.name}return t}function ra(e){return(ze.call(Dn,"placeholder")?Dn:e).placeholder}function aa(){var e=Dn.iteratee||il;return e=e===il?zi:e,arguments.length?e(arguments[0],arguments[1]):e}function oa(e,t){var n,i,r=e.__data__;return("string"==(i=typeof(n=t))||"number"==i||"symbol"==i||"boolean"==i?"__proto__"!==n:null===n)?r["string"==typeof t?"string":"hash"]:r.map}function sa(e){for(var t=Es(e),n=t.length;n--;){var i=t[n],r=e[i];t[n]=[i,r,wa(r)]}return t}function la(e,t){var n=function(e,t){return null==e?r:e[t]}(e,t);return Ii(n)?n:r}var ua=ft?function(e){return null==e?[]:(e=xe(e),jt(ft(e),(function(t){return qe.call(e,t)})))}:ml,ca=ft?function(e){for(var t=[];e;)It(t,ua(e)),e=We(e);return t}:ml,da=Pi;function pa(e,t,n){for(var i=-1,r=(t=gr(t,e)).length,a=!1;++i<r;){var o=Oa(t[i]);if(!(a=null!=e&&n(e,o)))break;e=e[o]}return a||++i!=r?a:!!(r=null==e?0:e.length)&&Xo(r)&&fa(o,r)&&(Ho(e)||Uo(e))}function ha(e){return"function"!=typeof e.constructor||ka(e)?{}:Bn(We(e))}function ma(e){return Ho(e)||Uo(e)||!!(Ye&&e&&e[Ye])}function fa(e,t){var n=typeof e;return!!(t=null==t?d:t)&&("number"==n||"symbol"!=n&&ye.test(e))&&e>-1&&e%1==0&&e<t}function ga(e,t,n){if(!Qo(n))return!1;var i=typeof t;return!!("number"==i?Vo(n)&&fa(t,n.length):"string"==i&&t in n)&&Bo(n[t],e)}function ya(e,t){if(Ho(e))return!1;var n=typeof e;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=e&&!ss(e))||Q.test(e)||!X.test(e)||null!=t&&e in xe(t)}function va(e){var t=ia(e),n=Dn[t];if("function"!=typeof n||!(t in Un.prototype))return!1;if(e===n)return!0;var i=na(n);return!!i&&e===i[0]}(Sn&&da(new Sn(new ArrayBuffer(1)))!=I||Pn&&da(new Pn)!=S||xn&&da(xn.resolve())!=C||Cn&&da(new Cn)!=T||An&&da(new An)!=E)&&(da=function(e){var t=Pi(e),n=t==x?e.constructor:r,i=n?Ma(n):"";if(i)switch(i){case En:return I;case Rn:return S;case In:return C;case zn:return T;case Ln:return E}return t});var ba=Re?$o:fl;function ka(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||Ee)}function wa(e){return e==e&&!Qo(e)}function Sa(e,t){return function(n){return null!=n&&n[e]===t&&(t!==r||e in xe(n))}}function Pa(e,t,n){return t=gn(t===r?e.length-1:t,0),function(){for(var r=arguments,a=-1,o=gn(r.length-t,0),s=i(o);++a<o;)s[a]=r[t+a];a=-1;for(var l=i(t+1);++a<t;)l[a]=r[a];return l[t]=n(s),Pt(e,this,l)}}function xa(e,t){return t.length<2?e:wi(e,er(t,0,-1))}function Ca(e,t){if(("constructor"!==t||"function"!=typeof e[t])&&"__proto__"!=t)return e[t]}var Aa=Ea(Zi),Ta=ct||function(e,t){return dt.setTimeout(e,t)},ja=Ea(Xi);function _a(e,t,n){var i=t+"";return ja(e,function(e,t){var n=t.length;if(!n)return e;var i=n-1;return t[i]=(n>1?"& ":"")+t[i],t=t.join(n>2?", ":" "),e.replace(ae,"{\n/* [wrapped with "+t+"] */\n")}(i,function(e,t){return Ct(m,(function(n){var i="_."+n[0];t&n[1]&&!_t(e,i)&&e.push(i)})),e.sort()}(function(e){var t=e.match(oe);return t?t[1].split(se):[]}(i),n)))}function Ea(e){var t=0,n=0;return function(){var i=vn(),a=16-(i-n);if(n=i,a>0){if(++t>=800)return arguments[0]}else t=0;return e.apply(r,arguments)}}function Ra(e,t){var n=-1,i=e.length,a=i-1;for(t=t===r?i:t;++n<t;){var o=Vi(n,a),s=e[o];e[o]=e[n],e[n]=s}return e.length=t,e}var Ia,za,La=(Ia=zo((function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(ee,(function(e,n,i,r){t.push(i?r.replace(ce,"$1"):n||e)})),t}),(function(e){return 500===za.size&&za.clear(),e})),za=Ia.cache,Ia);function Oa(e){if("string"==typeof e||ss(e))return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function Ma(e){if(null!=e){try{return Ie.call(e)}catch(e){}try{return e+""}catch(e){}}return""}function Fa(e){if(e instanceof Un)return e.clone();var t=new Gn(e.__wrapped__,e.__chain__);return t.__actions__=Ar(e.__actions__),t.__index__=e.__index__,t.__values__=e.__values__,t}var Da=Ji((function(e,t){return qo(e)?ui(e,fi(t,1,qo,!0)):[]})),Ba=Ji((function(e,t){var n=Ya(t);return qo(n)&&(n=r),qo(e)?ui(e,fi(t,1,qo,!0),aa(n,2)):[]})),Na=Ji((function(e,t){var n=Ya(t);return qo(n)&&(n=r),qo(e)?ui(e,fi(t,1,qo,!0),r,n):[]}));function Ga(e,t,n){var i=null==e?0:e.length;if(!i)return-1;var r=null==n?0:hs(n);return r<0&&(r=gn(i+r,0)),Dt(e,aa(t,3),r)}function Ua(e,t,n){var i=null==e?0:e.length;if(!i)return-1;var a=i-1;return n!==r&&(a=hs(n),a=n<0?gn(i+a,0):yn(a,i-1)),Dt(e,aa(t,3),a,!0)}function Ha(e){return null!=e&&e.length?fi(e,1):[]}function Wa(e){return e&&e.length?e[0]:r}var Va=Ji((function(e){var t=Rt(e,mr);return t.length&&t[0]===e[0]?Ti(t):[]})),qa=Ji((function(e){var t=Ya(e),n=Rt(e,mr);return t===Ya(n)?t=r:n.pop(),n.length&&n[0]===e[0]?Ti(n,aa(t,2)):[]})),Ja=Ji((function(e){var t=Ya(e),n=Rt(e,mr);return(t="function"==typeof t?t:r)&&n.pop(),n.length&&n[0]===e[0]?Ti(n,r,t):[]}));function Ya(e){var t=null==e?0:e.length;return t?e[t-1]:r}var Ka=Ji($a);function $a(e,t){return e&&e.length&&t&&t.length?Hi(e,t):e}var Za=Qr((function(e,t){var n=null==e?0:e.length,i=ri(e,t);return Wi(e,Rt(t,(function(e){return fa(e,n)?+e:e})).sort(Pr)),i}));function Xa(e){return null==e?e:wn.call(e)}var Qa=Ji((function(e){return sr(fi(e,1,qo,!0))})),eo=Ji((function(e){var t=Ya(e);return qo(t)&&(t=r),sr(fi(e,1,qo,!0),aa(t,2))})),to=Ji((function(e){var t=Ya(e);return t="function"==typeof t?t:r,sr(fi(e,1,qo,!0),r,t)}));function no(e){if(!e||!e.length)return[];var t=0;return e=jt(e,(function(e){if(qo(e))return t=gn(e.length,t),!0})),Jt(t,(function(t){return Rt(e,Ht(t))}))}function io(e,t){if(!e||!e.length)return[];var n=no(e);return null==t?n:Rt(n,(function(e){return Pt(t,r,e)}))}var ro=Ji((function(e,t){return qo(e)?ui(e,t):[]})),ao=Ji((function(e){return pr(jt(e,qo))})),oo=Ji((function(e){var t=Ya(e);return qo(t)&&(t=r),pr(jt(e,qo),aa(t,2))})),so=Ji((function(e){var t=Ya(e);return t="function"==typeof t?t:r,pr(jt(e,qo),r,t)})),lo=Ji(no),uo=Ji((function(e){var t=e.length,n=t>1?e[t-1]:r;return n="function"==typeof n?(e.pop(),n):r,io(e,n)}));function co(e){var t=Dn(e);return t.__chain__=!0,t}function po(e,t){return t(e)}var ho=Qr((function(e){var t=e.length,n=t?e[0]:0,i=this.__wrapped__,a=function(t){return ri(t,e)};return!(t>1||this.__actions__.length)&&i instanceof Un&&fa(n)?((i=i.slice(n,+n+(t?1:0))).__actions__.push({func:po,args:[a],thisArg:r}),new Gn(i,this.__chain__).thru((function(e){return t&&!e.length&&e.push(r),e}))):this.thru(a)})),mo=jr((function(e,t,n){ze.call(e,n)?++e[n]:ii(e,n,1)})),fo=Or(Ga),go=Or(Ua);function yo(e,t){return(Ho(e)?Ct:ci)(e,aa(t,3))}function vo(e,t){return(Ho(e)?At:di)(e,aa(t,3))}var bo=jr((function(e,t,n){ze.call(e,n)?e[n].push(t):ii(e,n,[t])})),ko=Ji((function(e,t,n){var r=-1,a="function"==typeof t,o=Vo(e)?i(e.length):[];return ci(e,(function(e){o[++r]=a?Pt(t,e,n):ji(e,t,n)})),o})),wo=jr((function(e,t,n){ii(e,n,t)}));function So(e,t){return(Ho(e)?Rt:Mi)(e,aa(t,3))}var Po=jr((function(e,t,n){e[n?0:1].push(t)}),(function(){return[[],[]]})),xo=Ji((function(e,t){if(null==e)return[];var n=t.length;return n>1&&ga(e,t[0],t[1])?t=[]:n>2&&ga(t[0],t[1],t[2])&&(t=[t[0]]),Gi(e,fi(t,1),[])})),Co=ut||function(){return dt.Date.now()};function Ao(e,t,n){return t=n?r:t,t=e&&null==t?e.length:t,Yr(e,u,r,r,r,r,t)}function To(e,t){var n;if("function"!=typeof t)throw new Te(a);return e=hs(e),function(){return--e>0&&(n=t.apply(this,arguments)),e<=1&&(t=r),n}}var jo=Ji((function(e,t,n){var i=1;if(n.length){var r=sn(n,ra(jo));i|=l}return Yr(e,i,t,n,r)})),_o=Ji((function(e,t,n){var i=3;if(n.length){var r=sn(n,ra(_o));i|=l}return Yr(t,i,e,n,r)}));function Eo(e,t,n){var i,o,s,l,u,c,d=0,p=!1,h=!1,m=!0;if("function"!=typeof e)throw new Te(a);function f(t){var n=i,a=o;return i=o=r,d=t,l=e.apply(a,n)}function g(e){var n=e-c;return c===r||n>=t||n<0||h&&e-d>=s}function y(){var e=Co();if(g(e))return v(e);u=Ta(y,function(e){var n=t-(e-c);return h?yn(n,s-(e-d)):n}(e))}function v(e){return u=r,m&&i?f(e):(i=o=r,l)}function b(){var e=Co(),n=g(e);if(i=arguments,o=this,c=e,n){if(u===r)return function(e){return d=e,u=Ta(y,t),p?f(e):l}(c);if(h)return br(u),u=Ta(y,t),f(c)}return u===r&&(u=Ta(y,t)),l}return t=fs(t)||0,Qo(n)&&(p=!!n.leading,s=(h="maxWait"in n)?gn(fs(n.maxWait)||0,t):s,m="trailing"in n?!!n.trailing:m),b.cancel=function(){u!==r&&br(u),d=0,i=c=o=u=r},b.flush=function(){return u===r?l:v(Co())},b}var Ro=Ji((function(e,t){return li(e,1,t)})),Io=Ji((function(e,t,n){return li(e,fs(t)||0,n)}));function zo(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new Te(a);var n=function(){var i=arguments,r=t?t.apply(this,i):i[0],a=n.cache;if(a.has(r))return a.get(r);var o=e.apply(this,i);return n.cache=a.set(r,o)||a,o};return n.cache=new(zo.Cache||Vn),n}function Lo(e){if("function"!=typeof e)throw new Te(a);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}zo.Cache=Vn;var Oo=yr((function(e,t){var n=(t=1==t.length&&Ho(t[0])?Rt(t[0],Kt(aa())):Rt(fi(t,1),Kt(aa()))).length;return Ji((function(i){for(var r=-1,a=yn(i.length,n);++r<a;)i[r]=t[r].call(this,i[r]);return Pt(e,this,i)}))})),Mo=Ji((function(e,t){var n=sn(t,ra(Mo));return Yr(e,l,r,t,n)})),Fo=Ji((function(e,t){var n=sn(t,ra(Fo));return Yr(e,64,r,t,n)})),Do=Qr((function(e,t){return Yr(e,256,r,r,r,t)}));function Bo(e,t){return e===t||e!=e&&t!=t}var No=Hr(xi),Go=Hr((function(e,t){return e>=t})),Uo=_i(function(){return arguments}())?_i:function(e){return es(e)&&ze.call(e,"callee")&&!qe.call(e,"callee")},Ho=i.isArray,Wo=yt?Kt(yt):function(e){return es(e)&&Pi(e)==R};function Vo(e){return null!=e&&Xo(e.length)&&!$o(e)}function qo(e){return es(e)&&Vo(e)}var Jo=gt||fl,Yo=vt?Kt(vt):function(e){return es(e)&&Pi(e)==v};function Ko(e){if(!es(e))return!1;var t=Pi(e);return t==b||"[object DOMException]"==t||"string"==typeof e.message&&"string"==typeof e.name&&!is(e)}function $o(e){if(!Qo(e))return!1;var t=Pi(e);return t==k||t==w||"[object AsyncFunction]"==t||"[object Proxy]"==t}function Zo(e){return"number"==typeof e&&e==hs(e)}function Xo(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=d}function Qo(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function es(e){return null!=e&&"object"==typeof e}var ts=bt?Kt(bt):function(e){return es(e)&&da(e)==S};function ns(e){return"number"==typeof e||es(e)&&Pi(e)==P}function is(e){if(!es(e)||Pi(e)!=x)return!1;var t=We(e);if(null===t)return!0;var n=ze.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&Ie.call(n)==Fe}var rs=kt?Kt(kt):function(e){return es(e)&&Pi(e)==A},as=wt?Kt(wt):function(e){return es(e)&&da(e)==T};function os(e){return"string"==typeof e||!Ho(e)&&es(e)&&Pi(e)==j}function ss(e){return"symbol"==typeof e||es(e)&&Pi(e)==_}var ls=St?Kt(St):function(e){return es(e)&&Xo(e.length)&&!!rt[Pi(e)]},us=Hr(Oi),cs=Hr((function(e,t){return e<=t}));function ds(e){if(!e)return[];if(Vo(e))return os(e)?dn(e):Ar(e);if(Ke&&e[Ke])return function(e){for(var t,n=[];!(t=e.next()).done;)n.push(t.value);return n}(e[Ke]());var t=da(e);return(t==S?an:t==T?ln:Bs)(e)}function ps(e){return e?(e=fs(e))===c||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}function hs(e){var t=ps(e),n=t%1;return t==t?n?t-n:t:0}function ms(e){return e?ai(hs(e),0,h):0}function fs(e){if("number"==typeof e)return e;if(ss(e))return p;if(Qo(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=Qo(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=Yt(e);var n=me.test(e);return n||ge.test(e)?lt(e.slice(2),n?2:8):he.test(e)?p:+e}function gs(e){return Tr(e,Rs(e))}function ys(e){return null==e?"":or(e)}var vs=_r((function(e,t){if(ka(t)||Vo(t))Tr(t,Es(t),e);else for(var n in t)ze.call(t,n)&&Qn(e,n,t[n])})),bs=_r((function(e,t){Tr(t,Rs(t),e)})),ks=_r((function(e,t,n,i){Tr(t,Rs(t),e,i)})),ws=_r((function(e,t,n,i){Tr(t,Es(t),e,i)})),Ss=Qr(ri),Ps=Ji((function(e,t){e=xe(e);var n=-1,i=t.length,a=i>2?t[2]:r;for(a&&ga(t[0],t[1],a)&&(i=1);++n<i;)for(var o=t[n],s=Rs(o),l=-1,u=s.length;++l<u;){var c=s[l],d=e[c];(d===r||Bo(d,Ee[c])&&!ze.call(e,c))&&(e[c]=o[c])}return e})),xs=Ji((function(e){return e.push(r,$r),Pt(zs,r,e)}));function Cs(e,t,n){var i=null==e?r:wi(e,t);return i===r?n:i}function As(e,t){return null!=e&&pa(e,t,Ai)}var Ts=Dr((function(e,t,n){null!=t&&"function"!=typeof t.toString&&(t=Me.call(t)),e[t]=n}),Qs(nl)),js=Dr((function(e,t,n){null!=t&&"function"!=typeof t.toString&&(t=Me.call(t)),ze.call(e,t)?e[t].push(n):e[t]=[n]}),aa),_s=Ji(ji);function Es(e){return Vo(e)?Yn(e):Li(e)}function Rs(e){return Vo(e)?Yn(e,!0):function(e){if(!Qo(e))return function(e){var t=[];if(null!=e)for(var n in xe(e))t.push(n);return t}(e);var t=ka(e),n=[];for(var i in e)("constructor"!=i||!t&&ze.call(e,i))&&n.push(i);return n}(e)}var Is=_r((function(e,t,n){Bi(e,t,n)})),zs=_r((function(e,t,n,i){Bi(e,t,n,i)})),Ls=Qr((function(e,t){var n={};if(null==e)return n;var i=!1;t=Rt(t,(function(t){return t=gr(t,e),i||(i=t.length>1),t})),Tr(e,ta(e),n),i&&(n=oi(n,7,Zr));for(var r=t.length;r--;)lr(n,t[r]);return n})),Os=Qr((function(e,t){return null==e?{}:function(e,t){return Ui(e,t,(function(t,n){return As(e,n)}))}(e,t)}));function Ms(e,t){if(null==e)return{};var n=Rt(ta(e),(function(e){return[e]}));return t=aa(t),Ui(e,n,(function(e,n){return t(e,n[0])}))}var Fs=Jr(Es),Ds=Jr(Rs);function Bs(e){return null==e?[]:$t(e,Es(e))}var Ns=zr((function(e,t,n){return t=t.toLowerCase(),e+(n?Gs(t):t)}));function Gs(e){return Ks(ys(e).toLowerCase())}function Us(e){return(e=ys(e))&&e.replace(ve,en).replace(Ze,"")}var Hs=zr((function(e,t,n){return e+(n?"-":"")+t.toLowerCase()})),Ws=zr((function(e,t,n){return e+(n?" ":"")+t.toLowerCase()})),Vs=Ir("toLowerCase"),qs=zr((function(e,t,n){return e+(n?"_":"")+t.toLowerCase()})),Js=zr((function(e,t,n){return e+(n?" ":"")+Ks(t)})),Ys=zr((function(e,t,n){return e+(n?" ":"")+t.toUpperCase()})),Ks=Ir("toUpperCase");function $s(e,t,n){return e=ys(e),(t=n?r:t)===r?function(e){return tt.test(e)}(e)?function(e){return e.match(Qe)||[]}(e):function(e){return e.match(le)||[]}(e):e.match(t)||[]}var Zs=Ji((function(e,t){try{return Pt(e,r,t)}catch(e){return Ko(e)?e:new we(e)}})),Xs=Qr((function(e,t){return Ct(t,(function(t){t=Oa(t),ii(e,t,jo(e[t],e))})),e}));function Qs(e){return function(){return e}}var el=Mr(),tl=Mr(!0);function nl(e){return e}function il(e){return zi("function"==typeof e?e:oi(e,1))}var rl=Ji((function(e,t){return function(n){return ji(n,e,t)}})),al=Ji((function(e,t){return function(n){return ji(e,n,t)}}));function ol(e,t,n){var i=Es(t),r=ki(t,i);null!=n||Qo(t)&&(r.length||!i.length)||(n=t,t=e,e=this,r=ki(t,Es(t)));var a=!(Qo(n)&&"chain"in n&&!n.chain),o=$o(e);return Ct(r,(function(n){var i=t[n];e[n]=i,o&&(e.prototype[n]=function(){var t=this.__chain__;if(a||t){var n=e(this.__wrapped__);return(n.__actions__=Ar(this.__actions__)).push({func:i,args:arguments,thisArg:e}),n.__chain__=t,n}return i.apply(e,It([this.value()],arguments))})})),e}function sl(){}var ll=Nr(Rt),ul=Nr(Tt),cl=Nr(Ot);function dl(e){return ya(e)?Ht(Oa(e)):function(e){return function(t){return wi(t,e)}}(e)}var pl=Ur(),hl=Ur(!0);function ml(){return[]}function fl(){return!1}var gl,yl=Br((function(e,t){return e+t}),0),vl=Vr("ceil"),bl=Br((function(e,t){return e/t}),1),kl=Vr("floor"),wl=Br((function(e,t){return e*t}),1),Sl=Vr("round"),Pl=Br((function(e,t){return e-t}),0);return Dn.after=function(e,t){if("function"!=typeof t)throw new Te(a);return e=hs(e),function(){if(--e<1)return t.apply(this,arguments)}},Dn.ary=Ao,Dn.assign=vs,Dn.assignIn=bs,Dn.assignInWith=ks,Dn.assignWith=ws,Dn.at=Ss,Dn.before=To,Dn.bind=jo,Dn.bindAll=Xs,Dn.bindKey=_o,Dn.castArray=function(){if(!arguments.length)return[];var e=arguments[0];return Ho(e)?e:[e]},Dn.chain=co,Dn.chunk=function(e,t,n){t=(n?ga(e,t,n):t===r)?1:gn(hs(t),0);var a=null==e?0:e.length;if(!a||t<1)return[];for(var o=0,s=0,l=i(pt(a/t));o<a;)l[s++]=er(e,o,o+=t);return l},Dn.compact=function(e){for(var t=-1,n=null==e?0:e.length,i=0,r=[];++t<n;){var a=e[t];a&&(r[i++]=a)}return r},Dn.concat=function(){var e=arguments.length;if(!e)return[];for(var t=i(e-1),n=arguments[0],r=e;r--;)t[r-1]=arguments[r];return It(Ho(n)?Ar(n):[n],fi(t,1))},Dn.cond=function(e){var t=null==e?0:e.length,n=aa();return e=t?Rt(e,(function(e){if("function"!=typeof e[1])throw new Te(a);return[n(e[0]),e[1]]})):[],Ji((function(n){for(var i=-1;++i<t;){var r=e[i];if(Pt(r[0],this,n))return Pt(r[1],this,n)}}))},Dn.conforms=function(e){return function(e){var t=Es(e);return function(n){return si(n,e,t)}}(oi(e,1))},Dn.constant=Qs,Dn.countBy=mo,Dn.create=function(e,t){var n=Bn(e);return null==t?n:ni(n,t)},Dn.curry=function e(t,n,i){var a=Yr(t,8,r,r,r,r,r,n=i?r:n);return a.placeholder=e.placeholder,a},Dn.curryRight=function e(t,n,i){var a=Yr(t,16,r,r,r,r,r,n=i?r:n);return a.placeholder=e.placeholder,a},Dn.debounce=Eo,Dn.defaults=Ps,Dn.defaultsDeep=xs,Dn.defer=Ro,Dn.delay=Io,Dn.difference=Da,Dn.differenceBy=Ba,Dn.differenceWith=Na,Dn.drop=function(e,t,n){var i=null==e?0:e.length;return i?er(e,(t=n||t===r?1:hs(t))<0?0:t,i):[]},Dn.dropRight=function(e,t,n){var i=null==e?0:e.length;return i?er(e,0,(t=i-(t=n||t===r?1:hs(t)))<0?0:t):[]},Dn.dropRightWhile=function(e,t){return e&&e.length?cr(e,aa(t,3),!0,!0):[]},Dn.dropWhile=function(e,t){return e&&e.length?cr(e,aa(t,3),!0):[]},Dn.fill=function(e,t,n,i){var a=null==e?0:e.length;return a?(n&&"number"!=typeof n&&ga(e,t,n)&&(n=0,i=a),function(e,t,n,i){var a=e.length;for((n=hs(n))<0&&(n=-n>a?0:a+n),(i=i===r||i>a?a:hs(i))<0&&(i+=a),i=n>i?0:ms(i);n<i;)e[n++]=t;return e}(e,t,n,i)):[]},Dn.filter=function(e,t){return(Ho(e)?jt:mi)(e,aa(t,3))},Dn.flatMap=function(e,t){return fi(So(e,t),1)},Dn.flatMapDeep=function(e,t){return fi(So(e,t),c)},Dn.flatMapDepth=function(e,t,n){return n=n===r?1:hs(n),fi(So(e,t),n)},Dn.flatten=Ha,Dn.flattenDeep=function(e){return null!=e&&e.length?fi(e,c):[]},Dn.flattenDepth=function(e,t){return null!=e&&e.length?fi(e,t=t===r?1:hs(t)):[]},Dn.flip=function(e){return Yr(e,512)},Dn.flow=el,Dn.flowRight=tl,Dn.fromPairs=function(e){for(var t=-1,n=null==e?0:e.length,i={};++t<n;){var r=e[t];i[r[0]]=r[1]}return i},Dn.functions=function(e){return null==e?[]:ki(e,Es(e))},Dn.functionsIn=function(e){return null==e?[]:ki(e,Rs(e))},Dn.groupBy=bo,Dn.initial=function(e){return null!=e&&e.length?er(e,0,-1):[]},Dn.intersection=Va,Dn.intersectionBy=qa,Dn.intersectionWith=Ja,Dn.invert=Ts,Dn.invertBy=js,Dn.invokeMap=ko,Dn.iteratee=il,Dn.keyBy=wo,Dn.keys=Es,Dn.keysIn=Rs,Dn.map=So,Dn.mapKeys=function(e,t){var n={};return t=aa(t,3),vi(e,(function(e,i,r){ii(n,t(e,i,r),e)})),n},Dn.mapValues=function(e,t){var n={};return t=aa(t,3),vi(e,(function(e,i,r){ii(n,i,t(e,i,r))})),n},Dn.matches=function(e){return Fi(oi(e,1))},Dn.matchesProperty=function(e,t){return Di(e,oi(t,1))},Dn.memoize=zo,Dn.merge=Is,Dn.mergeWith=zs,Dn.method=rl,Dn.methodOf=al,Dn.mixin=ol,Dn.negate=Lo,Dn.nthArg=function(e){return e=hs(e),Ji((function(t){return Ni(t,e)}))},Dn.omit=Ls,Dn.omitBy=function(e,t){return Ms(e,Lo(aa(t)))},Dn.once=function(e){return To(2,e)},Dn.orderBy=function(e,t,n,i){return null==e?[]:(Ho(t)||(t=null==t?[]:[t]),Ho(n=i?r:n)||(n=null==n?[]:[n]),Gi(e,t,n))},Dn.over=ll,Dn.overArgs=Oo,Dn.overEvery=ul,Dn.overSome=cl,Dn.partial=Mo,Dn.partialRight=Fo,Dn.partition=Po,Dn.pick=Os,Dn.pickBy=Ms,Dn.property=dl,Dn.propertyOf=function(e){return function(t){return null==e?r:wi(e,t)}},Dn.pull=Ka,Dn.pullAll=$a,Dn.pullAllBy=function(e,t,n){return e&&e.length&&t&&t.length?Hi(e,t,aa(n,2)):e},Dn.pullAllWith=function(e,t,n){return e&&e.length&&t&&t.length?Hi(e,t,r,n):e},Dn.pullAt=Za,Dn.range=pl,Dn.rangeRight=hl,Dn.rearg=Do,Dn.reject=function(e,t){return(Ho(e)?jt:mi)(e,Lo(aa(t,3)))},Dn.remove=function(e,t){var n=[];if(!e||!e.length)return n;var i=-1,r=[],a=e.length;for(t=aa(t,3);++i<a;){var o=e[i];t(o,i,e)&&(n.push(o),r.push(i))}return Wi(e,r),n},Dn.rest=function(e,t){if("function"!=typeof e)throw new Te(a);return Ji(e,t=t===r?t:hs(t))},Dn.reverse=Xa,Dn.sampleSize=function(e,t,n){return t=(n?ga(e,t,n):t===r)?1:hs(t),(Ho(e)?$n:Ki)(e,t)},Dn.set=function(e,t,n){return null==e?e:$i(e,t,n)},Dn.setWith=function(e,t,n,i){return i="function"==typeof i?i:r,null==e?e:$i(e,t,n,i)},Dn.shuffle=function(e){return(Ho(e)?Zn:Qi)(e)},Dn.slice=function(e,t,n){var i=null==e?0:e.length;return i?(n&&"number"!=typeof n&&ga(e,t,n)?(t=0,n=i):(t=null==t?0:hs(t),n=n===r?i:hs(n)),er(e,t,n)):[]},Dn.sortBy=xo,Dn.sortedUniq=function(e){return e&&e.length?rr(e):[]},Dn.sortedUniqBy=function(e,t){return e&&e.length?rr(e,aa(t,2)):[]},Dn.split=function(e,t,n){return n&&"number"!=typeof n&&ga(e,t,n)&&(t=n=r),(n=n===r?h:n>>>0)?(e=ys(e))&&("string"==typeof t||null!=t&&!rs(t))&&!(t=or(t))&&rn(e)?vr(dn(e),0,n):e.split(t,n):[]},Dn.spread=function(e,t){if("function"!=typeof e)throw new Te(a);return t=null==t?0:gn(hs(t),0),Ji((function(n){var i=n[t],r=vr(n,0,t);return i&&It(r,i),Pt(e,this,r)}))},Dn.tail=function(e){var t=null==e?0:e.length;return t?er(e,1,t):[]},Dn.take=function(e,t,n){return e&&e.length?er(e,0,(t=n||t===r?1:hs(t))<0?0:t):[]},Dn.takeRight=function(e,t,n){var i=null==e?0:e.length;return i?er(e,(t=i-(t=n||t===r?1:hs(t)))<0?0:t,i):[]},Dn.takeRightWhile=function(e,t){return e&&e.length?cr(e,aa(t,3),!1,!0):[]},Dn.takeWhile=function(e,t){return e&&e.length?cr(e,aa(t,3)):[]},Dn.tap=function(e,t){return t(e),e},Dn.throttle=function(e,t,n){var i=!0,r=!0;if("function"!=typeof e)throw new Te(a);return Qo(n)&&(i="leading"in n?!!n.leading:i,r="trailing"in n?!!n.trailing:r),Eo(e,t,{leading:i,maxWait:t,trailing:r})},Dn.thru=po,Dn.toArray=ds,Dn.toPairs=Fs,Dn.toPairsIn=Ds,Dn.toPath=function(e){return Ho(e)?Rt(e,Oa):ss(e)?[e]:Ar(La(ys(e)))},Dn.toPlainObject=gs,Dn.transform=function(e,t,n){var i=Ho(e),r=i||Jo(e)||ls(e);if(t=aa(t,4),null==n){var a=e&&e.constructor;n=r?i?new a:[]:Qo(e)&&$o(a)?Bn(We(e)):{}}return(r?Ct:vi)(e,(function(e,i,r){return t(n,e,i,r)})),n},Dn.unary=function(e){return Ao(e,1)},Dn.union=Qa,Dn.unionBy=eo,Dn.unionWith=to,Dn.uniq=function(e){return e&&e.length?sr(e):[]},Dn.uniqBy=function(e,t){return e&&e.length?sr(e,aa(t,2)):[]},Dn.uniqWith=function(e,t){return t="function"==typeof t?t:r,e&&e.length?sr(e,r,t):[]},Dn.unset=function(e,t){return null==e||lr(e,t)},Dn.unzip=no,Dn.unzipWith=io,Dn.update=function(e,t,n){return null==e?e:ur(e,t,fr(n))},Dn.updateWith=function(e,t,n,i){return i="function"==typeof i?i:r,null==e?e:ur(e,t,fr(n),i)},Dn.values=Bs,Dn.valuesIn=function(e){return null==e?[]:$t(e,Rs(e))},Dn.without=ro,Dn.words=$s,Dn.wrap=function(e,t){return Mo(fr(t),e)},Dn.xor=ao,Dn.xorBy=oo,Dn.xorWith=so,Dn.zip=lo,Dn.zipObject=function(e,t){return hr(e||[],t||[],Qn)},Dn.zipObjectDeep=function(e,t){return hr(e||[],t||[],$i)},Dn.zipWith=uo,Dn.entries=Fs,Dn.entriesIn=Ds,Dn.extend=bs,Dn.extendWith=ks,ol(Dn,Dn),Dn.add=yl,Dn.attempt=Zs,Dn.camelCase=Ns,Dn.capitalize=Gs,Dn.ceil=vl,Dn.clamp=function(e,t,n){return n===r&&(n=t,t=r),n!==r&&(n=(n=fs(n))==n?n:0),t!==r&&(t=(t=fs(t))==t?t:0),ai(fs(e),t,n)},Dn.clone=function(e){return oi(e,4)},Dn.cloneDeep=function(e){return oi(e,5)},Dn.cloneDeepWith=function(e,t){return oi(e,5,t="function"==typeof t?t:r)},Dn.cloneWith=function(e,t){return oi(e,4,t="function"==typeof t?t:r)},Dn.conformsTo=function(e,t){return null==t||si(e,t,Es(t))},Dn.deburr=Us,Dn.defaultTo=function(e,t){return null==e||e!=e?t:e},Dn.divide=bl,Dn.endsWith=function(e,t,n){e=ys(e),t=or(t);var i=e.length,a=n=n===r?i:ai(hs(n),0,i);return(n-=t.length)>=0&&e.slice(n,a)==t},Dn.eq=Bo,Dn.escape=function(e){return(e=ys(e))&&Y.test(e)?e.replace(q,tn):e},Dn.escapeRegExp=function(e){return(e=ys(e))&&ne.test(e)?e.replace(te,"\\$&"):e},Dn.every=function(e,t,n){var i=Ho(e)?Tt:pi;return n&&ga(e,t,n)&&(t=r),i(e,aa(t,3))},Dn.find=fo,Dn.findIndex=Ga,Dn.findKey=function(e,t){return Ft(e,aa(t,3),vi)},Dn.findLast=go,Dn.findLastIndex=Ua,Dn.findLastKey=function(e,t){return Ft(e,aa(t,3),bi)},Dn.floor=kl,Dn.forEach=yo,Dn.forEachRight=vo,Dn.forIn=function(e,t){return null==e?e:gi(e,aa(t,3),Rs)},Dn.forInRight=function(e,t){return null==e?e:yi(e,aa(t,3),Rs)},Dn.forOwn=function(e,t){return e&&vi(e,aa(t,3))},Dn.forOwnRight=function(e,t){return e&&bi(e,aa(t,3))},Dn.get=Cs,Dn.gt=No,Dn.gte=Go,Dn.has=function(e,t){return null!=e&&pa(e,t,Ci)},Dn.hasIn=As,Dn.head=Wa,Dn.identity=nl,Dn.includes=function(e,t,n,i){e=Vo(e)?e:Bs(e),n=n&&!i?hs(n):0;var r=e.length;return n<0&&(n=gn(r+n,0)),os(e)?n<=r&&e.indexOf(t,n)>-1:!!r&&Bt(e,t,n)>-1},Dn.indexOf=function(e,t,n){var i=null==e?0:e.length;if(!i)return-1;var r=null==n?0:hs(n);return r<0&&(r=gn(i+r,0)),Bt(e,t,r)},Dn.inRange=function(e,t,n){return t=ps(t),n===r?(n=t,t=0):n=ps(n),function(e,t,n){return e>=yn(t,n)&&e<gn(t,n)}(e=fs(e),t,n)},Dn.invoke=_s,Dn.isArguments=Uo,Dn.isArray=Ho,Dn.isArrayBuffer=Wo,Dn.isArrayLike=Vo,Dn.isArrayLikeObject=qo,Dn.isBoolean=function(e){return!0===e||!1===e||es(e)&&Pi(e)==y},Dn.isBuffer=Jo,Dn.isDate=Yo,Dn.isElement=function(e){return es(e)&&1===e.nodeType&&!is(e)},Dn.isEmpty=function(e){if(null==e)return!0;if(Vo(e)&&(Ho(e)||"string"==typeof e||"function"==typeof e.splice||Jo(e)||ls(e)||Uo(e)))return!e.length;var t=da(e);if(t==S||t==T)return!e.size;if(ka(e))return!Li(e).length;for(var n in e)if(ze.call(e,n))return!1;return!0},Dn.isEqual=function(e,t){return Ei(e,t)},Dn.isEqualWith=function(e,t,n){var i=(n="function"==typeof n?n:r)?n(e,t):r;return i===r?Ei(e,t,r,n):!!i},Dn.isError=Ko,Dn.isFinite=function(e){return"number"==typeof e&&Mt(e)},Dn.isFunction=$o,Dn.isInteger=Zo,Dn.isLength=Xo,Dn.isMap=ts,Dn.isMatch=function(e,t){return e===t||Ri(e,t,sa(t))},Dn.isMatchWith=function(e,t,n){return n="function"==typeof n?n:r,Ri(e,t,sa(t),n)},Dn.isNaN=function(e){return ns(e)&&e!=+e},Dn.isNative=function(e){if(ba(e))throw new we("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return Ii(e)},Dn.isNil=function(e){return null==e},Dn.isNull=function(e){return null===e},Dn.isNumber=ns,Dn.isObject=Qo,Dn.isObjectLike=es,Dn.isPlainObject=is,Dn.isRegExp=rs,Dn.isSafeInteger=function(e){return Zo(e)&&e>=-9007199254740991&&e<=d},Dn.isSet=as,Dn.isString=os,Dn.isSymbol=ss,Dn.isTypedArray=ls,Dn.isUndefined=function(e){return e===r},Dn.isWeakMap=function(e){return es(e)&&da(e)==E},Dn.isWeakSet=function(e){return es(e)&&"[object WeakSet]"==Pi(e)},Dn.join=function(e,t){return null==e?"":Wt.call(e,t)},Dn.kebabCase=Hs,Dn.last=Ya,Dn.lastIndexOf=function(e,t,n){var i=null==e?0:e.length;if(!i)return-1;var a=i;return n!==r&&(a=(a=hs(n))<0?gn(i+a,0):yn(a,i-1)),t==t?function(e,t,n){for(var i=n+1;i--;)if(e[i]===t)return i;return i}(e,t,a):Dt(e,Gt,a,!0)},Dn.lowerCase=Ws,Dn.lowerFirst=Vs,Dn.lt=us,Dn.lte=cs,Dn.max=function(e){return e&&e.length?hi(e,nl,xi):r},Dn.maxBy=function(e,t){return e&&e.length?hi(e,aa(t,2),xi):r},Dn.mean=function(e){return Ut(e,nl)},Dn.meanBy=function(e,t){return Ut(e,aa(t,2))},Dn.min=function(e){return e&&e.length?hi(e,nl,Oi):r},Dn.minBy=function(e,t){return e&&e.length?hi(e,aa(t,2),Oi):r},Dn.stubArray=ml,Dn.stubFalse=fl,Dn.stubObject=function(){return{}},Dn.stubString=function(){return""},Dn.stubTrue=function(){return!0},Dn.multiply=wl,Dn.nth=function(e,t){return e&&e.length?Ni(e,hs(t)):r},Dn.noConflict=function(){return dt._===this&&(dt._=De),this},Dn.noop=sl,Dn.now=Co,Dn.pad=function(e,t,n){e=ys(e);var i=(t=hs(t))?cn(e):0;if(!t||i>=t)return e;var r=(t-i)/2;return Gr(ht(r),n)+e+Gr(pt(r),n)},Dn.padEnd=function(e,t,n){e=ys(e);var i=(t=hs(t))?cn(e):0;return t&&i<t?e+Gr(t-i,n):e},Dn.padStart=function(e,t,n){e=ys(e);var i=(t=hs(t))?cn(e):0;return t&&i<t?Gr(t-i,n)+e:e},Dn.parseInt=function(e,t,n){return n||null==t?t=0:t&&(t=+t),bn(ys(e).replace(ie,""),t||0)},Dn.random=function(e,t,n){if(n&&"boolean"!=typeof n&&ga(e,t,n)&&(t=n=r),n===r&&("boolean"==typeof t?(n=t,t=r):"boolean"==typeof e&&(n=e,e=r)),e===r&&t===r?(e=0,t=1):(e=ps(e),t===r?(t=e,e=0):t=ps(t)),e>t){var i=e;e=t,t=i}if(n||e%1||t%1){var a=kn();return yn(e+a*(t-e+st("1e-"+((a+"").length-1))),t)}return Vi(e,t)},Dn.reduce=function(e,t,n){var i=Ho(e)?zt:Vt,r=arguments.length<3;return i(e,aa(t,4),n,r,ci)},Dn.reduceRight=function(e,t,n){var i=Ho(e)?Lt:Vt,r=arguments.length<3;return i(e,aa(t,4),n,r,di)},Dn.repeat=function(e,t,n){return t=(n?ga(e,t,n):t===r)?1:hs(t),qi(ys(e),t)},Dn.replace=function(){var e=arguments,t=ys(e[0]);return e.length<3?t:t.replace(e[1],e[2])},Dn.result=function(e,t,n){var i=-1,a=(t=gr(t,e)).length;for(a||(a=1,e=r);++i<a;){var o=null==e?r:e[Oa(t[i])];o===r&&(i=a,o=n),e=$o(o)?o.call(e):o}return e},Dn.round=Sl,Dn.runInContext=e,Dn.sample=function(e){return(Ho(e)?Kn:Yi)(e)},Dn.size=function(e){if(null==e)return 0;if(Vo(e))return os(e)?cn(e):e.length;var t=da(e);return t==S||t==T?e.size:Li(e).length},Dn.snakeCase=qs,Dn.some=function(e,t,n){var i=Ho(e)?Ot:tr;return n&&ga(e,t,n)&&(t=r),i(e,aa(t,3))},Dn.sortedIndex=function(e,t){return nr(e,t)},Dn.sortedIndexBy=function(e,t,n){return ir(e,t,aa(n,2))},Dn.sortedIndexOf=function(e,t){var n=null==e?0:e.length;if(n){var i=nr(e,t);if(i<n&&Bo(e[i],t))return i}return-1},Dn.sortedLastIndex=function(e,t){return nr(e,t,!0)},Dn.sortedLastIndexBy=function(e,t,n){return ir(e,t,aa(n,2),!0)},Dn.sortedLastIndexOf=function(e,t){if(null!=e&&e.length){var n=nr(e,t,!0)-1;if(Bo(e[n],t))return n}return-1},Dn.startCase=Js,Dn.startsWith=function(e,t,n){return e=ys(e),n=null==n?0:ai(hs(n),0,e.length),t=or(t),e.slice(n,n+t.length)==t},Dn.subtract=Pl,Dn.sum=function(e){return e&&e.length?qt(e,nl):0},Dn.sumBy=function(e,t){return e&&e.length?qt(e,aa(t,2)):0},Dn.template=function(e,t,n){var i=Dn.templateSettings;n&&ga(e,t,n)&&(t=r),e=ys(e),t=ks({},t,i,Kr);var a,o,s=ks({},t.imports,i.imports,Kr),l=Es(s),u=$t(s,l),c=0,d=t.interpolate||be,p="__p += '",h=Ce((t.escape||be).source+"|"+d.source+"|"+(d===Z?de:be).source+"|"+(t.evaluate||be).source+"|$","g"),m="//# sourceURL="+(ze.call(t,"sourceURL")?(t.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++it+"]")+"\n";e.replace(h,(function(t,n,i,r,s,l){return i||(i=r),p+=e.slice(c,l).replace(ke,nn),n&&(a=!0,p+="' +\n__e("+n+") +\n'"),s&&(o=!0,p+="';\n"+s+";\n__p += '"),i&&(p+="' +\n((__t = ("+i+")) == null ? '' : __t) +\n'"),c=l+t.length,t})),p+="';\n";var f=ze.call(t,"variable")&&t.variable;if(f){if(ue.test(f))throw new we("Invalid `variable` option passed into `_.template`")}else p="with (obj) {\n"+p+"\n}\n";p=(o?p.replace(U,""):p).replace(H,"$1").replace(W,"$1;"),p="function("+(f||"obj")+") {\n"+(f?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(a?", __e = _.escape":"")+(o?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+p+"return __p\n}";var g=Zs((function(){return Se(l,m+"return "+p).apply(r,u)}));if(g.source=p,Ko(g))throw g;return g},Dn.times=function(e,t){if((e=hs(e))<1||e>d)return[];var n=h,i=yn(e,h);t=aa(t),e-=h;for(var r=Jt(i,t);++n<e;)t(n);return r},Dn.toFinite=ps,Dn.toInteger=hs,Dn.toLength=ms,Dn.toLower=function(e){return ys(e).toLowerCase()},Dn.toNumber=fs,Dn.toSafeInteger=function(e){return e?ai(hs(e),-9007199254740991,d):0===e?e:0},Dn.toString=ys,Dn.toUpper=function(e){return ys(e).toUpperCase()},Dn.trim=function(e,t,n){if((e=ys(e))&&(n||t===r))return Yt(e);if(!e||!(t=or(t)))return e;var i=dn(e),a=dn(t);return vr(i,Xt(i,a),Qt(i,a)+1).join("")},Dn.trimEnd=function(e,t,n){if((e=ys(e))&&(n||t===r))return e.slice(0,pn(e)+1);if(!e||!(t=or(t)))return e;var i=dn(e);return vr(i,0,Qt(i,dn(t))+1).join("")},Dn.trimStart=function(e,t,n){if((e=ys(e))&&(n||t===r))return e.replace(ie,"");if(!e||!(t=or(t)))return e;var i=dn(e);return vr(i,Xt(i,dn(t))).join("")},Dn.truncate=function(e,t){var n=30,i="...";if(Qo(t)){var a="separator"in t?t.separator:a;n="length"in t?hs(t.length):n,i="omission"in t?or(t.omission):i}var o=(e=ys(e)).length;if(rn(e)){var s=dn(e);o=s.length}if(n>=o)return e;var l=n-cn(i);if(l<1)return i;var u=s?vr(s,0,l).join(""):e.slice(0,l);if(a===r)return u+i;if(s&&(l+=u.length-l),rs(a)){if(e.slice(l).search(a)){var c,d=u;for(a.global||(a=Ce(a.source,ys(pe.exec(a))+"g")),a.lastIndex=0;c=a.exec(d);)var p=c.index;u=u.slice(0,p===r?l:p)}}else if(e.indexOf(or(a),l)!=l){var h=u.lastIndexOf(a);h>-1&&(u=u.slice(0,h))}return u+i},Dn.unescape=function(e){return(e=ys(e))&&J.test(e)?e.replace(V,hn):e},Dn.uniqueId=function(e){var t=++Le;return ys(e)+t},Dn.upperCase=Ys,Dn.upperFirst=Ks,Dn.each=yo,Dn.eachRight=vo,Dn.first=Wa,ol(Dn,(gl={},vi(Dn,(function(e,t){ze.call(Dn.prototype,t)||(gl[t]=e)})),gl),{chain:!1}),Dn.VERSION="4.17.21",Ct(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(e){Dn[e].placeholder=Dn})),Ct(["drop","take"],(function(e,t){Un.prototype[e]=function(n){n=n===r?1:gn(hs(n),0);var i=this.__filtered__&&!t?new Un(this):this.clone();return i.__filtered__?i.__takeCount__=yn(n,i.__takeCount__):i.__views__.push({size:yn(n,h),type:e+(i.__dir__<0?"Right":"")}),i},Un.prototype[e+"Right"]=function(t){return this.reverse()[e](t).reverse()}})),Ct(["filter","map","takeWhile"],(function(e,t){var n=t+1,i=1==n||3==n;Un.prototype[e]=function(e){var t=this.clone();return t.__iteratees__.push({iteratee:aa(e,3),type:n}),t.__filtered__=t.__filtered__||i,t}})),Ct(["head","last"],(function(e,t){var n="take"+(t?"Right":"");Un.prototype[e]=function(){return this[n](1).value()[0]}})),Ct(["initial","tail"],(function(e,t){var n="drop"+(t?"":"Right");Un.prototype[e]=function(){return this.__filtered__?new Un(this):this[n](1)}})),Un.prototype.compact=function(){return this.filter(nl)},Un.prototype.find=function(e){return this.filter(e).head()},Un.prototype.findLast=function(e){return this.reverse().find(e)},Un.prototype.invokeMap=Ji((function(e,t){return"function"==typeof e?new Un(this):this.map((function(n){return ji(n,e,t)}))})),Un.prototype.reject=function(e){return this.filter(Lo(aa(e)))},Un.prototype.slice=function(e,t){e=hs(e);var n=this;return n.__filtered__&&(e>0||t<0)?new Un(n):(e<0?n=n.takeRight(-e):e&&(n=n.drop(e)),t!==r&&(n=(t=hs(t))<0?n.dropRight(-t):n.take(t-e)),n)},Un.prototype.takeRightWhile=function(e){return this.reverse().takeWhile(e).reverse()},Un.prototype.toArray=function(){return this.take(h)},vi(Un.prototype,(function(e,t){var n=/^(?:filter|find|map|reject)|While$/.test(t),i=/^(?:head|last)$/.test(t),a=Dn[i?"take"+("last"==t?"Right":""):t],o=i||/^find/.test(t);a&&(Dn.prototype[t]=function(){var t=this.__wrapped__,s=i?[1]:arguments,l=t instanceof Un,u=s[0],c=l||Ho(t),d=function(e){var t=a.apply(Dn,It([e],s));return i&&p?t[0]:t};c&&n&&"function"==typeof u&&1!=u.length&&(l=c=!1);var p=this.__chain__,h=!!this.__actions__.length,m=o&&!p,f=l&&!h;if(!o&&c){t=f?t:new Un(this);var g=e.apply(t,s);return g.__actions__.push({func:po,args:[d],thisArg:r}),new Gn(g,p)}return m&&f?e.apply(this,s):(g=this.thru(d),m?i?g.value()[0]:g.value():g)})})),Ct(["pop","push","shift","sort","splice","unshift"],(function(e){var t=je[e],n=/^(?:push|sort|unshift)$/.test(e)?"tap":"thru",i=/^(?:pop|shift)$/.test(e);Dn.prototype[e]=function(){var e=arguments;if(i&&!this.__chain__){var r=this.value();return t.apply(Ho(r)?r:[],e)}return this[n]((function(n){return t.apply(Ho(n)?n:[],e)}))}})),vi(Un.prototype,(function(e,t){var n=Dn[t];if(n){var i=n.name+"";ze.call(_n,i)||(_n[i]=[]),_n[i].push({name:t,func:n})}})),_n[Fr(r,2).name]=[{name:"wrapper",func:r}],Un.prototype.clone=function(){var e=new Un(this.__wrapped__);return e.__actions__=Ar(this.__actions__),e.__dir__=this.__dir__,e.__filtered__=this.__filtered__,e.__iteratees__=Ar(this.__iteratees__),e.__takeCount__=this.__takeCount__,e.__views__=Ar(this.__views__),e},Un.prototype.reverse=function(){if(this.__filtered__){var e=new Un(this);e.__dir__=-1,e.__filtered__=!0}else(e=this.clone()).__dir__*=-1;return e},Un.prototype.value=function(){var e=this.__wrapped__.value(),t=this.__dir__,n=Ho(e),i=t<0,r=n?e.length:0,a=function(e,t,n){for(var i=-1,r=n.length;++i<r;){var a=n[i],o=a.size;switch(a.type){case"drop":e+=o;break;case"dropRight":t-=o;break;case"take":t=yn(t,e+o);break;case"takeRight":e=gn(e,t-o)}}return{start:e,end:t}}(0,r,this.__views__),o=a.start,s=a.end,l=s-o,u=i?s:o-1,c=this.__iteratees__,d=c.length,p=0,h=yn(l,this.__takeCount__);if(!n||!i&&r==l&&h==l)return dr(e,this.__actions__);var m=[];e:for(;l--&&p<h;){for(var f=-1,g=e[u+=t];++f<d;){var y=c[f],v=y.iteratee,b=y.type,k=v(g);if(2==b)g=k;else if(!k){if(1==b)continue e;break e}}m[p++]=g}return m},Dn.prototype.at=ho,Dn.prototype.chain=function(){return co(this)},Dn.prototype.commit=function(){return new Gn(this.value(),this.__chain__)},Dn.prototype.next=function(){this.__values__===r&&(this.__values__=ds(this.value()));var e=this.__index__>=this.__values__.length;return{done:e,value:e?r:this.__values__[this.__index__++]}},Dn.prototype.plant=function(e){for(var t,n=this;n instanceof Nn;){var i=Fa(n);i.__index__=0,i.__values__=r,t?a.__wrapped__=i:t=i;var a=i;n=n.__wrapped__}return a.__wrapped__=e,t},Dn.prototype.reverse=function(){var e=this.__wrapped__;if(e instanceof Un){var t=e;return this.__actions__.length&&(t=new Un(this)),(t=t.reverse()).__actions__.push({func:po,args:[Xa],thisArg:r}),new Gn(t,this.__chain__)}return this.thru(Xa)},Dn.prototype.toJSON=Dn.prototype.valueOf=Dn.prototype.value=function(){return dr(this.__wrapped__,this.__actions__)},Dn.prototype.first=Dn.prototype.head,Ke&&(Dn.prototype[Ke]=function(){return this}),Dn}();dt._=mn,(i=function(){return mn}.call(t,n,t,e))===r||(e.exports=i)}.call(this)}},t={};function n(i){var r=t[i];if(void 0!==r)return r.exports;var a=t[i]={id:i,loaded:!1,exports:{}};return e[i].call(a.exports,a,a.exports,n),a.loaded=!0,a.exports}n.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t},n.d=(e,t)=>{for(var i in t)n.o(t,i)&&!n.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:t[i]})},n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.nmd=e=>(e.paths=[],e.children||(e.children=[]),e);var i={};return(()=>{"use strict";n.d(i,{default:()=>Xa});var e={};function t(e,t){return function(){return e.apply(t,arguments)}}n.r(e),n.d(e,{hasBrowserEnv:()=>he,hasStandardBrowserEnv:()=>fe,hasStandardBrowserWebWorkerEnv:()=>ge,navigator:()=>me,origin:()=>ye});const{toString:r}=Object.prototype,{getPrototypeOf:a}=Object,o=(s=Object.create(null),e=>{const t=r.call(e);return s[t]||(s[t]=t.slice(8,-1).toLowerCase())});var s;const l=e=>(e=e.toLowerCase(),t=>o(t)===e),u=e=>t=>typeof t===e,{isArray:c}=Array,d=u("undefined"),p=l("ArrayBuffer"),h=u("string"),m=u("function"),f=u("number"),g=e=>null!==e&&"object"==typeof e,y=e=>{if("object"!==o(e))return!1;const t=a(e);return!(null!==t&&t!==Object.prototype&&null!==Object.getPrototypeOf(t)||Symbol.toStringTag in e||Symbol.iterator in e)},v=l("Date"),b=l("File"),k=l("Blob"),w=l("FileList"),S=l("URLSearchParams"),[P,x,C,A]=["ReadableStream","Request","Response","Headers"].map(l);function T(e,t,{allOwnKeys:n=!1}={}){if(null==e)return;let i,r;if("object"!=typeof e&&(e=[e]),c(e))for(i=0,r=e.length;i<r;i++)t.call(null,e[i],i,e);else{const r=n?Object.getOwnPropertyNames(e):Object.keys(e),a=r.length;let o;for(i=0;i<a;i++)o=r[i],t.call(null,e[o],o,e)}}function j(e,t){t=t.toLowerCase();const n=Object.keys(e);let i,r=n.length;for(;r-- >0;)if(i=n[r],t===i.toLowerCase())return i;return null}const E="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:global,R=e=>!d(e)&&e!==E,I=(z="undefined"!=typeof Uint8Array&&a(Uint8Array),e=>z&&e instanceof z);var z;const L=l("HTMLFormElement"),O=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),M=l("RegExp"),F=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),i={};T(n,((n,r)=>{let a;!1!==(a=t(n,r,e))&&(i[r]=a||n)})),Object.defineProperties(e,i)},D="abcdefghijklmnopqrstuvwxyz",B="0123456789",N={DIGIT:B,ALPHA:D,ALPHA_DIGIT:D+D.toUpperCase()+B},G=l("AsyncFunction"),U=(H="function"==typeof setImmediate,W=m(E.postMessage),H?setImmediate:W?(V=`axios@${Math.random()}`,q=[],E.addEventListener("message",(({source:e,data:t})=>{e===E&&t===V&&q.length&&q.shift()()}),!1),e=>{q.push(e),E.postMessage(V,"*")}):e=>setTimeout(e));var H,W,V,q;const J="undefined"!=typeof queueMicrotask?queueMicrotask.bind(E):"undefined"!=typeof process&&process.nextTick||U,Y={isArray:c,isArrayBuffer:p,isBuffer:function(e){return null!==e&&!d(e)&&null!==e.constructor&&!d(e.constructor)&&m(e.constructor.isBuffer)&&e.constructor.isBuffer(e)},isFormData:e=>{let t;return e&&("function"==typeof FormData&&e instanceof FormData||m(e.append)&&("formdata"===(t=o(e))||"object"===t&&m(e.toString)&&"[object FormData]"===e.toString()))},isArrayBufferView:function(e){let t;return t="undefined"!=typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer&&p(e.buffer),t},isString:h,isNumber:f,isBoolean:e=>!0===e||!1===e,isObject:g,isPlainObject:y,isReadableStream:P,isRequest:x,isResponse:C,isHeaders:A,isUndefined:d,isDate:v,isFile:b,isBlob:k,isRegExp:M,isFunction:m,isStream:e=>g(e)&&m(e.pipe),isURLSearchParams:S,isTypedArray:I,isFileList:w,forEach:T,merge:function e(){const{caseless:t}=R(this)&&this||{},n={},i=(i,r)=>{const a=t&&j(n,r)||r;y(n[a])&&y(i)?n[a]=e(n[a],i):y(i)?n[a]=e({},i):c(i)?n[a]=i.slice():n[a]=i};for(let e=0,t=arguments.length;e<t;e++)arguments[e]&&T(arguments[e],i);return n},extend:(e,n,i,{allOwnKeys:r}={})=>(T(n,((n,r)=>{i&&m(n)?e[r]=t(n,i):e[r]=n}),{allOwnKeys:r}),e),trim:e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,""),stripBOM:e=>(65279===e.charCodeAt(0)&&(e=e.slice(1)),e),inherits:(e,t,n,i)=>{e.prototype=Object.create(t.prototype,i),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),n&&Object.assign(e.prototype,n)},toFlatObject:(e,t,n,i)=>{let r,o,s;const l={};if(t=t||{},null==e)return t;do{for(r=Object.getOwnPropertyNames(e),o=r.length;o-- >0;)s=r[o],i&&!i(s,e,t)||l[s]||(t[s]=e[s],l[s]=!0);e=!1!==n&&a(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},kindOf:o,kindOfTest:l,endsWith:(e,t,n)=>{e=String(e),(void 0===n||n>e.length)&&(n=e.length),n-=t.length;const i=e.indexOf(t,n);return-1!==i&&i===n},toArray:e=>{if(!e)return null;if(c(e))return e;let t=e.length;if(!f(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},forEachEntry:(e,t)=>{const n=(e&&e[Symbol.iterator]).call(e);let i;for(;(i=n.next())&&!i.done;){const n=i.value;t.call(e,n[0],n[1])}},matchAll:(e,t)=>{let n;const i=[];for(;null!==(n=e.exec(t));)i.push(n);return i},isHTMLForm:L,hasOwnProperty:O,hasOwnProp:O,reduceDescriptors:F,freezeMethods:e=>{F(e,((t,n)=>{if(m(e)&&-1!==["arguments","caller","callee"].indexOf(n))return!1;const i=e[n];m(i)&&(t.enumerable=!1,"writable"in t?t.writable=!1:t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")}))}))},toObjectSet:(e,t)=>{const n={},i=e=>{e.forEach((e=>{n[e]=!0}))};return c(e)?i(e):i(String(e).split(t)),n},toCamelCase:e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,(function(e,t,n){return t.toUpperCase()+n})),noop:()=>{},toFiniteNumber:(e,t)=>null!=e&&Number.isFinite(e=+e)?e:t,findKey:j,global:E,isContextDefined:R,ALPHABET:N,generateString:(e=16,t=N.ALPHA_DIGIT)=>{let n="";const{length:i}=t;for(;e--;)n+=t[Math.random()*i|0];return n},isSpecCompliantForm:function(e){return!!(e&&m(e.append)&&"FormData"===e[Symbol.toStringTag]&&e[Symbol.iterator])},toJSONObject:e=>{const t=new Array(10),n=(e,i)=>{if(g(e)){if(t.indexOf(e)>=0)return;if(!("toJSON"in e)){t[i]=e;const r=c(e)?[]:{};return T(e,((e,t)=>{const a=n(e,i+1);!d(a)&&(r[t]=a)})),t[i]=void 0,r}}return e};return n(e,0)},isAsyncFn:G,isThenable:e=>e&&(g(e)||m(e))&&m(e.then)&&m(e.catch),setImmediate:U,asap:J};function K(e,t,n,i,r){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=(new Error).stack,this.message=e,this.name="AxiosError",t&&(this.code=t),n&&(this.config=n),i&&(this.request=i),r&&(this.response=r,this.status=r.status?r.status:null)}Y.inherits(K,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:Y.toJSONObject(this.config),code:this.code,status:this.status}}});const $=K.prototype,Z={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach((e=>{Z[e]={value:e}})),Object.defineProperties(K,Z),Object.defineProperty($,"isAxiosError",{value:!0}),K.from=(e,t,n,i,r,a)=>{const o=Object.create($);return Y.toFlatObject(e,o,(function(e){return e!==Error.prototype}),(e=>"isAxiosError"!==e)),K.call(o,e.message,t,n,i,r),o.cause=e,o.name=e.name,a&&Object.assign(o,a),o};const X=K;function Q(e){return Y.isPlainObject(e)||Y.isArray(e)}function ee(e){return Y.endsWith(e,"[]")?e.slice(0,-2):e}function te(e,t,n){return e?e.concat(t).map((function(e,t){return e=ee(e),!n&&t?"["+e+"]":e})).join(n?".":""):t}const ne=Y.toFlatObject(Y,{},null,(function(e){return/^is[A-Z]/.test(e)})),ie=function(e,t,n){if(!Y.isObject(e))throw new TypeError("target must be an object");t=t||new FormData;const i=(n=Y.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,(function(e,t){return!Y.isUndefined(t[e])}))).metaTokens,r=n.visitor||u,a=n.dots,o=n.indexes,s=(n.Blob||"undefined"!=typeof Blob&&Blob)&&Y.isSpecCompliantForm(t);if(!Y.isFunction(r))throw new TypeError("visitor must be a function");function l(e){if(null===e)return"";if(Y.isDate(e))return e.toISOString();if(!s&&Y.isBlob(e))throw new X("Blob is not supported. Use a Buffer instead.");return Y.isArrayBuffer(e)||Y.isTypedArray(e)?s&&"function"==typeof Blob?new Blob([e]):Buffer.from(e):e}function u(e,n,r){let s=e;if(e&&!r&&"object"==typeof e)if(Y.endsWith(n,"{}"))n=i?n:n.slice(0,-2),e=JSON.stringify(e);else if(Y.isArray(e)&&function(e){return Y.isArray(e)&&!e.some(Q)}(e)||(Y.isFileList(e)||Y.endsWith(n,"[]"))&&(s=Y.toArray(e)))return n=ee(n),s.forEach((function(e,i){!Y.isUndefined(e)&&null!==e&&t.append(!0===o?te([n],i,a):null===o?n:n+"[]",l(e))})),!1;return!!Q(e)||(t.append(te(r,n,a),l(e)),!1)}const c=[],d=Object.assign(ne,{defaultVisitor:u,convertValue:l,isVisitable:Q});if(!Y.isObject(e))throw new TypeError("data must be an object");return function e(n,i){if(!Y.isUndefined(n)){if(-1!==c.indexOf(n))throw Error("Circular reference detected in "+i.join("."));c.push(n),Y.forEach(n,(function(n,a){!0===(!(Y.isUndefined(n)||null===n)&&r.call(t,n,Y.isString(a)?a.trim():a,i,d))&&e(n,i?i.concat(a):[a])})),c.pop()}}(e),t};function re(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,(function(e){return t[e]}))}function ae(e,t){this._pairs=[],e&&ie(e,this,t)}const oe=ae.prototype;oe.append=function(e,t){this._pairs.push([e,t])},oe.toString=function(e){const t=e?function(t){return e.call(this,t,re)}:re;return this._pairs.map((function(e){return t(e[0])+"="+t(e[1])}),"").join("&")};const se=ae;function le(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function ue(e,t,n){if(!t)return e;const i=n&&n.encode||le;Y.isFunction(n)&&(n={serialize:n});const r=n&&n.serialize;let a;if(a=r?r(t,n):Y.isURLSearchParams(t)?t.toString():new se(t,n).toString(i),a){const t=e.indexOf("#");-1!==t&&(e=e.slice(0,t)),e+=(-1===e.indexOf("?")?"?":"&")+a}return e}const ce=class{constructor(){this.handlers=[]}use(e,t,n){return this.handlers.push({fulfilled:e,rejected:t,synchronous:!!n&&n.synchronous,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){Y.forEach(this.handlers,(function(t){null!==t&&e(t)}))}},de={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},pe={isBrowser:!0,classes:{URLSearchParams:"undefined"!=typeof URLSearchParams?URLSearchParams:se,FormData:"undefined"!=typeof FormData?FormData:null,Blob:"undefined"!=typeof Blob?Blob:null},protocols:["http","https","file","blob","url","data"]},he="undefined"!=typeof window&&"undefined"!=typeof document,me="object"==typeof navigator&&navigator||void 0,fe=he&&(!me||["ReactNative","NativeScript","NS"].indexOf(me.product)<0),ge="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&"function"==typeof self.importScripts,ye=he&&window.location.href||"http://localhost",ve={...e,...pe},be=function(e){function t(e,n,i,r){let a=e[r++];if("__proto__"===a)return!0;const o=Number.isFinite(+a),s=r>=e.length;return a=!a&&Y.isArray(i)?i.length:a,s?(Y.hasOwnProp(i,a)?i[a]=[i[a],n]:i[a]=n,!o):(i[a]&&Y.isObject(i[a])||(i[a]=[]),t(e,n,i[a],r)&&Y.isArray(i[a])&&(i[a]=function(e){const t={},n=Object.keys(e);let i;const r=n.length;let a;for(i=0;i<r;i++)a=n[i],t[a]=e[a];return t}(i[a])),!o)}if(Y.isFormData(e)&&Y.isFunction(e.entries)){const n={};return Y.forEachEntry(e,((e,i)=>{t(function(e){return Y.matchAll(/\w+|\[(\w*)]/g,e).map((e=>"[]"===e[0]?"":e[1]||e[0]))}(e),i,n,0)})),n}return null},ke={transitional:de,adapter:["xhr","http","fetch"],transformRequest:[function(e,t){const n=t.getContentType()||"",i=n.indexOf("application/json")>-1,r=Y.isObject(e);if(r&&Y.isHTMLForm(e)&&(e=new FormData(e)),Y.isFormData(e))return i?JSON.stringify(be(e)):e;if(Y.isArrayBuffer(e)||Y.isBuffer(e)||Y.isStream(e)||Y.isFile(e)||Y.isBlob(e)||Y.isReadableStream(e))return e;if(Y.isArrayBufferView(e))return e.buffer;if(Y.isURLSearchParams(e))return t.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let a;if(r){if(n.indexOf("application/x-www-form-urlencoded")>-1)return function(e,t){return ie(e,new ve.classes.URLSearchParams,Object.assign({visitor:function(e,t,n,i){return ve.isNode&&Y.isBuffer(e)?(this.append(t,e.toString("base64")),!1):i.defaultVisitor.apply(this,arguments)}},t))}(e,this.formSerializer).toString();if((a=Y.isFileList(e))||n.indexOf("multipart/form-data")>-1){const t=this.env&&this.env.FormData;return ie(a?{"files[]":e}:e,t&&new t,this.formSerializer)}}return r||i?(t.setContentType("application/json",!1),function(e){if(Y.isString(e))try{return(0,JSON.parse)(e),Y.trim(e)}catch(e){if("SyntaxError"!==e.name)throw e}return(0,JSON.stringify)(e)}(e)):e}],transformResponse:[function(e){const t=this.transitional||ke.transitional,n=t&&t.forcedJSONParsing,i="json"===this.responseType;if(Y.isResponse(e)||Y.isReadableStream(e))return e;if(e&&Y.isString(e)&&(n&&!this.responseType||i)){const n=!(t&&t.silentJSONParsing)&&i;try{return JSON.parse(e)}catch(e){if(n){if("SyntaxError"===e.name)throw X.from(e,X.ERR_BAD_RESPONSE,this,null,this.response);throw e}}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:ve.classes.FormData,Blob:ve.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};Y.forEach(["delete","get","head","post","put","patch"],(e=>{ke.headers[e]={}}));const we=ke,Se=Y.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),Pe=Symbol("internals");function xe(e){return e&&String(e).trim().toLowerCase()}function Ce(e){return!1===e||null==e?e:Y.isArray(e)?e.map(Ce):String(e)}function Ae(e,t,n,i,r){return Y.isFunction(i)?i.call(this,t,n):(r&&(t=n),Y.isString(t)?Y.isString(i)?-1!==t.indexOf(i):Y.isRegExp(i)?i.test(t):void 0:void 0)}class Te{constructor(e){e&&this.set(e)}set(e,t,n){const i=this;function r(e,t,n){const r=xe(t);if(!r)throw new Error("header name must be a non-empty string");const a=Y.findKey(i,r);(!a||void 0===i[a]||!0===n||void 0===n&&!1!==i[a])&&(i[a||t]=Ce(e))}const a=(e,t)=>Y.forEach(e,((e,n)=>r(e,n,t)));if(Y.isPlainObject(e)||e instanceof this.constructor)a(e,t);else if(Y.isString(e)&&(e=e.trim())&&!/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim()))a((e=>{const t={};let n,i,r;return e&&e.split("\n").forEach((function(e){r=e.indexOf(":"),n=e.substring(0,r).trim().toLowerCase(),i=e.substring(r+1).trim(),!n||t[n]&&Se[n]||("set-cookie"===n?t[n]?t[n].push(i):t[n]=[i]:t[n]=t[n]?t[n]+", "+i:i)})),t})(e),t);else if(Y.isHeaders(e))for(const[t,i]of e.entries())r(i,t,n);else null!=e&&r(t,e,n);return this}get(e,t){if(e=xe(e)){const n=Y.findKey(this,e);if(n){const e=this[n];if(!t)return e;if(!0===t)return function(e){const t=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let i;for(;i=n.exec(e);)t[i[1]]=i[2];return t}(e);if(Y.isFunction(t))return t.call(this,e,n);if(Y.isRegExp(t))return t.exec(e);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,t){if(e=xe(e)){const n=Y.findKey(this,e);return!(!n||void 0===this[n]||t&&!Ae(0,this[n],n,t))}return!1}delete(e,t){const n=this;let i=!1;function r(e){if(e=xe(e)){const r=Y.findKey(n,e);!r||t&&!Ae(0,n[r],r,t)||(delete n[r],i=!0)}}return Y.isArray(e)?e.forEach(r):r(e),i}clear(e){const t=Object.keys(this);let n=t.length,i=!1;for(;n--;){const r=t[n];e&&!Ae(0,this[r],r,e,!0)||(delete this[r],i=!0)}return i}normalize(e){const t=this,n={};return Y.forEach(this,((i,r)=>{const a=Y.findKey(n,r);if(a)return t[a]=Ce(i),void delete t[r];const o=e?function(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,((e,t,n)=>t.toUpperCase()+n))}(r):String(r).trim();o!==r&&delete t[r],t[o]=Ce(i),n[o]=!0})),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){const t=Object.create(null);return Y.forEach(this,((n,i)=>{null!=n&&!1!==n&&(t[i]=e&&Y.isArray(n)?n.join(", "):n)})),t}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map((([e,t])=>e+": "+t)).join("\n")}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...t){const n=new this(e);return t.forEach((e=>n.set(e))),n}static accessor(e){const t=(this[Pe]=this[Pe]={accessors:{}}).accessors,n=this.prototype;function i(e){const i=xe(e);t[i]||(function(e,t){const n=Y.toCamelCase(" "+t);["get","set","has"].forEach((i=>{Object.defineProperty(e,i+n,{value:function(e,n,r){return this[i].call(this,t,e,n,r)},configurable:!0})}))}(n,e),t[i]=!0)}return Y.isArray(e)?e.forEach(i):i(e),this}}Te.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),Y.reduceDescriptors(Te.prototype,(({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(e){this[n]=e}}})),Y.freezeMethods(Te);const je=Te;function _e(e,t){const n=this||we,i=t||n,r=je.from(i.headers);let a=i.data;return Y.forEach(e,(function(e){a=e.call(n,a,r.normalize(),t?t.status:void 0)})),r.normalize(),a}function Ee(e){return!(!e||!e.__CANCEL__)}function Re(e,t,n){X.call(this,null==e?"canceled":e,X.ERR_CANCELED,t,n),this.name="CanceledError"}Y.inherits(Re,X,{__CANCEL__:!0});const Ie=Re;function ze(e,t,n){const i=n.config.validateStatus;n.status&&i&&!i(n.status)?t(new X("Request failed with status code "+n.status,[X.ERR_BAD_REQUEST,X.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n)):e(n)}const Le=(e,t,n=3)=>{let i=0;const r=function(e,t){e=e||10;const n=new Array(e),i=new Array(e);let r,a=0,o=0;return t=void 0!==t?t:1e3,function(s){const l=Date.now(),u=i[o];r||(r=l),n[a]=s,i[a]=l;let c=o,d=0;for(;c!==a;)d+=n[c++],c%=e;if(a=(a+1)%e,a===o&&(o=(o+1)%e),l-r<t)return;const p=u&&l-u;return p?Math.round(1e3*d/p):void 0}}(50,250);return function(e,t){let n,i,r=0,a=1e3/t;const o=(t,a=Date.now())=>{r=a,n=null,i&&(clearTimeout(i),i=null),e.apply(null,t)};return[(...e)=>{const t=Date.now(),s=t-r;s>=a?o(e,t):(n=e,i||(i=setTimeout((()=>{i=null,o(n)}),a-s)))},()=>n&&o(n)]}((n=>{const a=n.loaded,o=n.lengthComputable?n.total:void 0,s=a-i,l=r(s);i=a,e({loaded:a,total:o,progress:o?a/o:void 0,bytes:s,rate:l||void 0,estimated:l&&o&&a<=o?(o-a)/l:void 0,event:n,lengthComputable:null!=o,[t?"download":"upload"]:!0})}),n)},Oe=(e,t)=>{const n=null!=e;return[i=>t[0]({lengthComputable:n,total:e,loaded:i}),t[1]]},Me=e=>(...t)=>Y.asap((()=>e(...t))),Fe=ve.hasStandardBrowserEnv?((e,t)=>n=>(n=new URL(n,ve.origin),e.protocol===n.protocol&&e.host===n.host&&(t||e.port===n.port)))(new URL(ve.origin),ve.navigator&&/(msie|trident)/i.test(ve.navigator.userAgent)):()=>!0,De=ve.hasStandardBrowserEnv?{write(e,t,n,i,r,a){const o=[e+"="+encodeURIComponent(t)];Y.isNumber(n)&&o.push("expires="+new Date(n).toGMTString()),Y.isString(i)&&o.push("path="+i),Y.isString(r)&&o.push("domain="+r),!0===a&&o.push("secure"),document.cookie=o.join("; ")},read(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read:()=>null,remove(){}};function Be(e,t){return e&&!/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)?function(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}(e,t):t}const Ne=e=>e instanceof je?{...e}:e;function Ge(e,t){t=t||{};const n={};function i(e,t,n,i){return Y.isPlainObject(e)&&Y.isPlainObject(t)?Y.merge.call({caseless:i},e,t):Y.isPlainObject(t)?Y.merge({},t):Y.isArray(t)?t.slice():t}function r(e,t,n,r){return Y.isUndefined(t)?Y.isUndefined(e)?void 0:i(void 0,e,0,r):i(e,t,0,r)}function a(e,t){if(!Y.isUndefined(t))return i(void 0,t)}function o(e,t){return Y.isUndefined(t)?Y.isUndefined(e)?void 0:i(void 0,e):i(void 0,t)}function s(n,r,a){return a in t?i(n,r):a in e?i(void 0,n):void 0}const l={url:a,method:a,data:a,baseURL:o,transformRequest:o,transformResponse:o,paramsSerializer:o,timeout:o,timeoutMessage:o,withCredentials:o,withXSRFToken:o,adapter:o,responseType:o,xsrfCookieName:o,xsrfHeaderName:o,onUploadProgress:o,onDownloadProgress:o,decompress:o,maxContentLength:o,maxBodyLength:o,beforeRedirect:o,transport:o,httpAgent:o,httpsAgent:o,cancelToken:o,socketPath:o,responseEncoding:o,validateStatus:s,headers:(e,t,n)=>r(Ne(e),Ne(t),0,!0)};return Y.forEach(Object.keys(Object.assign({},e,t)),(function(i){const a=l[i]||r,o=a(e[i],t[i],i);Y.isUndefined(o)&&a!==s||(n[i]=o)})),n}const Ue=e=>{const t=Ge({},e);let n,{data:i,withXSRFToken:r,xsrfHeaderName:a,xsrfCookieName:o,headers:s,auth:l}=t;if(t.headers=s=je.from(s),t.url=ue(Be(t.baseURL,t.url),e.params,e.paramsSerializer),l&&s.set("Authorization","Basic "+btoa((l.username||"")+":"+(l.password?unescape(encodeURIComponent(l.password)):""))),Y.isFormData(i))if(ve.hasStandardBrowserEnv||ve.hasStandardBrowserWebWorkerEnv)s.setContentType(void 0);else if(!1!==(n=s.getContentType())){const[e,...t]=n?n.split(";").map((e=>e.trim())).filter(Boolean):[];s.setContentType([e||"multipart/form-data",...t].join("; "))}if(ve.hasStandardBrowserEnv&&(r&&Y.isFunction(r)&&(r=r(t)),r||!1!==r&&Fe(t.url))){const e=a&&o&&De.read(o);e&&s.set(a,e)}return t},He="undefined"!=typeof XMLHttpRequest&&function(e){return new Promise((function(t,n){const i=Ue(e);let r=i.data;const a=je.from(i.headers).normalize();let o,s,l,u,c,{responseType:d,onUploadProgress:p,onDownloadProgress:h}=i;function m(){u&&u(),c&&c(),i.cancelToken&&i.cancelToken.unsubscribe(o),i.signal&&i.signal.removeEventListener("abort",o)}let f=new XMLHttpRequest;function g(){if(!f)return;const i=je.from("getAllResponseHeaders"in f&&f.getAllResponseHeaders());ze((function(e){t(e),m()}),(function(e){n(e),m()}),{data:d&&"text"!==d&&"json"!==d?f.response:f.responseText,status:f.status,statusText:f.statusText,headers:i,config:e,request:f}),f=null}f.open(i.method.toUpperCase(),i.url,!0),f.timeout=i.timeout,"onloadend"in f?f.onloadend=g:f.onreadystatechange=function(){f&&4===f.readyState&&(0!==f.status||f.responseURL&&0===f.responseURL.indexOf("file:"))&&setTimeout(g)},f.onabort=function(){f&&(n(new X("Request aborted",X.ECONNABORTED,e,f)),f=null)},f.onerror=function(){n(new X("Network Error",X.ERR_NETWORK,e,f)),f=null},f.ontimeout=function(){let t=i.timeout?"timeout of "+i.timeout+"ms exceeded":"timeout exceeded";const r=i.transitional||de;i.timeoutErrorMessage&&(t=i.timeoutErrorMessage),n(new X(t,r.clarifyTimeoutError?X.ETIMEDOUT:X.ECONNABORTED,e,f)),f=null},void 0===r&&a.setContentType(null),"setRequestHeader"in f&&Y.forEach(a.toJSON(),(function(e,t){f.setRequestHeader(t,e)})),Y.isUndefined(i.withCredentials)||(f.withCredentials=!!i.withCredentials),d&&"json"!==d&&(f.responseType=i.responseType),h&&([l,c]=Le(h,!0),f.addEventListener("progress",l)),p&&f.upload&&([s,u]=Le(p),f.upload.addEventListener("progress",s),f.upload.addEventListener("loadend",u)),(i.cancelToken||i.signal)&&(o=t=>{f&&(n(!t||t.type?new Ie(null,e,f):t),f.abort(),f=null)},i.cancelToken&&i.cancelToken.subscribe(o),i.signal&&(i.signal.aborted?o():i.signal.addEventListener("abort",o)));const y=function(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}(i.url);y&&-1===ve.protocols.indexOf(y)?n(new X("Unsupported protocol "+y+":",X.ERR_BAD_REQUEST,e)):f.send(r||null)}))},We=(e,t)=>{const{length:n}=e=e?e.filter(Boolean):[];if(t||n){let n,i=new AbortController;const r=function(e){if(!n){n=!0,o();const t=e instanceof Error?e:this.reason;i.abort(t instanceof X?t:new Ie(t instanceof Error?t.message:t))}};let a=t&&setTimeout((()=>{a=null,r(new X(`timeout ${t} of ms exceeded`,X.ETIMEDOUT))}),t);const o=()=>{e&&(a&&clearTimeout(a),a=null,e.forEach((e=>{e.unsubscribe?e.unsubscribe(r):e.removeEventListener("abort",r)})),e=null)};e.forEach((e=>e.addEventListener("abort",r)));const{signal:s}=i;return s.unsubscribe=()=>Y.asap(o),s}},Ve=function*(e,t){let n=e.byteLength;if(!t||n<t)return void(yield e);let i,r=0;for(;r<n;)i=r+t,yield e.slice(r,i),r=i},qe=(e,t,n,i)=>{const r=async function*(e,t){for await(const n of async function*(e){if(e[Symbol.asyncIterator])return void(yield*e);const t=e.getReader();try{for(;;){const{done:e,value:n}=await t.read();if(e)break;yield n}}finally{await t.cancel()}}(e))yield*Ve(n,t)}(e,t);let a,o=0,s=e=>{a||(a=!0,i&&i(e))};return new ReadableStream({async pull(e){try{const{done:t,value:i}=await r.next();if(t)return s(),void e.close();let a=i.byteLength;if(n){let e=o+=a;n(e)}e.enqueue(new Uint8Array(i))}catch(e){throw s(e),e}},cancel:e=>(s(e),r.return())},{highWaterMark:2})},Je="function"==typeof fetch&&"function"==typeof Request&&"function"==typeof Response,Ye=Je&&"function"==typeof ReadableStream,Ke=Je&&("function"==typeof TextEncoder?($e=new TextEncoder,e=>$e.encode(e)):async e=>new Uint8Array(await new Response(e).arrayBuffer()));var $e;const Ze=(e,...t)=>{try{return!!e(...t)}catch(e){return!1}},Xe=Ye&&Ze((()=>{let e=!1;const t=new Request(ve.origin,{body:new ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type");return e&&!t})),Qe=Ye&&Ze((()=>Y.isReadableStream(new Response("").body))),et={stream:Qe&&(e=>e.body)};var tt;Je&&(tt=new Response,["text","arrayBuffer","blob","formData","stream"].forEach((e=>{!et[e]&&(et[e]=Y.isFunction(tt[e])?t=>t[e]():(t,n)=>{throw new X(`Response type '${e}' is not supported`,X.ERR_NOT_SUPPORT,n)})})));const nt={http:null,xhr:He,fetch:Je&&(async e=>{let{url:t,method:n,data:i,signal:r,cancelToken:a,timeout:o,onDownloadProgress:s,onUploadProgress:l,responseType:u,headers:c,withCredentials:d="same-origin",fetchOptions:p}=Ue(e);u=u?(u+"").toLowerCase():"text";let h,m=We([r,a&&a.toAbortSignal()],o);const f=m&&m.unsubscribe&&(()=>{m.unsubscribe()});let g;try{if(l&&Xe&&"get"!==n&&"head"!==n&&0!==(g=await(async(e,t)=>{const n=Y.toFiniteNumber(e.getContentLength());return null==n?(async e=>{if(null==e)return 0;if(Y.isBlob(e))return e.size;if(Y.isSpecCompliantForm(e)){const t=new Request(ve.origin,{method:"POST",body:e});return(await t.arrayBuffer()).byteLength}return Y.isArrayBufferView(e)||Y.isArrayBuffer(e)?e.byteLength:(Y.isURLSearchParams(e)&&(e+=""),Y.isString(e)?(await Ke(e)).byteLength:void 0)})(t):n})(c,i))){let e,n=new Request(t,{method:"POST",body:i,duplex:"half"});if(Y.isFormData(i)&&(e=n.headers.get("content-type"))&&c.setContentType(e),n.body){const[e,t]=Oe(g,Le(Me(l)));i=qe(n.body,65536,e,t)}}Y.isString(d)||(d=d?"include":"omit");const r="credentials"in Request.prototype;h=new Request(t,{...p,signal:m,method:n.toUpperCase(),headers:c.normalize().toJSON(),body:i,duplex:"half",credentials:r?d:void 0});let a=await fetch(h);const o=Qe&&("stream"===u||"response"===u);if(Qe&&(s||o&&f)){const e={};["status","statusText","headers"].forEach((t=>{e[t]=a[t]}));const t=Y.toFiniteNumber(a.headers.get("content-length")),[n,i]=s&&Oe(t,Le(Me(s),!0))||[];a=new Response(qe(a.body,65536,n,(()=>{i&&i(),f&&f()})),e)}u=u||"text";let y=await et[Y.findKey(et,u)||"text"](a,e);return!o&&f&&f(),await new Promise(((t,n)=>{ze(t,n,{data:y,headers:je.from(a.headers),status:a.status,statusText:a.statusText,config:e,request:h})}))}catch(t){if(f&&f(),t&&"TypeError"===t.name&&/fetch/i.test(t.message))throw Object.assign(new X("Network Error",X.ERR_NETWORK,e,h),{cause:t.cause||t});throw X.from(t,t&&t.code,e,h)}})};Y.forEach(nt,((e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch(e){}Object.defineProperty(e,"adapterName",{value:t})}}));const it=e=>`- ${e}`,rt=e=>Y.isFunction(e)||null===e||!1===e,at=e=>{e=Y.isArray(e)?e:[e];const{length:t}=e;let n,i;const r={};for(let a=0;a<t;a++){let t;if(n=e[a],i=n,!rt(n)&&(i=nt[(t=String(n)).toLowerCase()],void 0===i))throw new X(`Unknown adapter '${t}'`);if(i)break;r[t||"#"+a]=i}if(!i){const e=Object.entries(r).map((([e,t])=>`adapter ${e} `+(!1===t?"is not supported by the environment":"is not available in the build")));let n=t?e.length>1?"since :\n"+e.map(it).join("\n"):" "+it(e[0]):"as no adapter specified";throw new X("There is no suitable adapter to dispatch the request "+n,"ERR_NOT_SUPPORT")}return i};function ot(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new Ie(null,e)}function st(e){return ot(e),e.headers=je.from(e.headers),e.data=_e.call(e,e.transformRequest),-1!==["post","put","patch"].indexOf(e.method)&&e.headers.setContentType("application/x-www-form-urlencoded",!1),at(e.adapter||we.adapter)(e).then((function(t){return ot(e),t.data=_e.call(e,e.transformResponse,t),t.headers=je.from(t.headers),t}),(function(t){return Ee(t)||(ot(e),t&&t.response&&(t.response.data=_e.call(e,e.transformResponse,t.response),t.response.headers=je.from(t.response.headers))),Promise.reject(t)}))}const lt={};["object","boolean","number","function","string","symbol"].forEach(((e,t)=>{lt[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}}));const ut={};lt.transitional=function(e,t,n){function i(e,t){return"[Axios v1.7.9] Transitional option '"+e+"'"+t+(n?". "+n:"")}return(n,r,a)=>{if(!1===e)throw new X(i(r," has been removed"+(t?" in "+t:"")),X.ERR_DEPRECATED);return t&&!ut[r]&&(ut[r]=!0,console.warn(i(r," has been deprecated since v"+t+" and will be removed in the near future"))),!e||e(n,r,a)}},lt.spelling=function(e){return(t,n)=>(console.warn(`${n} is likely a misspelling of ${e}`),!0)};const ct={assertOptions:function(e,t,n){if("object"!=typeof e)throw new X("options must be an object",X.ERR_BAD_OPTION_VALUE);const i=Object.keys(e);let r=i.length;for(;r-- >0;){const a=i[r],o=t[a];if(o){const t=e[a],n=void 0===t||o(t,a,e);if(!0!==n)throw new X("option "+a+" must be "+n,X.ERR_BAD_OPTION_VALUE)}else if(!0!==n)throw new X("Unknown option "+a,X.ERR_BAD_OPTION)}},validators:lt},dt=ct.validators;class pt{constructor(e){this.defaults=e,this.interceptors={request:new ce,response:new ce}}async request(e,t){try{return await this._request(e,t)}catch(e){if(e instanceof Error){let t={};Error.captureStackTrace?Error.captureStackTrace(t):t=new Error;const n=t.stack?t.stack.replace(/^.+\n/,""):"";try{e.stack?n&&!String(e.stack).endsWith(n.replace(/^.+\n.+\n/,""))&&(e.stack+="\n"+n):e.stack=n}catch(e){}}throw e}}_request(e,t){"string"==typeof e?(t=t||{}).url=e:t=e||{},t=Ge(this.defaults,t);const{transitional:n,paramsSerializer:i,headers:r}=t;void 0!==n&&ct.assertOptions(n,{silentJSONParsing:dt.transitional(dt.boolean),forcedJSONParsing:dt.transitional(dt.boolean),clarifyTimeoutError:dt.transitional(dt.boolean)},!1),null!=i&&(Y.isFunction(i)?t.paramsSerializer={serialize:i}:ct.assertOptions(i,{encode:dt.function,serialize:dt.function},!0)),ct.assertOptions(t,{baseUrl:dt.spelling("baseURL"),withXsrfToken:dt.spelling("withXSRFToken")},!0),t.method=(t.method||this.defaults.method||"get").toLowerCase();let a=r&&Y.merge(r.common,r[t.method]);r&&Y.forEach(["delete","get","head","post","put","patch","common"],(e=>{delete r[e]})),t.headers=je.concat(a,r);const o=[];let s=!0;this.interceptors.request.forEach((function(e){"function"==typeof e.runWhen&&!1===e.runWhen(t)||(s=s&&e.synchronous,o.unshift(e.fulfilled,e.rejected))}));const l=[];let u;this.interceptors.response.forEach((function(e){l.push(e.fulfilled,e.rejected)}));let c,d=0;if(!s){const e=[st.bind(this),void 0];for(e.unshift.apply(e,o),e.push.apply(e,l),c=e.length,u=Promise.resolve(t);d<c;)u=u.then(e[d++],e[d++]);return u}c=o.length;let p=t;for(d=0;d<c;){const e=o[d++],t=o[d++];try{p=e(p)}catch(e){t.call(this,e);break}}try{u=st.call(this,p)}catch(e){return Promise.reject(e)}for(d=0,c=l.length;d<c;)u=u.then(l[d++],l[d++]);return u}getUri(e){return ue(Be((e=Ge(this.defaults,e)).baseURL,e.url),e.params,e.paramsSerializer)}}Y.forEach(["delete","get","head","options"],(function(e){pt.prototype[e]=function(t,n){return this.request(Ge(n||{},{method:e,url:t,data:(n||{}).data}))}})),Y.forEach(["post","put","patch"],(function(e){function t(t){return function(n,i,r){return this.request(Ge(r||{},{method:e,headers:t?{"Content-Type":"multipart/form-data"}:{},url:n,data:i}))}}pt.prototype[e]=t(),pt.prototype[e+"Form"]=t(!0)}));const ht=pt;class mt{constructor(e){if("function"!=typeof e)throw new TypeError("executor must be a function.");let t;this.promise=new Promise((function(e){t=e}));const n=this;this.promise.then((e=>{if(!n._listeners)return;let t=n._listeners.length;for(;t-- >0;)n._listeners[t](e);n._listeners=null})),this.promise.then=e=>{let t;const i=new Promise((e=>{n.subscribe(e),t=e})).then(e);return i.cancel=function(){n.unsubscribe(t)},i},e((function(e,i,r){n.reason||(n.reason=new Ie(e,i,r),t(n.reason))}))}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){this.reason?e(this.reason):this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const t=this._listeners.indexOf(e);-1!==t&&this._listeners.splice(t,1)}toAbortSignal(){const e=new AbortController,t=t=>{e.abort(t)};return this.subscribe(t),e.signal.unsubscribe=()=>this.unsubscribe(t),e.signal}static source(){let e;return{token:new mt((function(t){e=t})),cancel:e}}}const ft=mt,gt={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(gt).forEach((([e,t])=>{gt[t]=e}));const yt=gt,vt=function e(n){const i=new ht(n),r=t(ht.prototype.request,i);return Y.extend(r,ht.prototype,i,{allOwnKeys:!0}),Y.extend(r,i,null,{allOwnKeys:!0}),r.create=function(t){return e(Ge(n,t))},r}(we);vt.Axios=ht,vt.CanceledError=Ie,vt.CancelToken=ft,vt.isCancel=Ee,vt.VERSION="1.7.9",vt.toFormData=ie,vt.AxiosError=X,vt.Cancel=vt.CanceledError,vt.all=function(e){return Promise.all(e)},vt.spread=function(e){return function(t){return e.apply(null,t)}},vt.isAxiosError=function(e){return Y.isObject(e)&&!0===e.isAxiosError},vt.mergeConfig=Ge,vt.AxiosHeaders=je,vt.formToJSON=e=>be(Y.isHTMLForm(e)?new FormData(e):e),vt.getAdapter=at,vt.HttpStatusCode=yt,vt.default=vt;const bt=vt;function kt(e){return kt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},kt(e)}function wt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function St(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?wt(Object(n),!0).forEach((function(t){xt(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):wt(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Pt(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Ct(i.key),i)}}function xt(e,t,n){return(t=Ct(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Ct(e){var t=function(e){if("object"!=kt(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=kt(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==kt(t)?t:t+""}console.log(location.host);var At="".concat("https://core.getfaceage.com").concat("/api/"),Tt={authorize:"v1/business/authorize",skinanalyze:"v2/skin-analyzer/analyze"},jt={baseURL:At,responseType:"json"},_t={Accept:"application/json","Content-Type":"application/json"},Et=function(){function e(){var t=this;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),xt(this,"session",void 0),xt(this,"request",(function(e,n,i,r,a){var o=St(St({},jt),{},{headers:St(St({},_t),r)},a),s=n;n in Tt&&(s=Tt[n]);var l=e.toLowerCase();switch(l){case"get":case"options":case"head":case"delete":return t.session[l](s,o);case"post":case"patch":case"put":return t.session[l](s,i,o)}return null})),this.session=bt.create(St({},jt))}return t=e,(n=[{key:"getInstance",value:function(){return e.instance||(e.instance=new e),e.instance}}])&&Pt(t,n),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,n}();xt(Et,"instance",void 0);const Rt=Et.getInstance(),It=e=>"string"==typeof e,zt=()=>{let e,t;const n=new Promise(((n,i)=>{e=n,t=i}));return n.resolve=e,n.reject=t,n},Lt=e=>null==e?"":""+e,Ot=/###/g,Mt=e=>e&&e.indexOf("###")>-1?e.replace(Ot,"."):e,Ft=e=>!e||It(e),Dt=(e,t,n)=>{const i=It(t)?t.split("."):t;let r=0;for(;r<i.length-1;){if(Ft(e))return{};const t=Mt(i[r]);!e[t]&&n&&(e[t]=new n),e=Object.prototype.hasOwnProperty.call(e,t)?e[t]:{},++r}return Ft(e)?{}:{obj:e,k:Mt(i[r])}},Bt=(e,t,n)=>{const{obj:i,k:r}=Dt(e,t,Object);if(void 0!==i||1===t.length)return void(i[r]=n);let a=t[t.length-1],o=t.slice(0,t.length-1),s=Dt(e,o,Object);for(;void 0===s.obj&&o.length;)a=`${o[o.length-1]}.${a}`,o=o.slice(0,o.length-1),s=Dt(e,o,Object),s&&s.obj&&void 0!==s.obj[`${s.k}.${a}`]&&(s.obj=void 0);s.obj[`${s.k}.${a}`]=n},Nt=(e,t)=>{const{obj:n,k:i}=Dt(e,t);if(n)return n[i]},Gt=(e,t,n)=>{for(const i in t)"__proto__"!==i&&"constructor"!==i&&(i in e?It(e[i])||e[i]instanceof String||It(t[i])||t[i]instanceof String?n&&(e[i]=t[i]):Gt(e[i],t[i],n):e[i]=t[i]);return e},Ut=e=>e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&");var Ht={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","/":"&#x2F;"};const Wt=e=>It(e)?e.replace(/[&<>"'\/]/g,(e=>Ht[e])):e,Vt=[" ",",","?","!",";"],qt=new class{constructor(e){this.capacity=e,this.regExpMap=new Map,this.regExpQueue=[]}getRegExp(e){const t=this.regExpMap.get(e);if(void 0!==t)return t;const n=new RegExp(e);return this.regExpQueue.length===this.capacity&&this.regExpMap.delete(this.regExpQueue.shift()),this.regExpMap.set(e,n),this.regExpQueue.push(e),n}}(20),Jt=function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:".";if(!e)return;if(e[t])return e[t];const i=t.split(n);let r=e;for(let e=0;e<i.length;){if(!r||"object"!=typeof r)return;let t,a="";for(let o=e;o<i.length;++o)if(o!==e&&(a+=n),a+=i[o],t=r[a],void 0!==t){if(["string","number","boolean"].indexOf(typeof t)>-1&&o<i.length-1)continue;e+=o-e+1;break}r=t}return r},Yt=e=>e&&e.replace("_","-"),Kt={type:"logger",log(e){this.output("log",e)},warn(e){this.output("warn",e)},error(e){this.output("error",e)},output(e,t){console&&console[e]&&console[e].apply(console,t)}};class $t{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.init(e,t)}init(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.prefix=t.prefix||"i18next:",this.logger=e||Kt,this.options=t,this.debug=t.debug}log(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this.forward(t,"log","",!0)}warn(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this.forward(t,"warn","",!0)}error(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this.forward(t,"error","")}deprecate(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this.forward(t,"warn","WARNING DEPRECATED: ",!0)}forward(e,t,n,i){return i&&!this.debug?null:(It(e[0])&&(e[0]=`${n}${this.prefix} ${e[0]}`),this.logger[t](e))}create(e){return new $t(this.logger,{prefix:`${this.prefix}:${e}:`,...this.options})}clone(e){return(e=e||this.options).prefix=e.prefix||this.prefix,new $t(this.logger,e)}}var Zt=new $t;class Xt{constructor(){this.observers={}}on(e,t){return e.split(" ").forEach((e=>{this.observers[e]||(this.observers[e]=new Map);const n=this.observers[e].get(t)||0;this.observers[e].set(t,n+1)})),this}off(e,t){this.observers[e]&&(t?this.observers[e].delete(t):delete this.observers[e])}emit(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];this.observers[e]&&Array.from(this.observers[e].entries()).forEach((e=>{let[t,i]=e;for(let e=0;e<i;e++)t(...n)})),this.observers["*"]&&Array.from(this.observers["*"].entries()).forEach((t=>{let[i,r]=t;for(let t=0;t<r;t++)i.apply(i,[e,...n])}))}}class Qt extends Xt{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{ns:["translation"],defaultNS:"translation"};super(),this.data=e||{},this.options=t,void 0===this.options.keySeparator&&(this.options.keySeparator="."),void 0===this.options.ignoreJSONStructure&&(this.options.ignoreJSONStructure=!0)}addNamespaces(e){this.options.ns.indexOf(e)<0&&this.options.ns.push(e)}removeNamespaces(e){const t=this.options.ns.indexOf(e);t>-1&&this.options.ns.splice(t,1)}getResource(e,t,n){let i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};const r=void 0!==i.keySeparator?i.keySeparator:this.options.keySeparator,a=void 0!==i.ignoreJSONStructure?i.ignoreJSONStructure:this.options.ignoreJSONStructure;let o;e.indexOf(".")>-1?o=e.split("."):(o=[e,t],n&&(Array.isArray(n)?o.push(...n):It(n)&&r?o.push(...n.split(r)):o.push(n)));const s=Nt(this.data,o);return!s&&!t&&!n&&e.indexOf(".")>-1&&(e=o[0],t=o[1],n=o.slice(2).join(".")),!s&&a&&It(n)?Jt(this.data&&this.data[e]&&this.data[e][t],n,r):s}addResource(e,t,n,i){let r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{silent:!1};const a=void 0!==r.keySeparator?r.keySeparator:this.options.keySeparator;let o=[e,t];n&&(o=o.concat(a?n.split(a):n)),e.indexOf(".")>-1&&(o=e.split("."),i=t,t=o[1]),this.addNamespaces(t),Bt(this.data,o,i),r.silent||this.emit("added",e,t,n,i)}addResources(e,t,n){let i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{silent:!1};for(const i in n)(It(n[i])||Array.isArray(n[i]))&&this.addResource(e,t,i,n[i],{silent:!0});i.silent||this.emit("added",e,t,n)}addResourceBundle(e,t,n,i,r){let a=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{silent:!1,skipCopy:!1},o=[e,t];e.indexOf(".")>-1&&(o=e.split("."),i=n,n=t,t=o[1]),this.addNamespaces(t);let s=Nt(this.data,o)||{};a.skipCopy||(n=JSON.parse(JSON.stringify(n))),i?Gt(s,n,r):s={...s,...n},Bt(this.data,o,s),a.silent||this.emit("added",e,t,n)}removeResourceBundle(e,t){this.hasResourceBundle(e,t)&&delete this.data[e][t],this.removeNamespaces(t),this.emit("removed",e,t)}hasResourceBundle(e,t){return void 0!==this.getResource(e,t)}getResourceBundle(e,t){return t||(t=this.options.defaultNS),"v1"===this.options.compatibilityAPI?{...this.getResource(e,t)}:this.getResource(e,t)}getDataByLanguage(e){return this.data[e]}hasLanguageSomeTranslations(e){const t=this.getDataByLanguage(e);return!!(t&&Object.keys(t)||[]).find((e=>t[e]&&Object.keys(t[e]).length>0))}toJSON(){return this.data}}var en={processors:{},addPostProcessor(e){this.processors[e.name]=e},handle(e,t,n,i,r){return e.forEach((e=>{this.processors[e]&&(t=this.processors[e].process(t,n,i,r))})),t}};const tn={};class nn extends Xt{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};var n,i;super(),n=e,i=this,["resourceStore","languageUtils","pluralResolver","interpolator","backendConnector","i18nFormat","utils"].forEach((e=>{n[e]&&(i[e]=n[e])})),this.options=t,void 0===this.options.keySeparator&&(this.options.keySeparator="."),this.logger=Zt.create("translator")}changeLanguage(e){e&&(this.language=e)}exists(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{interpolation:{}};if(null==e)return!1;const n=this.resolve(e,t);return n&&void 0!==n.res}extractFromKey(e,t){let n=void 0!==t.nsSeparator?t.nsSeparator:this.options.nsSeparator;void 0===n&&(n=":");const i=void 0!==t.keySeparator?t.keySeparator:this.options.keySeparator;let r=t.ns||this.options.defaultNS||[];const a=n&&e.indexOf(n)>-1,o=!(this.options.userDefinedKeySeparator||t.keySeparator||this.options.userDefinedNsSeparator||t.nsSeparator||((e,t,n)=>{t=t||"",n=n||"";const i=Vt.filter((e=>t.indexOf(e)<0&&n.indexOf(e)<0));if(0===i.length)return!0;const r=qt.getRegExp(`(${i.map((e=>"?"===e?"\\?":e)).join("|")})`);let a=!r.test(e);if(!a){const t=e.indexOf(n);t>0&&!r.test(e.substring(0,t))&&(a=!0)}return a})(e,n,i));if(a&&!o){const t=e.match(this.interpolator.nestingRegexp);if(t&&t.length>0)return{key:e,namespaces:It(r)?[r]:r};const a=e.split(n);(n!==i||n===i&&this.options.ns.indexOf(a[0])>-1)&&(r=a.shift()),e=a.join(i)}return{key:e,namespaces:It(r)?[r]:r}}translate(e,t,n){if("object"!=typeof t&&this.options.overloadTranslationOptionHandler&&(t=this.options.overloadTranslationOptionHandler(arguments)),"object"==typeof t&&(t={...t}),t||(t={}),null==e)return"";Array.isArray(e)||(e=[String(e)]);const i=void 0!==t.returnDetails?t.returnDetails:this.options.returnDetails,r=void 0!==t.keySeparator?t.keySeparator:this.options.keySeparator,{key:a,namespaces:o}=this.extractFromKey(e[e.length-1],t),s=o[o.length-1],l=t.lng||this.language,u=t.appendNamespaceToCIMode||this.options.appendNamespaceToCIMode;if(l&&"cimode"===l.toLowerCase()){if(u){const e=t.nsSeparator||this.options.nsSeparator;return i?{res:`${s}${e}${a}`,usedKey:a,exactUsedKey:a,usedLng:l,usedNS:s,usedParams:this.getUsedParamsDetails(t)}:`${s}${e}${a}`}return i?{res:a,usedKey:a,exactUsedKey:a,usedLng:l,usedNS:s,usedParams:this.getUsedParamsDetails(t)}:a}const c=this.resolve(e,t);let d=c&&c.res;const p=c&&c.usedKey||a,h=c&&c.exactUsedKey||a,m=Object.prototype.toString.apply(d),f=void 0!==t.joinArrays?t.joinArrays:this.options.joinArrays,g=!this.i18nFormat||this.i18nFormat.handleAsObject,y=!It(d)&&"boolean"!=typeof d&&"number"!=typeof d;if(!(g&&d&&y&&["[object Number]","[object Function]","[object RegExp]"].indexOf(m)<0)||It(f)&&Array.isArray(d))if(g&&It(f)&&Array.isArray(d))d=d.join(f),d&&(d=this.extendTranslation(d,e,t,n));else{let i=!1,o=!1;const u=void 0!==t.count&&!It(t.count),p=nn.hasDefaultValue(t),h=u?this.pluralResolver.getSuffix(l,t.count,t):"",m=t.ordinal&&u?this.pluralResolver.getSuffix(l,t.count,{ordinal:!1}):"",f=u&&!t.ordinal&&0===t.count&&this.pluralResolver.shouldUseIntlApi(),g=f&&t[`defaultValue${this.options.pluralSeparator}zero`]||t[`defaultValue${h}`]||t[`defaultValue${m}`]||t.defaultValue;!this.isValidLookup(d)&&p&&(i=!0,d=g),this.isValidLookup(d)||(o=!0,d=a);const y=(t.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey)&&o?void 0:d,v=p&&g!==d&&this.options.updateMissing;if(o||i||v){if(this.logger.log(v?"updateKey":"missingKey",l,s,a,v?g:d),r){const e=this.resolve(a,{...t,keySeparator:!1});e&&e.res&&this.logger.warn("Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.")}let e=[];const n=this.languageUtils.getFallbackCodes(this.options.fallbackLng,t.lng||this.language);if("fallback"===this.options.saveMissingTo&&n&&n[0])for(let t=0;t<n.length;t++)e.push(n[t]);else"all"===this.options.saveMissingTo?e=this.languageUtils.toResolveHierarchy(t.lng||this.language):e.push(t.lng||this.language);const i=(e,n,i)=>{const r=p&&i!==d?i:y;this.options.missingKeyHandler?this.options.missingKeyHandler(e,s,n,r,v,t):this.backendConnector&&this.backendConnector.saveMissing&&this.backendConnector.saveMissing(e,s,n,r,v,t),this.emit("missingKey",e,s,n,d)};this.options.saveMissing&&(this.options.saveMissingPlurals&&u?e.forEach((e=>{const n=this.pluralResolver.getSuffixes(e,t);f&&t[`defaultValue${this.options.pluralSeparator}zero`]&&n.indexOf(`${this.options.pluralSeparator}zero`)<0&&n.push(`${this.options.pluralSeparator}zero`),n.forEach((n=>{i([e],a+n,t[`defaultValue${n}`]||g)}))})):i(e,a,g))}d=this.extendTranslation(d,e,t,c,n),o&&d===a&&this.options.appendNamespaceToMissingKey&&(d=`${s}:${a}`),(o||i)&&this.options.parseMissingKeyHandler&&(d="v1"!==this.options.compatibilityAPI?this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey?`${s}:${a}`:a,i?d:void 0):this.options.parseMissingKeyHandler(d))}else{if(!t.returnObjects&&!this.options.returnObjects){this.options.returnedObjectHandler||this.logger.warn("accessing an object - but returnObjects options is not enabled!");const e=this.options.returnedObjectHandler?this.options.returnedObjectHandler(p,d,{...t,ns:o}):`key '${a} (${this.language})' returned an object instead of string.`;return i?(c.res=e,c.usedParams=this.getUsedParamsDetails(t),c):e}if(r){const e=Array.isArray(d),n=e?[]:{},i=e?h:p;for(const e in d)if(Object.prototype.hasOwnProperty.call(d,e)){const a=`${i}${r}${e}`;n[e]=this.translate(a,{...t,joinArrays:!1,ns:o}),n[e]===a&&(n[e]=d[e])}d=n}}return i?(c.res=d,c.usedParams=this.getUsedParamsDetails(t),c):d}extendTranslation(e,t,n,i,r){var a=this;if(this.i18nFormat&&this.i18nFormat.parse)e=this.i18nFormat.parse(e,{...this.options.interpolation.defaultVariables,...n},n.lng||this.language||i.usedLng,i.usedNS,i.usedKey,{resolved:i});else if(!n.skipInterpolation){n.interpolation&&this.interpolator.init({...n,interpolation:{...this.options.interpolation,...n.interpolation}});const o=It(e)&&(n&&n.interpolation&&void 0!==n.interpolation.skipOnVariables?n.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables);let s;if(o){const t=e.match(this.interpolator.nestingRegexp);s=t&&t.length}let l=n.replace&&!It(n.replace)?n.replace:n;if(this.options.interpolation.defaultVariables&&(l={...this.options.interpolation.defaultVariables,...l}),e=this.interpolator.interpolate(e,l,n.lng||this.language||i.usedLng,n),o){const t=e.match(this.interpolator.nestingRegexp);s<(t&&t.length)&&(n.nest=!1)}!n.lng&&"v1"!==this.options.compatibilityAPI&&i&&i.res&&(n.lng=this.language||i.usedLng),!1!==n.nest&&(e=this.interpolator.nest(e,(function(){for(var e=arguments.length,i=new Array(e),o=0;o<e;o++)i[o]=arguments[o];return r&&r[0]===i[0]&&!n.context?(a.logger.warn(`It seems you are nesting recursively key: ${i[0]} in key: ${t[0]}`),null):a.translate(...i,t)}),n)),n.interpolation&&this.interpolator.reset()}const o=n.postProcess||this.options.postProcess,s=It(o)?[o]:o;return null!=e&&s&&s.length&&!1!==n.applyPostProcessor&&(e=en.handle(s,e,t,this.options&&this.options.postProcessPassResolved?{i18nResolved:{...i,usedParams:this.getUsedParamsDetails(n)},...n}:n,this)),e}resolve(e){let t,n,i,r,a,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return It(e)&&(e=[e]),e.forEach((e=>{if(this.isValidLookup(t))return;const s=this.extractFromKey(e,o),l=s.key;n=l;let u=s.namespaces;this.options.fallbackNS&&(u=u.concat(this.options.fallbackNS));const c=void 0!==o.count&&!It(o.count),d=c&&!o.ordinal&&0===o.count&&this.pluralResolver.shouldUseIntlApi(),p=void 0!==o.context&&(It(o.context)||"number"==typeof o.context)&&""!==o.context,h=o.lngs?o.lngs:this.languageUtils.toResolveHierarchy(o.lng||this.language,o.fallbackLng);u.forEach((e=>{this.isValidLookup(t)||(a=e,!tn[`${h[0]}-${e}`]&&this.utils&&this.utils.hasLoadedNamespace&&!this.utils.hasLoadedNamespace(a)&&(tn[`${h[0]}-${e}`]=!0,this.logger.warn(`key "${n}" for languages "${h.join(", ")}" won't get resolved as namespace "${a}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!")),h.forEach((n=>{if(this.isValidLookup(t))return;r=n;const a=[l];if(this.i18nFormat&&this.i18nFormat.addLookupKeys)this.i18nFormat.addLookupKeys(a,l,n,e,o);else{let e;c&&(e=this.pluralResolver.getSuffix(n,o.count,o));const t=`${this.options.pluralSeparator}zero`,i=`${this.options.pluralSeparator}ordinal${this.options.pluralSeparator}`;if(c&&(a.push(l+e),o.ordinal&&0===e.indexOf(i)&&a.push(l+e.replace(i,this.options.pluralSeparator)),d&&a.push(l+t)),p){const n=`${l}${this.options.contextSeparator}${o.context}`;a.push(n),c&&(a.push(n+e),o.ordinal&&0===e.indexOf(i)&&a.push(n+e.replace(i,this.options.pluralSeparator)),d&&a.push(n+t))}}let s;for(;s=a.pop();)this.isValidLookup(t)||(i=s,t=this.getResource(n,e,s,o))})))}))})),{res:t,usedKey:n,exactUsedKey:i,usedLng:r,usedNS:a}}isValidLookup(e){return!(void 0===e||!this.options.returnNull&&null===e||!this.options.returnEmptyString&&""===e)}getResource(e,t,n){let i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return this.i18nFormat&&this.i18nFormat.getResource?this.i18nFormat.getResource(e,t,n,i):this.resourceStore.getResource(e,t,n,i)}getUsedParamsDetails(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const t=["defaultValue","ordinal","context","replace","lng","lngs","fallbackLng","ns","keySeparator","nsSeparator","returnObjects","returnDetails","joinArrays","postProcess","interpolation"],n=e.replace&&!It(e.replace);let i=n?e.replace:e;if(n&&void 0!==e.count&&(i.count=e.count),this.options.interpolation.defaultVariables&&(i={...this.options.interpolation.defaultVariables,...i}),!n){i={...i};for(const e of t)delete i[e]}return i}static hasDefaultValue(e){for(const t in e)if(Object.prototype.hasOwnProperty.call(e,t)&&"defaultValue"===t.substring(0,12)&&void 0!==e[t])return!0;return!1}}const rn=e=>e.charAt(0).toUpperCase()+e.slice(1);class an{constructor(e){this.options=e,this.supportedLngs=this.options.supportedLngs||!1,this.logger=Zt.create("languageUtils")}getScriptPartFromCode(e){if(!(e=Yt(e))||e.indexOf("-")<0)return null;const t=e.split("-");return 2===t.length?null:(t.pop(),"x"===t[t.length-1].toLowerCase()?null:this.formatLanguageCode(t.join("-")))}getLanguagePartFromCode(e){if(!(e=Yt(e))||e.indexOf("-")<0)return e;const t=e.split("-");return this.formatLanguageCode(t[0])}formatLanguageCode(e){if(It(e)&&e.indexOf("-")>-1){if("undefined"!=typeof Intl&&void 0!==Intl.getCanonicalLocales)try{let t=Intl.getCanonicalLocales(e)[0];if(t&&this.options.lowerCaseLng&&(t=t.toLowerCase()),t)return t}catch(e){}const t=["hans","hant","latn","cyrl","cans","mong","arab"];let n=e.split("-");return this.options.lowerCaseLng?n=n.map((e=>e.toLowerCase())):2===n.length?(n[0]=n[0].toLowerCase(),n[1]=n[1].toUpperCase(),t.indexOf(n[1].toLowerCase())>-1&&(n[1]=rn(n[1].toLowerCase()))):3===n.length&&(n[0]=n[0].toLowerCase(),2===n[1].length&&(n[1]=n[1].toUpperCase()),"sgn"!==n[0]&&2===n[2].length&&(n[2]=n[2].toUpperCase()),t.indexOf(n[1].toLowerCase())>-1&&(n[1]=rn(n[1].toLowerCase())),t.indexOf(n[2].toLowerCase())>-1&&(n[2]=rn(n[2].toLowerCase()))),n.join("-")}return this.options.cleanCode||this.options.lowerCaseLng?e.toLowerCase():e}isSupportedCode(e){return("languageOnly"===this.options.load||this.options.nonExplicitSupportedLngs)&&(e=this.getLanguagePartFromCode(e)),!this.supportedLngs||!this.supportedLngs.length||this.supportedLngs.indexOf(e)>-1}getBestMatchFromCodes(e){if(!e)return null;let t;return e.forEach((e=>{if(t)return;const n=this.formatLanguageCode(e);this.options.supportedLngs&&!this.isSupportedCode(n)||(t=n)})),!t&&this.options.supportedLngs&&e.forEach((e=>{if(t)return;const n=this.getLanguagePartFromCode(e);if(this.isSupportedCode(n))return t=n;t=this.options.supportedLngs.find((e=>e===n?e:e.indexOf("-")<0&&n.indexOf("-")<0?void 0:e.indexOf("-")>0&&n.indexOf("-")<0&&e.substring(0,e.indexOf("-"))===n||0===e.indexOf(n)&&n.length>1?e:void 0))})),t||(t=this.getFallbackCodes(this.options.fallbackLng)[0]),t}getFallbackCodes(e,t){if(!e)return[];if("function"==typeof e&&(e=e(t)),It(e)&&(e=[e]),Array.isArray(e))return e;if(!t)return e.default||[];let n=e[t];return n||(n=e[this.getScriptPartFromCode(t)]),n||(n=e[this.formatLanguageCode(t)]),n||(n=e[this.getLanguagePartFromCode(t)]),n||(n=e.default),n||[]}toResolveHierarchy(e,t){const n=this.getFallbackCodes(t||this.options.fallbackLng||[],e),i=[],r=e=>{e&&(this.isSupportedCode(e)?i.push(e):this.logger.warn(`rejecting language code not found in supportedLngs: ${e}`))};return It(e)&&(e.indexOf("-")>-1||e.indexOf("_")>-1)?("languageOnly"!==this.options.load&&r(this.formatLanguageCode(e)),"languageOnly"!==this.options.load&&"currentOnly"!==this.options.load&&r(this.getScriptPartFromCode(e)),"currentOnly"!==this.options.load&&r(this.getLanguagePartFromCode(e))):It(e)&&r(this.formatLanguageCode(e)),n.forEach((e=>{i.indexOf(e)<0&&r(this.formatLanguageCode(e))})),i}}let on=[{lngs:["ach","ak","am","arn","br","fil","gun","ln","mfe","mg","mi","oc","pt","pt-BR","tg","tl","ti","tr","uz","wa"],nr:[1,2],fc:1},{lngs:["af","an","ast","az","bg","bn","ca","da","de","dev","el","en","eo","es","et","eu","fi","fo","fur","fy","gl","gu","ha","hi","hu","hy","ia","it","kk","kn","ku","lb","mai","ml","mn","mr","nah","nap","nb","ne","nl","nn","no","nso","pa","pap","pms","ps","pt-PT","rm","sco","se","si","so","son","sq","sv","sw","ta","te","tk","ur","yo"],nr:[1,2],fc:2},{lngs:["ay","bo","cgg","fa","ht","id","ja","jbo","ka","km","ko","ky","lo","ms","sah","su","th","tt","ug","vi","wo","zh"],nr:[1],fc:3},{lngs:["be","bs","cnr","dz","hr","ru","sr","uk"],nr:[1,2,5],fc:4},{lngs:["ar"],nr:[0,1,2,3,11,100],fc:5},{lngs:["cs","sk"],nr:[1,2,5],fc:6},{lngs:["csb","pl"],nr:[1,2,5],fc:7},{lngs:["cy"],nr:[1,2,3,8],fc:8},{lngs:["fr"],nr:[1,2],fc:9},{lngs:["ga"],nr:[1,2,3,7,11],fc:10},{lngs:["gd"],nr:[1,2,3,20],fc:11},{lngs:["is"],nr:[1,2],fc:12},{lngs:["jv"],nr:[0,1],fc:13},{lngs:["kw"],nr:[1,2,3,4],fc:14},{lngs:["lt"],nr:[1,2,10],fc:15},{lngs:["lv"],nr:[1,2,0],fc:16},{lngs:["mk"],nr:[1,2],fc:17},{lngs:["mnk"],nr:[0,1,2],fc:18},{lngs:["mt"],nr:[1,2,11,20],fc:19},{lngs:["or"],nr:[2,1],fc:2},{lngs:["ro"],nr:[1,2,20],fc:20},{lngs:["sl"],nr:[5,1,2,3],fc:21},{lngs:["he","iw"],nr:[1,2,20,21],fc:22}],sn={1:e=>Number(e>1),2:e=>Number(1!=e),3:e=>0,4:e=>Number(e%10==1&&e%100!=11?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2),5:e=>Number(0==e?0:1==e?1:2==e?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5),6:e=>Number(1==e?0:e>=2&&e<=4?1:2),7:e=>Number(1==e?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2),8:e=>Number(1==e?0:2==e?1:8!=e&&11!=e?2:3),9:e=>Number(e>=2),10:e=>Number(1==e?0:2==e?1:e<7?2:e<11?3:4),11:e=>Number(1==e||11==e?0:2==e||12==e?1:e>2&&e<20?2:3),12:e=>Number(e%10!=1||e%100==11),13:e=>Number(0!==e),14:e=>Number(1==e?0:2==e?1:3==e?2:3),15:e=>Number(e%10==1&&e%100!=11?0:e%10>=2&&(e%100<10||e%100>=20)?1:2),16:e=>Number(e%10==1&&e%100!=11?0:0!==e?1:2),17:e=>Number(1==e||e%10==1&&e%100!=11?0:1),18:e=>Number(0==e?0:1==e?1:2),19:e=>Number(1==e?0:0==e||e%100>1&&e%100<11?1:e%100>10&&e%100<20?2:3),20:e=>Number(1==e?0:0==e||e%100>0&&e%100<20?1:2),21:e=>Number(e%100==1?1:e%100==2?2:e%100==3||e%100==4?3:0),22:e=>Number(1==e?0:2==e?1:(e<0||e>10)&&e%10==0?2:3)};const ln=["v1","v2","v3"],un=["v4"],cn={zero:0,one:1,two:2,few:3,many:4,other:5};class dn{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.languageUtils=e,this.options=t,this.logger=Zt.create("pluralResolver"),this.options.compatibilityJSON&&!un.includes(this.options.compatibilityJSON)||"undefined"!=typeof Intl&&Intl.PluralRules||(this.options.compatibilityJSON="v3",this.logger.error("Your environment seems not to be Intl API compatible, use an Intl.PluralRules polyfill. Will fallback to the compatibilityJSON v3 format handling.")),this.rules=(()=>{const e={};return on.forEach((t=>{t.lngs.forEach((n=>{e[n]={numbers:t.nr,plurals:sn[t.fc]}}))})),e})(),this.pluralRulesCache={}}addRule(e,t){this.rules[e]=t}clearCache(){this.pluralRulesCache={}}getRule(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(this.shouldUseIntlApi()){const n=Yt("dev"===e?"en":e),i=t.ordinal?"ordinal":"cardinal",r=JSON.stringify({cleanedCode:n,type:i});if(r in this.pluralRulesCache)return this.pluralRulesCache[r];let a;try{a=new Intl.PluralRules(n,{type:i})}catch(n){if(!e.match(/-|_/))return;const i=this.languageUtils.getLanguagePartFromCode(e);a=this.getRule(i,t)}return this.pluralRulesCache[r]=a,a}return this.rules[e]||this.rules[this.languageUtils.getLanguagePartFromCode(e)]}needsPlural(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=this.getRule(e,t);return this.shouldUseIntlApi()?n&&n.resolvedOptions().pluralCategories.length>1:n&&n.numbers.length>1}getPluralFormsOfKey(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.getSuffixes(e,n).map((e=>`${t}${e}`))}getSuffixes(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=this.getRule(e,t);return n?this.shouldUseIntlApi()?n.resolvedOptions().pluralCategories.sort(((e,t)=>cn[e]-cn[t])).map((e=>`${this.options.prepend}${t.ordinal?`ordinal${this.options.prepend}`:""}${e}`)):n.numbers.map((n=>this.getSuffix(e,n,t))):[]}getSuffix(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const i=this.getRule(e,n);return i?this.shouldUseIntlApi()?`${this.options.prepend}${n.ordinal?`ordinal${this.options.prepend}`:""}${i.select(t)}`:this.getSuffixRetroCompatible(i,t):(this.logger.warn(`no plural rule found for: ${e}`),"")}getSuffixRetroCompatible(e,t){const n=e.noAbs?e.plurals(t):e.plurals(Math.abs(t));let i=e.numbers[n];this.options.simplifyPluralSuffix&&2===e.numbers.length&&1===e.numbers[0]&&(2===i?i="plural":1===i&&(i=""));const r=()=>this.options.prepend&&i.toString()?this.options.prepend+i.toString():i.toString();return"v1"===this.options.compatibilityJSON?1===i?"":"number"==typeof i?`_plural_${i.toString()}`:r():"v2"===this.options.compatibilityJSON||this.options.simplifyPluralSuffix&&2===e.numbers.length&&1===e.numbers[0]?r():this.options.prepend&&n.toString()?this.options.prepend+n.toString():n.toString()}shouldUseIntlApi(){return!ln.includes(this.options.compatibilityJSON)}}const pn=function(e,t,n){let i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:".",r=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],a=((e,t,n)=>{const i=Nt(e,n);return void 0!==i?i:Nt(t,n)})(e,t,n);return!a&&r&&It(n)&&(a=Jt(e,n,i),void 0===a&&(a=Jt(t,n,i))),a},hn=e=>e.replace(/\$/g,"$$$$");class mn{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.logger=Zt.create("interpolator"),this.options=e,this.format=e.interpolation&&e.interpolation.format||(e=>e),this.init(e)}init(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};e.interpolation||(e.interpolation={escapeValue:!0});const{escape:t,escapeValue:n,useRawValueToEscape:i,prefix:r,prefixEscaped:a,suffix:o,suffixEscaped:s,formatSeparator:l,unescapeSuffix:u,unescapePrefix:c,nestingPrefix:d,nestingPrefixEscaped:p,nestingSuffix:h,nestingSuffixEscaped:m,nestingOptionsSeparator:f,maxReplaces:g,alwaysFormat:y}=e.interpolation;this.escape=void 0!==t?t:Wt,this.escapeValue=void 0===n||n,this.useRawValueToEscape=void 0!==i&&i,this.prefix=r?Ut(r):a||"{{",this.suffix=o?Ut(o):s||"}}",this.formatSeparator=l||",",this.unescapePrefix=u?"":c||"-",this.unescapeSuffix=this.unescapePrefix?"":u||"",this.nestingPrefix=d?Ut(d):p||Ut("$t("),this.nestingSuffix=h?Ut(h):m||Ut(")"),this.nestingOptionsSeparator=f||",",this.maxReplaces=g||1e3,this.alwaysFormat=void 0!==y&&y,this.resetRegExp()}reset(){this.options&&this.init(this.options)}resetRegExp(){const e=(e,t)=>e&&e.source===t?(e.lastIndex=0,e):new RegExp(t,"g");this.regexp=e(this.regexp,`${this.prefix}(.+?)${this.suffix}`),this.regexpUnescape=e(this.regexpUnescape,`${this.prefix}${this.unescapePrefix}(.+?)${this.unescapeSuffix}${this.suffix}`),this.nestingRegexp=e(this.nestingRegexp,`${this.nestingPrefix}(.+?)${this.nestingSuffix}`)}interpolate(e,t,n,i){let r,a,o;const s=this.options&&this.options.interpolation&&this.options.interpolation.defaultVariables||{},l=e=>{if(e.indexOf(this.formatSeparator)<0){const r=pn(t,s,e,this.options.keySeparator,this.options.ignoreJSONStructure);return this.alwaysFormat?this.format(r,void 0,n,{...i,...t,interpolationkey:e}):r}const r=e.split(this.formatSeparator),a=r.shift().trim(),o=r.join(this.formatSeparator).trim();return this.format(pn(t,s,a,this.options.keySeparator,this.options.ignoreJSONStructure),o,n,{...i,...t,interpolationkey:a})};this.resetRegExp();const u=i&&i.missingInterpolationHandler||this.options.missingInterpolationHandler,c=i&&i.interpolation&&void 0!==i.interpolation.skipOnVariables?i.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables;return[{regex:this.regexpUnescape,safeValue:e=>hn(e)},{regex:this.regexp,safeValue:e=>this.escapeValue?hn(this.escape(e)):hn(e)}].forEach((t=>{for(o=0;r=t.regex.exec(e);){const n=r[1].trim();if(a=l(n),void 0===a)if("function"==typeof u){const t=u(e,r,i);a=It(t)?t:""}else if(i&&Object.prototype.hasOwnProperty.call(i,n))a="";else{if(c){a=r[0];continue}this.logger.warn(`missed to pass in variable ${n} for interpolating ${e}`),a=""}else It(a)||this.useRawValueToEscape||(a=Lt(a));const s=t.safeValue(a);if(e=e.replace(r[0],s),c?(t.regex.lastIndex+=a.length,t.regex.lastIndex-=r[0].length):t.regex.lastIndex=0,o++,o>=this.maxReplaces)break}})),e}nest(e,t){let n,i,r,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const o=(e,t)=>{const n=this.nestingOptionsSeparator;if(e.indexOf(n)<0)return e;const i=e.split(new RegExp(`${n}[ ]*{`));let a=`{${i[1]}`;e=i[0],a=this.interpolate(a,r);const o=a.match(/'/g),s=a.match(/"/g);(o&&o.length%2==0&&!s||s.length%2!=0)&&(a=a.replace(/'/g,'"'));try{r=JSON.parse(a),t&&(r={...t,...r})}catch(t){return this.logger.warn(`failed parsing options string in nesting for key ${e}`,t),`${e}${n}${a}`}return r.defaultValue&&r.defaultValue.indexOf(this.prefix)>-1&&delete r.defaultValue,e};for(;n=this.nestingRegexp.exec(e);){let s=[];r={...a},r=r.replace&&!It(r.replace)?r.replace:r,r.applyPostProcessor=!1,delete r.defaultValue;let l=!1;if(-1!==n[0].indexOf(this.formatSeparator)&&!/{.*}/.test(n[1])){const e=n[1].split(this.formatSeparator).map((e=>e.trim()));n[1]=e.shift(),s=e,l=!0}if(i=t(o.call(this,n[1].trim(),r),r),i&&n[0]===e&&!It(i))return i;It(i)||(i=Lt(i)),i||(this.logger.warn(`missed to resolve ${n[1]} for nesting ${e}`),i=""),l&&(i=s.reduce(((e,t)=>this.format(e,t,a.lng,{...a,interpolationkey:n[1].trim()})),i.trim())),e=e.replace(n[0],i),this.regexp.lastIndex=0}return e}}const fn=e=>{const t={};return(n,i,r)=>{let a=r;r&&r.interpolationkey&&r.formatParams&&r.formatParams[r.interpolationkey]&&r[r.interpolationkey]&&(a={...a,[r.interpolationkey]:void 0});const o=i+JSON.stringify(a);let s=t[o];return s||(s=e(Yt(i),r),t[o]=s),s(n)}};class gn{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.logger=Zt.create("formatter"),this.options=e,this.formats={number:fn(((e,t)=>{const n=new Intl.NumberFormat(e,{...t});return e=>n.format(e)})),currency:fn(((e,t)=>{const n=new Intl.NumberFormat(e,{...t,style:"currency"});return e=>n.format(e)})),datetime:fn(((e,t)=>{const n=new Intl.DateTimeFormat(e,{...t});return e=>n.format(e)})),relativetime:fn(((e,t)=>{const n=new Intl.RelativeTimeFormat(e,{...t});return e=>n.format(e,t.range||"day")})),list:fn(((e,t)=>{const n=new Intl.ListFormat(e,{...t});return e=>n.format(e)}))},this.init(e)}init(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{interpolation:{}};this.formatSeparator=t.interpolation.formatSeparator||","}add(e,t){this.formats[e.toLowerCase().trim()]=t}addCached(e,t){this.formats[e.toLowerCase().trim()]=fn(t)}format(e,t,n){let i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};const r=t.split(this.formatSeparator);if(r.length>1&&r[0].indexOf("(")>1&&r[0].indexOf(")")<0&&r.find((e=>e.indexOf(")")>-1))){const e=r.findIndex((e=>e.indexOf(")")>-1));r[0]=[r[0],...r.splice(1,e)].join(this.formatSeparator)}return r.reduce(((e,t)=>{const{formatName:r,formatOptions:a}=(e=>{let t=e.toLowerCase().trim();const n={};if(e.indexOf("(")>-1){const i=e.split("(");t=i[0].toLowerCase().trim();const r=i[1].substring(0,i[1].length-1);"currency"===t&&r.indexOf(":")<0?n.currency||(n.currency=r.trim()):"relativetime"===t&&r.indexOf(":")<0?n.range||(n.range=r.trim()):r.split(";").forEach((e=>{if(e){const[t,...i]=e.split(":"),r=i.join(":").trim().replace(/^'+|'+$/g,""),a=t.trim();n[a]||(n[a]=r),"false"===r&&(n[a]=!1),"true"===r&&(n[a]=!0),isNaN(r)||(n[a]=parseInt(r,10))}}))}return{formatName:t,formatOptions:n}})(t);if(this.formats[r]){let t=e;try{const o=i&&i.formatParams&&i.formatParams[i.interpolationkey]||{},s=o.locale||o.lng||i.locale||i.lng||n;t=this.formats[r](e,s,{...a,...i,...o})}catch(e){this.logger.warn(e)}return t}return this.logger.warn(`there was no format function for ${r}`),e}),e)}}class yn extends Xt{constructor(e,t,n){let i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};super(),this.backend=e,this.store=t,this.services=n,this.languageUtils=n.languageUtils,this.options=i,this.logger=Zt.create("backendConnector"),this.waitingReads=[],this.maxParallelReads=i.maxParallelReads||10,this.readingCalls=0,this.maxRetries=i.maxRetries>=0?i.maxRetries:5,this.retryTimeout=i.retryTimeout>=1?i.retryTimeout:350,this.state={},this.queue=[],this.backend&&this.backend.init&&this.backend.init(n,i.backend,i)}queueLoad(e,t,n,i){const r={},a={},o={},s={};return e.forEach((e=>{let i=!0;t.forEach((t=>{const o=`${e}|${t}`;!n.reload&&this.store.hasResourceBundle(e,t)?this.state[o]=2:this.state[o]<0||(1===this.state[o]?void 0===a[o]&&(a[o]=!0):(this.state[o]=1,i=!1,void 0===a[o]&&(a[o]=!0),void 0===r[o]&&(r[o]=!0),void 0===s[t]&&(s[t]=!0)))})),i||(o[e]=!0)})),(Object.keys(r).length||Object.keys(a).length)&&this.queue.push({pending:a,pendingCount:Object.keys(a).length,loaded:{},errors:[],callback:i}),{toLoad:Object.keys(r),pending:Object.keys(a),toLoadLanguages:Object.keys(o),toLoadNamespaces:Object.keys(s)}}loaded(e,t,n){const i=e.split("|"),r=i[0],a=i[1];t&&this.emit("failedLoading",r,a,t),!t&&n&&this.store.addResourceBundle(r,a,n,void 0,void 0,{skipCopy:!0}),this.state[e]=t?-1:2,t&&n&&(this.state[e]=0);const o={};this.queue.forEach((n=>{((e,t,n)=>{const{obj:i,k:r}=Dt(e,t,Object);i[r]=i[r]||[],i[r].push(n)})(n.loaded,[r],a),((e,t)=>{void 0!==e.pending[t]&&(delete e.pending[t],e.pendingCount--)})(n,e),t&&n.errors.push(t),0!==n.pendingCount||n.done||(Object.keys(n.loaded).forEach((e=>{o[e]||(o[e]={});const t=n.loaded[e];t.length&&t.forEach((t=>{void 0===o[e][t]&&(o[e][t]=!0)}))})),n.done=!0,n.errors.length?n.callback(n.errors):n.callback())})),this.emit("loaded",o),this.queue=this.queue.filter((e=>!e.done))}read(e,t,n){let i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:this.retryTimeout,a=arguments.length>5?arguments[5]:void 0;if(!e.length)return a(null,{});if(this.readingCalls>=this.maxParallelReads)return void this.waitingReads.push({lng:e,ns:t,fcName:n,tried:i,wait:r,callback:a});this.readingCalls++;const o=(o,s)=>{if(this.readingCalls--,this.waitingReads.length>0){const e=this.waitingReads.shift();this.read(e.lng,e.ns,e.fcName,e.tried,e.wait,e.callback)}o&&s&&i<this.maxRetries?setTimeout((()=>{this.read.call(this,e,t,n,i+1,2*r,a)}),r):a(o,s)},s=this.backend[n].bind(this.backend);if(2!==s.length)return s(e,t,o);try{const n=s(e,t);n&&"function"==typeof n.then?n.then((e=>o(null,e))).catch(o):o(null,n)}catch(e){o(e)}}prepareLoading(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=arguments.length>3?arguments[3]:void 0;if(!this.backend)return this.logger.warn("No backend was added via i18next.use. Will not load resources."),i&&i();It(e)&&(e=this.languageUtils.toResolveHierarchy(e)),It(t)&&(t=[t]);const r=this.queueLoad(e,t,n,i);if(!r.toLoad.length)return r.pending.length||i(),null;r.toLoad.forEach((e=>{this.loadOne(e)}))}load(e,t,n){this.prepareLoading(e,t,{},n)}reload(e,t,n){this.prepareLoading(e,t,{reload:!0},n)}loadOne(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";const n=e.split("|"),i=n[0],r=n[1];this.read(i,r,"read",void 0,void 0,((n,a)=>{n&&this.logger.warn(`${t}loading namespace ${r} for language ${i} failed`,n),!n&&a&&this.logger.log(`${t}loaded namespace ${r} for language ${i}`,a),this.loaded(e,n,a)}))}saveMissing(e,t,n,i,r){let a=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{},o=arguments.length>6&&void 0!==arguments[6]?arguments[6]:()=>{};if(this.services.utils&&this.services.utils.hasLoadedNamespace&&!this.services.utils.hasLoadedNamespace(t))this.logger.warn(`did not save key "${n}" as the namespace "${t}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!");else if(null!=n&&""!==n){if(this.backend&&this.backend.create){const s={...a,isUpdate:r},l=this.backend.create.bind(this.backend);if(l.length<6)try{let r;r=5===l.length?l(e,t,n,i,s):l(e,t,n,i),r&&"function"==typeof r.then?r.then((e=>o(null,e))).catch(o):o(null,r)}catch(e){o(e)}else l(e,t,n,i,o,s)}e&&e[0]&&this.store.addResource(e[0],t,n,i)}}}const vn=()=>({debug:!1,initImmediate:!0,ns:["translation"],defaultNS:["translation"],fallbackLng:["dev"],fallbackNS:!1,supportedLngs:!1,nonExplicitSupportedLngs:!1,load:"all",preload:!1,simplifyPluralSuffix:!0,keySeparator:".",nsSeparator:":",pluralSeparator:"_",contextSeparator:"_",partialBundledLanguages:!1,saveMissing:!1,updateMissing:!1,saveMissingTo:"fallback",saveMissingPlurals:!0,missingKeyHandler:!1,missingInterpolationHandler:!1,postProcess:!1,postProcessPassResolved:!1,returnNull:!1,returnEmptyString:!0,returnObjects:!1,joinArrays:!1,returnedObjectHandler:!1,parseMissingKeyHandler:!1,appendNamespaceToMissingKey:!1,appendNamespaceToCIMode:!1,overloadTranslationOptionHandler:e=>{let t={};if("object"==typeof e[1]&&(t=e[1]),It(e[1])&&(t.defaultValue=e[1]),It(e[2])&&(t.tDescription=e[2]),"object"==typeof e[2]||"object"==typeof e[3]){const n=e[3]||e[2];Object.keys(n).forEach((e=>{t[e]=n[e]}))}return t},interpolation:{escapeValue:!0,format:e=>e,prefix:"{{",suffix:"}}",formatSeparator:",",unescapePrefix:"-",nestingPrefix:"$t(",nestingSuffix:")",nestingOptionsSeparator:",",maxReplaces:1e3,skipOnVariables:!0}}),bn=e=>(It(e.ns)&&(e.ns=[e.ns]),It(e.fallbackLng)&&(e.fallbackLng=[e.fallbackLng]),It(e.fallbackNS)&&(e.fallbackNS=[e.fallbackNS]),e.supportedLngs&&e.supportedLngs.indexOf("cimode")<0&&(e.supportedLngs=e.supportedLngs.concat(["cimode"])),e),kn=()=>{};class wn extends Xt{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;var n;if(super(),this.options=bn(e),this.services={},this.logger=Zt,this.modules={external:[]},n=this,Object.getOwnPropertyNames(Object.getPrototypeOf(n)).forEach((e=>{"function"==typeof n[e]&&(n[e]=n[e].bind(n))})),t&&!this.isInitialized&&!e.isClone){if(!this.options.initImmediate)return this.init(e,t),this;setTimeout((()=>{this.init(e,t)}),0)}}init(){var e=this;let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=arguments.length>1?arguments[1]:void 0;this.isInitializing=!0,"function"==typeof t&&(n=t,t={}),!t.defaultNS&&!1!==t.defaultNS&&t.ns&&(It(t.ns)?t.defaultNS=t.ns:t.ns.indexOf("translation")<0&&(t.defaultNS=t.ns[0]));const i=vn();this.options={...i,...this.options,...bn(t)},"v1"!==this.options.compatibilityAPI&&(this.options.interpolation={...i.interpolation,...this.options.interpolation}),void 0!==t.keySeparator&&(this.options.userDefinedKeySeparator=t.keySeparator),void 0!==t.nsSeparator&&(this.options.userDefinedNsSeparator=t.nsSeparator);const r=e=>e?"function"==typeof e?new e:e:null;if(!this.options.isClone){let t;this.modules.logger?Zt.init(r(this.modules.logger),this.options):Zt.init(null,this.options),this.modules.formatter?t=this.modules.formatter:"undefined"!=typeof Intl&&(t=gn);const n=new an(this.options);this.store=new Qt(this.options.resources,this.options);const a=this.services;a.logger=Zt,a.resourceStore=this.store,a.languageUtils=n,a.pluralResolver=new dn(n,{prepend:this.options.pluralSeparator,compatibilityJSON:this.options.compatibilityJSON,simplifyPluralSuffix:this.options.simplifyPluralSuffix}),!t||this.options.interpolation.format&&this.options.interpolation.format!==i.interpolation.format||(a.formatter=r(t),a.formatter.init(a,this.options),this.options.interpolation.format=a.formatter.format.bind(a.formatter)),a.interpolator=new mn(this.options),a.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},a.backendConnector=new yn(r(this.modules.backend),a.resourceStore,a,this.options),a.backendConnector.on("*",(function(t){for(var n=arguments.length,i=new Array(n>1?n-1:0),r=1;r<n;r++)i[r-1]=arguments[r];e.emit(t,...i)})),this.modules.languageDetector&&(a.languageDetector=r(this.modules.languageDetector),a.languageDetector.init&&a.languageDetector.init(a,this.options.detection,this.options)),this.modules.i18nFormat&&(a.i18nFormat=r(this.modules.i18nFormat),a.i18nFormat.init&&a.i18nFormat.init(this)),this.translator=new nn(this.services,this.options),this.translator.on("*",(function(t){for(var n=arguments.length,i=new Array(n>1?n-1:0),r=1;r<n;r++)i[r-1]=arguments[r];e.emit(t,...i)})),this.modules.external.forEach((e=>{e.init&&e.init(this)}))}if(this.format=this.options.interpolation.format,n||(n=kn),this.options.fallbackLng&&!this.services.languageDetector&&!this.options.lng){const e=this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);e.length>0&&"dev"!==e[0]&&(this.options.lng=e[0])}this.services.languageDetector||this.options.lng||this.logger.warn("init: no languageDetector is used and no lng is defined"),["getResource","hasResourceBundle","getResourceBundle","getDataByLanguage"].forEach((t=>{this[t]=function(){return e.store[t](...arguments)}})),["addResource","addResources","addResourceBundle","removeResourceBundle"].forEach((t=>{this[t]=function(){return e.store[t](...arguments),e}}));const a=zt(),o=()=>{const e=(e,t)=>{this.isInitializing=!1,this.isInitialized&&!this.initializedStoreOnce&&this.logger.warn("init: i18next is already initialized. You should call init just once!"),this.isInitialized=!0,this.options.isClone||this.logger.log("initialized",this.options),this.emit("initialized",this.options),a.resolve(t),n(e,t)};if(this.languages&&"v1"!==this.options.compatibilityAPI&&!this.isInitialized)return e(null,this.t.bind(this));this.changeLanguage(this.options.lng,e)};return this.options.resources||!this.options.initImmediate?o():setTimeout(o,0),a}loadResources(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:kn;const n=It(e)?e:this.language;if("function"==typeof e&&(t=e),!this.options.resources||this.options.partialBundledLanguages){if(n&&"cimode"===n.toLowerCase()&&(!this.options.preload||0===this.options.preload.length))return t();const e=[],i=t=>{t&&"cimode"!==t&&this.services.languageUtils.toResolveHierarchy(t).forEach((t=>{"cimode"!==t&&e.indexOf(t)<0&&e.push(t)}))};n?i(n):this.services.languageUtils.getFallbackCodes(this.options.fallbackLng).forEach((e=>i(e))),this.options.preload&&this.options.preload.forEach((e=>i(e))),this.services.backendConnector.load(e,this.options.ns,(e=>{e||this.resolvedLanguage||!this.language||this.setResolvedLanguage(this.language),t(e)}))}else t(null)}reloadResources(e,t,n){const i=zt();return"function"==typeof e&&(n=e,e=void 0),"function"==typeof t&&(n=t,t=void 0),e||(e=this.languages),t||(t=this.options.ns),n||(n=kn),this.services.backendConnector.reload(e,t,(e=>{i.resolve(),n(e)})),i}use(e){if(!e)throw new Error("You are passing an undefined module! Please check the object you are passing to i18next.use()");if(!e.type)throw new Error("You are passing a wrong module! Please check the object you are passing to i18next.use()");return"backend"===e.type&&(this.modules.backend=e),("logger"===e.type||e.log&&e.warn&&e.error)&&(this.modules.logger=e),"languageDetector"===e.type&&(this.modules.languageDetector=e),"i18nFormat"===e.type&&(this.modules.i18nFormat=e),"postProcessor"===e.type&&en.addPostProcessor(e),"formatter"===e.type&&(this.modules.formatter=e),"3rdParty"===e.type&&this.modules.external.push(e),this}setResolvedLanguage(e){if(e&&this.languages&&!(["cimode","dev"].indexOf(e)>-1))for(let e=0;e<this.languages.length;e++){const t=this.languages[e];if(!(["cimode","dev"].indexOf(t)>-1)&&this.store.hasLanguageSomeTranslations(t)){this.resolvedLanguage=t;break}}}changeLanguage(e,t){var n=this;this.isLanguageChangingTo=e;const i=zt();this.emit("languageChanging",e);const r=e=>{this.language=e,this.languages=this.services.languageUtils.toResolveHierarchy(e),this.resolvedLanguage=void 0,this.setResolvedLanguage(e)},a=(e,a)=>{a?(r(a),this.translator.changeLanguage(a),this.isLanguageChangingTo=void 0,this.emit("languageChanged",a),this.logger.log("languageChanged",a)):this.isLanguageChangingTo=void 0,i.resolve((function(){return n.t(...arguments)})),t&&t(e,(function(){return n.t(...arguments)}))},o=t=>{e||t||!this.services.languageDetector||(t=[]);const n=It(t)?t:this.services.languageUtils.getBestMatchFromCodes(t);n&&(this.language||r(n),this.translator.language||this.translator.changeLanguage(n),this.services.languageDetector&&this.services.languageDetector.cacheUserLanguage&&this.services.languageDetector.cacheUserLanguage(n)),this.loadResources(n,(e=>{a(e,n)}))};return e||!this.services.languageDetector||this.services.languageDetector.async?!e&&this.services.languageDetector&&this.services.languageDetector.async?0===this.services.languageDetector.detect.length?this.services.languageDetector.detect().then(o):this.services.languageDetector.detect(o):o(e):o(this.services.languageDetector.detect()),i}getFixedT(e,t,n){var i=this;const r=function(e,t){let a;if("object"!=typeof t){for(var o=arguments.length,s=new Array(o>2?o-2:0),l=2;l<o;l++)s[l-2]=arguments[l];a=i.options.overloadTranslationOptionHandler([e,t].concat(s))}else a={...t};a.lng=a.lng||r.lng,a.lngs=a.lngs||r.lngs,a.ns=a.ns||r.ns,""!==a.keyPrefix&&(a.keyPrefix=a.keyPrefix||n||r.keyPrefix);const u=i.options.keySeparator||".";let c;return c=a.keyPrefix&&Array.isArray(e)?e.map((e=>`${a.keyPrefix}${u}${e}`)):a.keyPrefix?`${a.keyPrefix}${u}${e}`:e,i.t(c,a)};return It(e)?r.lng=e:r.lngs=e,r.ns=t,r.keyPrefix=n,r}t(){return this.translator&&this.translator.translate(...arguments)}exists(){return this.translator&&this.translator.exists(...arguments)}setDefaultNamespace(e){this.options.defaultNS=e}hasLoadedNamespace(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!this.isInitialized)return this.logger.warn("hasLoadedNamespace: i18next was not initialized",this.languages),!1;if(!this.languages||!this.languages.length)return this.logger.warn("hasLoadedNamespace: i18n.languages were undefined or empty",this.languages),!1;const n=t.lng||this.resolvedLanguage||this.languages[0],i=!!this.options&&this.options.fallbackLng,r=this.languages[this.languages.length-1];if("cimode"===n.toLowerCase())return!0;const a=(e,t)=>{const n=this.services.backendConnector.state[`${e}|${t}`];return-1===n||0===n||2===n};if(t.precheck){const e=t.precheck(this,a);if(void 0!==e)return e}return!(!this.hasResourceBundle(n,e)&&this.services.backendConnector.backend&&(!this.options.resources||this.options.partialBundledLanguages)&&(!a(n,e)||i&&!a(r,e)))}loadNamespaces(e,t){const n=zt();return this.options.ns?(It(e)&&(e=[e]),e.forEach((e=>{this.options.ns.indexOf(e)<0&&this.options.ns.push(e)})),this.loadResources((e=>{n.resolve(),t&&t(e)})),n):(t&&t(),Promise.resolve())}loadLanguages(e,t){const n=zt();It(e)&&(e=[e]);const i=this.options.preload||[],r=e.filter((e=>i.indexOf(e)<0&&this.services.languageUtils.isSupportedCode(e)));return r.length?(this.options.preload=i.concat(r),this.loadResources((e=>{n.resolve(),t&&t(e)})),n):(t&&t(),Promise.resolve())}dir(e){if(e||(e=this.resolvedLanguage||(this.languages&&this.languages.length>0?this.languages[0]:this.language)),!e)return"rtl";const t=this.services&&this.services.languageUtils||new an(vn());return["ar","shu","sqr","ssh","xaa","yhd","yud","aao","abh","abv","acm","acq","acw","acx","acy","adf","ads","aeb","aec","afb","ajp","apc","apd","arb","arq","ars","ary","arz","auz","avl","ayh","ayl","ayn","ayp","bbz","pga","he","iw","ps","pbt","pbu","pst","prp","prd","ug","ur","ydd","yds","yih","ji","yi","hbo","men","xmn","fa","jpr","peo","pes","prs","dv","sam","ckb"].indexOf(t.getLanguagePartFromCode(e))>-1||e.toLowerCase().indexOf("-arab")>1?"rtl":"ltr"}static createInstance(){return new wn(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},arguments.length>1?arguments[1]:void 0)}cloneInstance(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:kn;const n=e.forkResourceStore;n&&delete e.forkResourceStore;const i={...this.options,...e,isClone:!0},r=new wn(i);return void 0===e.debug&&void 0===e.prefix||(r.logger=r.logger.clone(e)),["store","services","language"].forEach((e=>{r[e]=this[e]})),r.services={...this.services},r.services.utils={hasLoadedNamespace:r.hasLoadedNamespace.bind(r)},n&&(r.store=new Qt(this.store.data,i),r.services.resourceStore=r.store),r.translator=new nn(r.services,i),r.translator.on("*",(function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];r.emit(e,...n)})),r.init(i,t),r.translator.options=i,r.translator.backendConnector.services.utils={hasLoadedNamespace:r.hasLoadedNamespace.bind(r)},r}toJSON(){return{options:this.options,store:this.store,language:this.language,languages:this.languages,resolvedLanguage:this.resolvedLanguage}}}const Sn=wn.createInstance();function Pn(e){return Pn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Pn(e)}function xn(e){try{var t=new URL(e);return"http:"===t.protocol||"https:"===t.protocol}catch(e){return!1}}function Cn(e){return/<\/?[a-z][\s\S]*>/i.test(e)}function An(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=[];return e.map((function(e,i){var r,a={},o=t[e.name],s=null!==(r=e.title)&&void 0!==r?r:e.name;if(e.required&&!o)a[e.name]=s+" is required";else if(o)if("textInput"===e.type)switch(e.inputType){case"email":/^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/.test(o)||(a[e.name]=s+" must be a valid Email");break;case"url":Tn(o)||(a[e.name]=s+" must be a valid HTTPS URL");break;case"number":/^\d+$/.test(o)||(a[e.name]=s+" must be a valid number");break;case"date":(function(e){if(!/^\d{4}-\d{2}-\d{2}$/.test(e))return!1;var t=new Date(e),n=t.getTime();return!(!n&&0!==n)&&t.toISOString().slice(0,10)===e})(o)||(a[e.name]=s+" must be a valid date (ex: 2024-02-18)")}else"checkboxInput"===e.type&&"object"!==Pn(o)&&(a[e.name]=s+" must be an object if provided");Object.keys(a).length>0&&n.push({index:i,errors:a})})),n.length>0?n:null}function Tn(e){return/^(https?:\/\/)?([a-zA-Z0-9-]+\.)+[a-zA-Z]{2,}(:[0-9]{1,5})?(\/.*)?$/.test(e)}function jn(e){return jn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},jn(e)}function _n(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,En(i.key),i)}}function En(e){var t=function(e){if("object"!=jn(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=jn(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==jn(t)?t:t+""}Sn.createInstance=wn.createInstance,Sn.createInstance,Sn.dir,Sn.init,Sn.loadResources,Sn.reloadResources,Sn.use,Sn.changeLanguage,Sn.getFixedT,Sn.t,Sn.exists,Sn.setDefaultNamespace,Sn.hasLoadedNamespace,Sn.loadNamespaces,Sn.loadLanguages;var Rn=function(){return e=function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.opts=t,this.defaultType=["skincare"],this.defaultDisplayModel=["widget","section","modal"]},(t=[{key:"init",value:function(e){e.responsiveOverride;var t=this.opts;if(!t||"object"!==jn(t))throw new Error("pleas enter options.");if(t.arrTypes=this.defaultType,t.arrDisplayModel=this.defaultDisplayModel,t.intro=!0,void 0===t.faceageId||!t.faceageId)throw new Error("pleas enter face age Id.");if(void 0===t.displayModel&&(t.displayModel="section"),"modal"!==t.displayModel){if(void 0===t.elementId||!t.elementId)throw new Error("pleas enter element id.");if(!document.getElementById(t.elementId))throw new Error("element id is not valid.");t.element=document.getElementById(t.elementId)}else t.element=document.body;if(void 0===t.type&&(t.type="skincare"),void 0===t.gtag&&(t.gtag=null),void 0!==t.privacyUrl&&Tn(t.privacyUrl)||(t.privacyUrl=null),void 0===t.language&&(t.language="en"),void 0===t.defaultQuiz&&(t.defaultQuiz={}),void 0===t.quiz&&(t.quiz=!0),void 0===t.currency&&(t.currency="$"),void 0===t.showProducts&&(t.showProducts=!1),void 0===t.showRoutine&&(t.showRoutine=!1),"widget"===t.displayModel&&(t.products=!1),"en"!==t.language&&Sn.changeLanguage(t.language),-1===this.defaultType.indexOf(t.type))throw new Error("Type is not valid");if(-1===this.defaultDisplayModel.indexOf(t.displayModel))throw new Error("Display Model is not valid");if(void 0!==t.routinesSupport&&Array.isArray(t.routinesSupport)||(t.routinesSupport=[]),void 0!==t.problems&&Array.isArray(t.problems)||(t.problems=[]),void 0===t.width?t.iframeWidth="360px":t.width&&(t.iframeWidth=t.width),void 0===t.height?"section"===t.displayModel?t.iframeHeight="600px":t.iframeHeight="580px":t.height&&(t.iframeHeight=t.height),void 0===t.showFacePoint&&(t.showFacePoint=!0),void 0===t.showAddToCard&&(t.showAddToCard=!0),void 0===t.showAddToCardAll&&(t.showAddToCardAll=!1),void 0===t.showCamera&&(t.showCamera=!0),void 0===t.showUpload&&(t.showUpload=!0),!t.showCamera&&!t.showUpload)throw new Error("There are no input ways to receive the image.");return t}}])&&_n(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function In(e){return In="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},In(e)}function zn(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Ln(i.key),i)}}function Ln(e){var t=function(e){if("object"!=In(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=In(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==In(t)?t:t+""}var On=function(){return e=function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e)},(t=[{key:"initGlobalVars",value:function(e){e.skinAnalyzeData=[]}},{key:"globalVars",value:function(e){return{faceID:null,dom:{},events:{onClickProblem:[],onClose:[],onDisplayProducts:[],onAddToCart:[],onCheckout:[],onClickProduct:[]},showCamera:!0,showUpload:!0,formPages:{},formData:{},intro:!0,quiz:!0,gtmConfig:!1,iframeWidth:"360px",iframeHeight:"480px",language:"en",displayModel:"widget",showFacePoint:!0,cameraPermission:null,faceDetection:null,boundingBox:[],imageWarning:!1,activeQuiz:0,privacy:!1,products:!0,productLoader:!0,productLists:[],productAction:[],productAddToCart:[],problems:{wrinkles:"Fine Wrinkles",fineWrinkles:"Fine Wrinkles",eye_wrinkles:"Eye Wrinkles",eyeWrinkles:"Eye Wrinkles",deep_wrinkles:"Deep Wrinkles",deepWrinkles:"Deep Wrinkles",dark_circle:"Dark Circle",darkCircle:"Dark Circle",eye_bag:"Eye Bag",eyeBag:"Eye Bag",pores:"Pores",pigments:"Pigment",pigment:"Pigment",acnes:"Acne",acne:"Acne",oiliness:"Oiliness",redness:"Redness"},routineGroup:[{key:"cleanser",title:"Cleanser",content:"Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.",status:["morning","night"]},{key:"toner",title:"Toner",content:"Use a toner to balance your skin’s pH and remove any leftover residue.",status:["morning","night"]},{key:"serum",title:"Serum",content:"Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.",status:["morning","night"]},{key:"eyeCream",title:"Eye Cream",content:"Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.",status:["morning","night"]},{key:"spotTreatment",title:"Spot Treatment",content:"Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.",status:["morning","night"]},{key:"moisturizer",title:"Moisturizer",content:"Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.",status:["morning","night"]},{key:"sunscreen",title:"Sunscreen",content:"Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.",status:["morning"]},{key:"faceOil",title:"Face Oil",content:"Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.",status:["morning","night"]},{key:"nightCream",title:"Night Cream",content:"Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.",status:["night"]}]}}},{key:"init",value:function(e){var t=this.globalVars(e);return this.initGlobalVars(t),t}}])&&zn(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function Mn(e){return Mn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Mn(e)}function Fn(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Dn(i.key),i)}}function Dn(e){var t=function(e){if("object"!=Mn(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=Mn(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Mn(t)?t:t+""}var Bn=function(){return e=function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.opts=t},(t=[{key:"init",value:function(){var e=new Rn(this.opts).init({responsiveOverride:!1});return{config:e,globals:(new On).init(e)}}}])&&Fn(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function Nn(e){return Nn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Nn(e)}function Gn(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Un(i.key),i)}}function Un(e){var t=function(e){if("object"!=Nn(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=Nn(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Nn(t)?t:t+""}const Hn=function(){return e=function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.ctx=t,this.w=t.w},(t=[{key:"setAttrs",value:function(e,t){for(var n in t)t.hasOwnProperty(n)&&e.setAttribute(n,t[n])}},{key:"getLevelColor",value:function(e){return e<=30?"#5CB85C":e>=70?"#DA005C":"#5C7BB8"}},{key:"getSizeFrame",value:function(e,t){var n,i,r=e.dom.elIframe.clientWidth>300?e.dom.elIframe.clientWidth:300,a=e.dom.elIframe.clientHeight>400?e.dom.elIframe.clientHeight:400;return"widget"===t.displayModel?(n=r,i=r/3*4):"section"===t.displayModel?(i=a,r>768&&(i-=40),r<=(n=i/4*3)&&(i=(n=r-35)/3*4)):r>=668?n=(i=a-120)/4*3:i=(n=r-35)/3*4,{width:n,height:i}}}])&&Gn(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();var Wn=n(543),Vn=n.n(Wn);function qn(e){return qn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},qn(e)}function Jn(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Yn(i.key),i)}}function Yn(e){var t=function(e){if("object"!=qn(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=qn(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==qn(t)?t:t+""}var Kn=function(){return e=function e(t,n,i,r,a){var o;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.el=t,this.gl=n,this.options=null!==(o=i.options)&&void 0!==o?o:[],this.title=Sn.t(i.title),this.description=Sn.t(i.description),this.name=i.name,this.layout=i.layout,this.activeItems=r||[],this.value=r,this.setValue=a,this.render()},(t=[{key:"render",value:function(){var e=this,t=(this.gl,document.createElement("div"));Hn.setAttrs(t,{class:"el_box","data-name":this.name});var n=document.createElement("div");Hn.setAttrs(n,{class:"box_title",style:this.title||this.description?"margin-bottom: 17px; display: block;":""}),n.innerHTML=(this.title?'<label class="title_el" style="margin: 0 0 10px; font-weight: 600;">'+this.title+"</label>":"")+(this.description?'<p class="description_el">'+this.description+"</p>":""),t.appendChild(n);var i=document.createElement("div");Hn.setAttrs(i,{class:"checkbox_group input_select "+this.layout});var r=[];this.options.map((function(t){r[t.value]=document.createElement("div"),Hn.setAttrs(r[t.value],{class:"checkbox item "+(e.activeItems.includes(t.value)?"active":"")});var n=(t.icon_url?'<div class="ico"><img alt="'+t.label+'" src="'+t.icon_url+'" /></div>':"")+'<div class="title">'+Sn.t(t.label)+"</div>";r[t.value].innerHTML=n,i.appendChild(r[t.value]),r[t.value].addEventListener("click",(function(n){if(e.activeItems.includes(t.value)){r[t.value].classList.remove("active");var i=e.activeItems.indexOf(t.value);i>-1&&e.activeItems.splice(i,1)}else r[t.value].classList.add("active"),e.activeItems.push(t.value);e.setValue(e.activeItems),e.value=e.activeItems}))})),t.appendChild(i),this.el.appendChild(t)}}])&&Jn(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function $n(e){return $n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},$n(e)}function Zn(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Xn(i.key),i)}}function Xn(e){var t=function(e){if("object"!=$n(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=$n(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==$n(t)?t:t+""}var Qn=function(){return e=function e(t,n,i){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.el=t,this.gl=n,this.children=Sn.t(i.text),this.render()},(t=[{key:"render",value:function(){var e=this.gl;e.dom.elementText=document.createElement("p"),Hn.setAttrs(e.dom.elementText,{style:"margin: 0 0 10px"}),e.dom.elementText.innerHTML=this.children,this.el.appendChild(e.dom.elementText)}}])&&Zn(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function ei(e){return ei="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ei(e)}function ti(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,ni(i.key),i)}}function ni(e){var t=function(e){if("object"!=ei(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=ei(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==ei(t)?t:t+""}var ii=function(){return e=function e(t,n,i,r,a){var o;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.el=t,this.gl=n,this.options=null!==(o=i.options)&&void 0!==o?o:[],this.name=i.name,this.layout=i.layout,this.title=Sn.t(i.title),this.description=Sn.t(i.description),this.value=r,this.setValue=a,this.render()},(t=[{key:"render",value:function(){var e=this,t=(this.gl,document.createElement("div"));Hn.setAttrs(t,{class:"el_box","data-name":this.name});var n=document.createElement("div");Hn.setAttrs(n,{class:"box_title",style:this.title||this.description?"margin-bottom: 17px; display: block;":""}),n.innerHTML=(this.title?'<label class="title_el" style="margin: 0 0 10px; font-weight: 600;">'+this.title+"</label>":"")+(this.description?'<p class="description_el">'+this.description+"</p>":""),t.appendChild(n);var i=document.createElement("div");Hn.setAttrs(i,{class:"radio_group input_select "+this.layout});var r=[];this.options.map((function(t){r[t.value]=document.createElement("div"),Hn.setAttrs(r[t.value],{class:"radio item "+(e.value===t.value?"active":"")});var n=(t.icon_url?'<div class="ico"><img alt="'+t.label+'" src="'+t.icon_url+'" /></div>':"")+'<div class="title">'+Sn.t(t.label)+"</div>";r[t.value].innerHTML=n,i.appendChild(r[t.value]),r[t.value].addEventListener("click",(function(n){var a=i.getElementsByClassName("radio");if(a.length)for(var o=0;o<a.length;o++)a[o].classList.remove("active");e.value!==t.value?(e.setValue(t.value),e.value=t.value,r[t.value].classList.add("active")):(e.setValue(null),e.value=null)}))})),t.appendChild(i),this.el.appendChild(t)}}])&&ti(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function ri(e){return ri="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ri(e)}function ai(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,si(i.key),i)}}function oi(e,t,n){return(t=si(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function si(e){var t=function(e){if("object"!=ri(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=ri(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==ri(t)?t:t+""}var li=new(function(){return e=function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),oi(this,"CONTAINER_ID",void 0),oi(this,"initialized",!1)},t=[{key:"configure",value:function(e){e.containerId&&/^(G|GT|GTM)-[A-Z0-9]+$/.test(e.containerId)&&(this.CONTAINER_ID=e.containerId)}},{key:"initialize",value:function(e,t){var n=this;if(!this.initialized&&e.dom.headIframe&&e.dom.docIframe&&(this.configure(t),this.CONTAINER_ID)){var i=document.createElement("link");i.href="https://www.googletagmanager.com",i.rel="preconnect";var r=document.createElement("script"),a=document.createElement("noscript");r.async=!0,r.src="https://www.googletagmanager.com/gtag/js?id="+this.CONTAINER_ID+"&l=dataLayer",a.innerHTML='\n <iframe src="https://www.googletagmanager.com/ns.html?id='.concat(this.CONTAINER_ID,'" height="0" width="0" style="display:none;visibility:hidden"></iframe>\n '),e.dom.headIframe.appendChild(i),e.dom.headIframe.appendChild(r),r.onload=function(){function e(){window.dataLayer.push(arguments)}window.dataLayer=window.dataLayer||[],window.gtag=e,e("js",new Date),e("config",n.CONTAINER_ID)},e.gtmConfig=!0}}},{key:"push",value:function(){var e;Array.isArray(window.dataLayer)?(window.dataLayer||(window.dataLayer=[]),(e=window.dataLayer).push.apply(e,arguments)):window.dataLayer=[]}}],t&&ai(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}());function ui(e,t,n,i){"function"==typeof window.gtag&&window.gtag(e,t,{event_category:n,event_label:i})}function ci(e){return ci="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ci(e)}function di(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,pi(i.key),i)}}function pi(e){var t=function(e){if("object"!=ci(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=ci(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==ci(t)?t:t+""}var hi=function(){return e=function e(t,n,i){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:null,o=!(arguments.length>5&&void 0!==arguments[5])||arguments[5];!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.el=t,this.pv=i,this.ctx=n,this.w=n.w,this.gl=this.w.globals,this.co=this.w.config,this.onBack=a,this.showRefresh=o,this.title=r,this.render()},(t=[{key:"render",value:function(){var e,t,n=this,i=this.gl;i.dom.elAppBar=document.createElement("div"),Hn.setAttrs(i.dom.elAppBar,{class:"app_bar",style:"width: 100%; position: relative; z-index: 99999;"});var r=' <div class="header_tools">'+(this.onBack?' <div class="back"><svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M15.56 5.15999L13.2 2.79999L0 16L13.2 29.2L15.56 26.84L4.72 16L15.56 5.15999Z" fill="black"/></svg></div>':"")+' <div class="title">'+Sn.t("Skin Analysis")+'</div> <div class="action">'+(this.showRefresh?' <div class="refresh"><svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M23.5333 8.46668C21.6 6.53334 18.9467 5.33334 16 5.33334C10.1067 5.33334 5.34668 10.1067 5.34668 16C5.34668 21.8933 10.1067 26.6667 16 26.6667C20.9733 26.6667 25.12 23.2667 26.3067 18.6667H23.5333C22.44 21.7733 19.48 24 16 24C11.5867 24 8.00001 20.4133 8.00001 16C8.00001 11.5867 11.5867 8.00001 16 8.00001C18.2133 8.00001 20.1867 8.92001 21.6267 10.3733L17.3333 14.6667H26.6667V5.33334L23.5333 8.46668Z" fill="black"/></svg></div>':"")+' <div class="close"><svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M25.3333 8.54663L23.4533 6.66663L16 14.12L8.54667 6.66663L6.66667 8.54663L14.12 16L6.66667 23.4533L8.54667 25.3333L16 17.88L23.4533 25.3333L25.3333 23.4533L17.88 16L25.3333 8.54663Z" fill="black"/></svg></div> </div>';i.dom.elAppBar.innerHTML=r;var a,o=i.dom.elAppBar.querySelector(".title");this.title?o.innerText=this.title:(null!=i&&i.authorize&&null!=i&&null!==(e=i.authorize)&&void 0!==e&&e.logo,null!=i&&i.authorize&&null!=i&&null!==(t=i.authorize)&&void 0!==t&&t.name&&(o.innerText=null==i||null===(a=i.authorize)||void 0===a?void 0:a.name));var s=i.dom.elAppBar.querySelector(".back"),l=i.dom.elAppBar.querySelector(".refresh"),u=i.dom.elAppBar.querySelector(".close");s&&s.addEventListener("click",(function(e){n.onBack&&n.onBack()})),l&&l.addEventListener("click",(function(e){i.dom.elInfo&&i.dom.elInfo.remove(),i.dom.elForm&&i.dom.elForm.remove(),i.dom.elFace&&i.dom.elFace.remove(),i.activeQuiz=0,i.formData={},i.productLoader=!1,i.productLists=[],i.productAction=[],i.productAddToCart=[],i.imageWebCam=null,i.imageSubmit=null,i.intro=!0,n.co.intro=!0,new Ta(i.dom.docIframe,n.ctx,n.pv),i.onRefresh&&i.onRefresh(),i.gtmConfig&&ui("click","retakeAnalysis","skin_analysis","Face Age Skin Analysis")})),u&&u.addEventListener("click",(function(e){i.dom.elModalFace.classList.remove("is-open"),i.onCloseModal&&i.onCloseModal(),i.gtmConfig&&ui("click","closeModal","skin_analysis","Face Age Skin Analysis")})),this.el.appendChild(i.dom.elAppBar)}}])&&di(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function mi(e){return mi="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},mi(e)}function fi(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,gi(i.key),i)}}function gi(e){var t=function(e){if("object"!=mi(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=mi(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==mi(t)?t:t+""}function yi(e,t){return e.get(function(e,t,n){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:n;throw new TypeError("Private element is not present on this object")}(e,t))}var vi=new WeakMap,bi=function(){return e=function e(){var t,n,i;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),i={copyRight:!0,license:!1,elCopyRight:null},function(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}(t=this,n=vi),n.set(t,i)},(t=[{key:"getValue",value:function(){return yi(vi,this)}},{key:"setValue",value:function(e,t){yi(vi,this)[e]=t}}])&&fi(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function ki(e){return ki="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ki(e)}function wi(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Si(i.key),i)}}function Si(e){var t=function(e){if("object"!=ki(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=ki(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==ki(t)?t:t+""}var Pi=function(){return e=function e(t,n,i){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.el=t,this.pv=i,this.ctx=n,this.w=n.w,this.gl=this.w.globals,this.co=this.w.config,this.pv=new bi,this.render()},(t=[{key:"render",value:function(){var e,t,n,i,r,a,o,s,l,u,c=this,d=this.el,p=this.gl,h=this.co,m=(this.pv.getValue(),[{key:"eyeGlass",svg:'<svg width="54" height="55" viewBox="0 0 54 55" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M22.1266 19.4592C24.0344 18.7776 26.0063 18.8686 26.8269 19.6404C27.6451 20.414 27.9449 20.8857 27.9823 21.3679C28.0262 21.9364 27.2941 22.1521 26.8269 21.6852C26.4881 20.9863 25.9015 20.0526 24.9785 19.9126C23.6468 19.7132 21.8617 20.5674 21.2036 21.1167C20.0864 22.0495 16.0629 26.3434 16.0629 26.3434C16.0629 26.3434 18.6231 26.8879 20.2441 27.4343C21.8601 27.9798 22.5946 28.9327 23.7118 29.1618C24.829 29.3881 25.6545 28.7582 27.4867 29.0027C29.3189 29.2471 35.1713 30.572 35.9026 29.9355C36.5981 29.3296 37.8883 26.1075 38.3774 25.0559C38.3994 25.0012 38.4229 24.9552 38.4433 24.914C38.44 24.9111 38.4384 24.9082 38.4343 24.9054C38.6569 24.4548 39.3256 23.035 39.1558 22.548C39.1258 22.4608 39.0689 22.4023 38.9917 22.3793C38.921 22.3582 38.856 22.3821 38.8081 22.4483C38.6716 22.6362 38.7024 23.1452 38.7902 23.382C38.8178 23.4587 38.8511 23.5086 38.8901 23.5325C38.7333 23.9831 38.5099 24.4787 38.3531 24.7999C37.9712 24.1921 37.9232 22.2872 38.4433 21.482C38.999 20.6182 40 20.5731 40 22.2767C40 23.0724 39.8082 25.4815 39.2094 26.2532C39.4605 26.4804 39.4605 27.2311 38.9795 28.1389C38.4969 29.0468 37.1099 33.7951 35.6661 34.1133C34.3759 36.5445 33.0669 35.931 31.5638 35.931C30.0615 35.931 27.7126 35.2273 26.6921 34.725C25.6699 34.2255 24.5341 31.7493 24.3992 31.3859C24.2659 31.0216 23.1869 30.7503 23.0139 31.1808C22.8392 31.6122 22.8603 33.9552 20.1531 33.5209C17.4474 33.0895 15.4641 32.3619 14.7321 30.6583C14 28.9576 14 26.3223 14 26.3223C14 26.3223 20.2205 20.1417 22.1266 19.4592ZM26.6132 33.9341C27.2104 34.7528 31.0641 35.3663 31.0641 35.3663C31.0641 35.3663 33.0093 35.5034 33.6446 35.4804C33.6791 35.4741 33.7128 35.467 33.7458 35.4593C34.756 35.2228 35.0959 34.0233 35.2206 32.9933V31.6399C35.2442 30.9688 34.3604 30.805 33.7023 30.7024C33.0287 30.6027 28.2317 29.7821 27.7296 29.7821C27.2291 29.7821 25.5367 29.7955 25.4408 30.9296C25.3433 32.0695 26.0177 33.1154 26.6132 33.9341ZM16.4643 31.8212C17.7334 32.2631 19.4681 32.8891 20.1523 33.0262C20.6852 33.1384 21.2329 33.171 21.4709 32.914C21.9617 32.3772 21.7586 31.1233 21.8138 30.4043C21.9536 29.2107 19.8711 28.3019 19.8711 28.3019C19.8711 28.3019 16.5594 27.2109 15.6169 27.0767C15.4991 27.0547 14.7507 28.8704 14.7507 28.8704C14.7507 28.8704 15.1968 31.3783 16.4643 31.8212Z" fill="black"/>\n<path d="M38.7619 22.5432C38.7907 22.4266 38.8327 22.4075 38.859 22.4075C38.8686 22.4075 38.8756 22.4102 38.8791 22.4111C38.9237 22.423 38.9535 22.4494 38.9719 22.4958C39.0296 22.6443 38.964 22.9322 38.8459 23.2592C38.7785 23.2036 38.6936 22.8101 38.7619 22.5432Z" fill="'+(null!==(e=null===(t=p.customTemplate)||void 0===t?void 0:t.base_color)&&void 0!==e?e:"#3FC79A")+'" />\n<path fill-rule="evenodd" clip-rule="evenodd" d="M35.6588 14.2799C32.0968 11.9698 27.6242 11.0825 23.1779 12.183C14.6495 14.2939 9.44712 22.9188 11.558 31.4471C12.32 34.5258 13.9309 37.1711 16.0797 39.1953L35.6588 14.2799ZM38.0749 16.2024L18.5214 41.0852C22.0534 43.3094 26.4504 44.149 30.8221 43.067C39.3505 40.9561 44.5529 32.3312 42.442 23.8029C41.6983 20.7985 40.1463 18.2069 38.0749 16.2024ZM22.436 9.18589C32.6197 6.66528 42.9185 12.8774 45.4391 23.061C47.9597 33.2447 41.7476 43.5435 31.564 46.0641C21.3803 48.5847 11.0815 42.3726 8.56089 32.189C6.04028 22.0053 12.2524 11.7065 22.436 9.18589Z" fill="'+(null!==(n=null===(i=p.customTemplate)||void 0===i?void 0:i.base_color)&&void 0!==n?n:"#3FC79A")+'" stroke="white" stroke-width="1.6"/>\n</svg>\n',title:Sn.t("Remove the glasses")},{key:"clean",svg:'<svg width="56" height="55" viewBox="0 0 56 55" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M19.3406 18.2903C19.3406 18.13 19.2032 18 19.0338 18C18.8644 18 18.727 18.13 18.727 18.2903V18.871H17.8068C17.6373 18.871 17.5 19.0009 17.5 19.1613C17.5 19.3216 17.6373 19.4516 17.8068 19.4516H18.727V20.0323H17.8068C17.6373 20.0323 17.5 20.1622 17.5 20.3226C17.5 20.4829 17.6373 20.6129 17.8068 20.6129H18.727V21.1935H17.8068C17.6373 21.1935 17.5 21.3235 17.5 21.4839C17.5 21.6442 17.6373 21.7742 17.8068 21.7742H18.727V22.3548H17.8068C17.6373 22.3548 17.5 22.4848 17.5 22.6452C17.5 22.8055 17.6373 22.9355 17.8068 22.9355H18.727V23.5161H17.8068C17.6373 23.5161 17.5 23.6461 17.5 23.8065C17.5 23.9668 17.6373 24.0968 17.8068 24.0968H18.727V30.1935H18.4203C18.0819 30.1935 17.8068 30.454 17.8068 30.7742V31.5813C17.6199 31.741 17.5 31.9695 17.5 32.2258V35.129C17.5 35.6092 17.9129 36 18.4203 36H19.6473C20.1547 36 20.5676 35.6092 20.5676 35.129V32.2258C20.5676 31.9695 20.4477 31.741 20.2608 31.5813V30.7742C20.2608 30.454 19.9854 30.1935 19.6473 30.1935H19.3406V24.0968H20.2608C20.4303 24.0968 20.5676 23.9668 20.5676 23.8065C20.5676 23.6461 20.4303 23.5161 20.2608 23.5161H19.3406V22.9355H20.2608C20.4303 22.9355 20.5676 22.8055 20.5676 22.6452C20.5676 22.4848 20.4303 22.3548 20.2608 22.3548H19.3406V21.7742H20.2608C20.4303 21.7742 20.5676 21.6442 20.5676 21.4839C20.5676 21.3235 20.4303 21.1935 20.2608 21.1935H19.3406V20.6129H20.2608C20.4303 20.6129 20.5676 20.4829 20.5676 20.3226C20.5676 20.1622 20.4303 20.0323 20.2608 20.0323H19.3406V19.4516H20.2608C20.4303 19.4516 20.5676 19.3216 20.5676 19.1613C20.5676 19.0009 20.4303 18.871 20.2608 18.871H19.3406V18.2903ZM19.9541 32.2258V35.129C19.9541 35.2893 19.8167 35.4194 19.6473 35.4194H18.4203C18.251 35.4194 18.1135 35.2893 18.1135 35.129V32.2258C18.1135 32.0655 18.251 31.9355 18.4203 31.9355H19.6473C19.8167 31.9355 19.9541 32.0655 19.9541 32.2258ZM19.573 30.7742C19.6141 30.7742 19.6473 30.8057 19.6473 30.8445V31.2845C19.6473 31.3234 19.6141 31.3548 19.573 31.3548H18.4946C18.4535 31.3548 18.4203 31.3234 18.4203 31.2845V30.8445C18.4203 30.8057 18.4535 30.7742 18.4946 30.7742H19.573Z" fill="black"/>\n<path d="M36.5 24.3871C36.5 20.8652 33.4726 18 29.7513 18C26.0898 18 23.1022 20.7743 23.0071 24.2184L22.8995 24.0657C22.7485 23.8515 22.4712 23.7577 22.2114 23.832C21.9506 23.9066 21.7755 24.1299 21.7755 24.3877V28.242C21.593 28.3427 21.4687 28.528 21.4687 28.7419V29.4033C21.2862 29.504 21.162 29.6893 21.162 29.9032V35.4194C21.162 35.7396 21.4371 36 21.7755 36H23.616C23.9541 36 24.2296 35.7396 24.2296 35.4194V29.9032C24.2296 29.6893 24.1053 29.504 23.9228 29.4033V28.7419C23.9228 28.528 23.7986 28.3427 23.616 28.242V27.043C24.5956 29.0619 26.6546 30.5177 29.0901 30.743C29.2878 30.7613 29.4445 30.915 29.4445 31.103V35.4194H25.7634C25.4245 35.4194 25.1498 35.6793 25.1498 36H34.3527C34.3527 35.6793 34.078 35.4194 33.7392 35.4194H30.058V31.103C30.058 30.915 30.2146 30.7613 30.4123 30.743C33.8244 30.4276 36.5 27.698 36.5 24.3871ZM22.389 24.6199C22.389 24.5503 22.4843 24.523 22.5251 24.5809L23.0025 25.2586V28.1613H22.389V24.6199ZM22.0822 28.8122C22.0822 28.7734 22.1155 28.7419 22.1565 28.7419H23.235C23.276 28.7419 23.3093 28.7734 23.3093 28.8122V29.2523C23.3093 29.2911 23.276 29.3226 23.235 29.3226H22.1565C22.1155 29.3226 22.0822 29.2911 22.0822 29.2523V28.8122ZM23.6166 35.2787C23.6167 35.3564 23.5501 35.4194 23.4681 35.4194H21.9241C21.842 35.4194 21.7755 35.3564 21.7755 35.2787V30.0438C21.7755 29.9662 21.842 29.9032 21.9241 29.9032H23.4675C23.5495 29.9032 23.6161 29.9662 23.6161 30.0438L23.6166 35.2787ZM29.7513 30.1935C26.3683 30.1935 23.616 27.5888 23.616 24.3871C23.616 21.1854 26.3683 18.5806 29.7513 18.5806C33.1342 18.5806 35.8865 21.1854 35.8865 24.3871C35.8865 27.5888 33.1342 30.1935 29.7513 30.1935Z" fill="black"/>\n<path d="M29.7213 18.4922C26.3006 18.4922 23.5178 21.1259 23.5178 24.3633C23.5178 27.6007 26.3006 30.2344 29.7213 30.2344C33.142 30.2344 35.9248 27.6007 35.9248 24.3633C35.9248 21.1259 33.142 18.4922 29.7213 18.4922ZM29.7213 29.5437C26.7031 29.5437 24.2476 27.2197 24.2476 24.3633C24.2476 21.5068 26.7027 19.1829 29.7213 19.1829C32.7399 19.1829 35.195 21.5068 35.195 24.3633C35.195 27.2197 32.7395 29.5437 29.7213 29.5437Z" fill="black"/>\n<path d="M26.2045 24.6073L26.5231 24.9963L30.9692 21.729L30.6506 21.3399L26.2045 24.6073Z" fill="black"/>\n<path d="M29.1664 20.9531L26.1924 23.1441L26.5114 23.5327L29.4855 21.3418L29.1664 20.9531Z" fill="black"/>\n<path fill-rule="evenodd" clip-rule="evenodd" d="M35.1588 13.6549C31.5968 11.3448 27.1242 10.4575 22.6779 11.558C14.1495 13.6689 8.94712 22.2938 11.058 30.8221C11.82 33.9008 13.4309 36.5461 15.5797 38.5703L35.1588 13.6549ZM37.5749 15.5774L18.0214 40.4602C21.5534 42.6844 25.9504 43.524 30.3221 42.442C38.8505 40.3311 44.0529 31.7062 41.942 23.1779C41.1983 20.1735 39.6463 17.5819 37.5749 15.5774ZM21.936 8.56089C32.1197 6.04028 42.4185 12.2524 44.9391 22.436C47.4597 32.6197 41.2476 42.9185 31.064 45.4391C20.8803 47.9597 10.5815 41.7476 8.06089 31.564C5.54028 21.3803 11.7524 11.0815 21.936 8.56089Z" fill="'+(null!==(r=null===(a=p.customTemplate)||void 0===a?void 0:a.base_color)&&void 0!==r?r:"#3FC79A")+'" stroke="white" stroke-width="1.6"/>\n</svg>',title:Sn.t("Clean your face")},{key:"light",svg:'<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" x="0px" y="0px"\n\t viewBox="0 0 54 55" style="enable-background:new 0 0 54 55;">\n<path d="M31.9,24.1c-4.8,3.9-9.6,0.2-9.8,0C22,24,21.8,24,21.7,24c-0.1,0.1-0.2,0.2-0.2,0.4L23,34.7c0,0.2,0.2,0.3,0.4,0.3\n\tc0.2,0,0.3-0.2,0.3-0.4l-1.4-9.4c1.5,0.9,5.3,2.6,9.2,0.1l-1.8,9.3c0,0.2,0.1,0.4,0.3,0.4c0,0,0,0,0.1,0c0.2,0,0.3-0.1,0.4-0.3\n\tl2-10.3c0-0.2,0-0.3-0.2-0.4C32.2,24,32,24,31.9,24.1z"/>\n<g id="Layer_x0020_1">\n\t<path fill="'+(null!==(o=null===(s=p.customTemplate)||void 0===s?void 0:s.base_color)&&void 0!==o?o:"#3FC79A")+'" d="M27,49.4c-1.2,0-2.5-0.8-2.5-2.2v-0.9h-2.4c-0.4,0-0.6-0.3-0.6-0.6v-2.5c-0.7,0-1.6,0.2-1.6-0.6v-2.9\n\t\tc-0.7-4.5-2.2-6.2-3.7-7.9c-1.6-1.8-3.1-3.6-3.1-8.4c0-7.7,6.2-13.9,13.9-13.9c7.6,0,13.9,6.2,13.9,13.9c0,4.8-1.5,6.6-3.1,8.4\n\t\tc-1.5,1.7-3,3.4-3.7,7.9v2.9c0,0.8-0.9,0.6-1.6,0.6v2.5c0,0.4-0.3,0.6-0.6,0.6h-2.4v0.9C29.5,48.6,28.2,49.4,27,49.4z M21,38.9H33\n\t\tc1.6-9.2,6.7-7.2,6.7-15.7c0-7-5.7-12.7-12.7-12.7c-7,0-12.7,5.7-12.7,12.7C14.3,31.7,19.4,29.6,21,38.9z M22.1,41.8L22.1,41.8\n\t\th10.7v-1.7H21.1v1.7H22.1z M22.8,44.9h8.5v-1.9h-8.5V44.9z M25.7,46.2c0,0.9-0.2,1.9,1.3,1.9c1.4,0,1.2-1.1,1.2-1.9H25.7z"/>\n</g>\n<path fill="#000" d="M36.7,23.8c-0.4,0-0.6-0.3-0.6-0.6c0-5-4-9.1-9-9.1c-0.8,0-0.8-1.2,0-1.2c5.7,0,10.3,4.6,10.3,10.3\n\tC37.3,23.5,37,23.8,36.7,23.8z"/>\n<path fill="#000" d="M27,8.3c-0.4,0-0.6-0.3-0.6-0.6V4c0-0.8,1.2-0.8,1.2,0v3.7C27.6,8,27.3,8.3,27,8.3z"/>\n<path fill="#000" d="M35.7,10.6c-0.5,0-0.8-0.5-0.5-0.9L37,6.5c0.4-0.7,1.5-0.1,1.1,0.6l-1.8,3.2C36.1,10.5,35.9,10.6,35.7,10.6z"/>\n<path fill="#000" d="M42,17c-0.7,0-0.9-0.8-0.3-1.1l3.2-1.8c0.7-0.4,1.3,0.7,0.6,1.1l-3.2,1.8C42.2,16.9,42.1,17,42,17z"/>\n<path fill="#000" d="M18.3,10.6c-0.2,0-0.4-0.1-0.5-0.3l-1.8-3.2c-0.4-0.7,0.7-1.3,1.1-0.6l1.8,3.2C19.1,10.1,18.8,10.6,18.3,10.6z"\n\t/>\n<path fill="#000" d="M12,16.9c-0.1,0-0.2,0-0.3-0.1L8.5,15c-0.7-0.4-0.1-1.5,0.6-1.1l3.2,1.8C12.8,16.1,12.6,16.9,12,16.9z"/>\n</svg>\n',title:Sn.t("Be in the right light")},{key:"position",svg:'<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" x="0px" y="0px"\n\t viewBox="0 0 54 55" style="enable-background:new 0 0 54 55;" >\n<style type="text/css">\n\t.st2{mask:url(#path-2-outside-1_5552_2676_00000124156348595949881960000006641333605475992464_);fill:none;stroke:#FFFFFF;}\n</style>\n<path id="Shape" fill="'+(null!==(l=null===(u=p.customTemplate)||void 0===u?void 0:u.base_color)&&void 0!==l?l:"#3FC79A")+'" d="M20.3,40.7c-2,0.7-8.5,0.7-8.5,4.8v1.9c0,0.4,0.3,0.6,0.6,0.6h29.4c0.4,0,0.6-0.3,0.6-0.6v-1.9\n\tc0-4.1-6.5-4.1-8.5-4.8c-1.1-0.4-2.1-1.1-3-1.9c-0.3-0.2-0.4-0.6-0.4-0.9c0-1,0.2-1.9,0.6-2.8c2.3-1.5,3.7-4.1,3.7-6.8\n\tc0.7,0,1.3-0.3,1.8-0.7c0.5-0.5,0.8-1.1,0.8-1.8v-1.9c0-1-0.6-1.9-1.4-2.3c2.1-3.2,0.7-8.7-3.4-9.1c-1.3-2.6-5.7-3.1-8.6-2.4\n\tc-4,1-6.6,4.3-7.4,9.5c-0.9,5.2,1.6,10.1-2.6,15.4c-0.2,0.2-0.2,0.5-0.1,0.7s0.4,0.4,0.6,0.3c3.5-0.2,5.2-1.6,6.1-3.7\n\tc0.7,1.1,1.6,2.1,2.7,2.8c0.4,0.9,0.6,1.9,0.6,2.8c0,0.4-0.2,0.7-0.4,0.9C22.4,39.6,21.4,40.3,20.3,40.7L20.3,40.7z M24.2,34.4\n\tc-0.3-0.6-3.5-1.6-3.5-6.5c0-0.5,0.1,0.3-0.7-3.6c-0.1-0.3-0.4-0.6-0.8-0.5c-0.3,0.1-0.6,0.4-0.5,0.8l0.6,3.1c0,0.9,0.1,1.9,0.3,2.8\n\tc-0.7,2.3-1.7,3.6-4.1,4c3.4-5.4,1.2-10.1,2-14.7c0.6-3.3,2.1-7.4,6.5-8.5c2.8-0.7,6.1,0,7.1,1.5c0.2,0.4,0.3,0.9,0.8,0.9\n\tc3.5,0,4.6,5.4,2.2,7.7c-0.2,0.2-0.2,0.4-0.2,0.6c0,0.2,0.2,0.4,0.4,0.5c0.1,0,0.2,0.1,0.4,0c0.7,0.1,1.2,0.6,1.2,1.3v1.9\n\tc0,0.7-0.6,1.3-1.3,1.3c-0.6,0-0.9-0.1-1.1,0.2c-0.2,0.2-0.2,0.5-0.2,0.7c0,4.9-3.2,5.9-3.5,6.5c-0.5,1.1-0.8,2.3-0.8,3.6\n\tc0,0.7,0.3,1.4,0.9,1.9c1,0.9,2.1,1.6,3.4,2.1c2,0.7,7.7,0.8,7.7,3.6v1.3H13.1v-1.3c0-2,2.6-2.6,5.6-3.2c1.8-0.3,3.1-0.5,5.5-2.6\n\tc0.5-0.5,0.9-1.1,0.9-1.9C25.1,36.7,24.8,35.5,24.2,34.4L24.2,34.4z"/>\n<path d="M44.3,25.1c0,10.9-7.8,19.8-17.3,19.8S9.7,36.1,9.7,25.1C9.7,14.2,17.4,5.4,27,5.4S44.3,14.2,44.3,25.1z M10.7,25.1\n\tc0,10.2,7.3,18.5,16.3,18.5s16.3-8.3,16.3-18.5C43.3,14.9,36,6.6,27,6.6S10.7,14.9,10.7,25.1z"/>\n<defs>\n\t<filter id="Adobe_OpacityMaskFilter" filterUnits="userSpaceOnUse" x="9.2" y="4.9" width="35.7" height="40.5">\n\t\t<feColorMatrix type="matrix" values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0"/>\n\t</filter>\n</defs>\n<mask maskUnits="userSpaceOnUse" x="9.2" y="4.9" width="35.7" height="40.5" id="path-2-outside-1_5552_2676_00000124156348595949881960000006641333605475992464_">\n\t<rect x="8.7" y="4.4" fill="#FFFFFF" width="37" height="42"/>\n\t<path d="M44.3,25.1c0,10.9-7.8,19.8-17.3,19.8S9.7,36.1,9.7,25.1C9.7,14.2,17.4,5.4,27,5.4S44.3,14.2,44.3,25.1z M10.7,25.1\n\t\tc0,10.2,7.3,18.5,16.3,18.5s16.3-8.3,16.3-18.5C43.3,14.9,36,6.6,27,6.6S10.7,14.9,10.7,25.1z"/>\n</mask>\n<path class="st2" d="M44.3,25.1c0,10.9-7.8,19.8-17.3,19.8S9.7,36.1,9.7,25.1C9.7,14.2,17.4,5.4,27,5.4S44.3,14.2,44.3,25.1z\n\t M10.7,25.1c0,10.2,7.3,18.5,16.3,18.5s16.3-8.3,16.3-18.5C43.3,14.9,36,6.6,27,6.6S10.7,14.9,10.7,25.1z"/>\n</svg>\n',title:Sn.t("Be neutral face and fix position")}]);p.dom.elInfo=document.createElement("div"),Hn.setAttrs(p.dom.elInfo,{class:"face_age_info "+h.displayModel,style:"height: 100%;display: flex;flex-direction: column;flex: 1 1 0%;overflow: hidden auto;align-self: center;"}),"modal"===h.displayModel&&new hi(p.dom.elInfo,this.ctx,this.pv,null,p.formPages.length>1&&h.quiz?function(){p.dom.elInfo.remove(),p.activeQuiz=p.activeQuiz-1>0?p.activeQuiz-1:0,p.intro=!0,h.intro=!0,new Ta(p.dom.docIframe,c.ctx,c.pv)}:null,p.formPages.length>1&&h.quiz),p.dom.elInfo.box=document.createElement("div"),Hn.setAttrs(p.dom.elInfo.box,{style:"width: 100%;"+("widget"!==h.displayModel?"margin: auto 0px;":"")}),p.dom.elInfo.boxWindow=document.createElement("div"),Hn.setAttrs(p.dom.elInfo.boxWindow,{class:"info_window"}),p.dom.elInfo.boxTitle=document.createElement("div"),Hn.setAttrs(p.dom.elInfo.boxTitle,{class:"title"}),p.dom.elInfo.boxTitle.innerHTML=("modal"!==h.displayModel?'<div class="goBack"><svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M15.56 5.15999L13.2 2.79999L0 16L13.2 29.2L15.56 26.84L4.72 16L15.56 5.15999Z" fill="black"/></svg></div>':"")+'<div class="bt"><h2>'+Sn.t("Instructions")+"</h2><p>"+Sn.t("Get Ready to Start Skin Analysis")+"</p></div>",p.dom.elInfo.boxWindow.appendChild(p.dom.elInfo.boxTitle),p.dom.elInfo.goBack=p.dom.elInfo.boxTitle.querySelector(".goBack"),p.dom.elInfo.boxItem=document.createElement("div"),Hn.setAttrs(p.dom.elInfo.boxItem,{class:"items"});var f="";Vn().map(m,(function(e,t){f+='<div class="item_intro"><div class="item_main"><div class="icon">'+e.svg+'</div><div class="title">'+e.title+"</div></div></div>"})),p.dom.elInfo.boxItem.innerHTML=f,p.dom.elInfo.boxWindow.appendChild(p.dom.elInfo.boxItem),p.dom.elInfo.privacy=document.createElement("div"),Hn.setAttrs(p.dom.elInfo.privacy,{class:"privacy"}),p.dom.elInfo.privacy.innerHTML='<div class="privacy_face_age"> <div class="check_box"><div class="check_box_input"><svg xmlns="http://www.w3.org/2000/svg" x="0px" y="0px" width="30.114px" height="23.945px" viewBox="0 0 30.114 23.945" enable-background="new 0 0 30.114 23.945" xml:space="preserve" fill="currentColor" role="presentation"><path d="M26.653,0.444l-1.263,1.35L10.399,17.715l-5.586-5.471l-1.321-1.292l-2.584,2.642l1.321,1.292l6.929,6.792l1.343,1.313 l1.292-1.371l16.282-17.3l1.271-1.343L26.653,0.444L26.653,0.444z"></path></svg></div><input type="checkbox" tabindex="0" name="privacy_acept" data-testid="checkbox_privacy_id" style="display: none"></div> <div class="text">'+Sn.t("privacy.text")+" "+(null!=h&&h.privacyUrl||null!=p&&p.privacyUrl?"<br /><br />"+Sn.t("See our")+' <a href="'+((null==h?void 0:h.privacyUrl)||(null==p?void 0:p.privacyUrl))+'" target="_blank">'+Sn.t("Privacy Policy")+"</a> "+Sn.t("for more information")+".":"<br /><br />"+Sn.t("See the website’s privacy policy")+".")+"</div></div>",p.dom.elInfo.boxWindow.appendChild(p.dom.elInfo.privacy),p.dom.elInfo.privacy.checkBox=p.dom.elInfo.privacy.querySelector(".check_box"),p.dom.elInfo.btn=document.createElement("button"),Hn.setAttrs(p.dom.elInfo.btn,{class:"disable",disable:!0}),p.dom.elInfo.btn.innerHTML=Sn.t("Get Started"),p.dom.elInfo.boxWindow.appendChild(p.dom.elInfo.btn),p.dom.elInfo.box.appendChild(p.dom.elInfo.boxWindow),p.dom.elInfo.appendChild(p.dom.elInfo.box),p.privacy&&(p.dom.elInfo.privacy.checkBox.classList.add("active"),p.dom.elInfo.btn.classList.remove("disable"),p.dom.elInfo.btn.setAttribute("disable",!1)),p.dom.elInfo.privacy.addEventListener("click",(function(e){e.target.tagName&&"A"!==e.target.tagName.toUpperCase()&&(p.dom.elInfo.privacy.checkBox.classList.contains("active")?(p.dom.elInfo.privacy.checkBox.classList.remove("active"),p.dom.elInfo.btn.classList.add("disable"),p.dom.elInfo.btn.setAttribute("disable",!0),p.privacy=!1):(p.dom.elInfo.privacy.checkBox.classList.add("active"),p.dom.elInfo.btn.classList.remove("disable"),p.dom.elInfo.btn.setAttribute("disable",!1),p.privacy=!0))})),d.appendChild(p.dom.elInfo),"modal"!==h.displayModel&&p.dom.elInfo.goBack&&(p.formPages.length>1&&h.quiz?p.dom.elInfo.goBack.addEventListener("click",(function(e){p.dom.elInfo.remove(),p.activeQuiz=p.activeQuiz-1>0?p.activeQuiz-1:0,p.intro=!0,h.intro=!0,new Ta(p.dom.docIframe,c.ctx,c.pv)})):p.dom.elInfo.goBack.remove())}},{key:"getParentAnchor",value:function(e){for(;null!==e;)if(e.tagName&&"A"!==e.tagName.toUpperCase())return e;return null}}])&&wi(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}(),xi=n(610),Ci=n(866);function Ai(e){return Ai="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ai(e)}function Ti(){Ti=function(){return t};var e,t={},n=Object.prototype,i=n.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},a="function"==typeof Symbol?Symbol:{},o=a.iterator||"@@iterator",s=a.asyncIterator||"@@asyncIterator",l=a.toStringTag||"@@toStringTag";function u(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{u({},"")}catch(e){u=function(e,t,n){return e[t]=n}}function c(e,t,n,i){var a=t&&t.prototype instanceof y?t:y,o=Object.create(a.prototype),s=new E(i||[]);return r(o,"_invoke",{value:A(e,n,s)}),o}function d(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}t.wrap=c;var p="suspendedStart",h="suspendedYield",m="executing",f="completed",g={};function y(){}function v(){}function b(){}var k={};u(k,o,(function(){return this}));var w=Object.getPrototypeOf,S=w&&w(w(R([])));S&&S!==n&&i.call(S,o)&&(k=S);var P=b.prototype=y.prototype=Object.create(k);function x(e){["next","throw","return"].forEach((function(t){u(e,t,(function(e){return this._invoke(t,e)}))}))}function C(e,t){function n(r,a,o,s){var l=d(e[r],e,a);if("throw"!==l.type){var u=l.arg,c=u.value;return c&&"object"==Ai(c)&&i.call(c,"__await")?t.resolve(c.__await).then((function(e){n("next",e,o,s)}),(function(e){n("throw",e,o,s)})):t.resolve(c).then((function(e){u.value=e,o(u)}),(function(e){return n("throw",e,o,s)}))}s(l.arg)}var a;r(this,"_invoke",{value:function(e,i){function r(){return new t((function(t,r){n(e,i,t,r)}))}return a=a?a.then(r,r):r()}})}function A(t,n,i){var r=p;return function(a,o){if(r===m)throw Error("Generator is already running");if(r===f){if("throw"===a)throw o;return{value:e,done:!0}}for(i.method=a,i.arg=o;;){var s=i.delegate;if(s){var l=T(s,i);if(l){if(l===g)continue;return l}}if("next"===i.method)i.sent=i._sent=i.arg;else if("throw"===i.method){if(r===p)throw r=f,i.arg;i.dispatchException(i.arg)}else"return"===i.method&&i.abrupt("return",i.arg);r=m;var u=d(t,n,i);if("normal"===u.type){if(r=i.done?f:h,u.arg===g)continue;return{value:u.arg,done:i.done}}"throw"===u.type&&(r=f,i.method="throw",i.arg=u.arg)}}}function T(t,n){var i=n.method,r=t.iterator[i];if(r===e)return n.delegate=null,"throw"===i&&t.iterator.return&&(n.method="return",n.arg=e,T(t,n),"throw"===n.method)||"return"!==i&&(n.method="throw",n.arg=new TypeError("The iterator does not provide a '"+i+"' method")),g;var a=d(r,t.iterator,n.arg);if("throw"===a.type)return n.method="throw",n.arg=a.arg,n.delegate=null,g;var o=a.arg;return o?o.done?(n[t.resultName]=o.value,n.next=t.nextLoc,"return"!==n.method&&(n.method="next",n.arg=e),n.delegate=null,g):o:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,g)}function j(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function E(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(j,this),this.reset(!0)}function R(t){if(t||""===t){var n=t[o];if(n)return n.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,a=function n(){for(;++r<t.length;)if(i.call(t,r))return n.value=t[r],n.done=!1,n;return n.value=e,n.done=!0,n};return a.next=a}}throw new TypeError(Ai(t)+" is not iterable")}return v.prototype=b,r(P,"constructor",{value:b,configurable:!0}),r(b,"constructor",{value:v,configurable:!0}),v.displayName=u(b,l,"GeneratorFunction"),t.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===v||"GeneratorFunction"===(t.displayName||t.name))},t.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,b):(e.__proto__=b,u(e,l,"GeneratorFunction")),e.prototype=Object.create(P),e},t.awrap=function(e){return{__await:e}},x(C.prototype),u(C.prototype,s,(function(){return this})),t.AsyncIterator=C,t.async=function(e,n,i,r,a){void 0===a&&(a=Promise);var o=new C(c(e,n,i,r),a);return t.isGeneratorFunction(n)?o:o.next().then((function(e){return e.done?e.value:o.next()}))},x(P),u(P,l,"Generator"),u(P,o,(function(){return this})),u(P,"toString",(function(){return"[object Generator]"})),t.keys=function(e){var t=Object(e),n=[];for(var i in t)n.push(i);return n.reverse(),function e(){for(;n.length;){var i=n.pop();if(i in t)return e.value=i,e.done=!1,e}return e.done=!0,e}},t.values=R,E.prototype={constructor:E,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(_),!t)for(var n in this)"t"===n.charAt(0)&&i.call(this,n)&&!isNaN(+n.slice(1))&&(this[n]=e)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var n=this;function r(i,r){return s.type="throw",s.arg=t,n.next=i,r&&(n.method="next",n.arg=e),!!r}for(var a=this.tryEntries.length-1;a>=0;--a){var o=this.tryEntries[a],s=o.completion;if("root"===o.tryLoc)return r("end");if(o.tryLoc<=this.prev){var l=i.call(o,"catchLoc"),u=i.call(o,"finallyLoc");if(l&&u){if(this.prev<o.catchLoc)return r(o.catchLoc,!0);if(this.prev<o.finallyLoc)return r(o.finallyLoc)}else if(l){if(this.prev<o.catchLoc)return r(o.catchLoc,!0)}else{if(!u)throw Error("try statement without catch or finally");if(this.prev<o.finallyLoc)return r(o.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var r=this.tryEntries[n];if(r.tryLoc<=this.prev&&i.call(r,"finallyLoc")&&this.prev<r.finallyLoc){var a=r;break}}a&&("break"===e||"continue"===e)&&a.tryLoc<=t&&t<=a.finallyLoc&&(a=null);var o=a?a.completion:{};return o.type=e,o.arg=t,a?(this.method="next",this.next=a.finallyLoc,g):this.complete(o)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),g},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),g}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var i=n.completion;if("throw"===i.type){var r=i.arg;_(n)}return r}}throw Error("illegal catch attempt")},delegateYield:function(t,n,i){return this.delegate={iterator:R(t),resultName:n,nextLoc:i},"next"===this.method&&(this.arg=e),g}},t}function ji(e,t,n,i,r,a,o){try{var s=e[a](o),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(i,r)}function _i(e){return function(){var t=this,n=arguments;return new Promise((function(i,r){var a=e.apply(t,n);function o(e){ji(a,i,r,o,s,"next",e)}function s(e){ji(a,i,r,o,s,"throw",e)}o(void 0)}))}}function Ei(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Ri(i.key),i)}}function Ri(e){var t=function(e){if("object"!=Ai(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=Ai(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Ai(t)?t:t+""}var Ii=function(){return e=function e(t,n,i,r,a,o,s,l){var u,c,d,p,h=this,m=arguments.length>8&&void 0!==arguments[8]?arguments[8]:"video";!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),c=this,p=!0,(d=Ri(d="isLoading"))in c?Object.defineProperty(c,d,{value:p,enumerable:!0,configurable:!0,writable:!0}):c[d]=p,this.srcElement=t,this.canvasElement=n,this.canvasCtx=n?n.getContext("2d"):null,this.boundingBoxElement=i,this.handleOnResults=o,this.handleLoading=s,this.handleBrightness=l,this.faceDetectionModel=new xi.FaceDetection({locateFile:function(e){return"https://cdn.jsdelivr.net/npm/@mediapipe/face_detection@0.3/".concat(e)}}),this.faceDetectionModel.setOptions({modelSelection:1,enableTracking:10,minDetectionConfidence:.5}),this.onClose=this.onClose.bind(this),this.faceDetectionModel.onResults("video"===m?this.onResultsVideo.bind(this):this.onResultsImage.bind(this)),"video"===m?(this.camera=new Ci.Camera(this.srcElement,{onFrame:(u=_i(Ti().mark((function e(){return Ti().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,h.faceDetectionModel.send({image:h.srcElement});case 2:h.isLoading&&(h.isLoading=!0,h.handleLoading());case 3:case"end":return e.stop()}}),e)}))),function(){return u.apply(this,arguments)}),width:a,height:a}),this.camera.start()):this.handleImageFaceDetection()},t=[{key:"handleImageFaceDetection",value:(n=_i(Ti().mark((function e(){return Ti().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.faceDetectionModel.send({image:this.srcElement});case 2:this.isLoading&&(this.isLoading=!0,this.handleLoading&&this.handleLoading());case 3:case"end":return e.stop()}}),e,this)}))),function(){return n.apply(this,arguments)})},{key:"onResultsVideo",value:function(e){var t=this,n=e.detections;this.canvasElement&&this.onCanvas(e),this.boundingBoxElement.innerHTML="";var i=[];n.map((function(e){var n=e.boundingBox.xCenter-e.boundingBox.width/2,r={width:e.boundingBox.width,height:e.boundingBox.height,yCenter:e.boundingBox.yCenter-e.boundingBox.height/2,xCenter:n,landmarks:e.landmarks};i.push(r);var a=document.createElement("div");Hn.setAttrs(a,{style:"border: 1px solid rgb(255, 213, 0); position: absolute; top: "+100*r.yCenter+"%; right: "+100*r.xCenter+"%; width: "+100*r.width+"%; height: "+100*r.height+"%; z-index: 3;"}),t.boundingBoxElement.appendChild(a)})),this.handleOnResults&&this.handleOnResults(i)}},{key:"onResultsImage",value:function(e){var t=e.detections;this.canvasElement&&this.onCanvas(e);var n=t.map((function(e){var t=e.boundingBox.xCenter-e.boundingBox.width/2;return{width:e.boundingBox.width,height:e.boundingBox.height,yCenter:e.boundingBox.yCenter-e.boundingBox.height/2,xCenter:t,landmarks:e.landmarks}}));this.handleOnResults&&this.handleOnResults(n)}},{key:"onCanvas",value:function(e){if(this.canvasCtx.save(),this.canvasCtx.clearRect(0,0,this.canvasElement.width,this.canvasElement.height),this.canvasCtx.drawImage(e.image,0,0,this.canvasElement.width,this.canvasElement.height),e.detections.length>0){var t=e.detections[0].landmarks;this.analyzeLighting(t)}this.canvasCtx.restore()}},{key:"onClose",value:function(){this.faceDetectionModel.close()}},{key:"analyzeLighting",value:function(e){var t=e[0],n=e[1],i=this.calculateAverageBrightness([t,n]);this.handleBrightness&&this.handleBrightness(i)}},{key:"calculateAverageBrightness",value:function(e){var t=this,n=0;return e.forEach((function(e){var i=Math.round(e.x*t.canvasElement.width),r=Math.round(e.y*t.canvasElement.height),a=t.canvasCtx.getImageData(i,r,1,1).data,o=(a[0]+a[1]+a[2])/3;n+=o})),n/e.length}},{key:"getBlurScore",value:function(e){var t=e.detections[0].boundingBox,n=t.xCenter*this.canvasElement.width,i=t.yCenter*this.canvasElement.height,r=t.width*this.canvasElement.width,a=t.height*this.canvasElement.height,o=this.canvasCtx.getImageData(n,i,r,a),s=this.analyzeBlur(o);console.log("Blur Score:",s),s<100?console.log("Blur detected in face"):console.log("Face is not blurry")}},{key:"analyzeBlur",value:function(e){var t=this.toGrayscale(e),n=this.computeLaplacian(t,e.width,e.height);return this.computeVariance(n)}},{key:"toGrayscale",value:function(e){for(var t=new Array(e.width*e.height).fill(0),n=e.data,i=0;i<n.length;i+=4){var r=.299*n[i]+.587*n[i+1]+.114*n[i+2];t[Math.floor(i/4)]=r}return t}},{key:"computeLaplacian",value:function(e,t,n){for(var i=new Array(t*n).fill(0),r=[[0,1,0],[1,-4,1],[0,1,0]],a=1;a<n-1;a++)for(var o=1;o<t-1;o++){for(var s=0,l=-1;l<=1;l++)for(var u=-1;u<=1;u++)s+=e[(a+l)*t+(o+u)]*r[l+1][u+1];i[a*t+o]=s}return i}},{key:"computeVariance",value:function(e){var t=e.reduce((function(e,t){return e+t}),0)/e.length;return e.reduce((function(e,n){return e+Math.pow(n-t,2)}),0)/e.length}}],t&&Ei(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t,n}();function zi(e){return zi="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},zi(e)}function Li(){Li=function(){return t};var e,t={},n=Object.prototype,i=n.hasOwnProperty,r=Object.defineProperty||function(e,t,n){e[t]=n.value},a="function"==typeof Symbol?Symbol:{},o=a.iterator||"@@iterator",s=a.asyncIterator||"@@asyncIterator",l=a.toStringTag||"@@toStringTag";function u(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{u({},"")}catch(e){u=function(e,t,n){return e[t]=n}}function c(e,t,n,i){var a=t&&t.prototype instanceof y?t:y,o=Object.create(a.prototype),s=new E(i||[]);return r(o,"_invoke",{value:A(e,n,s)}),o}function d(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}t.wrap=c;var p="suspendedStart",h="suspendedYield",m="executing",f="completed",g={};function y(){}function v(){}function b(){}var k={};u(k,o,(function(){return this}));var w=Object.getPrototypeOf,S=w&&w(w(R([])));S&&S!==n&&i.call(S,o)&&(k=S);var P=b.prototype=y.prototype=Object.create(k);function x(e){["next","throw","return"].forEach((function(t){u(e,t,(function(e){return this._invoke(t,e)}))}))}function C(e,t){function n(r,a,o,s){var l=d(e[r],e,a);if("throw"!==l.type){var u=l.arg,c=u.value;return c&&"object"==zi(c)&&i.call(c,"__await")?t.resolve(c.__await).then((function(e){n("next",e,o,s)}),(function(e){n("throw",e,o,s)})):t.resolve(c).then((function(e){u.value=e,o(u)}),(function(e){return n("throw",e,o,s)}))}s(l.arg)}var a;r(this,"_invoke",{value:function(e,i){function r(){return new t((function(t,r){n(e,i,t,r)}))}return a=a?a.then(r,r):r()}})}function A(t,n,i){var r=p;return function(a,o){if(r===m)throw Error("Generator is already running");if(r===f){if("throw"===a)throw o;return{value:e,done:!0}}for(i.method=a,i.arg=o;;){var s=i.delegate;if(s){var l=T(s,i);if(l){if(l===g)continue;return l}}if("next"===i.method)i.sent=i._sent=i.arg;else if("throw"===i.method){if(r===p)throw r=f,i.arg;i.dispatchException(i.arg)}else"return"===i.method&&i.abrupt("return",i.arg);r=m;var u=d(t,n,i);if("normal"===u.type){if(r=i.done?f:h,u.arg===g)continue;return{value:u.arg,done:i.done}}"throw"===u.type&&(r=f,i.method="throw",i.arg=u.arg)}}}function T(t,n){var i=n.method,r=t.iterator[i];if(r===e)return n.delegate=null,"throw"===i&&t.iterator.return&&(n.method="return",n.arg=e,T(t,n),"throw"===n.method)||"return"!==i&&(n.method="throw",n.arg=new TypeError("The iterator does not provide a '"+i+"' method")),g;var a=d(r,t.iterator,n.arg);if("throw"===a.type)return n.method="throw",n.arg=a.arg,n.delegate=null,g;var o=a.arg;return o?o.done?(n[t.resultName]=o.value,n.next=t.nextLoc,"return"!==n.method&&(n.method="next",n.arg=e),n.delegate=null,g):o:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,g)}function j(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function E(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(j,this),this.reset(!0)}function R(t){if(t||""===t){var n=t[o];if(n)return n.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,a=function n(){for(;++r<t.length;)if(i.call(t,r))return n.value=t[r],n.done=!1,n;return n.value=e,n.done=!0,n};return a.next=a}}throw new TypeError(zi(t)+" is not iterable")}return v.prototype=b,r(P,"constructor",{value:b,configurable:!0}),r(b,"constructor",{value:v,configurable:!0}),v.displayName=u(b,l,"GeneratorFunction"),t.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===v||"GeneratorFunction"===(t.displayName||t.name))},t.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,b):(e.__proto__=b,u(e,l,"GeneratorFunction")),e.prototype=Object.create(P),e},t.awrap=function(e){return{__await:e}},x(C.prototype),u(C.prototype,s,(function(){return this})),t.AsyncIterator=C,t.async=function(e,n,i,r,a){void 0===a&&(a=Promise);var o=new C(c(e,n,i,r),a);return t.isGeneratorFunction(n)?o:o.next().then((function(e){return e.done?e.value:o.next()}))},x(P),u(P,l,"Generator"),u(P,o,(function(){return this})),u(P,"toString",(function(){return"[object Generator]"})),t.keys=function(e){var t=Object(e),n=[];for(var i in t)n.push(i);return n.reverse(),function e(){for(;n.length;){var i=n.pop();if(i in t)return e.value=i,e.done=!1,e}return e.done=!0,e}},t.values=R,E.prototype={constructor:E,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(_),!t)for(var n in this)"t"===n.charAt(0)&&i.call(this,n)&&!isNaN(+n.slice(1))&&(this[n]=e)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var n=this;function r(i,r){return s.type="throw",s.arg=t,n.next=i,r&&(n.method="next",n.arg=e),!!r}for(var a=this.tryEntries.length-1;a>=0;--a){var o=this.tryEntries[a],s=o.completion;if("root"===o.tryLoc)return r("end");if(o.tryLoc<=this.prev){var l=i.call(o,"catchLoc"),u=i.call(o,"finallyLoc");if(l&&u){if(this.prev<o.catchLoc)return r(o.catchLoc,!0);if(this.prev<o.finallyLoc)return r(o.finallyLoc)}else if(l){if(this.prev<o.catchLoc)return r(o.catchLoc,!0)}else{if(!u)throw Error("try statement without catch or finally");if(this.prev<o.finallyLoc)return r(o.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var r=this.tryEntries[n];if(r.tryLoc<=this.prev&&i.call(r,"finallyLoc")&&this.prev<r.finallyLoc){var a=r;break}}a&&("break"===e||"continue"===e)&&a.tryLoc<=t&&t<=a.finallyLoc&&(a=null);var o=a?a.completion:{};return o.type=e,o.arg=t,a?(this.method="next",this.next=a.finallyLoc,g):this.complete(o)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),g},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),g}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var i=n.completion;if("throw"===i.type){var r=i.arg;_(n)}return r}}throw Error("illegal catch attempt")},delegateYield:function(t,n,i){return this.delegate={iterator:R(t),resultName:n,nextLoc:i},"next"===this.method&&(this.arg=e),g}},t}function Oi(e,t,n,i,r,a,o){try{var s=e[a](o),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(i,r)}function Mi(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,i=Array(t);n<t;n++)i[n]=e[n];return i}function Fi(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Bi(i.key),i)}}function Di(e,t,n){return(t=Bi(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Bi(e){var t=function(e){if("object"!=zi(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=zi(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==zi(t)?t:t+""}var Ni=function(){return e=function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),Di(this,"_facingMode","user"),Di(this,"_webcamList",[]),Di(this,"_streamList",[]),Di(this,"_selectedDeviceId",""),this.start=this.start.bind(this),this.stop=this.stop.bind(this),this.snap=this.snap.bind(this),this.startStream=this.startStream.bind(this),this.adjustVideoResolution=this.adjustVideoResolution.bind(this)},t=[{key:"facingMode",get:function(){return this._facingMode},set:function(e){this._facingMode=e}},{key:"webcamList",get:function(){return this._webcamList}},{key:"webcamCount",get:function(){return this._webcamList.length}},{key:"selectedDeviceId",get:function(){return this._selectedDeviceId}},{key:"getVideoInputs",value:function(e){var t=this;return this._webcamList=[],e.forEach((function(e){"videoinput"===e.kind&&t._webcamList.push(e)})),1==this._webcamList.length&&(this._facingMode="user"),this._webcamList}},{key:"getMediaConstraints",value:function(e){var t={};return""==this._selectedDeviceId?t.facingMode=this._facingMode:t.deviceId={exact:this._selectedDeviceId},navigator.userAgent.includes("Firefox"),t.width={exact:e.width},t.height={exact:e.height},{video:t,audio:!1}}},{key:"selectCamera",value:function(){var e,t=function(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return Mi(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Mi(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var i=0,r=function(){};return{s:r,n:function(){return i>=e.length?{done:!0}:{done:!1,value:e[i++]}},e:function(e){throw e},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,o=!0,s=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}(this._webcamList);try{for(t.s();!(e=t.n()).done;){var n=e.value;if("user"==this._facingMode&&n.label.toLowerCase().includes("front")||"enviroment"==this._facingMode&&n.label.toLowerCase().includes("back")){this._selectedDeviceId=n.deviceId;break}}}catch(e){t.e(e)}finally{t.f()}}},{key:"flip",value:function(){this._facingMode="user"==this._facingMode?"enviroment":"user",this.selectCamera()}},{key:"start",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];return new Promise(function(){var r,a=(r=Li().mark((function r(a,o){return Li().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return t.stop(),r.next=3,navigator.mediaDevices.getUserMedia(t.getMediaConstraints(e)).then((function(n){t._streamList.push(n),t.info().then((function(n){t.selectCamera(),i?t.startStream(e).then((function(e){a(t._facingMode)})).catch((function(e){o(e)})):a(t._selectedDeviceId)})).catch((function(e){o(e)}))})).catch((function(e){console.error("Camera access error:",e),n&&n(e.name),o(e)}));case 3:r.sent;case 4:case"end":return r.stop()}}),r)})),function(){var e=this,t=arguments;return new Promise((function(n,i){var a=r.apply(e,t);function o(e){Oi(a,n,i,o,s,"next",e)}function s(e){Oi(a,n,i,o,s,"throw",e)}o(void 0)}))});return function(e,t){return a.apply(this,arguments)}}())}},{key:"info",value:function(){var e=this;return new Promise((function(t,n){navigator.mediaDevices.enumerateDevices().then((function(n){e.getVideoInputs(n),t(e._webcamList)})).catch((function(e){n(e)}))}))}},{key:"startStream",value:function(e){var t=this;return new Promise((function(n,i){navigator.mediaDevices.getUserMedia(t.getMediaConstraints(e)).then((function(i){t._streamList.push(i),e.srcObject=i,"user"==t._facingMode&&(e.style.transform="scale(-1,1)");var r=e;setTimeout((function(){r.play()}),1e3),n(t._facingMode)})).catch((function(e){i(e)}))}))}},{key:"stop",value:function(){this._streamList.forEach((function(e){e.getTracks().forEach((function(e){e.stop()}))}))}},{key:"snap",value:function(e){var t=document.createElement("canvas");t.height=e.scrollHeight,t.width=e.scrollWidth;var n=t.getContext("2d");"user"===this._facingMode&&(n.translate(t.width,0),n.scale(-1,1)),n.clearRect(0,0,t.width,t.height),n.drawImage(e,0,0,t.width,t.height);var i=t.toDataURL("image/jpeg");return"data:,"===i&&(i=null),t.remove(),i}},{key:"adjustVideoResolution",value:function(e,t,n){e.srcObject.getVideoTracks()[0].applyConstraints({width:{min:400,ideal:420,max:440},height:{min:550,ideal:560,max:570},aspectRatio:1.777777778,frameRate:{max:30}}).then((function(){console.log("Constraints applied successfully")})).catch((function(e){console.error("Error applying constraints:",e)}))}}],t&&Fi(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function Gi(e){return Gi="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Gi(e)}function Ui(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Wi(i.key),i)}}function Hi(e,t,n){return(t=Wi(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Wi(e){var t=function(e){if("object"!=Gi(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=Gi(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Gi(t)?t:t+""}var Vi=function(){return e=function e(t,n,i){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:360,a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:480,o=arguments.length>5?arguments[5]:void 0,s=arguments.length>6?arguments[6]:void 0,l=arguments.length>7?arguments[7]:void 0;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),Hi(this,"_facingMode","user"),Hi(this,"_webcamList",[]),Hi(this,"_streamList",[]),Hi(this,"_selectedDeviceId",""),Hi(this,"_canvasElement",null),Hi(this,"loadModel",!1),Hi(this,"flash",!1),Hi(this,"facePosition",!1),Hi(this,"lookStraight",!1),Hi(this,"lighting",!1),Hi(this,"fixStatus",!1),Hi(this,"isCountry",0),Hi(this,"ready",!1),Hi(this,"logs",""),Hi(this,"timeInv",void 0),Hi(this,"setSnap",!1),Hi(this,"image",null),Hi(this,"detection",!1),Hi(this,"faceDetection",void 0),this.el=t,this.gl=n,this.cnf=i,this.width=r,this.height=a,this.handleSubmit=o,this.handleBack=s,this.loading=l,this.setPosition=this.setPosition.bind(this),this.brightnessDetection=this.brightnessDetection.bind(this),this.capture=this.capture.bind(this),this.errorCameraPermission=this.errorCameraPermission.bind(this),this.updateDimension=this.updateDimension.bind(this),this.render(),this.gl.dom.elIframe.contentWindow.addEventListener("resize",this.updateDimension)},t=[{key:"render",value:function(){var e,t,n,i,r,a,o=this,s=this.el,l=this.gl;l.dom.elwebcam=document.createElement("div"),this.updateDimension();var u='<div style="display: flex; justify-content: center;"><div class="webcamRefBox" style="min-width: '+this.height+"px; min-height: "+this.height+"px; max-height: "+this.height+'px; display: block; position: relative;"><div class="face_detect_age"></div><video class="webcamRef" autoplay muted playsinline style="position: absolute; top: 0px; right: 0px; /*opacity: 0; visibility: hidden; z-index: 2; */ border-radius: 10px; width: auto; transform: scaleX(-1);"></video><canvas class="webcamCanvas" id="webcamCanvas" style="position: absolute; z-index: -2; top: 0px; right: 0px; width: auto; transform: scaleX(-1);"></canvas></div></div><div class="faceController"><ul><li><div class="item_ctl lighting" style="background-color: '+(null!==(e=null===(t=l.customTemplate)||void 0===t?void 0:t.position_not_accepted_status_color)&&void 0!==e?e:"rgb(239, 55, 134)")+';"><span class="title">'+Sn.t("Lighting")+'</span><span class="value">'+Sn.t("Not Good")+'</span></div></li><li><div class="item_ctl face_position" style="background-color: '+(null!==(n=null===(i=l.customTemplate)||void 0===i?void 0:i.position_not_accepted_status_color)&&void 0!==n?n:"rgb(239, 55, 134)")+';"><span class="title">'+Sn.t("Face Position")+'</span><span class="value">'+Sn.t("Not Good")+'</span></div></li><li><div class="item_ctl look_straight" style="background-color: '+(null!==(r=null===(a=l.customTemplate)||void 0===a?void 0:a.position_not_accepted_status_color)&&void 0!==r?r:"rgb(239, 55, 134)")+';"><span class="title">'+Sn.t("Look Straight")+'</span><span class="value">'+Sn.t("Not Good")+'</span></div></li></ul></div><div class="facePositionMap" id="face_position_map"></div><div class="facePosition"><svg class="svg_face_position" viewBox="0 0 '+(this.height<460?this.width+" "+this.height:"360 480")+'"><defs><ellipse class="face-ellipse" id="face-ellipse" cx="50%" cy="55%" rx="133.2" ry="153.6" style="stroke: rgb(255, 255, 255);"></ellipse><mask id="mask"><rect x="0" y="0" width="100%" height="100%" fill="#fff" fill-opacity="0.3"></rect><use xlink:href="#face-ellipse"></use></mask></defs><rect x="0" y="0" width="100%" height="100%" mask="url(#mask)"></rect><use xlink:href="#face-ellipse" fill-opacity="0" stroke="white" stroke-width="2"></use></svg><div id="assertive" class="assertive"></div></div>';l.dom.elwebcam.innerHTML=u,s.appendChild(l.dom.elwebcam),l.dom.elwebcamLoad=document.createElement("div"),l.dom.elwebcamLoad.innerHTML='<div class="loading_request"><div class="FaceCircularProgress-root FaceCircularProgress-colorPrimary FaceCircularProgress-indeterminate" role="progressbar" style="width: 40px; height: 40px;"><svg class="FaceCircularProgress-svg" viewBox="22 22 44 44"><circle class="FaceCircularProgress-circle FaceCircularProgress-circleIndeterminate" cx="44" cy="44" r="20.2" fill="none" stroke-width="3.6"></circle></svg></div></div>',l.dom.elwebcam.appendChild(l.dom.elwebcamLoad),l.dom.elwebcam.refBox=l.dom.elwebcam.getElementsByClassName("webcamRefBox")[0],l.dom.elwebcam.ref=l.dom.elwebcam.getElementsByClassName("webcamRef")[0],l.dom.elwebcam.webcamCanvas=l.dom.elwebcam.getElementsByClassName("webcamCanvas")[0],l.dom.elwebcam.faceDetact=l.dom.elwebcam.getElementsByClassName("face_detect_age")[0],l.dom.elwebcam.facePosition=l.dom.elwebcam.getElementsByClassName("face_position")[0],l.dom.elwebcam.lookStraight=l.dom.elwebcam.getElementsByClassName("look_straight")[0],l.dom.elwebcam.lighting=l.dom.elwebcam.getElementsByClassName("lighting")[0],l.dom.elwebcam.svgFacePosition=l.dom.elwebcam.getElementsByClassName("svg_face_position")[0],l.dom.elwebcam.ref.width=this.width,l.dom.elwebcam.ref.height=this.height,l.dom.elwebcam.webcamCanvas.width=l.dom.elwebcam.ref.width,l.dom.elwebcam.webcamCanvas.height=l.dom.elwebcam.ref.height;var c=this;(new Ni).start(l.dom.elwebcam.ref,this.errorCameraPermission).then((function(e){c.facePosition=new Ii(l.dom.elwebcam.ref,l.dom.elwebcam.webcamCanvas,l.dom.elwebcam.faceDetact,o.width,o.height,(function(e){return c.setPosition(e)}),(function(){return c.loadingDetection()}),(function(e){return c.brightnessDetection(e)}))})).catch((function(e){new Error(e)}))}},{key:"setPosition",value:function(){var e,t,n,i,r,a,o,s,l=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],u=this.gl,c=this;if(u.intro)return!1;if(1===l.length&&!this.fixStatus){var d=u.dom.elIframe.contentDocument.getElementById("face_age_analyzer");if(d&&u.dom.elwebcam.ref){var p=d.getBoundingClientRect().width,h=d.getBoundingClientRect().height,m=u.dom.elwebcam.ref.offsetWidth,f=u.dom.elwebcam.ref.offsetHeight,g=m-p,y=l[0],v=m*(100*y.width)/100*100/p,b=f*(100*y.height)/100*100/h,k=100*y.yCenter,w=100*(m*(100*y.xCenter)/100-g/2)/p,S=100*y.landmarks[2].y,P=100*y.landmarks[2].x;Math.round(P)-Math.round(w)>v/3&&Math.round(P)-Math.round(w)<v/2.5*1.5&&Math.round(S)-Math.round(k)>b/3&&Math.round(S)-Math.round(k)<b/2.5*1.5?this.lookStraight=!0:this.lookStraight=!1;var x=!1,C=!1,A=!1;if(v>=55&&(v>85?this.logs=Sn.t("Your distance is close to the camera"):(this.logs=null,x=!0)),w>=10&&w<35&&(C=!0),k>=15&&k<75&&(A=!0),x&&C&&A)if(this.logs=null,this.facePosition=!0,this.lookStraight){if(!this.ready){this.ready=!0;var T=3;c.timeInv=setInterval((function(){c.isCountry=T,T<=1?c.setSnap||(c.setSnap=!0,clearInterval(c.timeInv),setTimeout((function(){c.flash=!0,c.capture()}),700)):T=--T}),800)}}else this.ready=!1,this.isCountry=0,clearInterval(c.timeInv);else x?(this.facePosition=!1,this.logs=Sn.t("Keep your face inside the circle"),this.ready=!1,this.isCountry=0,clearInterval(c.timeInv)):(this.facePosition=!1,this.ready=!1,this.isCountry=0,clearInterval(c.timeInv))}}if(u.dom.elwebcam.facePosition.style.backgroundColor=this.facePosition?null!==(e=null===(t=u.customTemplate)||void 0===t?void 0:t.position_accepted_status_color)&&void 0!==e?e:"rgb(8, 211, 144)":null!==(n=null===(i=u.customTemplate)||void 0===i?void 0:i.position_not_accepted_status_color)&&void 0!==n?n:"rgb(239, 55, 134)",u.dom.elwebcam.facePosition.getElementsByClassName("value")[0].innerHTML=this.facePosition?Sn.t("Good"):Sn.t("Not Good"),u.dom.elwebcam.getElementsByClassName("face-ellipse")[0]&&(u.dom.elwebcam.getElementsByClassName("face-ellipse")[0].style.stroke=this.facePosition?"rgba(255,255,255,0.32)":"#fff"),u.dom.elwebcam.lookStraight.style.backgroundColor=this.lookStraight?null!==(r=null===(a=u.customTemplate)||void 0===a?void 0:a.position_accepted_status_color)&&void 0!==r?r:"rgb(8, 211, 144)":null!==(o=null===(s=u.customTemplate)||void 0===s?void 0:s.position_not_accepted_status_color)&&void 0!==o?o:"rgb(239, 55, 134)",u.dom.elwebcam.lookStraight.getElementsByClassName("value")[0].innerHTML=this.lookStraight?Sn.t("Good"):Sn.t("Not Good"),u.dom.elwebcam.getElementsByClassName("assertive")[0]){var j=u.dom.elwebcam.getElementsByClassName("assertive")[0];l.length<=0?j.innerHTML=Sn.t("Please stand in front of the camera"):l.length>1?j.innerHTML=Sn.t("There is more than one person in the picture"):this.logs?j.innerHTML=this.logs:this.isCountry?j.innerHTML='<div class="countryPhoto">'+this.isCountry+"</div>":j.innerHTML=""}}},{key:"brightnessDetection",value:function(){var e,t,n,i,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,a=this.gl;a.dom.elwebcam.lighting.style.backgroundColor=r>50?null!==(e=null===(t=a.customTemplate)||void 0===t?void 0:t.position_accepted_status_color)&&void 0!==e?e:"rgb(8, 211, 144)":null!==(n=null===(i=a.customTemplate)||void 0===i?void 0:i.position_not_accepted_status_color)&&void 0!==n?n:"rgb(239, 55, 134)",a.dom.elwebcam.lighting.getElementsByClassName("value")[0].innerHTML=r>50?Sn.t("Good"):Sn.t("Not Good")}},{key:"capture",value:function(){var e=this,t=this.gl;if(clearInterval(this.timeInv),t.imageWebCam)return!1;if(t.intro)return!1;var n=new Ni;t.imageWebCam=n.snap(t.dom.elwebcam.ref),n.stop();var i='<div><div style="display: flex; justify-content: center;"><div style="position: relative;"><img class="image_per_camera" src="'+t.imageWebCam+'" alt="" style="width: auto; height: '+this.height+"px; max-height: "+this.height+'px; position: relative;"></div></div><div class="faceActionSubmit"><button class="FaceButtonBase-root FaceIconButton-root handle-back" tabindex="0" type="button"><span class="FaceIconButton-label"><svg viewBox="0 0 24 24" fill="currentColor" style="width: 24px; height: 24px;"><path d="M12 5V1L7 6l5 5V7c3.31 0 6 2.69 6 6s-2.69 6-6 6-6-2.69-6-6H4c0 4.42 3.58 8 8 8s8-3.58 8-8-3.58-8-8-8z"></path></svg></span><span class="FaceTouchRipple-root"></span></button><button class="FaceButtonBase-root FaceIconButton-root handle-submit" tabindex="0" type="button"><span class="FaceIconButton-label"><svg viewBox="0 0 24 24" fill="currentColor" style="width: 24px; height: 24px;"><path d="M9 16.17 5.53 12.7a.9959.9959 0 0 0-1.41 0c-.39.39-.39 1.02 0 1.41l4.18 4.18c.39.39 1.02.39 1.41 0L20.29 7.71c.39-.39.39-1.02 0-1.41a.9959.9959 0 0 0-1.41 0L9 16.17z"></path></svg></span><span class="FaceTouchRipple-root"></span></button></div></div>';t.dom.elwebcam.innerHTML=i,t.dom.showUploadAction&&(t.dom.showUploadAction.style.display="none"),t.dom.showCameraAction&&(t.dom.showCameraAction.style.display="none"),t.dom.elwebcam.handleImage=t.dom.elwebcam.getElementsByClassName("handle-submit")[0],t.dom.elwebcam.handleBack=t.dom.elwebcam.getElementsByClassName("handle-back")[0],t.dom.elwebcam.imagePerCamera=t.dom.elwebcam.getElementsByClassName("image_per_camera")[0],t.dom.elwebcam.handleImage.addEventListener("click",(function(){e.handleSubmit(t.imageWebCam)})),t.dom.elwebcam.handleBack.addEventListener("click",(function(){t.imageWebCam=null,e.isCountry=0,e.ready=!1,e.setSnap=!1,e.image=null,e.logs=null,e.facePosition=!1,e.lookStraight=!1,t.dom.showUploadAction&&(t.dom.showUploadAction.style.display="block"),t.dom.showCameraAction&&(t.dom.showCameraAction.style.display="block"),e.handleBack()}))}},{key:"errorCameraPermission",value:function(e){var t=this.gl,n='<div><div class="mainDragArea"><div class="dragArea" style="height: '+this.height+'px;"><svg class="MuiSvgIcon-root MuiSvgIcon-fontSizeMedium css-vubbuv" focusable="false" aria-hidden="true" viewBox="0 0 24 24" data-testid="DirtyLensTwoToneIcon"><path d="M14.12 5H9.88L8.05 7H4v12h7.27c.14-.98.42-2.05-.16-2.43-.89-.59-1.27 2.06-2.8 1.35-1.39-1.12 1.05-1.29.5-3.27-.22-.79-2.28.36-2.4-1.24-.08-1 1.49-.74 1.51-1.49.03-.75-1.03-1.05-.25-1.91.22-.24.71-.26.91-.19.79.27 1.55 1.82 2.51 1.19 1.03-.66-1.88-2.35 0-2.86 1.64-.44 1.31 2.08 2.65 2.44 1.94.52 2.65-4.55 4.41-2.33 1.85 2.33-3.43 2.27-2.85 4.01.34 1.01 2.15-1.2 2.76.53.64 1.83-3.09.82-3.04 1.66.06.83 2.41.55 1.64 2.12-1.14 1.86-3-1.03-3.81.09-.39.57-.09 1.49.13 2.33H20V7h-4.05l-1.83-2zM19 17.15c0 .48-.38.86-.86.86-.47 0-.86-.38-.86-.86s.38-.86.86-.86c.47 0 .86.38.86.86z" opacity=".3"></path><path d="M20 5h-3.17L15 3H9L7.17 5H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 14h-7.02c-.22-.84-.52-1.76-.13-2.33.81-1.12 2.67 1.77 3.81-.09.77-1.57-1.58-1.29-1.64-2.12-.05-.84 3.68.17 3.04-1.66-.61-1.73-2.42.48-2.76-.53-.58-1.74 4.7-1.68 2.85-4.01-1.76-2.22-2.47 2.85-4.41 2.33-1.34-.36-1.01-2.88-2.65-2.44-1.88.51 1.03 2.2 0 2.86-.96.63-1.72-.92-2.51-1.19-.2-.07-.69-.05-.91.19-.78.86.28 1.16.25 1.91-.02.75-1.59.49-1.51 1.49.12 1.6 2.18.45 2.4 1.24.55 1.98-1.89 2.15-.5 3.27 1.53.71 1.91-1.94 2.8-1.35.58.38.3 1.45.16 2.43H4V7h4.05l1.83-2h4.24l1.83 2H20v12z"></path><path d="M17.28 17.15c0 .48.39.86.86.86.48 0 .86-.38.86-.86s-.39-.86-.86-.86c-.48 0-.86.38-.86.86z"></path></svg><div class="headerBox">'+Sn.t("Error")+'</div><div class="support">'+("NotAllowedError"===e||"PermissionDeniedError"===e?Sn.t("Camera permission denied."):Sn.t("Unable to access the camera."))+"</div></div></div></div>";t.dom.elwebcam.innerHTML=n,t.dom.elwebcam.dragArea=t.dom.elwebcam.getElementsByClassName("dragArea")[0]}},{key:"loadingDetection",value:function(){this.gl.dom.elwebcamLoad.style.display="none",this.detection=!0}},{key:"stop",value:function(){(new Ni).stop()}},{key:"updateDimension",value:function(){var e=this.gl,t=this.cnf,n=Hn.getSizeFrame(e,t);this.width=n.width,this.height=n.height,e.dom.elwebcam&&e.dom.elwebcam.ref&&(e.dom.elwebcam.ref.width=this.width,e.dom.elwebcam.ref.height=this.height),e.dom.elwebcam&&e.dom.elwebcam.webcamCanvas&&(e.dom.elwebcam.webcamCanvas.width=e.dom.elwebcam.ref.width,e.dom.elwebcam.webcamCanvas.height=e.dom.elwebcam.ref.height),e.dom.elwebcam&&e.dom.elwebcam.refBox&&(e.dom.elwebcam.refBox.style.minWidth=this.height+"px",e.dom.elwebcam.refBox.style.minHeight=this.height+"px",e.dom.elwebcam.refBox.style.maxHeight=this.height+"px"),e.dom.elwebcam&&e.dom.elwebcam.imagePerCamera&&(e.dom.elwebcam.imagePerCamera.style.Height=this.height+"px",e.dom.elwebcam.imagePerCamera.style.maxHeight=this.height+"px"),e.dom.elwebcam&&e.dom.elwebcam.dragArea&&(e.dom.elwebcam.dragArea.style.height=this.height+"px"),e.dom.elwebcam&&e.dom.elwebcam.svgFacePosition&&(this.height<460?Hn.setAttrs(e.dom.elwebcam.svgFacePosition,{viewBox:"0 0 "+this.width+" "+this.height}):Hn.setAttrs(e.dom.elwebcam.svgFacePosition,{viewBox:"0 0 360 480"}))}}],t&&Ui(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}(),qi=n(643),Ji=n.n(qi);function Yi(e){return Yi="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Yi(e)}function Ki(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,$i(i.key),i)}}function $i(e){var t=function(e){if("object"!=Yi(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=Yi(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Yi(t)?t:t+""}var Zi=function(){return e=function e(t,n,i,r,a){var o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"OK",s=arguments.length>6&&void 0!==arguments[6]?arguments[6]:"Cancel",l=arguments.length>7&&void 0!==arguments[7]&&arguments[7];!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.gl=t,this.onAccept=n,this.onCancel=i,this.title=r,this.text=a,this.titleAccept=o,this.titleCancel=s,this.close=l,this.render()},(t=[{key:"render",value:function(){var e=this,t=this.gl;t.dom.elModal=document.createElement("div"),Hn.setAttrs(t.dom.elModal,{class:"modal_face_age",style:"position: absolute;top: 0;left: 0;right: 0;bottom: 0;z-index: 99999999;text-align: center;background: rgb(0 0 0 / 34%);display: flex;align-items: center;"}),t.dom.elModal.box=document.createElement("div"),Hn.setAttrs(t.dom.elModal.box,{style:"width: 100%;"});var n='<div class="modal_window">'+(this.title?'<div class="title">'+this.title+"</div>":"")+'<div class="body">'+this.text+'</div><div class="action"><div class="sc-1x1y2bq-2 sc-1kkf162-1 dZaMnF lbSetf">'+(this.onCancel?'<div tabindex="0" role="button" width="fullWidth" class="sc-1x1y2bq-3 bLwrg cancel">'+this.titleCancel+"</div>":"")+(this.onAccept?'<div tabindex="0" role="button" width="fullWidth" class="sc-1x1y2bq-3 bLwrg accept">'+this.titleAccept+"</div>":"")+"</div></div></div>";t.dom.elModal.box.innerHTML=n,t.dom.elModal.cancel=t.dom.elModal.box.getElementsByClassName("cancel")[0],t.dom.elModal.accept=t.dom.elModal.box.getElementsByClassName("accept")[0],t.dom.elModal.cancel&&t.dom.elModal.cancel.addEventListener("click",(function(t){e.onCancel()})),t.dom.elModal.accept&&t.dom.elModal.accept.addEventListener("click",(function(t){e.onAccept()})),t.dom.elModal.appendChild(t.dom.elModal.box),t.dom.elFace.analyzer.appendChild(t.dom.elModal)}}])&&Ki(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function Xi(e){return Xi="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Xi(e)}function Qi(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,tr(i.key),i)}}function er(e,t,n){return(t=tr(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function tr(e){var t=function(e){if("object"!=Xi(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=Xi(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Xi(t)?t:t+""}var nr=function(){return e=function e(t,n,i){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:360,a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:480,o=arguments.length>5?arguments[5]:void 0,s=arguments.length>6?arguments[6]:void 0,l=arguments.length>7?arguments[7]:void 0;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),er(this,"fileUrl",null),er(this,"image",null),er(this,"logs",null),er(this,"hasFace",!1),this.el=t,this.gl=n,this.cnf=i,this.width=r,this.height=a,this.handleSubmit=o,this.handleBack=s,this.loading=l,this.handelDragOver=this.handelDragOver.bind(this),this.handelDragLeave=this.handelDragLeave.bind(this),this.handelDrop=this.handelDrop.bind(this),this.handelClick=this.handelClick.bind(this),this.handelChangeInput=this.handelChangeInput.bind(this),this.displayFile=this.displayFile.bind(this),this.showCropMode=this.showCropMode.bind(this),this.updateDimension=this.updateDimension.bind(this),this.render()},t=[{key:"render",value:function(){var e=this,t=this.el,n=this.gl;this.updateDimension(),n.dom.elIframe.contentWindow.addEventListener("resize",this.updateDimension),n.dom.elupload=document.createElement("div");var i='<div class="mainDragArea"><div class="dragArea" style="height: '+this.height+'px;"><svg viewBox="0 0 24 24" fill="currentColor" style="width: 40px; height: 40px;"><path d="M8 16h12V4H8v12zm3.5-4.33l1.69 2.26 2.48-3.09L19 15H9l2.5-3.33z" opacity=".3"></path><path d="M22 16V4c0-1.1-.9-2-2-2H8c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2zm-2 0H8V4h12v12zm-4.33-5.17l-2.48 3.09-1.69-2.25L9 15h10zM4 22h14v-2H4V6H2v14c0 1.1.9 2 2 2z"></path></svg><div class="headerBox dragTitle">'+Sn.t("Drag & Drop")+'</div><div class="headerBox">'+Sn.t("Or")+' <span class="buttonUpload">'+Sn.t("browse")+'</span></div><input type="file" class="upload_file_image" id="upload_file_image" accept="image/jpeg,image/png,image/jpg,image/webp" hidden=""><span class="support">'+Sn.t("Supports: JPEG, JPG, PNG")+"</span></div></div>";n.dom.elupload.innerHTML=i,t.appendChild(n.dom.elupload),n.dom.elupload.dragArea=n.dom.elupload.getElementsByClassName("dragArea")[0],this.dragTitle=n.dom.elupload.getElementsByClassName("dragTitle")[0],n.dom.elupload.buttonUpload=n.dom.elupload.getElementsByClassName("buttonUpload")[0],n.dom.elupload.uploadFile=n.dom.elupload.getElementsByClassName("upload_file_image")[0],n.dom.elupload.dragArea.addEventListener("dragover",this.handelDragOver),n.dom.elupload.dragArea.addEventListener("dragleave",this.handelDragLeave),n.dom.elupload.dragArea.addEventListener("drop",this.handelDrop),n.dom.elupload.buttonUpload.addEventListener("click",(function(){return e.handelClick(n.dom.elupload.uploadFile)})),n.dom.elupload.uploadFile.addEventListener("change",(function(t){return e.handelChangeInput(t)}))}},{key:"handelDragOver",value:function(e){e.preventDefault(),this.dragTitle.innerHTML=Sn.t("Release to Upload"),e.target.classList.add("active")}},{key:"handelDragLeave",value:function(e){this.dragTitle.innerHTML=Sn.t("Drag & Drop"),e.target.classList.remove("active")}},{key:"handelDrop",value:function(e){e.preventDefault();var t=e.dataTransfer.files[0];t&&this.displayFile(t),this.dragTitle.innerHTML=Sn.t("Drag & Drop"),e.target.classList.remove("active")}},{key:"handelClick",value:function(e){e&&e.click()}},{key:"handelChangeInput",value:function(e){var t=e.target.files[0];t&&this.displayFile(t)}},{key:"displayFile",value:function(e){var t=this,n=e.type,i=this.gl;if(["image/png","image/jpeg","image/jpg","image/webp"].includes(n)){var r=new FileReader;r.onload=function(){"image/webp"===n?t.compressImageFromURL(r.result,1).then((function(e){t.fileUrl=e,t.cropImage()})):(t.fileUrl=r.result,t.cropImage())},r.readAsDataURL(e)}else new Zi(i,null,(function(){i.dom.elModal.remove()}),Sn.t("Error"),Sn.t("file not supported, file name: ")+n,"",Sn.t("Re-take"))}},{key:"cropImage",value:function(){var e=this,t=this.el,n=this.gl;n.dom.elupload.remove(),n.dom.elupload=document.createElement("div"),n.dom.showUploadAction&&(n.dom.showUploadAction.style.display="none"),n.dom.showCameraAction&&(n.dom.showCameraAction.style.display="none");var i='<div class="mainDragArea"><div class="cropImg" style="border-radius: 30px; height: '+this.height+'px;"><div style="display: block; width: 100%;" class="face_crop_img"></div></div></div><div class="faceAction_upload"><button class="FaceButtonBase-root FaceIconButton-root handle-back" tabindex="0" type="button"><span class="FaceIconButton-label"><svg viewBox="0 0 24 24" fill="currentColor" style="width: 24px; height: 24px;"><path d="M12 5V1L7 6l5 5V7c3.31 0 6 2.69 6 6s-2.69 6-6 6-6-2.69-6-6H4c0 4.42 3.58 8 8 8s8-3.58 8-8-3.58-8-8-8z"></path></svg></span><span class="FaceTouchRipple-root"></span></button><button class="FaceButtonBase-root FaceIconButton-root handle-submit disable" tabindex="0" type="button"><span class="FaceIconButton-label"><svg viewBox="0 0 24 24" fill="currentColor" style="width: 24px; height: 24px;"><path d="M9 16.17 5.53 12.7a.9959.9959 0 0 0-1.41 0c-.39.39-.39 1.02 0 1.41l4.18 4.18c.39.39 1.02.39 1.41 0L20.29 7.71c.39-.39.39-1.02 0-1.41a.9959.9959 0 0 0-1.41 0L9 16.17z"></path></svg></span><span class="FaceTouchRipple-root"></span></button></div>';n.dom.elupload.innerHTML=i,t.appendChild(n.dom.elupload),n.dom.eluploadLoad=document.createElement("div"),n.dom.eluploadLoad.innerHTML='<div class="loading_request"><div class="FaceCircularProgress-root FaceCircularProgress-colorPrimary FaceCircularProgress-indeterminate" role="progressbar" style="width: 40px; height: 40px;"><svg class="FaceCircularProgress-svg" viewBox="22 22 44 44"><circle class="FaceCircularProgress-circle FaceCircularProgress-circleIndeterminate" cx="44" cy="44" r="20.2" fill="none" stroke-width="3.6"></circle></svg></div></div>',n.dom.elupload.appendChild(n.dom.eluploadLoad),n.dom.elupload.faceCropImg=n.dom.elupload.getElementsByClassName("face_crop_img")[0],n.dom.elupload.cropImgBox=n.dom.elupload.getElementsByClassName("cropImg")[0],n.dom.elupload.faceCropImg.image=document.createElement("img"),Hn.setAttrs(n.dom.elupload.faceCropImg.image,{id:"face_image",src:this.fileUrl}),n.dom.elupload.faceCropImg.appendChild(n.dom.elupload.faceCropImg.image);var r=this;new Ii(n.dom.elupload.faceCropImg.image,null,null,this.width,this.height,(function(e){return r.showCropMode(e)}),(function(){return r.loadingDetection()}),null,"image"),n.dom.elupload.handleImage=n.dom.elupload.getElementsByClassName("handle-submit")[0],n.dom.elupload.handleBack=n.dom.elupload.getElementsByClassName("handle-back")[0],n.dom.elupload.handleImage.addEventListener("click",(function(){if(!e.hasFace)return!1;r.handleSubmit(r.image)})),n.dom.elupload.handleBack.addEventListener("click",(function(){n.dom.elupload.innerHTML="",r.image=null,n.dom.showUploadAction&&(n.dom.showUploadAction.style.display="block"),n.dom.showCameraAction&&(n.dom.showCameraAction.style.display="block"),r.handleBack()}))}},{key:"showCropMode",value:function(e){var t=this.gl,n=t.dom.elupload.faceCropImg.image.naturalWidth,i=t.dom.elupload.faceCropImg.image.naturalHeight,r=this,a=e[0];if(!a)return new Zi(t,null,(function(){t.dom.elupload.innerHTML="",r.image=null,t.dom.showUploadAction&&(t.dom.showUploadAction.style.display="block"),t.dom.showCameraAction&&(t.dom.showCameraAction.style.display="block"),r.render(),t.dom.elModal.remove()}),Sn.t("Error"),Sn.t("The face is not visible in the picture"),"",Sn.t("Re-take")),null;t.dom.elupload.handleImage.classList.remove("disable"),this.hasFace=!0;var o=n*(100*a.width)/100,s=i*(100*a.height)/100,l=i*(100*a.yCenter)/100,u=n*(100*a.xCenter)/100,c=document.createElement("div");e.length<=0?c.innerHTML='<div style="background: rgb(255, 255, 255); border-radius: 10px; padding: 8px 15px; margin-bottom: 10px; position: absolute; top: 15px; left: 10px; right: 10px;">Please stand in front of the camera</div>':e.length>1&&(c.innerHTML='<div style="background: rgb(255, 255, 255); border-radius: 10px; padding: 8px 15px; margin-bottom: 10px; position: absolute; top: 15px; left: 10px; right: 10px;">There is more than one person in the picture, please select one person\'s picture.</div>'),t.dom.elupload.faceCropImg.appendChild(c);var d=new(Ji())(t.dom.elupload.faceCropImg.image,{aspectRatio:15/18,guides:!1,zoomable:!1,data:{x:u/1.6,y:l/2.5,width:o+2*(u-u/1.6),height:s+2*(l-l/2.5)},crop:function(e){var t=d.getCroppedCanvas({maxWidth:4096,maxHeight:4096}).toDataURL("image/jpeg");r.image=t}})}},{key:"loadingDetection",value:function(){this.gl.dom.eluploadLoad.style.display="none"}},{key:"updateDimension",value:function(){var e=this.gl,t=this.cnf,n=Hn.getSizeFrame(e,t);this.width=n.width,this.height=n.height,e.dom.elupload&&e.dom.elupload.dragArea&&(e.dom.elupload.dragArea.style.height=this.height+"px"),e.dom.elupload&&e.dom.elupload.cropImgBox&&(e.dom.elupload.cropImgBox.style.height=this.height+"px")}},{key:"compressImageFromURL",value:function(e,t){return new Promise((function(n,i){var r=new Image;r.crossOrigin="Anonymous",r.src=e,r.onload=function(){var e=document.createElement("canvas"),i=e.getContext("2d");e.width=r.width,e.height=r.height,i.drawImage(r,0,0,e.width,e.height);var a=e.toDataURL("image/jpeg",t);n(a)},r.onerror=function(e){return i(e)}}))}}],t&&Qi(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function ir(e){return ir="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ir(e)}function rr(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,ar(i.key),i)}}function ar(e){var t=function(e){if("object"!=ir(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=ir(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==ir(t)?t:t+""}var or=function(){return e=function e(t,n){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3&&void 0!==arguments[3]&&arguments[3];!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.el=t,this.ctx=n,this.w=n.w,this.gl=n.w.globals,this.pr=i,this.unitPrice=n.w.config.currency?n.w.config.currency:"$",this.routine=r,this.render()},(t=[{key:"render",value:function(){var e,t,n,i,r=this,a=this.el,o=this.w.globals,s=this.w.config,l=this.pr,u=document.createElement("div");Hn.setAttrs(u,{class:"product_item_box","data-id":l.id,style:""});var c=null===(e=o.customTemplate)||void 0===e?void 0:e.product_shadow,d=null===(t=o.customTemplate)||void 0===t?void 0:t.product_border_width,p=null===(n=o.customTemplate)||void 0===n?void 0:n.product_border_color,h=null===(i=o.customTemplate)||void 0===i?void 0:i.product_padding,m="";m+=c?"box-shadow: 0 0 5px 0 #0000002b;":"",m+=h?"padding: "+h+"px;":"padding: 10px;",m+=d&&p?"border: "+d+"px solid "+p+";":p?"border: 1px solid "+p+";":"";var f=document.createElement("div");Hn.setAttrs(f,{class:"product_item",style:m});var g=document.createElement("a");if(Hn.setAttrs(g,{class:"product_item_link","data-id":l.id,target:"_blank",href:l.url?l.url:"#"}),!this.routine&&void 0!==l.routineGroups&&l.routineGroups){var y=document.createElement("div");Hn.setAttrs(y,{class:"routine_group"});var v=[];Array.isArray(l.routineGroups)?l.routineGroups.map((function(e){var t=!0;s.routinesSupport.length>0&&(s.routinesSupport.includes(e)||(t=!1));var n=o.customRoutineGroup.find((function(t){return t.key.toLowerCase()===e.toLowerCase()}));n&&t&&!v.includes(Sn.t(n.title))&&v.push(Sn.t(n.title))})):"object"===ir(l.routineGroups)&&(v=[],Object.keys(l.routineGroups).forEach((function(e){l.routineGroups[e].map((function(t){var n=!0;s.routinesSupport.length>0&&(s.routinesSupport.includes(t)||(n=!1));var i=o.customRoutineGroup.find((function(n){return n.key.toLowerCase()===t.toLowerCase()&&n.status.includes(e)}));i&&n&&!v.includes(Sn.t(i.title))&&v.push(Sn.t(i.title))}))}))),v.length>0&&(y.innerHTML="<span>"+v.join(", ")+"</span>",g.appendChild(y))}var b=document.createElement("img");Hn.setAttrs(b,{class:"product_image",src:l.image,alt:l.title}),g.appendChild(b);var k=document.createElement("h2");Hn.setAttrs(k,{class:"product_title"}),k.innerText=Sn.t(l.title),g.appendChild(k);var w=document.createElement("p");if(Hn.setAttrs(w,{class:"product_description"}),w.innerText=Sn.t(l.description),g.appendChild(w),f.appendChild(g),void 0!==l.problems&&l.problems){var S=document.createElement("div");Hn.setAttrs(S,{class:"product_problem_support swiper myProductProblem"});var P=document.createElement("div");Hn.setAttrs(P,{class:"swiper-wrapper"});var x=[];l.problems.map((function(e){if(!x.includes(e)){x.push(e);var t=document.createElement("div");Hn.setAttrs(t,{class:"swiper-slide"});var n=document.createElement("div");Hn.setAttrs(n,{class:"product_problem_item"}),Object.keys(o.problems).forEach((function(t,i){var r=o.problems[t];t.toLowerCase()===e.toLowerCase()&&(n.innerText=Sn.t(r))})),t.appendChild(n),P.appendChild(t)}})),S.appendChild(P),f.appendChild(S)}var C=document.createElement("div");Hn.setAttrs(C,{class:"product_price"});var A=document.createElement("span");Hn.setAttrs(A,{class:"price"});var T=document.createElement("span");if(Hn.setAttrs(T,{class:"old"}),void 0!==l.offerPrice&&l.offerPrice>0&&l.offerPrice<l.price?(A.innerText=this.unitPrice+l.offerPrice,T.innerText=this.unitPrice+l.price,C.appendChild(A),C.appendChild(T),f.appendChild(C)):l.price&&(A.innerText=this.unitPrice+l.price,C.appendChild(A),f.appendChild(C)),void 0!==l.variables&&l.variables){var j=document.createElement("div");Hn.setAttrs(j,{class:"product_variables"}),Object.keys(l.variables).forEach((function(e,t){var n=l.variables[e],i=document.createElement("div");Hn.setAttrs(i,{class:"item"});var a=document.createElement("label");a.innerText=Sn.t(n.title),i.appendChild(a);var o=document.createElement("select");Hn.setAttrs(o,{class:"product_variables_select",name:e,"data-id":l.id}),Array.isArray(n.option)&&n.option.forEach((function(e,t){var n=document.createElement("option");n.value=e.value,n.text=Sn.t(e.label),0===t&&n.setAttribute("selected",!0),o.appendChild(n)})),o.addEventListener("change",(function(e){n.option.forEach((function(t,n){t.value===e.target.value&&(t.price?void 0!==t.offerPrice&&t.offerPrice>0&&t.offerPrice<t.price?(A.innerText=r.unitPrice+t.offerPrice,T&&T.remove(),T=document.createElement("span"),Hn.setAttrs(T,{class:"old"}),T.innerText=r.unitPrice+t.price,C.appendChild(T)):t.price&&(A.innerText=r.unitPrice+t.price,T&&T.remove()):void 0!==l.offerPrice&&l.offerPrice>0&&l.offerPrice<l.price?(A.innerText=r.unitPrice+l.offerPrice,T&&T.remove(),T=document.createElement("span"),Hn.setAttrs(T,{class:"old"}),T.innerText=r.unitPrice+l.price,C.appendChild(T)):l.price&&(A.innerText=r.unitPrice+l.price,T&&T.remove()))}))})),i.appendChild(o),j.appendChild(i)})),f.appendChild(j)}if(s.showAddToCard){var _=document.createElement("button");Hn.setAttrs(_,{class:"product_add_to_cart","data-id":l.id}),_.innerText=Sn.t("Add to cart"),_.addEventListener("click",(function(e){var t=e.target.getAttribute("data-id"),n=e.target.parentElement.querySelectorAll(".product_variables_select"),i=[];n&&n.forEach((function(e){if(e&&e.options.length>0){var t=e.getAttribute("name"),n=(e.getAttribute("data-id"),e.selectedIndex);if(-1!==n){var r=e.options[n];i[t]=r.value}}})),e.target.classList.contains("active")||(e.target.classList.add("active"),e.target.innerText=Sn.t("Add again")),o.dom.elRecommendation.checkOut&&(o.dom.elRecommendation.checkOut.style.display="block"),o.productAddToCart.find((function(e){return e.id===t}))||o.productAddToCart.push({id:t,variable:i}),o.onAddToCart&&o.onAddToCart([{id:t,variable:i}]);var r=document.createElement("div");Hn.setAttrs(r,{style:"bottom: 20px;\n left: 50%;\n margin-left: -150px;\n width: 300px;\n background: #000000;\n display: block;\n color: #fff;\n padding: 15px;\n border-radius: 10px; position: fixed;\n font-size: 12px;\n text-align: center;"}),r.innerHTML=Sn.t("Product added to cart"),a.appendChild(r),setTimeout((function(){r.remove()}),1e3),o.gtmConfig&&ui("click","addCart","product_name",l.title)})),f.appendChild(_)}g.addEventListener("click",(function(e){var t=r.getParentAnchor(e.target);if(null!==t){var n=t.getAttribute("data-id");o.onClickProduct&&o.onClickProduct(n),o.gtmConfig&&ui("view","product","product_name",l.title)}})),u.appendChild(f),a.appendChild(u)}},{key:"getParentAnchor",value:function(e){for(;null!==e;){if(e.tagName&&"A"===e.tagName.toUpperCase())return e;e=e.parentNode}return null}}])&&rr(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}(),sr={format:"image/png",quality:.92,width:void 0,height:void 0,Canvas:void 0,crossOrigin:void 0};function lr(e){return lr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},lr(e)}function ur(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,cr(i.key),i)}}function cr(e){var t=function(e){if("object"!=lr(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=lr(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==lr(t)?t:t+""}var dr=function(){return e=function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=arguments.length>2&&void 0!==arguments[2]&&arguments[2];!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.ctx=t,this.w=t.w,this.gl=t.w.globals,this.dataReport=n,this.single=i,this.render()},(t=[{key:"render",value:function(){var e=this.w.globals,t=(this.w.config,this.dataReport.damagePercentage?this.dataReport.damagePercentage:0);e.dom.elSkinReport=document.createElement("div"),Hn.setAttrs(e.dom.elSkinReport,{class:"modal_face_age skin_report",style:"position: absolute;top: 0;left: 0;right: 0;bottom: 0;z-index: 99999999;text-align: center;background: rgb(0 0 0 / 34%);display: flex;"+(this.single?"padding-top: 60px":"align-items: center;")}),e.dom.elSkinReport.box=document.createElement("div"),Hn.setAttrs(e.dom.elSkinReport.box,{style:"width: 100%;"});var n='<div class="modal_window"><div class="title">'+Sn.t("My Skin Report")+'</div><div class="close_btn"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32" width="32px" height="32px"><line style="fill:none;stroke:#000000;stroke-width:2;stroke-miterlimit:10;" x1="6.5" y1="25.5" x2="25.5" y2="6.5"/><line style="fill:none;stroke:#000000;stroke-width:2;stroke-miterlimit:10;" x1="6.5" y1="6.5" x2="25.5" y2="25.5"/></svg></div><div class="body"> <div class="chart"> <canvas id="radarChart" width="100%" height="200"></canvas> </div> <div class="score"></div> <div class="problem_items"></div></div></div>';if(e.dom.elSkinReport.box.innerHTML=n,e.dom.elSkinReport.close=e.dom.elSkinReport.box.getElementsByClassName("close_btn")[0],e.dom.elSkinReport.problemItems=e.dom.elSkinReport.box.getElementsByClassName("problem_items")[0],e.dom.elSkinReport.score=e.dom.elSkinReport.box.getElementsByClassName("score")[0],e.dom.elSkinReport.appendChild(e.dom.elSkinReport.box),e.dom.elSkinReport.close.addEventListener("click",(function(t){e.dom.elSkinReport.remove(),e.gtmConfig&&ui("click","closeSkinInfo","skin_analysis","Face Age Skin Analysis")})),t){var i=t&&t>0?100-parseInt(t):99,r=i<=60?Sn.t("Bad"):i>=90?Sn.t("Good"):Sn.t("Fair");e.dom.elSkinReport.score.innerHTML="<div>"+Sn.t("Skin Health")+': <span style="margin-left: 0;display: inline-block;font-weight: bold;">'+i+'%</span></div><div class="type">'+r+"</div>"}if(this.dataReport.problems.length>0&&this.dataReport.problems.map((function(t){var n=document.createElement("div");n.innerHTML='<div class="box">\n <div class="progress_box_problem">\n <div class="progress_image">\n <img class="problem_image" src="" alt="'+Sn.t(t.title)+'">\n </div>\n <div class="progress_item">\n <div style="display: flex; justify-content: space-between; align-items: center;">\n <h2>'+Sn.t(t.title)+'</h2>\n <span class="percentage">'+parseInt(t.number)+("Percent"===t.format?"%":"")+'</span>\n </div>\n <div class="progress-bar-container">\n <div class="title_bar">\n <span class="status-text">'+Sn.t("Good")+'</span>\n <span class="status-text" style="margin-left: auto;">'+Sn.t("Bad")+'</span>\n </div>\n <div class="progress-bar">\n <div class="bar"><div></div><div></div><div></div></div>\n <div class="progress-indicator" style="left: '+("Percent"===t.format?t.number+"%":(t.number<=4?7.3*t.number:t.number>=9?7.3*t.number+60.66>=100?100:7.3*t.number+60.66:7.3*t.number+30.33)+"%")+'"></div>\n </div>\n </div>\n </div>\n </div>\n '+(t.summary?'<p class="description">'+Sn.t(t.summary)+"</p>":"")+"\n</div>";var i,r,a=t.areas&&""!==t.areas?t.areas:null,o=t.masks&&""!==t.masks?t.masks:null,s="-1"===o?a:o;if(void 0===(null==t?void 0:t.showInOverview)||parseInt(null==t?void 0:t.showInOverview),s){var l=void 0===(null==t?void 0:t.isSVG)||1===parseInt(null==t?void 0:t.isSVG)?"data:image/svg+xml;base64,"+s:"data:image/png;base64,"+s;(i=[e.imageSubmit,l],void 0===i&&(i=[]),void 0===r&&(r={}),new Promise((function(e){var t=(r=Object.assign({},sr,r)).Canvas?new r.Canvas:window.document.createElement("canvas"),n=r.Image||window.Image,a=i.map((function(e){return new Promise((function(t,i){"Object"!==e.constructor.name&&(e={src:e});var a=new n;a.crossOrigin=r.crossOrigin,a.onerror=function(){return i(new Error("Couldn't load image"))},a.onload=function(){return t(Object.assign({},e,{img:a}))},a.src=e.src}))})),o=t.getContext("2d");e(Promise.all(a).then((function(e){var n=function(t){return r[t]||Math.max.apply(Math,e.map((function(e){return e.img[t]})))};return t.width=n("width"),t.height=n("height"),e.forEach((function(e){return o.globalAlpha=e.opacity?e.opacity:1,o.drawImage(e.img,e.x||0,e.y||0)})),r.Canvas&&"image/jpeg"===r.format?new Promise((function(e,n){t.toDataURL(r.format,{quality:r.quality,progressive:!1},(function(t,i){t?n(t):e(i)}))})):t.toDataURL(r.format,r.quality)})))}))).then((function(e){return n.querySelector(".problem_image").src=e}))}else n.querySelector(".problem_image").src=e.imageSubmit;e.dom.elSkinReport.problemItems.appendChild(n)})),this.dataReport.problems.length>0){var a=this.dataReport.problems.map((function(e){return"Percent"===e.format?"'"+Sn.t(e.title)+"'":null}));a=a.filter((function(e){return e}));var o=this.dataReport.problems.map((function(e){return"Percent"===e.format?parseInt(e.number):null}));o=o.filter((function(e){return e}));var s=this.dataReport.problems.map((function(e){return"Percent"===e.format?e.colors:null}));s=s.filter((function(e){return e}));var l=document.createElement("script");l.type="text/javascript",l.text="var ctx = document.getElementById('radarChart').getContext('2d');\n var radarChart = new Chart(ctx, {\n type: 'polarArea',\n data: {\n labels: ["+a.join(", ")+"],\n datasets: [{\n data: ['"+o.join("', '")+"'],\n backgroundColor: ['"+s.join("', '")+'\'],\n }]\n },\n options: {\n responsive: true,\n plugins: {\n legend: false,\n tooltip: true,\n },\n scale: {\n pointLabels :{\n wight: "10px",\n } },\n elements: {\n line: {\n tension: 0.2 }\n }\n }\n })',e.dom.elSkinReport.appendChild(l)}e.dom.docIframe.appendChild(e.dom.elSkinReport)}}])&&ur(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function pr(e){return pr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},pr(e)}function hr(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,mr(i.key),i)}}function mr(e){var t=function(e){if("object"!=pr(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=pr(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==pr(t)?t:t+""}var fr=function(){return e=function e(t,n,i){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.el=t,this.pv=i,this.ctx=n,this.w=n.w,this.gl=n.w.globals,this.co=n.w.config,this.dataReport=r,this.updateDimension=this.updateDimension.bind(this),this.updateSlider=this.updateSlider.bind(this),this.updateSetData=this.updateSetData.bind(this),this.render()},t=[{key:"render",value:function(){var e=this,t=this.el,n=this.w.globals,i=this.w.config,r="morning";n.dom.elFace.style.display="none",n.dom.elRoutines=document.createElement("div"),Hn.setAttrs(n.dom.elRoutines,{class:"recommendation_products",style:"background: #fff; min-height: 100%;"}),n.dom.elRoutines.box=document.createElement("div"),Hn.setAttrs(n.dom.elRoutines.box,{style:"width: 100%;"});var a='<div class="recommendation_modal_window"> <div class="header_tools"> <div class="back"><svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M15.56 5.15999L13.2 2.79999L0 16L13.2 29.2L15.56 26.84L4.72 16L15.56 5.15999Z" fill="black"/></svg></div> <div class="title">'+Sn.t("My Routines")+'</div> <div class="info"><svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M4.66663 24.6533L12.6666 16.64L18 21.9733L29.3333 9.22668L27.4533 7.34668L18 17.9733L12.6666 12.64L2.66663 22.6533L4.66663 24.6533Z" fill="black"/></svg></div> <div class="refresh"><svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M23.5333 8.46668C21.6 6.53334 18.9467 5.33334 16 5.33334C10.1067 5.33334 5.34668 10.1067 5.34668 16C5.34668 21.8933 10.1067 26.6667 16 26.6667C20.9733 26.6667 25.12 23.2667 26.3067 18.6667H23.5333C22.44 21.7733 19.48 24 16 24C11.5867 24 8.00001 20.4133 8.00001 16C8.00001 11.5867 11.5867 8.00001 16 8.00001C18.2133 8.00001 20.1867 8.92001 21.6267 10.3733L17.3333 14.6667H26.6667V5.33334L23.5333 8.46668Z" fill="black"/></svg></div>'+("modal"===i.displayModel?' <div class="close"><svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M25.3333 8.54663L23.4533 6.66663L16 14.12L8.54667 6.66663L6.66667 8.54663L14.12 16L6.66667 23.4533L8.54667 25.3333L16 17.88L23.4533 25.3333L25.3333 23.4533L17.88 16L25.3333 8.54663Z" fill="black"/></svg></div>':"")+' </div> <div class="body"> <div class="main"> <div class="header_routine_box"> <div class="header_product header_routine"> <div class="title header_routine_title" style="font-size: 16px">'+Sn.t("Your")+" "+Sn.t("Morning")+" "+Sn.t("Routine")+'</div> <div class="action"> <button class="routine_btn morning active"><svg width="21" height="20" viewBox="0 0 21 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M10.6243 12.8121C11.3617 12.8121 11.9885 12.5541 12.5046 12.0379C13.0208 11.5217 13.2789 10.895 13.2789 10.1576C13.2789 9.42022 13.0208 8.79345 12.5046 8.27729C11.9885 7.76112 11.3617 7.50304 10.6243 7.50304C9.88695 7.50304 9.26018 7.76112 8.74402 8.27729C8.22786 8.79345 7.96978 9.42022 7.96978 10.1576C7.96978 10.895 8.22786 11.5217 8.74402 12.0379C9.26018 12.5541 9.88695 12.8121 10.6243 12.8121ZM10.6243 14.5818C9.40028 14.5818 8.3569 14.1505 7.49417 13.2877C6.63145 12.425 6.20008 11.3816 6.20008 10.1576C6.20008 8.93355 6.63145 7.89016 7.49417 7.02744C8.3569 6.16471 9.40028 5.73335 10.6243 5.73335C11.8484 5.73335 12.8917 6.16471 13.7545 7.02744C14.6172 7.89016 15.0486 8.93355 15.0486 10.1576C15.0486 11.3816 14.6172 12.425 13.7545 13.2877C12.8917 14.1505 11.8484 14.5818 10.6243 14.5818ZM4.43039 11.0424H0.890991V9.27274H4.43039V11.0424ZM20.3577 11.0424H16.8183V9.27274H20.3577V11.0424ZM9.73948 3.96365V0.424255H11.5092V3.96365H9.73948ZM9.73948 19.8909V16.3515H11.5092V19.8909H9.73948ZM5.66917 6.39698L3.43493 4.25123L4.69584 2.94607L6.81948 5.15819L5.66917 6.39698ZM16.5528 17.3691L14.4071 15.1349L15.5795 13.9182L17.8137 16.064L16.5528 17.3691ZM14.3849 5.20244L16.5307 2.96819L17.8358 4.2291L15.6237 6.35274L14.3849 5.20244ZM3.41281 16.0861L5.64705 13.9403L6.86372 15.1127L4.71796 17.347L3.41281 16.0861Z" fill="#1D1B20"/></svg></button> <button class="routine_btn night"><svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8.37575 16.1212C6.16363 16.1212 4.28332 15.347 2.73484 13.7985C1.18635 12.25 0.412109 10.3697 0.412109 8.15758C0.412109 5.94546 1.18635 4.06515 2.73484 2.51667C4.28332 0.968182 6.16363 0.193939 8.37575 0.193939C8.58221 0.193939 8.78499 0.201313 8.98408 0.21606C9.18317 0.230808 9.37858 0.252929 9.57029 0.282424C8.96565 0.710101 8.48267 1.26682 8.12135 1.95258C7.76004 2.63833 7.57938 3.37939 7.57938 4.17576C7.57938 5.50303 8.04393 6.63121 8.97302 7.5603C9.90211 8.48939 11.0303 8.95394 12.3576 8.95394C13.1687 8.95394 13.9134 8.77328 14.5918 8.41197C15.2702 8.05066 15.8232 7.56768 16.2509 6.96303C16.2804 7.15475 16.3025 7.35015 16.3173 7.54924C16.332 7.74833 16.3394 7.95111 16.3394 8.15758C16.3394 10.3697 15.5651 12.25 14.0167 13.7985C12.4682 15.347 10.5879 16.1212 8.37575 16.1212ZM8.37575 14.3515C9.67352 14.3515 10.8386 13.9939 11.8709 13.2786C12.9032 12.5634 13.6553 11.6306 14.1273 10.4803C13.8323 10.554 13.5374 10.613 13.2424 10.6573C12.9475 10.7015 12.6525 10.7236 12.3576 10.7236C10.5436 10.7236 8.99883 10.0858 7.72317 8.81015C6.44751 7.5345 5.80969 5.9897 5.80969 4.17576C5.80969 3.88081 5.83181 3.58586 5.87605 3.29091C5.92029 2.99596 5.97928 2.70101 6.05302 2.40606C4.90272 2.87798 3.96994 3.6301 3.25469 4.66242C2.53943 5.69475 2.18181 6.8598 2.18181 8.15758C2.18181 9.86828 2.78645 11.3283 3.99575 12.5376C5.20504 13.7469 6.66504 14.3515 8.37575 14.3515Z" fill="#1D1B20"/></svg></button> </div> </div> <div class="header_routine_des">'+Sn.t("Check how you can improve your skin with the proper product and routine")+'</div> </div> <div class="routine"> </div> </div> </div></div>';n.dom.elRoutines.box.innerHTML=a,n.dom.elRoutines.appendChild(n.dom.elRoutines.box),t.appendChild(n.dom.elRoutines),n.dom.elRoutines.routine=n.dom.elRoutines.box.querySelector(".routine"),n.dom.elRoutines.back=n.dom.elRoutines.box.querySelector(".back"),n.dom.elRoutines.info=n.dom.elRoutines.box.querySelector(".info"),n.dom.elRoutines.refresh=n.dom.elRoutines.box.querySelector(".refresh"),n.dom.elRoutines.close=n.dom.elRoutines.box.querySelector(".close"),n.dom.elRoutines.morning=n.dom.elRoutines.box.querySelector(".morning"),n.dom.elRoutines.night=n.dom.elRoutines.box.querySelector(".night"),n.dom.elRoutines.routineTitle=n.dom.elRoutines.box.querySelector(".header_routine_title"),n.dom.elRoutines.recommendation_modal=n.dom.elRoutines.box.querySelector(".recommendation_modal_window"),this.updateSlider(this.ctx,"morning"),n.dom.elRoutines.back.addEventListener("click",(function(t){clearInterval(n.checkStateProductLoader),n.statusRoutinDimension=!1,i.showProducts?(n.dom.elRoutines.remove(),n.statusProductDimension=!0,new br(n.dom.docIframe,e.ctx,e.pv,e.dataReport),n.gtmConfig&&ui("click","backRecommendation","skin_analysis","Face Age Skin Analysis")):(n.dom.elRoutines.remove(),n.heightElIframeOldSetStatus=!1,n.dom.elIframe.style.height=n.heightElIframeOld+"px",setTimeout((function(){n.dom.elFace.style.display="flex"}),100),n.gtmConfig&&ui("click","backResults","skin_analysis","Face Age Skin Analysis"))})),n.dom.elRoutines.info.addEventListener("click",(function(){new dr(e.ctx,e.dataReport,!0),n.gtmConfig&&ui("click","openSkinInfo","skin_analysis","Face Age Skin Analysis")})),n.dom.elRoutines.refresh.addEventListener("click",(function(){clearInterval(n.checkStateProductLoader),n.statusRoutinDimension=!1,n.dom.elRoutines.remove(),n.dom.elRecommendation&&n.dom.elRecommendation.remove(),n.heightElIframeOldSetStatus=!1,n.dom.elIframe.style.height=n.heightElIframeOld+"px",n.dom.elInfo&&n.dom.elInfo.remove(),n.dom.elForm&&n.dom.elForm.remove(),n.dom.elFace&&n.dom.elFace.remove(),n.activeQuiz=0,n.formData={},n.imageSubmit=null,n.productLoader=!1,n.productLists=[],n.productAction=[],n.productAddToCart=[],n.intro=!0,e.co.intro=!0,new Ta(n.dom.docIframe,e.ctx,e.pv),n.onRefresh&&n.onRefresh(),n.gtmConfig&&ui("click","retakeAnalysis","skin_analysis","Face Age Skin Analysis")})),n.dom.elRoutines.close&&n.dom.elRoutines.close.addEventListener("click",(function(e){clearInterval(n.checkStateProductLoader),n.dom.elModalFace.classList.remove("is-open"),n.onCloseModal&&n.onCloseModal(),n.gtmConfig&&ui("click","closeModal","skin_analysis","Face Age Skin Analysis")})),n.dom.elRoutines.morning.addEventListener("click",(function(){"morning"!==r&&(r="morning",n.dom.elRoutines.routineTitle.innerText=Sn.t("Your")+" "+Sn.t("Morning")+" "+Sn.t("Routine"),n.dom.elRoutines.morning.classList.add("active"),n.dom.elRoutines.night.classList.remove("active"),e.updateSlider(e.ctx,"morning"),n.gtmConfig&&ui("click","routineMorning","skin_analysis","Face Age Skin Analysis"))})),n.dom.elRoutines.night.addEventListener("click",(function(){"night"!==r&&(r="night",n.dom.elRoutines.routineTitle.innerText=Sn.t("Your")+" "+Sn.t("Night")+" "+Sn.t("Routine"),n.dom.elRoutines.night.classList.add("active"),n.dom.elRoutines.morning.classList.remove("active"),e.updateSlider(e.ctx,"night"),n.gtmConfig&&ui("click","routineNight","skin_analysis","Face Age Skin Analysis"))})),setTimeout((function(){e.updateDimension()}),500),n.dom.elIframe.contentWindow.addEventListener("resize",this.updateDimension),n.resizeObserverRoutin=new ResizeObserver((function(){e.updateDimension()})),n.resizeObserverRoutin.observe(n.dom.elRoutines.recommendation_modal),n.onDisplayRoutines&&n.onDisplayRoutines(n.productLists),n.gtmConfig&&ui("view","displayRoutines","skin_analysis","Face Age Skin Analysis")}},{key:"updateSlider",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"morning",i=(e.w,e.w.globals);e.w.config,i.productLoader?(i.dom.elRoutines.routine.innerHTML='<div class="face_age"><div class="loading_request_pr" style="background: transparent"><div class="FaceCircularProgress-root FaceCircularProgress-colorPrimary FaceCircularProgress-indeterminate" role="progressbar" style="width: 40px; height: 40px; color: var(--basic)"><svg class="FaceCircularProgress-svg" viewBox="22 22 44 44"><circle class="FaceCircularProgress-circle FaceCircularProgress-circleIndeterminate" cx="44" cy="44" r="20.2" fill="none" stroke-width="3.6"></circle></svg></div></div></div>',i.checkStateProductLoader=setInterval((function(){i.productLoader||(t.updateSetData(e,n),clearInterval(i.checkStateProductLoader))}),100)):this.updateSetData(e,n)}},{key:"updateSetData",value:function(e,t){e.w;var n=e.w.globals,i=e.w.config,r=[],a=0;n.dom.elRoutines.routine.innerHTML="",n.customRoutineGroup&&n.customRoutineGroup.map((function(o){if(o.status.includes(t)){var s=o.title,l=o.content,u=!0;if(i.routinesSupport.length>0&&(i.routinesSupport.includes(o.key)||(u=!1)),u){a++;var c=document.createElement("div");Hn.setAttrs(c,{class:"routine_item"});var d=document.createElement("div");if(Hn.setAttrs(d,{class:"routine_title"}),d.innerHTML="<span>"+a+".</span>"+Sn.t(s),c.appendChild(d),l){var p=document.createElement("div");Hn.setAttrs(p,{class:"routine_content"}),p.innerText=Sn.t(l),c.appendChild(p)}var h=document.createElement("div");if(Hn.setAttrs(h,{class:"products"}),n.productLists&&(n.productLists.map((function(i){if(void 0!==i.routineGroups&&i.routineGroups){var a=[];if(Array.isArray(i.routineGroups))i.routineGroups.map((function(e){var i=n.customRoutineGroup.find((function(n){return n.key.toLowerCase()===e.toLowerCase()&&n.status.includes(t)}));i&&!a.includes(i.key.toLowerCase())&&a.push(i.key.toLowerCase())}));else if("object"===pr(i.routineGroups)){a=[];var s=i.routineGroups[t];s&&s.map((function(e){var i=n.customRoutineGroup.find((function(n){return n.key.toLowerCase()===e.toLowerCase()&&n.status.includes(t)}));i&&!a.includes(i.key.toLowerCase())&&a.push(i.key.toLowerCase())}))}a.includes(o.key.toLowerCase())&&(new or(h,e,i,!0),r.push(i.id))}})),n.productAddToCart.length>0)){var m=h.querySelectorAll(".product_item_box");m.forEach((function(e,t){var i=m[t],r=i.getAttribute("data-id");n.productAddToCart.find((function(e){return e.id===r}))&&(i.querySelector(".product_add_to_cart").classList.contains("active")||(i.querySelector(".product_add_to_cart").classList.add("active"),i.querySelector(".product_add_to_cart").innerText=Sn.t("Add again")))}))}c.appendChild(h),n.dom.elRoutines.routine.appendChild(c);var f=document.createElement("script");f.type="text/javascript",f.text="new Swiper('.myProductProblem', {\n slidesPerView: 'auto',\n spaceBetween: 6,\n });",n.dom.elRoutines.routine.appendChild(f)}}}))}},{key:"updateDimension",value:function(){var e=this.w.globals;if(!e.statusRoutinDimension)return!1;"section"===this.co.displayModel&&(e.heightProduct=e.dom.elRoutines.recommendation_modal.scrollHeight,e.heightElIframeOldSetStatus||(e.heightElIframeOld=e.dom.elIframe.clientHeight,e.heightElIframeOldSetStatus=!0),e.dom.elIframe.style.height=e.heightProduct+"px")}}],t&&hr(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function gr(e){return gr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},gr(e)}function yr(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,vr(i.key),i)}}function vr(e){var t=function(e){if("object"!=gr(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=gr(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==gr(t)?t:t+""}var br=function(){return e=function e(t,n,i){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.el=t,this.ctx=n,this.pv=i,this.w=n.w,this.gl=n.w.globals,this.co=n.w.config,this.dataReport=r,this.updateDimension=this.updateDimension.bind(this),this.updateSlider=this.updateSlider.bind(this),this.updateSetData=this.updateSetData.bind(this),this.render()},(t=[{key:"render",value:function(){var e=this,t=this.el,n=this.w.globals,i=this.w.config;n.dom.elFace.style.display="none",n.dom.elRecommendation=document.createElement("div"),Hn.setAttrs(n.dom.elRecommendation,{class:"recommendation_products",style:"background: #fff; min-height: 100%;"}),n.dom.elRecommendation.box=document.createElement("div"),Hn.setAttrs(n.dom.elRecommendation.box,{style:"width: 100%;"});var r='<div class="recommendation_modal_window"> <div class="header_tools"> <div class="back"><svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M15.56 5.15999L13.2 2.79999L0 16L13.2 29.2L15.56 26.84L4.72 16L15.56 5.15999Z" fill="black"/></svg></div> <div class="title">'+Sn.t("Recommendation Products")+'</div> <div class="info"><svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M4.66663 24.6533L12.6666 16.64L18 21.9733L29.3333 9.22668L27.4533 7.34668L18 17.9733L12.6666 12.64L2.66663 22.6533L4.66663 24.6533Z" fill="black"/></svg></div> <div class="refresh"><svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M23.5333 8.46668C21.6 6.53334 18.9467 5.33334 16 5.33334C10.1067 5.33334 5.34668 10.1067 5.34668 16C5.34668 21.8933 10.1067 26.6667 16 26.6667C20.9733 26.6667 25.12 23.2667 26.3067 18.6667H23.5333C22.44 21.7733 19.48 24 16 24C11.5867 24 8.00001 20.4133 8.00001 16C8.00001 11.5867 11.5867 8.00001 16 8.00001C18.2133 8.00001 20.1867 8.92001 21.6267 10.3733L17.3333 14.6667H26.6667V5.33334L23.5333 8.46668Z" fill="black"/></svg></div>'+("modal"===i.displayModel?' <div class="close"><svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M25.3333 8.54663L23.4533 6.66663L16 14.12L8.54667 6.66663L6.66667 8.54663L14.12 16L6.66667 23.4533L8.54667 25.3333L16 17.88L23.4533 25.3333L25.3333 23.4533L17.88 16L25.3333 8.54663Z" fill="black"/></svg></div>':"")+' </div> <div class="slider_header" style="padding: 15px 0 2px; background-color: #F1F3F4"></div> <div class="body"> <div class="main"> <div class="header_product_box"> <div class="header_product"> <div class="title">'+Sn.t("Products That Just Work For you")+'</div> <div class="action">'+(i.showAddToCard&&i.showAddToCardAll?' <button class="add_to_cart add_to_cart_all">'+Sn.t("Add all to cart")+"</button>":"")+(i.showRoutine?' <button class="show_routine">'+Sn.t("Routine")+"</button>":"")+' </div> </div> </div> <div class="products"> </div>'+("modal"===i.displayModel?'<div class="footer_box" style="background-color: #fff"> '+(i.showAddToCard&&i.showAddToCardAll?'<button class="add_to_cart add_to_cart_all2">'+Sn.t("Add all to cart")+"</button> ":"")+'<button class="check_out" style="display: none">'+Sn.t("Checkout")+"</button></div>":"")+" </div> </div></div>";n.dom.elRecommendation.box.innerHTML=r,n.dom.elRecommendation.appendChild(n.dom.elRecommendation.box),t.appendChild(n.dom.elRecommendation),n.dom.elRecommendation.problems=n.dom.elRecommendation.box.querySelector(".slider_header"),n.dom.elRecommendation.products=n.dom.elRecommendation.box.querySelector(".products"),n.dom.elRecommendation.headerProduct=n.dom.elRecommendation.box.querySelector(".header_product_box"),n.dom.elRecommendation.back=n.dom.elRecommendation.box.querySelector(".back"),n.dom.elRecommendation.info=n.dom.elRecommendation.box.querySelector(".info"),n.dom.elRecommendation.refresh=n.dom.elRecommendation.box.querySelector(".refresh"),n.dom.elRecommendation.close=n.dom.elRecommendation.box.querySelector(".close"),n.dom.elRecommendation.addToCardAll=n.dom.elRecommendation.box.querySelector(".add_to_cart_all"),n.dom.elRecommendation.addToCardAll2=n.dom.elRecommendation.box.querySelector(".add_to_cart_all2"),n.dom.elRecommendation.footerBox=n.dom.elRecommendation.box.querySelector(".footer_box"),n.dom.elRecommendation.checkOut=n.dom.elRecommendation.box.querySelector(".check_out"),n.dom.elRecommendation.showRoutine=n.dom.elRecommendation.box.querySelector(".show_routine"),n.dom.elRecommendation.recommendation_modal=n.dom.elRecommendation.box.querySelector(".recommendation_modal_window"),new Pr(n.dom.elRecommendation.problems,this.ctx,this.pv,this.dataReport?this.dataReport.problems:[],!0,!0,this.updateSlider),this.updateSlider(this.ctx,"all_products"),n.dom.elRecommendation.addToCardAll&&n.dom.elRecommendation.addToCardAll.addEventListener("click",(function(t){e.addToCardAll()})),n.dom.elRecommendation.addToCardAll2&&n.dom.elRecommendation.addToCardAll2.addEventListener("click",(function(t){e.addToCardAll()})),n.dom.elRecommendation.checkOut&&n.dom.elRecommendation.checkOut.addEventListener("click",(function(e){n.onCheckout&&n.onCheckout(n.productAddToCart),n.gtmConfig&&ui("click","checkoutButton","skin_analysis","Face Age Skin Analysis")})),n.dom.elRecommendation.back.addEventListener("click",(function(e){clearInterval(n.checkStateProductLoader),n.statusProductDimension=!1,n.dom.elRecommendation.remove(),n.heightElIframeOldSetStatus=!1,n.dom.elIframe.style.height=n.heightElIframeOld+"px",setTimeout((function(){n.dom.elFace.style.display="flex"}),100),n.gtmConfig&&ui("click","backResults","skin_analysis","Face Age Skin Analysis")})),n.dom.elRecommendation.showRoutine&&n.dom.elRecommendation.showRoutine.addEventListener("click",(function(t){clearInterval(n.checkStateProductLoader),n.dom.elRecommendation.remove(),n.statusProductDimension=!1,n.statusRoutinDimension=!0,new fr(n.dom.docIframe,e.ctx,e.pv,e.dataReport)})),n.dom.elRecommendation.info.addEventListener("click",(function(){new dr(e.ctx,e.dataReport,!0),n.gtmConfig&&ui("click","openSkinInfo","skin_analysis","Face Age Skin Analysis")})),n.dom.elRecommendation.refresh.addEventListener("click",(function(){clearInterval(n.checkStateProductLoader),n.statusProductDimension=!1,n.dom.elRecommendation.remove(),n.heightElIframeOldSetStatus=!1,n.dom.elIframe.style.height=n.heightElIframeOld+"px",n.dom.elInfo&&n.dom.elInfo.remove(),n.dom.elForm&&n.dom.elForm.remove(),n.dom.elFace&&n.dom.elFace.remove(),n.activeQuiz=0,n.formData={},n.productLoader=!1,n.productLists=[],n.productAction=[],n.productAddToCart=[],n.imageSubmit=null,n.intro=!0,e.co.intro=!0,new Ta(n.dom.docIframe,e.ctx,e.pv),n.onRefresh&&n.onRefresh(),n.gtmConfig&&ui("click","retakeAnalysis","skin_analysis","Face Age Skin Analysis")})),n.dom.elRecommendation.close&&n.dom.elRecommendation.close.addEventListener("click",(function(e){n.dom.elModalFace.classList.remove("is-open"),clearInterval(n.checkStateProductLoader),n.onCloseModal&&n.onCloseModal(),n.gtmConfig&&ui("click","closeModal","skin_analysis","Face Age Skin Analysis")})),setTimeout((function(){e.updateDimension()}),500),n.dom.elIframe.contentWindow.addEventListener("resize",this.updateDimension),n.resizeObserverProduct=new ResizeObserver((function(){e.updateDimension()})),n.resizeObserverProduct.observe(n.dom.elRecommendation.recommendation_modal),n.onDisplayProducts&&n.onDisplayProducts(n.productLists),n.gtmConfig&&ui("view","displayProducts","skin_analysis","Face Age Skin Analysis")}},{key:"updateSlider",value:function(e,t){var n=this,i=(e.w,e.w.globals);i.dom.elRecommendation.headerProduct.style.display="block",i.dom.elRecommendation.footerBox&&(i.dom.elRecommendation.footerBox.style.display="flex"),i.productListsDisplay=[],i.productLoader?(i.dom.elRecommendation.products.innerHTML='<div class="face_age"><div class="loading_request_pr" style="background: transparent"><div class="FaceCircularProgress-root FaceCircularProgress-colorPrimary FaceCircularProgress-indeterminate" role="progressbar" style="width: 40px; height: 40px; color: var(--basic)"><svg class="FaceCircularProgress-svg" viewBox="22 22 44 44"><circle class="FaceCircularProgress-circle FaceCircularProgress-circleIndeterminate" cx="44" cy="44" r="20.2" fill="none" stroke-width="3.6"></circle></svg></div></div></div>',i.dom.elRecommendation.headerProduct.style.display="none",i.dom.elRecommendation.footerBox&&(i.dom.elRecommendation.footerBox.style.display="none"),i.checkStateProductLoader=setInterval((function(){i.productLoader||(n.updateSetData(e,t),clearInterval(i.checkStateProductLoader))}),100)):this.updateSetData(e,t)}},{key:"updateSetData",value:function(e,t){e.w;var n=e.w.globals,i=[];if(n.dom.elRecommendation.headerProduct.style.display="block",n.dom.elRecommendation.footerBox&&(n.dom.elRecommendation.footerBox.style.display="flex"),n.productListsDisplay=[],!n.productLoader){if(n.dom.elRecommendation.products.innerHTML="",n.productLists){if(n.productLists.map((function(r){(r.problems.includes(t)||"all_products"===t)&&(new or(n.dom.elRecommendation.products,e,r),i.push(r.id),n.productListsDisplay.push(r))})),n.productAddToCart.length>0){var r=n.dom.elRecommendation.products.querySelectorAll(".product_item_box");r.forEach((function(e,t){var i=r[t],a=i.getAttribute("data-id");n.productAddToCart.find((function(e){return e.id===a}))&&(i.querySelector(".product_add_to_cart").classList.contains("active")||(i.querySelector(".product_add_to_cart").classList.add("active"),i.querySelector(".product_add_to_cart").innerText=Sn.t("Add again")))})),n.dom.elRecommendation.checkOut&&(n.dom.elRecommendation.checkOut.style.display="block")}var a=document.createElement("script");a.type="text/javascript",a.text="new Swiper('.myProductProblem', {\n slidesPerView: 'auto',\n spaceBetween: 6,\n });",n.dom.elRecommendation.products.appendChild(a)}if(i.length<=0){var o=document.createElement("div");Hn.setAttrs(o,{class:"product_empty"}),o.innerHTML=Sn.t("There are no products to display."),n.dom.elRecommendation.products.appendChild(o),n.dom.elRecommendation.headerProduct.style.display="none",n.dom.elRecommendation.footerBox&&(n.dom.elRecommendation.footerBox.style.display="none")}}}},{key:"updateDimension",value:function(){var e=this.w.globals;if(!e.statusProductDimension)return!1;"section"===this.co.displayModel&&(e.heightProduct=e.dom.elRecommendation.recommendation_modal.scrollHeight,e.heightElIframeOldSetStatus||(e.heightElIframeOld=e.dom.elIframe.clientHeight,e.heightElIframeOldSetStatus=!0),e.dom.elIframe.style.height=e.heightProduct+"px")}},{key:"addToCardAll",value:function(){var e=this.w.globals,t=e.dom.elRecommendation.products.querySelectorAll(".product_item_box"),n=[];if(t.forEach((function(i,r){var a=t[r],o=a.getAttribute("data-id"),s=a.querySelectorAll(".product_variables_select"),l=[];s&&s.forEach((function(e){if(e&&e.options.length>0){var t=e.getAttribute("name"),n=(e.getAttribute("data-id"),e.selectedIndex);if(-1!==n){var i=e.options[n];l[t]=i.value}}})),a.querySelector(".product_add_to_cart").classList.contains("active")||(a.querySelector(".product_add_to_cart").classList.add("active"),a.querySelector(".product_add_to_cart").innerText=Sn.t("Add again"),e.dom.elRecommendation.checkOut&&(e.dom.elRecommendation.checkOut.style.display="block")),n.push({id:o,variable:l}),e.productAddToCart.find((function(e){return e.id===o}))||e.productAddToCart.push({id:o,variable:l})})),e.onAddToCart){e.onAddToCart(n);var i=document.createElement("div");Hn.setAttrs(i,{style:"bottom: 20px;\n left: 50%;\n margin-left: -150px;\n width: 300px;\n background: #000000;\n display: block;\n color: #fff;\n padding: 15px;\n border-radius: 10px; position: fixed;\n font-size: 12px;\n text-align: center;"}),i.innerHTML=n.length+" "+Sn.t("products added to cart"),e.dom.elRecommendation.box.appendChild(i),setTimeout((function(){i.remove()}),1e3)}e.gtmConfig&&ui("click","addCart","product_name","all recommendation products")}}])&&yr(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function kr(e){return kr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},kr(e)}function wr(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Sr(i.key),i)}}function Sr(e){var t=function(e){if("object"!=kr(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=kr(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==kr(t)?t:t+""}var Pr=function(){return e=function e(t,n,i){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[],a=arguments.length>4&&void 0!==arguments[4]&&arguments[4],o=arguments.length>5&&void 0!==arguments[5]&&arguments[5],s=arguments.length>6&&void 0!==arguments[6]?arguments[6]:null;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.el=t,this.ctx=n,this.pv=i,this.w=n.w,this.gl=n.w.globals,this.co=n.w.config,this.problems=r,this.showProducts=a,this.recommendation=o,this.eventSlider=s,this.render()},t=[{key:"render",value:function(){var e=this,t=this.el,n=this.gl,i=this.co,r=this.ctx,a=this.pv.getValue(),o='<div class="swiper '+(this.recommendation?"myProducts":"mySwiper")+'">\n <div class="swiper-wrapper">\n <div class="swiper-slide">\n <div class="point_analysis '+(this.recommendation?"all_products":"skin_info")+' active" data-key="'+(this.recommendation?"all_products":"skin_info")+'">\n <div class="count_box">\n <div class="'+(this.recommendation?"products_ico":"skin_info_ico")+'">'+(this.recommendation?'<svg xmlns="http://www.w3.org/2000/svg" id="Layer_1" data-name="Layer 1" viewBox="0 0 24 24"><path d="M23.381,9.854c-.363-.415-.85-.691-1.381-.8v-.554c0-1.953-1.258-3.602-3-4.224V1.5c0-.827-.673-1.5-1.5-1.5h-3c-.827,0-1.5,.673-1.5,1.5v1c0,.276,.224,.5,.5,.5s.5-.224,.5-.5V1.5c0-.276,.224-.5,.5-.5h3c.276,0,.5,.224,.5,.5v2.551c-.166-.019-.329-.051-.5-.051h-2c-.276,0-.5,.224-.5,.5s.224,.5,.5,.5h2c1.93,0,3.5,1.57,3.5,3.5v.5h-7v-.5c0-1.953-1.258-3.602-3-4.224V1.5c0-.827-.673-1.5-1.5-1.5h-3c-.827,0-1.5,.673-1.5,1.5v2.776c-1.742,.621-3,2.271-3,4.224v.554c-.531,.109-1.018,.385-1.381,.8-.475,.542-.692,1.263-.595,1.985l1.118,7.389c.363,2.721,2.707,4.772,5.452,4.772h10.812c2.745,0,5.089-2.052,5.451-4.764l1.121-7.406c.095-.714-.122-1.435-.597-1.977ZM6,1.5c0-.276,.224-.5,.5-.5h3c.276,0,.5,.224,.5,.5v2.551c-.166-.019-.329-.051-.5-.051h-3c-.171,0-.334,.032-.5,.051V1.5Zm.5,3.5h3c1.93,0,3.5,1.57,3.5,3.5v.5H3v-.5c0-1.93,1.57-3.5,3.5-3.5Zm16.488,6.689l-1.121,7.405c-.297,2.227-2.215,3.905-4.461,3.905H6.594c-2.246,0-4.164-1.679-4.462-3.914l-1.118-7.388c-.057-.428,.073-.86,.358-1.186,.285-.326,.696-.512,1.129-.512H21.5c.433,0,.844,.187,1.129,.512,.285,.325,.415,.757,.359,1.177Zm-10.488,.811v7c0,.276-.224,.5-.5,.5s-.5-.224-.5-.5v-7c0-.276,.224-.5,.5-.5s.5,.224,.5,.5Zm5.5,0v7c0,.276-.224,.5-.5,.5s-.5-.224-.5-.5v-7c0-.276,.224-.5,.5-.5s.5,.224,.5,.5Zm-11,0v7c0,.276-.224,.5-.5,.5s-.5-.224-.5-.5v-7c0-.276,.224-.5,.5-.5s.5,.224,.5,.5Z"/></svg>':'<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><g filter="url(#filter0_d_3028_882)"><path fill-rule="evenodd" clip-rule="evenodd" d="M2 1.82353C2 1.36871 2.36871 1 2.82353 1H7.76471C8.21953 1 8.58824 1.36871 8.58824 1.82353C8.58824 2.27835 8.21953 2.64706 7.76471 2.64706H3.64706V6.76471C3.64706 7.21953 3.27835 7.58824 2.82353 7.58824C2.36871 7.58824 2 7.21953 2 6.76471V1.82353Z" fill="white"/><path fill-rule="evenodd" clip-rule="evenodd" d="M29.1765 1C29.6312 1 30 1.36871 30 1.82353V6.76471C30 7.21953 29.6312 7.58824 29.1765 7.58824C28.7217 7.58824 28.3529 7.21953 28.3529 6.76471V2.64706H24.2353C23.7805 2.64706 23.4118 2.27835 23.4118 1.82353C23.4118 1.36871 23.7805 1 24.2353 1H29.1765Z" fill="white"/><path fill-rule="evenodd" clip-rule="evenodd" d="M2.82353 29C2.36871 29 2 28.6312 2 28.1765V23.2353C2 22.7805 2.36871 22.4118 2.82353 22.4118C3.27835 22.4118 3.64706 22.7805 3.64706 23.2353V27.3529H7.76471C8.21953 27.3529 8.58824 27.7217 8.58824 28.1765C8.58824 28.6312 8.21953 29 7.76471 29H2.82353Z" fill="white"/><path fill-rule="evenodd" clip-rule="evenodd" d="M30 28.1765C30 28.6312 29.6312 29 29.1765 29H24.2353C23.7805 29 23.4118 28.6312 23.4118 28.1765C23.4118 27.7217 23.7805 27.3529 24.2353 27.3529H28.3529V23.2353C28.3529 22.7805 28.7217 22.4118 29.1765 22.4118C29.6312 22.4118 30 22.7805 30 23.2353V28.1765Z" fill="white"/><path fill-rule="evenodd" clip-rule="evenodd" d="M8.58823 13.3529C8.58823 9.25954 11.9066 5.94118 16 5.94118C20.0934 5.94118 23.4118 9.25954 23.4118 13.3529V16.6471C23.4118 20.7405 20.0934 24.0588 16 24.0588C11.9066 24.0588 8.58823 20.7405 8.58823 16.6471V13.3529ZM16 7.58824C12.8162 7.58824 10.2353 10.1692 10.2353 13.3529V16.6471C10.2353 19.8308 12.8162 22.4118 16 22.4118C19.1838 22.4118 21.7647 19.8308 21.7647 16.6471V13.3529C21.7647 10.1692 19.1838 7.58824 16 7.58824Z" fill="white"/><path fill-rule="evenodd" clip-rule="evenodd" d="M12.7059 17.4706C13.1606 17.4706 13.5294 17.8394 13.5294 18.2941L13.5299 18.2986C13.5299 18.2986 13.5317 18.3061 13.535 18.3142C13.5416 18.3304 13.5576 18.3608 13.5935 18.4033C13.6686 18.4921 13.8096 18.6074 14.039 18.7222C14.4984 18.9518 15.1905 19.1176 16 19.1176C16.8095 19.1176 17.5016 18.9518 17.961 18.7222C18.1904 18.6074 18.3314 18.4921 18.4065 18.4033C18.4424 18.3608 18.4584 18.3304 18.465 18.3142C18.4683 18.3061 18.4701 18.2986 18.4701 18.2986L18.4706 18.2941C18.4706 17.8394 18.8394 17.4706 19.2941 17.4706C19.7489 17.4706 20.1177 17.8394 20.1177 18.2941C20.1177 19.229 19.3813 19.8535 18.6976 20.1953C17.9646 20.5618 17.0098 20.7647 16 20.7647C14.9902 20.7647 14.0354 20.5618 13.3025 20.1953C12.6188 19.8535 11.8824 19.229 11.8824 18.2941C11.8824 17.8394 12.2511 17.4706 12.7059 17.4706Z" fill="white"/></g><defs><filter id="filter0_d_3028_882" x="0" y="0" width="32" height="32" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB"><feFlood flood-opacity="0" result="BackgroundImageFix"/><feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/><feOffset dy="1"/><feGaussianBlur stdDeviation="1"/><feComposite in2="hardAlpha" operator="out"/><feColorMatrix type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.3 0"/><feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_3028_882"/><feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_3028_882" result="shape"/></filter></defs></svg>')+'</div>\n </div>\n <div class="label_box" style="'+(this.recommendation?"color: #000; text-shadow: 0 0 #000; overflow: visible;":"")+'">'+(this.recommendation?Sn.t("All Products"):Sn.t("Skin Info"))+"</div>\n </div>\n </div>\n";this.problems.length>0&&this.problems.map((function(t){o+=' <div class="swiper-slide">\n <div class="point_analysis '+t.key+'" data-key="'+t.key+'">\n <div class="count_box" style="background-color: '+(e.recommendation?"rgb(0 0 0 / 4%)":"rgb(0 0 0 / 24%)")+'">\n <div class="progress-container"><svg class="MuiCircularProgress-svg" viewBox="22 22 44 44"><circle class="MuiCircularProgress-circle" cx="44" cy="44" r="20.2" fill="none" stroke-width="2.6"></circle></svg><div class="progress-label">0%</div></div>\n </div>\n <div class="label_box" style="'+(e.recommendation?"color: #000; text-shadow: 0 0 #000; overflow: visible;":"")+'">'+Sn.t(t.title)+"</div>\n </div>\n </div>\n"})),o+=' </div><div class="swiper-button-next"></div><div class="swiper-button-prev"></div>\n </div>';var s=document.createElement("div");Hn.setAttrs(s,{style:"background: linear-gradient(rgba(33, 37, 41, 0), rgb(33 37 41 / 51%));"+(this.showProducts?"padding-bottom: 10px;":"position: absolute;z-index: 2;left: 0;right: 0;bottom: 0; padding-bottom: "+(a.copyRight&&"widget"===i.displayModel?25:10)+"px;"),class:"face_slide"}),s.innerHTML=o,t.appendChild(s);var l=document.createElement("script");l.type="text/javascript",l.text="new Swiper('."+(this.recommendation?"myProducts":"mySwiper")+'\', {\n slidesPerView: \'auto\',\n spaceBetween: 12,\n navigation: {\n nextEl: ".swiper-button-next",\n prevEl: ".swiper-button-prev",\n },\n });',t.appendChild(l),this.problems.length>0&&this.problems.map((function(n){var i=t.querySelector(".face_slide").getElementsByClassName(n.key)[0];e.setProgress(i,parseInt(n.number),n.colors,"Percent"===n.format)}));var u=t.getElementsByClassName("point_analysis");if(u)for(var c=function(){var i=u[d];i.addEventListener("click",(function(a){var o=i.getAttribute("data-key"),s=t.querySelectorAll(".point_analysis");if(s)for(var l=0;l<s.length;l++){var u=s[l];u.classList.contains("active")&&u.classList.remove("active")}i.classList.add("active");var c=t.querySelector(".face_slide").querySelectorAll(".point_analysis");if(c.forEach((function(t,n){var i=c[n],r=i.getAttribute("data-key"),a=e.problems.find((function(e){return e.key===r}));a&&(e.setProgress(i,parseInt(a.number),a.key!==o?a.colors:"#fff","Percent"===a.format),i.querySelector(".count_box")&&(a.key===o?i.querySelector(".count_box").style.backgroundColor=a.colors:i.querySelector(".count_box").style.backgroundColor=e.recommendation?"rgb(0 0 0 / 4%)":"rgb(0 0 0 / 24%)"))})),!e.recommendation){"skin_info"!==o&&n.dom.elPreviewImage.imageLoad.score?n.dom.elPreviewImage.imageLoad.score.style.display="none":"skin_info"===o&&n.dom.elPreviewImage.imageLoad.score&&(n.dom.elPreviewImage.imageLoad.score.style.display="block"),"skin_info"!==o&&n.dom.elPreviewImage.imageLoad.age?n.dom.elPreviewImage.imageLoad.age.style.display="none":"skin_info"===o&&n.dom.elPreviewImage.imageLoad.age&&(n.dom.elPreviewImage.imageLoad.age.style.display="block"),"skin_info"!==o&&n.dom.elPreviewImage.imageLoad.warning?n.dom.elPreviewImage.imageLoad.warning.style.display="none":"skin_info"===o&&n.dom.elPreviewImage.imageLoad.warning&&(n.dom.elPreviewImage.imageLoad.warning.style.display="block"),e.setTitle("skin_info"!==o?o:null);var d=n.dom.elPreviewImage.imageLoad.masks.querySelectorAll(".maskItem");if(d)for(var p=0;p<d.length;p++){var h=d[p],m=h.getAttribute("data-key"),f=h.getAttribute("data-showin");h.style.display="skin_info"===o?"true"===f?"block":"none":m===o?"block":"none"}}e.eventSlider&&e.eventSlider(r,o),n.onClickProblem&&n.onClickProblem(o),n.gtmConfig&&ui("click","problem","problem_name",o)}))},d=0;d<u.length;d++)c()}},{key:"setProgress",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"#da005c",i=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],r=e.querySelector(".MuiCircularProgress-circle"),a=e.querySelector(".progress-label"),o=i?Math.min(Math.max(t,0),100):t,s=i?"%":"",l=2*Math.PI*20.2,u=l-o/100*l;r.style.stroke=n,r.style.strokeDashoffset=u,a.textContent="".concat(o).concat(s),a.style.color=n}},{key:"setTitle",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=(this.el,this.gl);if(e){var n=[];this.problems.length>0&&this.problems.map((function(t){e===t.key&&(n=t)})),n&&(t.dom.elPreviewImage.activePoint?(t.dom.elPreviewImage.activePoint.innerHTML=Sn.t(n.title),t.dom.elPreviewImage.activePoint.style.backgroundColor=n.colors):(t.dom.elPreviewImage.activePoint=document.createElement("div"),Hn.setAttrs(t.dom.elPreviewImage.activePoint,{style:"background-color: "+n.colors+";",class:"title_point_select"}),t.dom.elPreviewImage.activePoint.innerHTML=Sn.t(n.title),t.dom.elPreviewImage.imageLoad.appendChild(t.dom.elPreviewImage.activePoint)))}else{var i=t.dom.elPreviewImage.imageLoad.querySelector(".title_point_select");i&&(i.remove(),t.dom.elPreviewImage.activePoint=null)}}}],t&&wr(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function xr(e){return xr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},xr(e)}function Cr(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Ar(i.key),i)}}function Ar(e){var t=function(e){if("object"!=xr(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=xr(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==xr(t)?t:t+""}var Tr=function(){return e=function e(t,n,i){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[];!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.el=t,this.gl=n,this.co=i,this.problems=r,this.render()},(t=[{key:"render",value:function(){var e=this.el,t=this.gl;this.co,t.dom.elPreviewImage.imageLoad.masks=document.createElement("div"),Hn.setAttrs(t.dom.elPreviewImage.imageLoad.masks,{style:"position: absolute; top: 0; left: 0; right: 0; bottom: 0"}),t.dom.elPreviewImage.imageLoad.maskItem=[],this.problems.length>0&&this.problems.map((function(e){var n=e.areas&&""!==e.areas?e.areas:null,i=e.masks&&""!==e.masks?e.masks:null,r="-1"===i?n:i,a=i?"mask":"areas",o=i?"0.9":"0.6",s=void 0===(null==e?void 0:e.showInOverview)||1===parseInt(null==e?void 0:e.showInOverview);if(r){var l=void 0===(null==e?void 0:e.isSVG)||1===parseInt(null==e?void 0:e.isSVG)?"data:image/svg+xml;base64,"+r:"data:image/png;base64,"+r;void 0!==(null==e?void 0:e.isSVG)&&0===parseInt(null==e?void 0:e.isSVG)&&(o="0.6"),t.dom.elPreviewImage.imageLoad.maskItem[e.key]=document.createElement("div"),Hn.setAttrs(t.dom.elPreviewImage.imageLoad.maskItem[e.key],{class:"maskItem "+a+"_"+e.key,"data-key":e.key,"data-showin":s,style:"position: absolute; top: 0; left: 0; bottom: 0; right: 0; background-size: 100%; background-repeat: no-repeat; background-position: left top; opacity: "+o+'; background-image: url("'+l+'"); display: '+(s?"block":"none")}),t.dom.elPreviewImage.imageLoad.masks.appendChild(t.dom.elPreviewImage.imageLoad.maskItem[e.key])}})),e.appendChild(t.dom.elPreviewImage.imageLoad.masks)}}])&&Cr(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function jr(e){return jr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},jr(e)}function _r(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Er(i.key),i)}}function Er(e){var t=function(e){if("object"!=jr(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=jr(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==jr(t)?t:t+""}var Rr=function(){return e=function e(t,n,i){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.el=t,this.gl=n,this.co=i,this.damage=r,this.render()},(t=[{key:"render",value:function(){var e=this.el,t=this.gl,n=(this.co,this.damage&&this.damage>0?100-parseInt(this.damage):99);t.dom.elPreviewImage.imageLoad.score=document.createElement("div"),Hn.setAttrs(t.dom.elPreviewImage.imageLoad.score,{style:"position: absolute;top: "+(t.imageWarning?"58":"15")+"px;left: 17px;text-align: left;background: var(--accepted_status);padding: 7px 10px;border-radius: 10px;color: #fff; font-size: 14px"}),t.dom.elPreviewImage.imageLoad.score.innerHTML="<div>"+Sn.t("Skin Health")+': <span style="margin-left: 7px;display: inline-block;font-weight: bold;">'+n+"%</span></div>",e.appendChild(t.dom.elPreviewImage.imageLoad.score)}}])&&_r(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function Ir(e){return Ir="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ir(e)}function zr(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Lr(i.key),i)}}function Lr(e){var t=function(e){if("object"!=Ir(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=Ir(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Ir(t)?t:t+""}var Or=function(){return e=function e(t,n){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.el=t,this.ctx=n,this.w=n.w,this.gl=n.w.globals,this.validation=i,this.render()},(t=[{key:"render",value:function(){var e,t,n,i,r=this.el,a=this.w.globals,o=(this.w.config,null===(e=this.validation)||void 0===e?void 0:e.blurry),s=null===(t=this.validation)||void 0===t?void 0:t.eyeGlass,l=null===(n=this.validation)||void 0===n?void 0:n.neutralFace,u=null===(i=this.validation)||void 0===i?void 0:i.faceObstruction,c=this.validation.brightness?this.validation.brightness:0;a.imageWarning=!1,(c<50||o||s||!l)&&(a.dom.elPreviewImage.imageLoad.warning=document.createElement("div"),Hn.setAttrs(a.dom.elPreviewImage.imageLoad.warning,{style:"position: absolute;top: 15px;left: 17px;text-align: left;background: #FFC961;padding: 7px 10px;border-radius: 10px;color: #fff; font-size: 14px; cursor: pointer;"}),a.dom.elPreviewImage.imageLoad.warning.innerHTML='<div class="warning_image"><svg style="width: 16px; display: inline-block; height: 16px; vertical-align: middle;" width="16" height="20" viewBox="0 0 16 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M2 13.5V8.5C2 5.43 3.64 2.86 6.5 2.18V1.5C6.5 0.67 7.17 0 8 0C8.83 0 9.5 0.67 9.5 1.5V2.18C12.37 2.86 14 5.42 14 8.5V13.5L16 15.5V16.5H9.53674e-07V15.5L2 13.5ZM7 13.5H9V11.5H7V13.5ZM7 9.5H9V5.5H7V9.5ZM8 19.5C6.9 19.5 6 18.6 6 17.5H10C10 18.6 9.11 19.5 8 19.5Z" fill="white"/></svg> '+Sn.t("Image is not suitable")+"</div>",a.imageWarning=!0,r.appendChild(a.dom.elPreviewImage.imageLoad.warning),a.dom.elPreviewImage.imageLoad.warning.addEventListener("click",(function(){var e=[];o&&e.push(Sn.t("validation.blurry")),s&&e.push(Sn.t("validation.eyeGlass")),u&&e.push(Sn.t("validation.faceObstruction")),l||e.push(Sn.t("validation.neutralFace")),c<50&&e.push(Sn.t("validation.brightness"));var t="<ol>"+e.map((function(e){return"<li>"+e+"</li>"})).join(" ")+"</ol>";new Zi(a,(function(){a.dom.elModal.remove()}),null,Sn.t("Tips for taking better selfies"),t,Sn.t("Continue"))})))}}])&&zr(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function Mr(e){return Mr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Mr(e)}function Fr(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Dr(i.key),i)}}function Dr(e){var t=function(e){if("object"!=Mr(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=Mr(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Mr(t)?t:t+""}var Br=function(){return e=function e(t,n,i,r,a){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.el=t,this.gl=n,this.name=i.name,this.inputType=i.inputType,this.placeholder=Sn.t(i.placeholder),this.required=i.required,this.title=Sn.t(i.title),this.description=Sn.t(i.description),this.value=r,this.setValue=a,this.render()},(t=[{key:"render",value:function(){var e=this,t=(this.gl,document.createElement("div"));Hn.setAttrs(t,{class:"el_box","data-name":this.name});var n=document.createElement("div");Hn.setAttrs(n,{class:"box_title",style:this.title||this.description?"margin-bottom: 17px; display: block;":""}),n.innerHTML=(this.title?'<label class="title_el" style="margin: 0 0 10px; font-weight: 600;">'+this.title+"</label>":"")+(this.description?'<p class="description_el">'+this.description+"</p>":""),t.appendChild(n);var i=document.createElement("div");Hn.setAttrs(i,{class:"textInput"});var r=document.createElement("input");Hn.setAttrs(r,{class:"input",placeholder:this.placeholder?this.placeholder+" ":"",name:this.name,type:this.inputType,required:this.required,value:void 0!==this.value?this.value:""}),r.addEventListener("input",(function(t){e.setValue(t.target.value),e.value=t.target.value})),i.appendChild(r),t.appendChild(i),this.el.appendChild(t)}}])&&Fr(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function Nr(e){return Nr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Nr(e)}function Gr(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Ur(i.key),i)}}function Ur(e){var t=function(e){if("object"!=Nr(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=Nr(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Nr(t)?t:t+""}var Hr=function(){return e=function e(t,n,i){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.el=t,this.gl=n,this.children=Sn.t(i.text),this.render()},(t=[{key:"render",value:function(){var e=this.gl;e.dom.elementText=document.createElement("h3"),Hn.setAttrs(e.dom.elementText,{style:"margin: 0 0 10px"}),e.dom.elementText.innerHTML=this.children,this.el.appendChild(e.dom.elementText)}}])&&Gr(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function Wr(e){return Wr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Wr(e)}function Vr(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,qr(i.key),i)}}function qr(e){var t=function(e){if("object"!=Wr(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=Wr(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Wr(t)?t:t+""}var Jr=function(){return e=function e(t,n,i,r,a){var o;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.el=t,this.gl=n,this.name=i.name,this.options=null!==(o=i.options)&&void 0!==o?o:[],this.required=i.required,this.title=Sn.t(i.title),this.description=Sn.t(i.description),this.value=r,this.setValue=a,this.render()},(t=[{key:"render",value:function(){var e=this,t=(this.gl,document.createElement("div"));Hn.setAttrs(t,{class:"el_box","data-name":this.name});var n=document.createElement("div");Hn.setAttrs(n,{class:"box_title",style:this.title||this.description?"margin-bottom: 17px; display: block;":""}),n.innerHTML=(this.title?'<label class="title_el" style="margin: 0 0 10px; font-weight: 600;">'+this.title+"</label>":"")+(this.description?'<p class="description_el">'+this.description+"</p>":""),t.appendChild(n);var i=document.createElement("div");Hn.setAttrs(i,{class:"textInput"});var r=document.createElement("select");Hn.setAttrs(r,{class:"select",name:this.name,required:this.required}),this.options.map((function(t){var n=document.createElement("option");n.value=t.value,n.text=Sn.t(t.label),t.value===e.value&&(n.selected=!0),r.appendChild(n)})),r.addEventListener("change",(function(t){e.setValue(t.target.value),e.value=t.target.value})),i.appendChild(r),t.appendChild(i),this.el.appendChild(t)}}])&&Vr(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function Yr(e){return Yr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Yr(e)}function Kr(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,$r(i.key),i)}}function $r(e){var t=function(e){if("object"!=Yr(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=Yr(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Yr(t)?t:t+""}var Zr=function(){return e=function e(t,n,i,r,a){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.el=t,this.gl=n,this.item=i,this.valus=r,this.setData=a,this.render()},(t=[{key:"render",value:function(){var e=this,t=this.gl,n=this.item;switch(n.type){case"title":new Hr(this.el,t,n);break;case"text":new Qn(this.el,t,n);break;case"checkboxInput":new Kn(this.el,t,n,this.valus[n.name],(function(t){return e.setData(t,n.name,!0)}));break;case"radioInput":new ii(this.el,t,n,this.valus[n.name],(function(t){return e.setData(t,n.name,!0)}));break;case"textInput":new Br(this.el,t,n,this.valus[n.name],(function(t){return e.setData(t,n.name,!1)}));break;case"selectBox":new Jr(this.el,t,n,this.valus[n.name],(function(t){return e.setData(t,n.name,!0)}))}}}])&&Kr(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function Xr(e){return Xr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Xr(e)}function Qr(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,ea(i.key),i)}}function ea(e){var t=function(e){if("object"!=Xr(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=Xr(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Xr(t)?t:t+""}var ta=function(){return e=function e(t,n){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.ctx=t,this.w=t.w,this.gl=t.w.globals,this.onSubmit=n,this.onSkip=i,this.valus=this.gl.formData,this.required=[],this.render()},(t=[{key:"render",value:function(){var e=this,t=this.w.globals,n=this.w.config;Object.keys(this.valus).length<=0&&n.defaultQuiz&&Vn().map(n.defaultQuiz,(function(t,n){e.valus[n]=t}));var i=t.formPages.find((function(e){return"imageAnalysis"===e.name}));if(i.content&&i.content.elements&&i.content.elements.length>0){t.formData||(t.formData={});var r=i.content.actions?i.content.actions.find((function(e){return"goToSkip"===e.onAction})):null,a=i.content.actions?i.content.actions.find((function(e){return"goToNext"===e.onAction||"onSubmitFormData"===e.onAction})):null;new Zi(t,a?function(){if(e.required.length>0&&!e.required.find((function(t){return e.valus[t]})))return!1;i.content.elements.map((function(e){var n=t.dom.elModal.body.querySelector('.el_box[data-name="'+e.name+'"]');if(n){var i=n.querySelector(".err");i&&i.remove()}}));var n=An(i.content.elements,e.valus);if(n)return n.map((function(e,n){Vn().map(e.errors,(function(e,n){var i=t.dom.elModal.body.querySelector('.el_box[data-name="'+n+'"]');if(i){var r=document.createElement("p");Hn.setAttrs(r,{class:"err"}),r.innerText=e,i.appendChild(r)}}))})),!1;t.dom.elModal.remove(),e.onSubmit(e.valus)}:null,r?function(){t.dom.elModal.remove(),e.onSkip&&e.onSkip()}:null,"","",a?Sn.t(a.label):"",r?Sn.t(r.label):""),t.dom.elModal.body=t.dom.elModal.box.getElementsByClassName("body")[0],t.dom.elModal.accept=t.dom.elModal.box.getElementsByClassName("accept")[0];var o=!0,s=!0;i.content.elements.map((function(n){console.log(n),n.required&&e.required.push(n.name),n.required&&!e.valus[n.name]&&(o=!1),e.valus[n.name]||(s=!1),new Zr(t.dom.elModal.body,t,n,e.valus,(function(n,i){e.valus[i]=n,t.dom.elModal.accept&&e.required.map((function(n){e.valus[n]?t.dom.elModal.accept.classList.remove("disabale"):t.dom.elModal.accept.classList.add("disabale")}))}))})),t.dom.elModal.accept&&this.required.length>0&&t.dom.elModal.accept.classList.add("disabale"),t.dom.elModal.accept&&o&&t.dom.elModal.accept.classList.contains("disabale")&&t.dom.elModal.accept.classList.remove("disabale"),s&&t.dom.elModal.accept.click()}}}])&&Qr(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function na(e){return na="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},na(e)}function ia(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,ra(i.key),i)}}function ra(e){var t=function(e){if("object"!=na(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=na(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==na(t)?t:t+""}var aa=function(){return e=function e(t,n,i){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.el=t,this.gl=n,this.co=i,this.age=r,this.render()},(t=[{key:"render",value:function(){var e=this.el,t=this.gl;this.co,t.dom.elPreviewImage.imageLoad.age=document.createElement("div"),Hn.setAttrs(t.dom.elPreviewImage.imageLoad.age,{style:"position: absolute;top: "+(t.imageWarning?"102":"60")+"px;left: 17px;text-align: left;background: var(--basic);padding: 7px 10px;border-radius: 10px;color: #fff; font-size: 14px"}),t.dom.elPreviewImage.imageLoad.age.innerHTML="<div>"+Sn.t("Skin Age")+': <span style="margin-left: 7px;display: inline-block;font-weight: bold;">'+parseInt(this.age)+"</span></div>",e.appendChild(t.dom.elPreviewImage.imageLoad.age)}}])&&ia(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function oa(e){return oa="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},oa(e)}function sa(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,la(i.key),i)}}function la(e){var t=function(e){if("object"!=oa(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=oa(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==oa(t)?t:t+""}var ua=function(){return e=function e(t,n,i,r){var a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:[],o=arguments.length>5?arguments[5]:void 0;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.gl=t,this.ctx=n,this.pv=i,this.w=n.w,this.gl=n.w.globals,this.co=n.w.config,this.dataReport=a,this.image=r,this.back=o,this.render()},(t=[{key:"render",value:function(){var e,t=this.gl,n=(this.co,this.dataReport),i=this,r=[],a=!1,o=!1,s=[];n.validation&&(n.validation.blurry&&!0===n.validation.blurry&&(r.push(Sn.t("your picture quality is blurry")),a=!0),n.validation.eyeGlass&&!0===n.validation.eyeGlass&&(r.push(Sn.t("be wearing glasses")),o=!0),o&&s.push(Sn.t("please remove them")),a&&s.push(Sn.t("Improve photo quality")),e=Sn.t("We noticed you might")+" "+r.join(" "+Sn.t("and")+" ")+". "+Sn.t("for better results")+", "+s.join(" "+Sn.t("and")+" ")+"."),r.length>0?(t.gtmConfig&&ui("view","tips","skin_analysis","Face Age Skin Analysis"),new Zi(t,(function(){i.submitData(n),t.dom.elModal.remove()}),(function(){i.back(),t.dom.elModal.remove()}),Sn.t("Tips for taking better selfies"),e,Sn.t("Continue"),Sn.t("Re-take"))):this.submitData(n)}},{key:"submitData",value:function(e){var t=this,n=this.gl,i=this.co,r=this.pv.getValue(),a=n.formPages.find((function(e){return"imageAnalysis"===e.name}));i.showProducts||i.showRoutine?(n.dom.elPreviewImage.actionProducts=document.createElement("div"),Hn.setAttrs(n.dom.elPreviewImage.actionProducts,{class:"problems_products",style:r.copyRight&&"modal"!==i.displayModel?"position: absolute;z-index: 2;left: 10px;right: 10px;bottom: "+("widget"===i.displayModel?25:15)+"px;":"position: absolute;z-index: 2;left: 0;right: 0;bottom: 0;"}),new Pr(n.dom.elPreviewImage.actionProducts,this.ctx,this.pv,e.problems,!0),n.dom.elPreviewImage.actionProducts.btn=document.createElement("button"),n.dom.elPreviewImage.actionProducts.btn.innerHTML=i.showProducts?Sn.t("Get recommended products!"):Sn.t("Generate routines for you"),Hn.setAttrs(n.dom.elPreviewImage.actionProducts.btn,{class:"recommended_products"}),n.dom.elPreviewImage.actionProducts.appendChild(n.dom.elPreviewImage.actionProducts.btn),n.dom.elPreviewImage.imageLoad.appendChild(n.dom.elPreviewImage.actionProducts),n.dom.elPreviewImage.actionProducts.btn.addEventListener("click",(function(e){!n.showFinalForm&&a.afterAnalysis&&a.content&&a.content.elements&&a.content.elements.length>0?new ta(t.ctx,(function(e){n.formData=e,n.showFinalForm=!0,t.showProductsPage(),n.getActiveSelections&&n.getActiveSelections(e)}),(function(){n.showFinalForm=!0,t.showProductsPage(),n.getActiveSelections&&n.getActiveSelections(n.formData)})):t.showProductsPage()}))):new Pr(n.dom.elPreviewImage.imageLoad,this.ctx,this.pv,e.problems),new Tr(n.dom.elPreviewImage.boxrelative,n,this.co,e.problems),new Or(n.dom.elPreviewImage.imageLoad,this.ctx,e.validation),e.damagePercentage&&new Rr(n.dom.elPreviewImage.imageLoad,n,this.co,e.damagePercentage),e.skinAge&&new aa(n.dom.elPreviewImage.imageLoad,n,this.co,e.skinAge);var o='<button class="FaceButtonBase-root FaceIconButton-root FaceInfoMode infoRepetition" style="'+("modal"===i.displayModel?"top: 10px;":"")+'" tabindex="0" type="button"><span class="FaceIconButton-label"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 18.49L9.5 12.48L13.5 16.48L22 6.92001L20.59 5.51001L13.5 13.48L9.5 9.48001L2 16.99L3.5 18.49Z" fill="#6B7280"/></svg></span><span class="FaceTouchRipple-root"></span></button>';if(n.dom.elPreviewImage.backico=document.createElement("div"),n.dom.elPreviewImage.backico.innerHTML='<button class="FaceButtonBase-root FaceIconButton-root FaceChangeBackMode backRepetition" tabindex="0" type="button"><span class="FaceIconButton-label"><svg viewBox="0 0 24 24" fill="currentColor" style="width: 24px; height: 24px;"><path d="M12 5V1L7 6l5 5V7c3.31 0 6 2.69 6 6s-2.69 6-6 6-6-2.69-6-6H4c0 4.42 3.58 8 8 8s8-3.58 8-8-3.58-8-8-8z"></path></svg></span><span class="FaceTouchRipple-root"></span></button>',n.dom.elPreviewImage.infoico=document.createElement("div"),n.dom.elPreviewImage.infoico.innerHTML=o,"modal"!==i.displayModel&&n.dom.elPreviewImage.appendChild(n.dom.elPreviewImage.backico),n.dom.elPreviewImage.appendChild(n.dom.elPreviewImage.infoico),n.dom.elPreviewImage.backico&&n.dom.elPreviewImage.backico.addEventListener("click",(function(){t.back(),n.onRefresh&&n.onRefresh(),n.gtmConfig&&ui("click","backToPhoto","skin_analysis","Face Age Skin Analysis")})),n.dom.elPreviewImage.infoico.addEventListener("click",(function(){new dr(t.ctx,t.dataReport),n.gtmConfig&&ui("click","openSkinInfo","skin_analysis","Face Age Skin Analysis")})),n.imageSubmit=this.image,n.getAdvisorData&&n.getAdvisorData(e.problems),!i.showProducts&&!i.showRoutine&&!n.showFinalForm&&a.afterAnalysis&&a.content&&a.content.elements&&a.content.elements.length>0&&setTimeout((function(){n.showFinalForm||"preview"!==n.stepShow||new ta(t.ctx,(function(e){n.formData=e,n.showFinalForm=!0,n.getActiveSelections&&n.getActiveSelections(e)}),(function(){n.showFinalForm=!0,n.getActiveSelections&&n.getActiveSelections(n.formData)}))}),5e3),n.onload){var s={points:{},image:this.image};e.problems.map((function(e){var t=e.key;switch(e.key){case"acne":t="acnes";break;case"darkCircle":t="dark_circle";break;case"deepWrinkles":t="deep_wrinkles";break;case"eyeBag":t="eye_bag";break;case"eyeWrinkles":t="eye_wrinkles";break;case"fineWrinkles":t="wrinkles"}s[t]=parseInt(e.number)})),n.onload(s)}n.gtmConfig&&ui("view","results","skin_analysis","Face Age Skin Analysis")}},{key:"showProductsPage",value:function(){this.co.showProducts?(this.gl.statusProductDimension=!0,new br(this.gl.dom.docIframe,this.ctx,this.pv,this.dataReport)):this.co.showRoutine&&(this.gl.statusRoutinDimension=!0,new fr(this.gl.dom.docIframe,this.ctx,this.pv,this.dataReport))}}])&&sa(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function ca(e){return ca="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ca(e)}function da(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,ha(i.key),i)}}function pa(e,t,n){return(t=ha(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function ha(e){var t=function(e){if("object"!=ca(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=ca(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==ca(t)?t:t+""}var ma=function(){return e=function e(t,n,i,r,a,o,s,l){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),pa(this,"dataReport",null),pa(this,"wrinklesPoint",null),pa(this,"eyeWrinklesPoint",null),pa(this,"darkCirclePoint",null),pa(this,"pigmentPoint",null),pa(this,"deepWrinklesPoint",null),pa(this,"eyeBagPoint",null),this.el=t,this.ctx=n,this.pv=i,this.w=n.w,this.gl=n.w.globals,this.co=n.w.config,this.image=r,this.width=a,this.height=o,this.back=s,this.onSet=l,this.valus={},this.required=[],this.submitData=this.submitData.bind(this),this.updateDimension=this.updateDimension.bind(this),this.render()},t=[{key:"render",value:function(){var e=this,t=this.gl;this.updateDimension(),t.dom.elIframe.contentWindow.addEventListener("resize",this.updateDimension),t.dom.elPreviewImage=document.createElement("div"),Hn.setAttrs(t.dom.elPreviewImage,{class:"imageSubmit"}),t.dom.elPreviewImage.imageLoad=document.createElement("div"),Hn.setAttrs(t.dom.elPreviewImage.imageLoad,{class:"imageLoad",style:"max-height: "+this.height+"px"}),t.dom.elPreviewImage.fix=document.createElement("div"),Hn.setAttrs(t.dom.elPreviewImage.fix,{style:"display: flex; justify-content: center;"}),t.dom.elPreviewImage.boxrelative=document.createElement("div"),Hn.setAttrs(t.dom.elPreviewImage.boxrelative,{style:"position: relative; background: #000;"}),t.dom.elPreviewImage.fix.appendChild(t.dom.elPreviewImage.boxrelative),t.dom.elPreviewImage.imageLoad.appendChild(t.dom.elPreviewImage.fix),t.dom.elPreviewImage.appendChild(t.dom.elPreviewImage.imageLoad),this.el.appendChild(t.dom.elPreviewImage),this.resizeBase64Img(this.image).then((function(t){e.image=t,fetch(e.image).then((function(e){return e.blob()})).then((function(t){if(t.size<=1e3)return e.errorSkinAnalyze(Sn.t("The input image is not suitable")),!1;e.showUserData()}))})).catch((function(){return e.errorSkinAnalyze(Sn.t("The input image is not suitable")),!1}))}},{key:"showUserData",value:function(){var e=this,t=this.gl,n=t.formPages.find((function(e){return"imageAnalysis"===e.name}));if(!n.afterAnalysis&&n.content&&n.content.elements&&n.content.elements.length>0){t.formData||(t.formData={});var i='<div style="position: relative"><img class="image_face_preview" src="'+this.image+'" style="width: auto; height: '+this.height+"px; max-height: "+this.height+'px; position: relative;"></div>';t.dom.elPreviewImage.preview=document.createElement("div"),t.dom.elPreviewImage.preview.innerHTML=i,t.dom.elPreviewImage.boxrelative.appendChild(t.dom.elPreviewImage.preview),new ta(this.ctx,(function(n){t.formData=n,e.showPreview(),e.submitSkinAnalyze(e.image),t.getActiveSelections&&t.getActiveSelections(n)}),(function(){e.showPreview(),e.submitSkinAnalyze(e.image),t.getActiveSelections&&t.getActiveSelections(t.formData)}))}else this.showPreview(),this.submitSkinAnalyze(this.image)}},{key:"showPreview",value:function(){var e=this.gl;e.dom.elPreviewImage.boxrelative.innerHTML="";var t='<div style="position: relative"><div class="loader_preview_image"><div class="face_loader_text"><ul class="content__container__list"><li class="content__container__list__item">'+Sn.t("Sending Facial Data...")+'</li><li class="content__container__list__item">'+Sn.t("Scanning Face...")+'</li><li class="content__container__list__item">'+Sn.t("Analyzing Facial Attributes...")+'</li><li class="content__container__list__item">'+Sn.t("AI Crafting Report..")+'</li></ul></div><div class="bounding_box" style="display: none"><div class="face_loader face_loader-2"><div class="loader-circles"></div><div class="loader-diamond"></div><div class="loader-groove"></div></div></div></div><img class="image_face_preview" src="'+this.image+'" style="width: auto; height: '+this.height+"px; max-height: "+this.height+'px; position: relative;"></div>';e.dom.elPreviewImage.preview=document.createElement("div"),e.dom.elPreviewImage.preview.innerHTML=t,e.dom.elPreviewImage.boxrelative.appendChild(e.dom.elPreviewImage.preview),e.dom.elPreviewImage.preview.image=e.dom.elPreviewImage.preview.getElementsByClassName("image_face_preview")[0],e.dom.elPreviewImage.preview.boundingBox=e.dom.elPreviewImage.preview.getElementsByClassName("bounding_box")[0];var n=this;new Ii(e.dom.elPreviewImage.preview.image,null,null,this.width,this.height,(function(e){return n.showCropMode(e)}),(function(){return n.loadingDetection()}),null,"image")}},{key:"showCropMode",value:function(e){var t=this.gl,n=e[0];if(!n)return null;Hn.setAttrs(t.dom.elPreviewImage.preview.boundingBox,{style:"position: absolute; top: "+100*n.yCenter+"%; left: "+100*n.xCenter+"%; width: "+100*n.width+"%; height: "+100*n.height+"%; z-index: 99999999; display: block"})}},{key:"loadingDetection",value:function(){this.gl}},{key:"submitSkinAnalyze",value:function(e){var t=this,n=this.gl,i=this.co;return new Promise((function(r,a){var o=t;n.gtmConfig&&ui("submit","startSkinAnalyze","skin_analysis","Face Age Skin Analysis"),fetch(e).then((function(e){return e.blob()})).then((function(e){var r;if(e.size<=1e3)return t.errorSkinAnalyze(Sn.t("The input image is not suitable")),!1;var a=new File([e],Math.random()+".jpeg",{type:"image/jpeg"}),s=new FormData;s.append("file",a),n.formData&&s.append("form",JSON.stringify(n.formData)),i.problems.length>0&&s.append("problem",i.problems.join(",")),s.append("faceageId",n.faceageId),null===(r=Rt.request("POST","skinanalyze",s,{"Content-Type":"multipart/form-data"}))||void 0===r||r.then((function(e){e.data.message?(o.onSet&&o.onSet(!1),console.error(e.data.message)):e.data.data.problems?(n.skinAnalyzeData=e.data.data,o.onSet&&o.onSet(!0),o.submitData(e.data.data)):(o.onSet&&o.onSet(!1),console.error("There is a problem processing your image from our service side."))})).catch((function(e){o.onSet&&o.onSet(!1);var n=[];if(e.response&&e.response.data.message&&422===e.response.status)if(e.response.data.errors){var i=e.response.data.errors;Object.keys(i).forEach((function(e){i[e][0]?n.push(i[e][0]):n.push(i[e])}))}else n.push(e.response.data.message);else n.push(e.message);t.errorSkinAnalyze(n.join(", "))}))}))}))}},{key:"submitData",value:function(e){var t=this.gl;t.dom.elPreviewImage.boxrelative.innerHTML="",t.dom.elPreviewImage.finalImage=document.createElement("img"),Hn.setAttrs(t.dom.elPreviewImage.finalImage,{id:"face_age_analyzer_image_server",class:"face_age_analyzer_image_server",src:this.image,style:"width: auto; height: "+this.height+"px; max-height: "+this.height+"px; position: relative; opacity: 0.95"}),t.dom.elPreviewImage.boxrelative.appendChild(t.dom.elPreviewImage.finalImage),this.dataReport=e,new ua(t,this.ctx,this.pv,this.image,e,this.back)}},{key:"errorSkinAnalyze",value:function(e){var t=this,n=this.gl;n.dom.elPreviewImage.boxrelative.innerHTML="";var i='<div style="position: relative"><img class="image_face_preview" src="'+this.image+'" style="width: auto; height: '+this.height+"px; max-height: "+this.height+'px; position: relative;"></div>';n.dom.elPreviewImage.preview=document.createElement("div"),n.dom.elPreviewImage.preview.innerHTML=i,n.dom.elPreviewImage.boxrelative.appendChild(n.dom.elPreviewImage.preview),new Zi(n,null,(function(){t.back()}),Sn.t("Error"),e,"",Sn.t("Re-take"))}},{key:"updateDimension",value:function(){var e=this.gl,t=this.co,n=Hn.getSizeFrame(e,t);this.width=n.width,this.height=n.height,e.dom.elPreviewImage&&e.dom.elPreviewImage.finalImage&&(e.dom.elPreviewImage.finalImage.style.height=this.height+"px",e.dom.elPreviewImage.finalImage.style.maxHeight=this.height+"px"),e.dom.elPreviewImage&&e.dom.elPreviewImage.preview.image&&(e.dom.elPreviewImage.preview.image.style.height=this.height+"px",e.dom.elPreviewImage.preview.image.style.maxHeight=this.height+"px")}},{key:"resizeBase64Img",value:function(e,t){return new Promise((function(t,n){var i=new Image;i.src=e,i.onload=function(){var n=i.width,r=i.height;if(n>1e3){var a=r/n;r=(n=1e3)*a;var o=document.createElement("canvas");o.width=n,o.height=r,o.getContext("2d").drawImage(i,0,0,n,r);var s=o.toDataURL("image/jpeg",.9);t(s)}else t(e)},i.onerror=function(e){n("Error loading convert image:",e)}}))}}],t&&da(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function fa(e){return fa="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},fa(e)}function ga(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,ya(i.key),i)}}function ya(e){var t=function(e){if("object"!=fa(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=fa(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==fa(t)?t:t+""}var va=function(){return e=function e(t,n,i){var r=!(arguments.length>3&&void 0!==arguments[3])||arguments[3];!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.el=t,this.gl=n,this.cnf=i,this.stepShow="",this.show=r,this.bottom=5,this.render()},(t=[{key:"render",value:function(){var e=this,t=this.gl,n=this.cnf;if(console.log(n.displayModel),!this.show)return null;var i=5,r=document.createElement("div");Hn.setAttrs(r,{style:"position: absolute; bottom: "+i+"px; left: 0px; right: 0px; text-align: center; font-size: 10px; color: #ffffffa8; z-index: 999999999;text-shadow: 0px 1px 0px #00000075;"}),r.innerHTML=Sn.t("Powered by")+' <a href="https://getfaceage.com/" target="_blank" style="color: #ffffffa8; text-decoration: none">Face Age</a>',this.el.appendChild(r),"widget"===n.displayModel&&setInterval((function(){if(e.stepShow!==t.stepShow){switch(t.stepShow){case"intro":i=45;break;case"quiz":i=50;break;default:i=5}r.style.bottom=i+"px",e.stepShow=t.stepShow}}),100)}}])&&ga(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function ba(e){return ba="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ba(e)}function ka(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Sa(i.key),i)}}function wa(e,t,n){return(t=Sa(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Sa(e){var t=function(e){if("object"!=ba(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=ba(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==ba(t)?t:t+""}var Pa=function(){return e=function e(t,n,i){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),wa(this,"loading",!1),wa(this,"width",360),wa(this,"height",480),this.ctx=n,this.pv=i,this.w=n.w,this.el=t,this.onSet=r,this.updateDimension=this.updateDimension.bind(this),this.handleSubmit=this.handleSubmit.bind(this),this.handleBack=this.handleBack.bind(this),this.restart=this.restart.bind(this),this.callBack=this.callBack.bind(this),this.getCurrentDimension=this.getCurrentDimension.bind(this),this.render()},(t=[{key:"render",value:function(){var e=this,t=this.w.globals,n=this.w.config;this.screenSize=this.getCurrentDimension(),this.updateDimension(),t.dom.elIframe.contentWindow.addEventListener("resize",this.updateDimension),t.dom.elFace=document.createElement("div"),Hn.setAttrs(t.dom.elFace,{id:"analyzer_box",class:"face_age",style:"position: relative; display: flex; align-items: center; height: 100%; "}),t.stepShow="upload",t.dom.elFace.analyzer=document.createElement("div"),Hn.setAttrs(t.dom.elFace.analyzer,{id:"face_age_analyzer",class:"talosFaceSkin",style:"width: "+this.width+"px; height: "+this.height+"px; background-color: #fff"}),this.showAnalyzer(t,n),"modal"===n.displayModel?(new hi(t.dom.elFace,this.ctx,this.pv,null,(function(){t.dom.elFace.remove(),"preview"===t.stepShow?(t.imageWebCam=null,new Ta(t.dom.docIframe,e.ctx,e.pv)):(t.intro=!0,n.intro=!0,t.imageWebCam=null,new Ta(t.dom.docIframe,e.ctx,e.pv))})),Hn.setAttrs(t.dom.elFace,{style:"height: 100%;display: flex;flex-direction: column;flex: 1 1 0%;overflow: hidden auto;align-self: center;"}),t.dom.elFaceModal=document.createElement("div"),Hn.setAttrs(t.dom.elFaceModal,{class:"face_age_mo_main",style:"position: relative; display: flex; align-items: center; height: 100%; "}),t.dom.elFaceModal.appendChild(t.dom.elFace.analyzer),t.dom.elFace.appendChild(t.dom.elFaceModal)):t.dom.elFace.appendChild(t.dom.elFace.analyzer),this.el.appendChild(t.dom.elFace),t.gtmConfig&&setTimeout((function(){ui("view","start","skin_analysis","Face Age Skin Analysis")}),100)}},{key:"showAnalyzer",value:function(e,t){e.dom.elFace.analyzer.innerHTML="",!t.showCamera||e.activeInput&&"camera"!==e.activeInput?this.showUpload(e.dom.elFace.analyzer,e,t):this.showWebCam(e.dom.elFace.analyzer,e,t)}},{key:"showWebCam",value:function(e,t,n){var i=this;if(t.dom.webcamShow=new Vi(e,t,n,this.width,this.height,this.handleSubmit,this.handleBack,this.loading),n.showUpload){t.dom.showUploadAction=document.createElement("div"),Hn.setAttrs(t.dom.showUploadAction,{class:"faceAction"});var r="modal"!==n.displayModel?'<button class="FaceButtonBase-root FaceBackMode FaceIconButton-root" tabindex="0" type="button"><span class="FaceIconButton-label"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M20 11H7.83L13.42 5.41L12 4L4 12L12 20L13.41 18.59L7.83 13H20V11Z" fill="#6B7280"/></svg></span><span class="FaceTouchRipple-root"></span></button>':"";t.dom.showUploadAction.innerHTML=r+'<button class="FaceButtonBase-root FaceChangeMode FaceIconButton-root" tabindex="0" type="button"><span class="FaceIconButton-label"><svg viewBox="0 0 24 24" fill="currentColor" style="width: 24px; height: 24px;"><path d="M19 5v14H5V5h14m0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-4.86 8.86-3 3.87L9 13.14 6 17h12l-3.86-5.14z"></path></svg></span><span class="FaceTouchRipple-root"></span></button>',e.appendChild(t.dom.showUploadAction);var a=e.querySelector(".FaceChangeMode"),o=e.querySelector(".FaceBackMode");a.addEventListener("click",(function(){e.innerHTML="",t.imageWebCam=null,t.activeInput="upload",i.showAnalyzer(t,n)})),o&&o.addEventListener("click",(function(){e.innerHTML="",t.imageWebCam=null,t.skinAnalyzeData=[],t.dom.elFace.remove(),t.intro=!0,n.intro=!0,new Ta(t.dom.docIframe,i.ctx,i.pv)}))}}},{key:"showUpload",value:function(e,t,n){var i=this;if(new nr(e,t,n,this.width,this.height,this.handleSubmit,this.handleBack,this.loading),n.showCamera){t.dom.showCameraAction=document.createElement("div"),Hn.setAttrs(t.dom.showCameraAction,{class:"faceAction"});var r="modal"===n.displayModel||n.showUpload?"":'<button class="FaceButtonBase-root FaceBackMode FaceIconButton-root" tabindex="0" type="button"><span class="FaceIconButton-label"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M20 11H7.83L13.42 5.41L12 4L4 12L12 20L13.41 18.59L7.83 13H20V11Z" fill="#6B7280"/></svg></span><span class="FaceTouchRipple-root"></span></button>';t.dom.showCameraAction.innerHTML=r+'<button class="FaceButtonBase-root FaceChangeWebcamMode FaceIconButton-root" tabindex="0" type="button"><span class="FaceIconButton-label"><svg viewBox="0 0 24 24" fill="currentColor" style="width: 24px; height: 24px;"><path d="M20 4h-3.17L15 2H9L7.17 4H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 14H4V6h4.05l1.83-2h4.24l1.83 2H20v12zM12 7c-2.76 0-5 2.24-5 5s2.24 5 5 5 5-2.24 5-5-2.24-5-5-5zm0 8c-1.65 0-3-1.35-3-3s1.35-3 3-3 3 1.35 3 3-1.35 3-3 3z"></path></svg></span><span class="FaceTouchRipple-root"></span></button>',e.appendChild(t.dom.showCameraAction);var a=e.querySelector(".FaceChangeWebcamMode"),o=e.querySelector(".FaceBackMode");a.addEventListener("click",(function(){e.innerHTML="",t.activeInput="camera",i.showAnalyzer(t,n)})),o&&o.addEventListener("click",(function(){t.dom.elFace.remove(),t.imageWebCam=null,t.skinAnalyzeData=[],i.el.innerHTML="",t.intro=!0,n.intro=!0,new Ta(t.dom.docIframe,i.ctx,i.pv)}))}}},{key:"handleBack",value:function(){var e=this.w.globals,t=this.w.config;e.imageWebCam=null,this.showAnalyzer(e,t)}},{key:"handleSubmit",value:function(e){var t=this.w.globals;t.dom.elFace.analyzer.innerHTML="",t.stepShow="preview",new ma(t.dom.elFace.analyzer,this.ctx,this.pv,e,this.width,this.height,this.restart,this.callBack),t.gtmConfig&&ui("click","selectPhoto","skin_analysis","Face Age Skin Analysis")}},{key:"restart",value:function(){var e=this.w.globals;e.imageWebCam=null,e.skinAnalyzeData=[];var t=this.pv.getValue();this.el.innerHTML="",this.onSet&&this.onSet(),e.gtmConfig&&ui("click","restartPhoto","skin_analysis","Face Age Skin Analysis"),this.render(),this.showFaceAge(t.copyRight)}},{key:"callBack",value:function(e){var t=this.w.globals;e&&t.skinAnalyzeData&&this.onSet&&this.onSet(t.skinAnalyzeData),t.gtmConfig&&ui("click","backToPhoto","skin_analysis","Face Age Skin Analysis")}},{key:"getCurrentDimension",value:function(){return{width:"undefined"==typeof window?0:window.innerWidth,height:"undefined"==typeof window?0:window.innerHeight}}},{key:"updateDimension",value:function(){var e=this.w.globals,t=this.w.config,n=Hn.getSizeFrame(e,t);this.width=n.width,this.height=n.height,"widget"===t.displayModel&&(e.dom.elIframe.style.height=this.height+"px"),e.dom.elFace&&e.dom.elFace.analyzer&&(e.dom.elFace.analyzer.style.width=this.width+"px",e.dom.elFace.analyzer.style.height=this.height+"px")}},{key:"showFaceAge",value:function(e){var t=this.w.globals,n=this.w.config;new va(t.dom.docIframe,t,n,e)}}])&&ka(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function xa(e){return xa="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},xa(e)}function Ca(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Aa(i.key),i)}}function Aa(e){var t=function(e){if("object"!=xa(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=xa(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==xa(t)?t:t+""}var Ta=function(){function e(t,n,i){var r;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.el=t,this.ctx=n,this.pv=i,this.w=n.w,this.gl=n.w.globals,this.valus=null!==(r=this.gl.formData)&&void 0!==r?r:{},this.required=[],this.render()}return t=e,n=[{key:"render",value:function(){var e=this,t=this.el,n=this.w.globals,i=this.w.config;if(Object.keys(this.valus).length<=0&&i.defaultQuiz&&Vn().map(i.defaultQuiz,(function(t,n){e.valus[n]=t})),n.formPages){var r=!1;n.formPages.map((function(e){"imageAnalysis"===e.name&&(r=!0)})),r||n.formPages.push({name:"imageAnalysis"})}else n.formPages=[{name:"imageAnalysis"}];i.quiz?(n.dom.elForm=document.createElement("div"),Hn.setAttrs(n.dom.elForm,{class:"face_age_form "+i.displayModel,style:"height: 100%;display: flex;flex-direction: column;flex: 1 1 0%;overflow: hidden auto;align-self: center; background-position: center;background-size: cover; border-radius: 14px;"}),t.appendChild(n.dom.elForm),this.showQuiz(n.activeQuiz)):this.showFaceSkin()}},{key:"showQuiz",value:function(){var t,n,i,r,a=this,o=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,s=this.w.globals,l=this.w.config,u=s.formPages[o];if(!u)return null;if("imageAnalysis"===u.name)return s.dom.elForm.remove(),this.showFaceSkin(),(!u.content||!u.content.elements&&u.content.elements.length<=0)&&s.getActiveSelections&&s.getActiveSelections(s.formData),null;if(s.stepShow="quiz",null!=u&&u.if&&null!=u&&null!==(t=u.if)&&void 0!==t&&t.key&&null!=u&&null!==(n=u.if)&&void 0!==n&&n.condition&&null!=u&&null!==(i=u.if)&&void 0!==i&&i.value&&!this.checkIf(this.valus[u.if.key],u.if.condition,u.if.value))return this.onSubmit(u),null;var c=u.title?'<div class="title">'+Sn.t(null==u?void 0:u.title)+"</div>":"";null!=u&&u.content&&null!=u&&null!==(r=u.content)&&void 0!==r&&r.elements,s.gtmConfig&&(0===o&&setTimeout((function(){ui("view","start","quiz_name","Face Age Quiz")}),100),ui("view","question","question_title",null!=u&&u.title?u.title:"Quiz "+o));var d="";this.required=[],u.content.actions&&u.content.actions.map((function(e){d+='<div role="button" width="fullWidth" class="sc-1x1y2bq-3 bLwrg '+("goToNext"===e.onAction?"disabale":"")+" "+e.onAction+'">'+Sn.t(e.label)+"</div>"}));var p='<div class="form_window"><div class="toolbar"></div><div class="box_title">'+("modal"!==l.displayModel?'<div class="goBack"><svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M15.56 5.15999L13.2 2.79999L0 16L13.2 29.2L15.56 26.84L4.72 16L15.56 5.15999Z" fill="black"/></svg></div>':"")+c+'</div><div class="elements"></div><div class="action"><div class="sc-1x1y2bq-2 sc-1kkf162-1 dZaMnF lbSetf">'+d+"</div></div></div>",h="auto 0px";switch(u.position){case"top":h="10px auto";break;case"center":h="auto 0px";break;case"bottom":h="auto auto 15px"}s.dom.elForm.box=document.createElement("div"),Hn.setAttrs(s.dom.elForm.box,{style:"width: 100%;"+("widget"!==l.displayModel?"margin: "+h+";":"")}),s.dom.elForm.box.innerHTML=p,s.dom.elForm.elements=s.dom.elForm.box.getElementsByClassName("elements")[0],s.dom.elForm.goBack=s.dom.elForm.box.querySelector(".goBack");var m=!0;u.content&&u.content.elements&&u.content.elements.map((function(e){if(e.if&&e.if.key&&e.if.condition&&e.if.value&&!a.checkIf(a.valus[e.if.key],e.if.condition,e.if.value))return!1;e.required&&a.required.push(e.name),e.required&&!a.valus[e.name]&&(m=!1),new Zr(s.dom.elForm.elements,s,e,a.valus,(function(e,t,n){return a.setData(e,t,n)}))})),s.dom.elForm.toolbar=s.dom.elForm.box.getElementsByClassName("toolbar")[0],s.dom.elForm.toolbar&&(0!==s.activeQuiz||s.formPages.length>=s.activeQuiz)&&(s.dom.elForm.back=document.createElement("div"),Hn.setAttrs(s.dom.elForm.back,{class:"back;"}),s.dom.elForm.toolbar.appendChild(s.dom.elForm.back)),s.dom.elForm.box.getElementsByClassName("goToNext")&&(s.dom.elForm.goToNext=s.dom.elForm.box.getElementsByClassName("goToNext")[0],s.dom.elForm.goToNext&&(this.required.length<=0&&s.dom.elForm.goToNext.classList.remove("disabale"),s.dom.elForm.goToNext.addEventListener("click",(function(e){a.onSubmit(u)}))),s.dom.elForm.goToNext&&m&&s.dom.elForm.goToNext.classList.remove("disabale")),s.dom.elForm.box.getElementsByClassName("goToSkip")&&(s.dom.elForm.goToSkip=s.dom.elForm.box.getElementsByClassName("goToSkip")[0],s.dom.elForm.goToSkip&&s.dom.elForm.goToSkip.addEventListener("click",(function(e){}))),s.dom.elForm.box.getElementsByClassName("goToSkip")&&(s.dom.elForm.goToSkip=s.dom.elForm.box.getElementsByClassName("goToSkip")[0],s.dom.elForm.goToSkip&&s.dom.elForm.goToSkip.addEventListener("click",(function(t){s.dom.elForm.remove(),s.activeQuiz=s.activeQuiz+1,new e(s.dom.docIframe,a.ctx,a.pv)}))),s.dom.elForm.innerHTML="","modal"===l.displayModel?new hi(s.dom.elForm,this.ctx,this.pv,null,s.activeQuiz>0&&s.formPages.length>1?function(){s.dom.elForm.remove(),s.activeQuiz=s.activeQuiz-1>0?s.activeQuiz-1:0,new e(s.dom.docIframe,a.ctx,a.pv)}:null,s.activeQuiz>0):s.dom.elForm.goBack&&(s.activeQuiz>0&&s.formPages.length>1?s.dom.elForm.goBack.addEventListener("click",(function(t){s.dom.elForm.remove(),s.activeQuiz=s.activeQuiz-1>0?s.activeQuiz-1:0,new e(s.dom.docIframe,a.ctx,a.pv)})):s.dom.elForm.goBack.remove()),"widget"!==l.displayModel&&(u.background_color?s.dom.elForm.style.backgroundColor=u.background_color:s.dom.elForm.style.backgroundColor="",u.background_image?s.dom.elForm.style.backgroundImage='url("'+u.background_image+'")':s.dom.elForm.style.backgroundImage=""),s.dom.elForm.appendChild(s.dom.elForm.box)}},{key:"setData",value:function(e,t){var n=this,i=this.w.globals;if(this.valus[t]=e,i.dom.elForm.goToNext){var r=!0;this.required.map((function(e){n.valus[e]||(r=!1)})),r?i.dom.elForm.goToNext.classList.remove("disabale"):i.dom.elForm.goToNext.classList.add("disabale")}}},{key:"checkIf",value:function(e,t,n){switch(t){case"=":if(e===n)return!0;break;case"!=":if(e!==n)return!0}return!1}},{key:"onSubmit",value:function(e){var t=this,n=this.w.globals;if(this.required.length>0&&!this.required.find((function(e){return t.valus[e]})))return!1;e.content.elements.map((function(e){var t=n.dom.elForm.elements.querySelector('.el_box[data-name="'+e.name+'"]');if(t){var i=t.querySelector(".err");i&&i.remove()}}));var i=An(e.content.elements,this.valus);if(i)return i.map((function(e,t){Vn().map(e.errors,(function(e,t){var i=n.dom.elForm.elements.querySelector('.el_box[data-name="'+t+'"]');if(i){var r=document.createElement("p");Hn.setAttrs(r,{class:"err"}),r.innerText=e,i.appendChild(r)}}))})),!1;e.content.elements.map((function(e){n.gtmConfig&&(!t.valus[e.name]||"checkboxInput"!==e.type&&"radioInput"!==e.type&&"selectBox"!==e.type||ui("click","choice","choice_text",e.name+": "+t.valus[e.name]),!t.valus[e.name]||"textInput"!==e.type||"phone"!==e.name&&"email"!==e.name&&"clientEmail"!==e.name||ui("submit",e.name,"quiz_name","Face Age Quiz"))})),n.activeQuiz+=1,this.showQuiz(n.activeQuiz),n.formData=this.valus}},{key:"showFaceSkin",value:function(){var e=this,t=this.w.globals,n=this.w.config;t.dom.elForm&&t.dom.elForm.remove(),n.type,n.intro?(t.stepShow="intro",new Pi(t.dom.docIframe,this.ctx,this.pv),t.dom.elInfo.btn.addEventListener("click",(function(i){if(t.stepShow="upload",!t.privacy)return null;t.dom.elInfo.btn.style.opacity="0.5",t.intro=!1,n.intro=!1,t.dom.elInfo.remove(),new Pa(t.dom.docIframe,e.ctx,e.pv),t.gtmConfig&&ui("submit","instructions","skin_analysis","Face Age Skin Analysis")}))):(t.intro=!1,n.intro=!1,new Pa(t.dom.docIframe,this.ctx,this.pv));var i=t.formPages.find((function(e){return"imageAnalysis"===e.name}));i&&i.background_color?t.dom.docIframe.style.backgroundColor=i.background_color:t.dom.docIframe.style.backgroundColor="#ffe5f0;",i&&i.background_image?t.dom.docIframe.style.backgroundImage='url("'+i.background_image+'")':t.dom.docIframe.style.backgroundImage=""}},{key:"setCookie",value:function(e,t,n){var i=new Date;i.setTime(i.getTime()+24*n*60*60*1e3);var r="expires="+i.toUTCString();document.cookie=e+"="+t+";"+r+";path=/"}},{key:"getCookie",value:function(e){for(var t=e+"=",n=decodeURIComponent(document.cookie).split(";"),i=0;i<n.length;i++){for(var r=n[i];" "==r.charAt(0);)r=r.substring(1);if(0==r.indexOf(t))return r.substring(t.length,r.length)}return""}}],n&&Ca(t.prototype,n),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,n}();function ja(e){return ja="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ja(e)}function _a(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Ea(i.key),i)}}function Ea(e){var t=function(e){if("object"!=ja(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=ja(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==ja(t)?t:t+""}var Ra=function(){return e=function e(t,n){var i,r,a;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),i=this,a=!1,(r=Ea(r="showModel"))in i?Object.defineProperty(i,r,{value:a,enumerable:!0,configurable:!0,writable:!0}):i[r]=a,this.ctx=n,this.w=n.w,this.el=t,this.pv=new bi},(t=[{key:"setupElements",value:function(){var e=this.w.globals,t=this.w.config;t.type,t.arrTypes,e.faceClass=".faceAge-"+e.faceID,e.dom.elWrap=document.createElement("div"),Hn.setAttrs(e.dom.elWrap,{id:e.faceClass.substring(1),class:"faceAge-main-module "+e.faceClass.substring(1)}),"modal"===t.displayModel?(e.dom.elModalMain=document.createElement("div"),Hn.setAttrs(e.dom.elModalMain,{id:"face-age-plugin"}),e.dom.elModalButtonMessage=document.createElement("div"),Hn.setAttrs(e.dom.elModalButtonMessage,{id:"face-age-message-bubbles",style:"background-color: white;\n color: black;\n box-shadow: rgba(150, 150, 150, 0.2) 0px 10px 30px 0px, rgba(150, 150, 150, 0.2) 0px 0px 0px 1px;\n border-radius: 10px;\n padding: 15px;\n margin: 8px;\n font-size: 14px;\n opacity: 1;\n transform: scale(1);\n transition: opacity 0.5s, transform 0.5s;\n position: fixed;\n border-radius: 10px;\n font-family: sans-serif;\n z-index: 9998;\n cursor: pointer;\n flex-direction: column;\n gap: 50px;\n max-width: 70vw;\n display: block;\n right: auto;\n bottom: 89px;\n left: 15px; text-transform: capitalize; display: none;"}),e.dom.elModalButtonMessage.innerHTML='<div class="text">'+Sn.t("Skin Analysis")+"</div>",e.dom.elModalMain.appendChild(e.dom.elModalButtonMessage),e.dom.elModalButtonMessage.text=e.dom.elModalButtonMessage.querySelector(".text"),e.dom.elModalButton=document.createElement("button"),Hn.setAttrs(e.dom.elModalButton,{id:"face-age-button",style:"opacity: 0; display: none;"}),e.dom.elModalButton.innerHTML='<svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 245.26 245.26">\n <defs>\n <style>\n .cls-5 {\n fill: #fff;\n }\n\n .cls-6 {\n stroke-width: 2px;\n }\n\n .cls-6, .cls-7 {\n fill: none;\n stroke-miterlimit: 10;\n }\n\n .cls-7 {\n stroke: #fff;\n }\n </style>\n </defs>\n <circle class="cls-1" cx="121.97" cy="123.39" r="121.42"/>\n <circle class="cls-1" cx="122.63" cy="122.63" r="122.63"/>\n <circle class="cls-7" cx="121.97" cy="123.39" r="107.34"/>\n <circle class="cls-7" cx="121.97" cy="123.39" r="114.38"/>\n <circle class="cls-7" cx="121.97" cy="123.39" r="99.42"/>\n <circle class="cls-7" cx="121.97" cy="123.39" r="91.5"/>\n <circle class="cls-7" cx="121.97" cy="123.39" r="83.58"/>\n <path class="cls-5" d="M84.54,239.14l1.53,.57,4.51,1.31,7.9,1.85,12.53,1.83,6.93,.46,3.76,.09,4.77-.06,4.65-.33c1.27-.07,2.54-.16,3.8-.27h.17s.11-.03,.11-.03c3.91-.36,7.8-.89,11.58-1.58,.19-.03,.37-.07,.56-.1h0c7.57-1.38,12.35-2.36,19.59-5.37,.67-.28,3.34-1.71,4-2-18.9-5.53-34.77-18.14-45.57-34.61,22.88,5.7,47.18,5.64,70.03-.17,.72-22.29,1.43-44.58,2.15-66.86,1.44-44.76-19.65-89.68-55-117.16-2.16,24.13-9.81,48.02-23.91,67.72-14.1,19.7-34.66,33.5-58.26,38.98,2.57-3.39,2.56-6.92,.31-10.53-2.25-3.61-6.83-5.6-11-4.78-4.24,.83-7.64,4.27-9.34,8.24s-1.92,8.43-1.65,12.74c.44,7.07,2.54,14.7,8.36,18.74,8.15,5.66,19.42,1.86,29.06,4.22,7.72,1.89,14.07,7.84,17.58,14.97,3.5,7.13,4.39,15.33,3.75,23.26-.62,7.71-2.94,15.38-6.51,22.48-4.29,8.54-10.38,16.27-17.49,22.28l.72,.27"/>\n <g>\n <path class="cls-1" d="M182.36,68.85c-4.09-2.6-9.86-2.41-13.22,.95-1.74,1.57-2.97,3.64-3.81,5.83-.84,2.21-1.35,4.54-1.63,6.91-.56,4.74-.22,9.54,.66,14.26,.86,4.73,2.08,9.42,3.5,14.04,1.38,4.64,2.99,9.2,4.6,13.81,.78,2.31,1.54,4.67,2.04,7.12,.52,2.44,.7,4.98,.52,7.47-.19,2.48-.59,4.97-1.52,7.33-.47,1.17-1.04,2.31-1.79,3.35s-1.65,1.94-2.65,2.71c-2.01,1.53-4.36,2.5-6.78,2.99-1.21,.25-2.44,.39-3.67,.37-1.23-.03-2.45-.2-3.63-.5,2.41,.41,4.86,.26,7.17-.38,2.31-.62,4.5-1.7,6.28-3.24,.89-.76,1.69-1.63,2.32-2.6,.64-.97,1.12-2.04,1.5-3.15,.76-2.22,1.09-4.59,1.19-6.96,.08-2.37-.15-4.72-.68-7.03-.52-2.31-1.3-4.59-2.11-6.86-1.65-4.56-3.3-9.17-4.72-13.85-1.4-4.69-2.62-9.44-3.45-14.3-.8-4.85-1.12-9.88-.34-14.79,.38-2.45,.96-4.89,1.96-7.2,1-2.29,2.41-4.47,4.38-6.08,.97-.8,2.07-1.47,3.27-1.89,1.19-.43,2.45-.6,3.69-.61,1.24,.01,2.48,.19,3.65,.58,1.2,.4,2.3,.98,3.27,1.72Z"/>\n <path class="cls-1" d="M164,104.51c1.82-1.19,3.81-2.08,5.85-2.81,2.04-.74,4.15-1.26,6.27-1.66,2.13-.37,4.28-.62,6.44-.66,2.16-.06,4.32,.03,6.46,.4-2.12,.47-4.22,.81-6.32,1.15-2.09,.36-4.17,.69-6.24,1.08-2.08,.35-4.13,.78-6.21,1.19-2.05,.42-4.12,.89-6.25,1.31Z"/>\n </g>\n <path class="cls-1" d="M142.64,16.5c-1.02,23.41-6.03,49.01-20.74,67.79-14.72,18.77-38.1,31.07-61.36,38.66,3.42-6.35,.84-13.15-6.63-13.73-7.35-.57-13.66,6.01-14.83,12.96-1.17,6.93,1.52,13.92,4.7,20.26,1.29,2.56,2.74,5.16,5.07,6.93,6.08,4.63,14.96,1.79,22.72,2.37,10.2,.76,19.08,8.09,23.11,17.06,4.03,8.96,3.77,19.28,1.26,28.73-2.52,9.46-7.15,18.27-11.75,27-1.67,3.16-2.34,9.12-5.74,10.49-5.16,2.07-14.18-3.42-20.27-8.23C8.03,187.2-17.79,108.26,20.01,52.51,38.87,24.69,72.04,2.94,107.51,4.91c4.74,.26,9.45,1.02,14.01,2.35,8.95,2.62,12.87,3.72,21.12,9.24"/>\n <g>\n <line class="cls-6" x1="26.69" y1="177.24" x2="112.73" y2="152.19"/>\n <path class="cls-6" d="M50.65,192.49c4.76-1.59,9.52-3.17,14.28-4.76,3.63-1.21,7.26-2.42,10.9-3.63,2.21-.74,6.3-2.95,8.56-2.12,5.13,1.88,10.24,3.79,15.36,5.67,2.63,.97,3.92,1.7,6.56,.78,9.76-3.38,19.53-6.73,29.29-10.1"/>\n <path class="cls-6" d="M38.67,155.46c4.82-1.39,9.64-2.77,14.47-4.16,3.68-1.06,7.36-2.11,11.04-3.17,2.24-.64,6.86-1.13,8.26-3.1,3.17-4.45,6.3-8.92,9.46-13.37,1.62-2.29,2.27-3.62,4.96-4.36,9.96-2.73,19.91-5.5,29.87-8.25"/>\n </g>\n <circle class="cls-5" cx="26.59" cy="177.17" r="2.72"/>\n <circle class="cls-5" cx="50.75" cy="192.44" r="2.72"/>\n <circle class="cls-5" cx="38.67" cy="155.51" r="2.72"/>\n <path class="cls-5" d="M88.45,240l-15-5c11-1,24-44.75,24-44.75h0c3.67,3.92,7.33,7.84,11,11.75"/>\n <polyline class="cls-5" points="112.45 243 142.64 243.62 135.8 244.5 130.66 245.02 125.15 245.25 114.18 244.96 105.95 244.13 99.35 243 95.23 242.23 92.32 241.47"/>\n</svg>',e.dom.elModalButton.addEventListener("click",(function(t){e.dom.elModalFace.classList.add("is-open"),e.gtmConfig&&ui("click","openModal","skin_analysis","Face Age Skin Analysis")})),e.dom.elModalButtonMessage.addEventListener("click",(function(t){e.dom.elModalFace.classList.add("is-open")})),e.dom.elModalMain.appendChild(e.dom.elModalButton),e.dom.elModalFace=document.createElement("div"),Hn.setAttrs(e.dom.elModalFace,{id:"face-age-modal","aria-hidden":"false"}),e.dom.elModalOverlay=document.createElement("div"),Hn.setAttrs(e.dom.elModalOverlay,{id:"face-age-overlay"}),Hn.setAttrs(e.dom.elWrap,{class:"face-age-dialog faceAge-main-module "+e.faceClass.substring(1),role:"dialog"}),e.dom.elModalOverlay.appendChild(e.dom.elWrap),e.dom.elModalFace.appendChild(e.dom.elModalOverlay),e.dom.elModalMain.appendChild(e.dom.elModalFace),this.el.appendChild(e.dom.elModalMain),this.setCustomModalCss()):this.el.appendChild(e.dom.elWrap),this.setIframe()}},{key:"setIframe",value:function(){var e,t,n=this,i=this.w.globals,r=this.w.config;"widget"===r.displayModel?-1===(e=r.iframeWidth||i.iframeWidth).indexOf("%")?t=parseInt(e)/3*4+"px":(t=i.dom.elWrap.clientWidth*(parseInt(e)/100)/3*4+"px")<320&&(t=320):"section"===r.displayModel?(e="100%",t=r.iframeHeight||i.iframeHeight):(e="100%",t="100%"),i.dom.elIframe=document.createElement("iframe"),Hn.setAttrs(i.dom.elIframe,{id:"FaceAge-module-iframe",title:"Face Age Skincare Advisor",allow:"geolocation *; microphone *; camera *",style:"modal"!==r.displayModel?"border: 0px; margin: 0px; padding: 0px; min-width: "+e+"; min-height: "+t+"; overflow: hidden; position: relative; z-index: 1; opacity: 0;":"border: 0px; margin: 0px; padding: 0px; width: "+e+"; height: "+t+"; overflow: hidden; position: relative; z-index: 1; opacity: 0; border: none; background: transparent;"}),i.dom.elWrap.appendChild(i.dom.elIframe),navigator.userAgent.includes("Firefox")?i.dom.elIframe.onload=function(){n.showIframeRender()}:this.showIframeRender()}},{key:"showIframeRender",value:function(){var e=this.w.globals,t=this.w.config,n=e.dom.elIframe.contentDocument;if(!n.body){var i=n.createElement("body");n.appendChild(i)}e.dom.docIframe=n.body,e.dom.headIframe=n.head,Hn.setAttrs(e.dom.docIframe,{id:"faceAge-module-body",class:t.displayModel,style:"margin:0;padding:0;overflow:hidden;"+("widget"!==t.displayModel?"background-color: transparent;":"")});var r=document.createElement("meta");r.name="viewport",r.content="width=device-width, initial-scale=1.0",e.dom.headIframe.appendChild(r);var a=document.createElement("link");a.id="inter-font",a.rel="stylesheet",a.type="text/css",a.media="all",a.href="https://fonts.googleapis.com/css2?family=Inter:wght@100;200;300;400;500;600;700;800;900&display=swap",e.dom.headIframe.appendChild(a);var o=document.createElement("link");o.id="roboto-mono-font",o.rel="stylesheet",o.type="text/css",o.media="all",o.href="https://fonts.googleapis.com/css?family=Roboto+Mono|Roboto+Slab|Roboto:300,400,500,700&display=optional",e.dom.headIframe.appendChild(o);var s=document.createElement("link");s.rel="stylesheet",s.href="https://cdn.jsdelivr.net/npm/swiper@11/swiper-bundle.min.css",e.dom.headIframe.appendChild(s);var l=document.createElement("link");l.id="face-age-css",l.rel="stylesheet",l.type="text/css",l.media="all",l.href="https://static.getfaceage.com/v2.0/faceage.css",e.dom.headIframe.appendChild(l);var u=document.createElement("script");u.src="https://cdn.jsdelivr.net/npm/swiper@11/swiper-bundle.min.js",e.dom.headIframe.appendChild(u);var c=document.createElement("script");c.src="https://cdn.jsdelivr.net/npm/chart.js",e.dom.headIframe.appendChild(c),e.dom.elIframe.contentDocument.getElementById("face-age-css").addEventListener("load",(function(){e.dom.elIframe.style.opacity=1})),e.dom.docIframe.loader=document.createElement("div"),e.dom.docIframe.loader.face=document.createElement("div"),Hn.setAttrs(e.dom.docIframe.loader.face,{class:"face_age"}),e.dom.docIframe.loader.face.innerHTML='<div class="loading_request" style="background: transparent"><div class="FaceCircularProgress-root FaceCircularProgress-colorPrimary FaceCircularProgress-indeterminate" role="progressbar" style="width: 40px; height: 40px; color: #000"><svg class="FaceCircularProgress-svg" viewBox="22 22 44 44"><circle class="FaceCircularProgress-circle FaceCircularProgress-circleIndeterminate" cx="44" cy="44" r="20.2" fill="none" stroke-width="3.6"></circle></svg></div></div>',"modal"===t.displayModel&&new hi(e.dom.docIframe.loader,this.ctx,this.pv,null,null,!1),e.dom.docIframe.loader.appendChild(e.dom.docIframe.loader.face),e.dom.docIframe.appendChild(e.dom.docIframe.loader),t.gtag&&li.initialize(e,{containerId:t.gtag}),this.authorize()}},{key:"setElements",value:function(){var e,t,n,i,r,a,o,s,l,u,c,d,p,h,m,f,g,y,v,b,k,w,S,P,x,C,A,T,j,_,E,R,I,z,L,O,M,F,D,B,N=this.w.globals,G=this.w.config,U=this.pv.getValue();G.type,new Ta(N.dom.docIframe,this.ctx,this.pv),this.showFaceAge(U.copyRight);var H=document.createElement("style");H.id="face-age-css-root",H.rel="stylesheet",H.type="text/css",H.media="all";var W=":root {\n --background: "+(null!==(e=null===(t=N.customTemplate)||void 0===t?void 0:t.background)&&void 0!==e?e:"#F9FAFC")+";\n --color: "+(null!==(n=null===(i=N.customTemplate)||void 0===i?void 0:i.color)&&void 0!==n?n:"#000")+";\n --divider: "+(null!==(r=null===(a=N.customTemplate)||void 0===a?void 0:a.color)&&void 0!==r?r:"#E6E8F0")+";\n --basic: "+(null!==(o=null===(s=N.customTemplate)||void 0===s?void 0:s.base_color)&&void 0!==o?o:"rgba(239, 55, 134);")+";\n --error: "+(null!==(l=null===(u=N.customTemplate)||void 0===u?void 0:u.error)&&void 0!==l?l:"#da005c")+";\n --basic_action: "+(null!==(c=null===(d=N.customTemplate)||void 0===d?void 0:d.basic_action_color)&&void 0!==c?c:"rgb(239, 55, 134)")+";\n --color_action: "+(null!==(p=null===(h=N.customTemplate)||void 0===h?void 0:h.basic_action_text)&&void 0!==p?p:"#fff")+";\n --submit_action: "+(null!==(m=null===(f=N.customTemplate)||void 0===f?void 0:f.submit_action_color)&&void 0!==m?m:"rgb(8, 211, 144)")+";\n --circle_action: "+(null!==(g=null===(y=N.customTemplate)||void 0===y?void 0:y.circle_action)&&void 0!==g?g:"#fff")+";\n --color_circle_action: "+(null!==(v=null===(b=N.customTemplate)||void 0===b?void 0:b.color_circle_action)&&void 0!==v?v:"#000")+";\n --base_border_radius: "+(null!==(k=null===(w=N.customTemplate)||void 0===w?void 0:w.base_border_radius)&&void 0!==k?k:"40px")+";\n --base_border: "+(null!==(S=null===(P=N.customTemplate)||void 0===P?void 0:P.base_border)&&void 0!==S?S:"#ccc")+";\n --quiz_input_color: "+(null!==(x=null===(C=N.customTemplate)||void 0===C?void 0:C.quiz_input_color)&&void 0!==x?x:"rgb(200 200 200)")+";\n --background_upload_color: "+(null!==(A=null===(T=N.customTemplate)||void 0===T?void 0:T.background_upload_color)&&void 0!==A?A:"#fff0fb")+";\n --accepted_status: "+(null!==(j=null===(_=N.customTemplate)||void 0===_?void 0:_.position_accepted_status_color)&&void 0!==j?j:"rgb(8, 211, 144)")+";\n --not_accepted_status: "+(null!==(E=null===(R=N.customTemplate)||void 0===R?void 0:R.position_not_accepted_status_color)&&void 0!==E?E:"rgb(239, 55, 134)")+";\n --product_shadow: "+(null!==(I=null===(z=N.customTemplate)||void 0===z?void 0:z.product_shadow)&&void 0!==I?I:"0")+";\n --product_border: "+(null!==(L=null===(O=N.customTemplate)||void 0===O?void 0:O.product_border)&&void 0!==L?L:"rgb(200 200 200)")+";\n --product_padding: "+(null!==(M=null===(F=N.customTemplate)||void 0===F?void 0:F.product_padding)&&void 0!==M?M:"10")+";\n --product_action: "+(null!==(D=null===(B=N.customTemplate)||void 0===B?void 0:B.product_action_color)&&void 0!==D?D:"rgb(239, 55, 134)")+";\n}";H.styleSheet?H.styleSheet.cssText=W:H.appendChild(document.createTextNode(W)),N.dom.headIframe.appendChild(H)}},{key:"authorize",value:function(){var e,t=this,n=this.w.config.faceageId,i=this.w.globals,r=this.w.config;null===(e=Rt.request("post","authorize",{faceageId:n}))||void 0===e||e.then((function(e){var a,o,s,l,u,c;i.faceageId=n,i.authorize=e.data.data,i.formPages=[],i.customTemplate=null!==(a=null===(o=e.data.data)||void 0===o?void 0:o.template)&&void 0!==a?a:[],i.customRoutineGroup=null!==(s=null===(l=e.data.data)||void 0===l?void 0:l.routine)&&void 0!==s?s:i.routineGroup,e.data.data.problems&&e.data.data.problems.length>0&&(i.problems=null!==(u=e.data.data.problems)&&void 0!==u?u:[]),e.data&&e.data.data.pages&&e.data.data.pages.map((function(e){"skincare"===r.type&&"skin_analyzer"===e.data.name&&(i.formPages=e.quiz)})),null!==(c=i.dom.docIframe)&&void 0!==c&&c.loader&&i.dom.docIframe.loader.remove(),t.pv.setValue("copyRight",!0),t.pv.setValue("license",!0),e.data.data.translation&&e.data.data.translation.length>0&&e.data.data.translation.map((function(e){var t={};e.words&&e.words.map((function(e){_.map(e,(function(e,n){n&&n.length>0&&e&&e.length>0&&(t[n]=e)}))})),Sn.addResources(e.lang,"translation",t)})),t.showModalAction(),t.setElements()})).catch((function(e){if(e.response&&e.response.data.message&&422===e.response.status){if(e.response.data.errors){var n=e.response.data.errors;Object.keys(n).forEach((function(e){if(n[e][0]){var t,a=n[e][0],o='<div class="loading_request" style="'+("modal"===r.displayModel?"background: #ffffff;border-radius: 0;":"background: transparent")+'">'+a+"</div>";null!==(t=i.dom.docIframe)&&void 0!==t&&null!==(t=t.loader)&&void 0!==t&&t.face&&(i.dom.docIframe.loader.face.innerHTML=o),console.error(n[e][0])}else{var s,l=n[e],u='<div class="loading_request" style="'+("modal"===r.displayModel?"background: #ffffff;border-radius: 0;":"background: transparent")+'">'+l+"</div>";null!==(s=i.dom.docIframe)&&void 0!==s&&null!==(s=s.loader)&&void 0!==s&&s.face&&(i.dom.docIframe.loader.face.innerHTML=u),console.error(n[e])}}))}else{var a,o=e.response.data.message,s='<div class="loading_request" style="'+("modal"===r.displayModel?"background: #ffffff;border-radius: 0;":"background: transparent")+'">'+o+"</div>";null!==(a=i.dom.docIframe)&&void 0!==a&&null!==(a=a.loader)&&void 0!==a&&a.face&&(i.dom.docIframe.loader.face.innerHTML=s),console.error(e.response.data.message)}"modal"===r.displayModel&&(i.dom.elModalButton.style.opacity=1)}else if(e.response&&e.response.data.message&&433===e.response.status){var l,u=Sn.t("You reached the limits of your plan"),c=Sn.t("Please renew your service for access"),d='<div class="loading_request" style="'+("modal"===r.displayModel?"background: #ffffff;border-radius: 0;":"background: transparent")+'"><div><h1 style="font-size: 26px;">'+u+'!</h1><p style="font-size: 18px; opacity: 0.6;">'+c+"!</p></div></div>";null!==(l=i.dom.docIframe)&&void 0!==l&&null!==(l=l.loader)&&void 0!==l&&l.face&&(i.dom.docIframe.loader.face.innerHTML=d)}else{var p,h=null!=e&&e.message?Sn.t(null==e?void 0:e.message):Sn.t("An error occurred, please check again"),m='<div class="loading_request" style="'+("modal"===r.displayModel?"background: #ffffff;border-radius: 0;":"background: transparent")+'">'+h+"</div>";null!==(p=i.dom.docIframe)&&void 0!==p&&null!==(p=p.loader)&&void 0!==p&&p.face&&(i.dom.docIframe.loader.face.innerHTML=m),console.error(h)}t.showModalAction()}))}},{key:"showModalAction",value:function(){var e=this.w.globals;if("modal"===this.w.config.displayModel){var t,n,i,r,a,o,s,l,u,c,d,p,h,m,f,g,y,v,b,k,w;e.dom.elModalButton.style.opacity=1,e.dom.elModalButton.style.display="block",null!=e&&null!==(t=e.authorize)&&void 0!==t&&t.name&&(e.dom.elModalButtonMessage.text.innerHTML=(null==e||null===(n=e.authorize)||void 0===n?void 0:n.name)+" "+Sn.t("Skin Analysis")),localStorage.getItem("face_message_modal")||setTimeout((function(){e.dom.elModalButtonMessage.style.display="block",localStorage.setItem("face_message_modal","true")}),2e3),e.dom.elModalButton.style.backgroundColor=null!==(i=null===(r=e.customTemplate)||void 0===r?void 0:r.base_color)&&void 0!==i?i:"rgba(239, 55, 134);",e.dom.elIframe.clientWidth>768?(e.dom.elModalButton.style.left=(null!==(o=null===(s=e.customTemplate)||void 0===s?void 0:s.position_show_desktop_tool_left_distance)&&void 0!==o?o:"24")+"px",e.dom.elModalButton.style.bottom=(null!==(l=null===(u=e.customTemplate)||void 0===u?void 0:u.position_show_desktop_tool_button_distance)&&void 0!==l?l:"24")+"px",e.dom.elModalButtonMessage.style.left=(null!==(c=(null===(d=e.customTemplate)||void 0===d?void 0:d.position_show_desktop_tool_left_distance)-9)&&void 0!==c?c:"15")+"px",e.dom.elModalButtonMessage.style.bottom=(null!==(p=(null===(h=e.customTemplate)||void 0===h?void 0:h.position_show_desktop_tool_button_distance)+65)&&void 0!==p?p:"89")+"px"):(e.dom.elModalButton.style.left=(null!==(m=null===(f=e.customTemplate)||void 0===f?void 0:f.position_show_mobile_tool_left_distance)&&void 0!==m?m:"24")+"px",e.dom.elModalButton.style.bottom=(null!==(g=null===(y=e.customTemplate)||void 0===y?void 0:y.position_show_mobile_tool_button_distance)&&void 0!==g?g:"24")+"px",e.dom.elModalButtonMessage.style.left=(null!==(v=(null===(b=e.customTemplate)||void 0===b?void 0:b.position_show_mobile_tool_left_distance)-9)&&void 0!==v?v:"15")+"px",e.dom.elModalButtonMessage.style.bottom=(null!==(k=(null===(w=e.customTemplate)||void 0===w?void 0:w.position_show_mobile_tool_button_distance)+65)&&void 0!==k?k:"89")+"px"),null!==(a=e.customTemplate)&&void 0!==a&&a.tools_icon&&(e.dom.elModalButton.innerHTML='<img alt="'+Sn.t("Skin Analysis")+'" src="'+e.customTemplate.tools_icon+'" />');var S=e.dom.elModalButton.querySelectorAll(".cls-1"),P=e.dom.elModalButton.querySelectorAll(".cls-6");S&&S.forEach((function(t){var n,i;t.style.fill=null!==(n=null===(i=e.customTemplate)||void 0===i?void 0:i.base_color)&&void 0!==n?n:"rgba(239, 55, 134);"})),P&&P.forEach((function(t){var n,i;t.style.stroke=null!==(n=null===(i=e.customTemplate)||void 0===i?void 0:i.base_color)&&void 0!==n?n:"rgba(239, 55, 134);"}))}}},{key:"showFaceAge",value:function(e){var t=this.w.globals,n=this.w.config;new va(t.dom.docIframe,t,n,e)}},{key:"setCustomModalCss",value:function(){this.w.globals;var e=document.createElement("style");e.id="face-age-styles",e.rel="stylesheet",e.type="text/css",e.media="all";var t='#face-age-button .cls-1{fill: #FB398D} #face-age-button .cls-6{stroke: #FB398D} #face-age-modal{display:none}#face-age-modal.is-open{display:block}#face-age-overlay{position:fixed;top:0;left:0;right:0;bottom:0;display:flex;justify-content:center;align-items:center;z-index:9999;background:rgba(0,0,0,0.2);-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);will-change:opacity}.face-age-dialog{margin:0;padding:0;overflow:hidden;background-color:#333;width:100%;height:100%;will-change:transform}#face-age-modal[aria-hidden="false"] #face-age-overlay{-webkit-animation:rv-mmfadeIn .3s cubic-bezier(0,0,0.2,1);animation:rv-mmfadeIn .3s cubic-bezier(0,0,0.2,1)}#face-age-modal[aria-hidden="true"] #face-age-overlay{-webkit-animation:rv-mmfadeOut .25s cubic-bezier(0.4,0,1,1);animation:rv-mmfadeOut .25s cubic-bezier(0.4,0,1,1)}#face-age-modal[aria-hidden="false"] .face-age-dialog{-webkit-animation:rv-mmscaleInN .3s cubic-bezier(0,0,0.2,1);animation:rv-mmscaleInN .3s cubic-bezier(0,0,0.2,1)}#face-age-modal[aria-hidden="true"] .face-age-dialog{-webkit-animation:rv-mmscaleOutN .25s cubic-bezier(0.4,0,1,1);animation:rv-mmscaleOutN .25s cubic-bezier(0.4,0,1,1)}@media (min-width: 768px){.face-age-dialog{width:90%;height:90%;box-shadow:0 16px 24px 2px rgba(0,0,0,0.14),0 6px 30px 5px rgba(0,0,0,0.12),0 8px 10px -5px rgba(0,0,0,0.2);max-width:1140px;max-height:800px;border-radius:10px}#face-age-modal[aria-hidden="false"] .face-age-dialog{-webkit-animation:rv-mmslideIn .3s cubic-bezier(0,0,0.2,1);animation:rv-mmslideIn .3s cubic-bezier(0,0,0.2,1)}#face-age-modal[aria-hidden="true"] .face-age-dialog{-webkit-animation:rv-mmslideOut .25s cubic-bezier(0.4,0,1,1);animation:rv-mmslideOut .25s cubic-bezier(0.4,0,1,1)}}#face-age-button{opacity: 0;width:60px;height:60px;box-shadow:none;border-style:none;top:auto;right:auto;bottom:24px;position:fixed;border-radius:50%;background-color:rgba(239,55,134);left:24px;color:#FFF;margin:0;padding:0;z-index:9998;will-change:opacity;cursor:pointer;text-align:center;display:flex;align-items:center;justify-content:center}#face-age-button > img{max-height:100%;max-width:100%;box-sizing:border-box}#face-age-button:hover{opacity:.9}@-webkit-keyframes rv-mmfadeIn{0%{opacity:0}to{opacity:1}}@keyframes rv-mmfadeIn{0%{opacity:0}to{opacity:1}}@-webkit-keyframes rv-mmfadeOut{0%{opacity:1}to{opacity:0}}@keyframes rv-mmfadeOut{0%{opacity:1}to{opacity:0}}@-webkit-keyframes rv-mmslideIn{0%{-webkit-transform:translateY(-25%);transform:translateY(-25%)}to{-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes rv-mmslideIn{0%{-webkit-transform:translateY(-25%);transform:translateY(-25%)}to{-webkit-transform:translateY(0);transform:translateY(0)}}@-webkit-keyframes rv-mmslideOut{0%{-webkit-transform:translateY(0);transform:translateY(0)}to{-webkit-transform:translateY(15%);transform:translateY(15%)}}@keyframes rv-mmslideOut{0%{-webkit-transform:translateY(0);transform:translateY(0)}to{-webkit-transform:translateY(15%);transform:translateY(15%)}}@-webkit-keyframes rv-mmscaleOutN{0%{-webkit-transform:scaleY(1);transform:scaleY(1);-webkit-transform-origin:0 100%;transform-origin:0 100%}to{-webkit-transform:scaleY(0);transform:scaleY(0);-webkit-transform-origin:0 100%;transform-origin:0 100%}}@keyframes rv-mmscaleOutN{0%{-webkit-transform:scaleY(1);transform:scaleY(1);-webkit-transform-origin:0 100%;transform-origin:0 100%}to{-webkit-transform:scaleY(0);transform:scaleY(0);-webkit-transform-origin:0 100%;transform-origin:0 100%}}@-webkit-keyframes rv-mmscaleInN{0%{-webkit-transform:scaleY(0);transform:scaleY(0);-webkit-transform-origin:0 100%;transform-origin:0 100%}to{-webkit-transform:scaleY(1);transform:scaleY(1);-webkit-transform-origin:0 100%;transform-origin:0 100%}}@keyframes rv-mmscaleInN{0%{-webkit-transform:scaleY(0);transform:scaleY(0);-webkit-transform-origin:0 100%;transform-origin:0 100%}to{-webkit-transform:scaleY(1);transform:scaleY(1);-webkit-transform-origin:0 100%;transform-origin:0 100%}}#face-age-button > img{display:block;padding:10px}#face-age-button > span{display:none;writing-mode:inherit}@media (min-width: 768px){#face-age-button > span{display:block;writing-mode:vertical-rl}}';e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t)),document.head.appendChild(e)}}])&&_a(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function Ia(e){return Ia="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ia(e)}function za(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,La(i.key),i)}}function La(e){var t=function(e){if("object"!=Ia(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=Ia(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Ia(t)?t:t+""}const Oa=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e)}return t=e,n=[{key:"shadeRGBColor",value:function(e,t){var n=t.split(","),i=e<0?0:255,r=e<0?-1*e:e,a=parseInt(n[0].slice(4),10),o=parseInt(n[1],10),s=parseInt(n[2],10);return"rgb("+(Math.round((i-a)*r)+a)+","+(Math.round((i-o)*r)+o)+","+(Math.round((i-s)*r)+s)+")"}},{key:"shadeHexColor",value:function(e,t){var n=parseInt(t.slice(1),16),i=e<0?0:255,r=e<0?-1*e:e,a=n>>16,o=n>>8&255,s=255&n;return"#"+(16777216+65536*(Math.round((i-a)*r)+a)+256*(Math.round((i-o)*r)+o)+(Math.round((i-s)*r)+s)).toString(16).slice(1)}},{key:"shadeColor",value:function(t,n){return e.isColorHex(n)?this.shadeHexColor(t,n):this.shadeRGBColor(t,n)}}],i=[{key:"bind",value:function(e,t){return function(){return e.apply(t,arguments)}}},{key:"isObject",value:function(e){return e&&"object"===Ia(e)&&!Array.isArray(e)&&null!=e}},{key:"is",value:function(e,t){return Object.prototype.toString.call(t)==="[object "+e+"]"}},{key:"listToArray",value:function(e){var t,n=[];for(t=0;t<e.length;t++)n[t]=e[t];return n}},{key:"extend",value:function(e,t){var n=this;"function"!=typeof Object.assign&&(Object.assign=function(e){if(null==e)throw new TypeError("Cannot convert undefined or null to object");for(var t=Object(e),n=1;n<arguments.length;n++){var i=arguments[n];if(null!=i)for(var r in i)i.hasOwnProperty(r)&&(t[r]=i[r])}return t});var i=Object.assign({},e);return this.isObject(e)&&this.isObject(t)&&Object.keys(t).forEach((function(r){var a,o,s;n.isObject(t[r])&&r in e?i[r]=n.extend(e[r],t[r]):Object.assign(i,(a={},o=r,s=t[r],(o=La(o))in a?Object.defineProperty(a,o,{value:s,enumerable:!0,configurable:!0,writable:!0}):a[o]=s,a))})),i}},{key:"extendArray",value:function(t,n){var i=[];return t.map((function(t){i.push(e.extend(n,t))})),i}},{key:"monthMod",value:function(e){return e%12}},{key:"clone",value:function(t){if(e.is("Array",t)){for(var n=[],i=0;i<t.length;i++)n[i]=this.clone(t[i]);return n}if(e.is("Null",t))return null;if(e.is("Date",t))return t;if("object"===Ia(t)){var r={};for(var a in t)t.hasOwnProperty(a)&&(r[a]=this.clone(t[a]));return r}return t}},{key:"log10",value:function(e){return Math.log(e)/Math.LN10}},{key:"roundToBase10",value:function(e){return Math.pow(10,Math.floor(Math.log10(e)))}},{key:"roundToBase",value:function(e,t){return Math.pow(t,Math.floor(Math.log(e)/Math.log(t)))}},{key:"parseNumber",value:function(e){return null===e?e:parseFloat(e)}},{key:"stripNumber",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:2;return Number.isInteger(e)?e:parseFloat(e.toPrecision(t))}},{key:"randomId",value:function(){return(Math.random()+1).toString(36).substring(4)}},{key:"noExponents",value:function(e){var t=String(e).split(/[eE]/);if(1===t.length)return t[0];var n="",i=e<0?"-":"",r=t[0].replace(".",""),a=Number(t[1])+1;if(a<0){for(n=i+"0.";a++;)n+="0";return n+r.replace(/^-/,"")}for(a-=r.length;a--;)n+="0";return r+n}},{key:"getDimensions",value:function(e){var t=getComputedStyle(e,null),n=e.clientHeight,i=e.clientWidth;return n-=parseFloat(t.paddingTop)+parseFloat(t.paddingBottom),[i-=parseFloat(t.paddingLeft)+parseFloat(t.paddingRight),n]}},{key:"getBoundingClientRect",value:function(e){var t=e.getBoundingClientRect();return{top:t.top,right:t.right,bottom:t.bottom,left:t.left,width:e.clientWidth,height:e.clientHeight,x:t.left,y:t.top}}},{key:"getLargestStringFromArr",value:function(e){return e.reduce((function(e,t){return Array.isArray(t)&&(t=t.reduce((function(e,t){return e.length>t.length?e:t}))),e.length>t.length?e:t}),0)}},{key:"hexToRgba",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"#999999",t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:.6;"#"!==e.substring(0,1)&&(e="#999999");var n=e.replace("#","");n=n.match(new RegExp("(.{"+n.length/3+"})","g"));for(var i=0;i<n.length;i++)n[i]=parseInt(1===n[i].length?n[i]+n[i]:n[i],16);return void 0!==t&&n.push(t),"rgba("+n.join(",")+")"}},{key:"getOpacityFromRGBA",value:function(e){return parseFloat(e.replace(/^.*,(.+)\)/,"$1"))}},{key:"rgb2hex",value:function(e){return(e=e.match(/^rgba?[\s+]?\([\s+]?(\d+)[\s+]?,[\s+]?(\d+)[\s+]?,[\s+]?(\d+)[\s+]?/i))&&4===e.length?"#"+("0"+parseInt(e[1],10).toString(16)).slice(-2)+("0"+parseInt(e[2],10).toString(16)).slice(-2)+("0"+parseInt(e[3],10).toString(16)).slice(-2):""}},{key:"isColorHex",value:function(e){return/(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)|(^#[0-9A-F]{8}$)/i.test(e)}},{key:"getPolygonPos",value:function(e,t){for(var n=[],i=2*Math.PI/t,r=0;r<t;r++){var a={};a.x=e*Math.sin(r*i),a.y=-e*Math.cos(r*i),n.push(a)}return n}},{key:"polarToCartesian",value:function(e,t,n,i){var r=(i-90)*Math.PI/180;return{x:e+n*Math.cos(r),y:t+n*Math.sin(r)}}},{key:"escapeString",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"x",n=e.toString().slice();return n.replace(/[` ~!@#$%^&*()|+\=?;:'",.<>{}[\]\\/]/gi,t)}},{key:"negToZero",value:function(e){return e<0?0:e}},{key:"moveIndexInArray",value:function(e,t,n){if(n>=e.length)for(var i=n-e.length+1;i--;)e.push(void 0);return e.splice(n,0,e.splice(t,1)[0]),e}},{key:"extractNumber",value:function(e){return parseFloat(e.replace(/[^\d.]*/g,""))}},{key:"findAncestor",value:function(e,t){for(;(e=e.parentElement)&&!e.classList.contains(t););return e}},{key:"setELstyles",value:function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e.style.key=t[n])}},{key:"isNumber",value:function(e){return!isNaN(e)&&parseFloat(Number(e))===e&&!isNaN(parseInt(e,10))}},{key:"isFloat",value:function(e){return Number(e)===e&&e%1!=0}},{key:"isSafari",value:function(){return/^((?!chrome|android).)*safari/i.test(navigator.userAgent)}},{key:"isFirefox",value:function(){return navigator.userAgent.toLowerCase().indexOf("firefox")>-1}},{key:"isIE11",value:function(){if(-1!==window.navigator.userAgent.indexOf("MSIE")||window.navigator.appVersion.indexOf("Trident/")>-1)return!0}},{key:"isIE",value:function(){var e=window.navigator.userAgent,t=e.indexOf("MSIE ");if(t>0)return parseInt(e.substring(t+5,e.indexOf(".",t)),10);if(e.indexOf("Trident/")>0){var n=e.indexOf("rv:");return parseInt(e.substring(n+3,e.indexOf(".",n)),10)}var i=e.indexOf("Edge/");return i>0&&parseInt(e.substring(i+5,e.indexOf(".",i)),10)}}],n&&za(t.prototype,n),i&&za(t,i),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,n,i}();function Ma(e){return Ma="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ma(e)}function Fa(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Da(i.key),i)}}function Da(e){var t=function(e){if("object"!=Ma(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=Ma(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Ma(t)?t:t+""}var Ba=function(){return e=function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.ctx=t,this.w=t.w,this.documentEvent=Oa.bind(this.documentEvent,this)},t=[{key:"addEventListener",value:function(e,t){var n=this.w;n.globals.events.hasOwnProperty(e)?n.globals.events[e].push(t):n.globals.events[e]=[t]}},{key:"removeEventListener",value:function(e,t){var n=this.w;if(n.globals.events.hasOwnProperty(e)){var i=n.globals.events[e].indexOf(t);-1!==i&&n.globals.events[e].splice(i,1)}}},{key:"fireEvent",value:function(e,t){var n=this.w;if(n.globals.events.hasOwnProperty(e)){t&&t.length||(t=[]);for(var i=n.globals.events[e],r=i.length,a=0;a<r;a++)i[a].apply(null,t)}}},{key:"setupEventHandlers",value:function(){var e=this,t=this.w,n=this.ctx,i=t.globals.dom.baseEl.querySelector(t.globals.faceAgeClass);this.ctx.eventList.forEach((function(e){i.addEventListener(e,(function(e){var i=Object.assign({},t,{seriesIndex:t.globals.capturedSeriesIndex,dataPointIndex:t.globals.capturedDataPointIndex});"mousemove"===e.type||"touchmove"===e.type?"function"==typeof t.config.faceAge.events.mouseMove&&t.config.faceAge.events.mouseMove(e,n,i):"mouseleave"===e.type||"touchleave"===e.type?"function"==typeof t.config.faceAge.events.mouseLeave&&t.config.faceAge.events.mouseLeave(e,n,i):("mouseup"===e.type&&1===e.which||"touchend"===e.type)&&("function"==typeof t.config.faceAge.events.click&&t.config.faceAge.events.click(e,n,i),n.ctx.events.fireEvent("click",[e,n,i]))}),{capture:!1,passive:!0})})),this.ctx.eventList.forEach((function(n){t.globals.dom.baseEl.addEventListener(n,e.documentEvent,{passive:!0})})),this.ctx.core.setupBrushHandler()}},{key:"documentEvent",value:function(e){var t=this.w,n=e.target.className;if("click"===e.type){var i=t.globals.dom.baseEl.querySelector(".faceage-menu");i&&i.classList.contains("faceage-menu-open")&&"faceage-menu-icon"!==n&&i.classList.remove("faceage-menu-open")}t.globals.clientX="touchmove"===e.type?e.touches[0].clientX:e.clientX,t.globals.clientY="touchmove"===e.type?e.touches[0].clientY:e.clientY}}],t&&Fa(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function Na(e){return Na="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Na(e)}function Ga(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Ua(i.key),i)}}function Ua(e){var t=function(e){if("object"!=Na(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=Na(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Na(t)?t:t+""}var Ha=function(){return e=function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.ctx=t,this.w=t.w},t=[{key:"getAdvisorData",value:function(e){var t=this;return new Promise((function(n,i){"function"==typeof e?t.w.globals.getAdvisorData=function(n){try{e({analysis:n,activeSelections:t.w.globals.formData})}catch(e){i(new Error("Error calling:",e.message))}}:i(new Error("function not valid"))}))}},{key:"getImage",value:function(){try{return this.w.globals.imageSubmit?this.w.globals.imageSubmit:null}catch(e){return null}}},{key:"getActiveSelections",value:function(e){var t=this;return new Promise((function(n,i){"function"==typeof e?t.w.globals.getActiveSelections=function(t){try{e(t)}catch(e){i(new Error("Error calling:",e.message))}}:i(new Error("function not valid"))}))}},{key:"getRoutineGroup",value:function(){try{return this.w.globals.routineGroup&&this.w.globals.routineGroup.map((function(e){return{key:e.key,title:e.title,status:e.status}}))}catch(e){return null}}},{key:"setCustomProducts",value:function(e){try{this.w.globals.productLoader=!0;var t=(n=e,this.w.globals.routineGroup,i=this.w.globals.problems,r=[],n.forEach((function(e,t){var n={};if(null===e.id&&(n.id="ID is required"),null===e.title||""===e.title.trim()?n.title="Title is required":Cn(e.title)&&(n.title="Title is not valid"),e.description&&Cn(e.description)&&(n.description="Description is not valid"),null===e.url||""===e.url.trim()?n.url="URL is required":xn(e.url)||(n.url="URL must be a valid HTTPS URL"),null===e.image||""===e.image.trim()?n.image="Image is required":xn(e.image)||(n.image="Image must be a valid HTTPS URL"),("number"!=typeof e.price||e.price<0)&&(n.price="Price must be a non-negative number"),void 0!==e.offerPrice&&("number"!=typeof e.offerPrice||e.offerPrice<0)&&(n.offerPrice="Offer price must be a non-negative number if provided"),void 0!==e.routineGroups&&(Array.isArray(e.routineGroups)||"object"===Pn(e.routineGroups)||(n.routineGroups="Routine groups must be an array")),void 0!==e.problems&&e.problems)if(Array.isArray(e.problems)){var a=[];e.problems.map((function(e){var t=!1;Object.keys(i).forEach((function(n,r){i[n],n.toLowerCase()===e.toLowerCase()&&(t=!0)})),t||a.push(e)})),a.length>0&&(n.problems="Invalid problem: ".concat(a.join(", ")))}else n.problems="problems must be an array";else n.problems="Problems is required";void 0!==e.variables&&"object"!==Pn(e.variables)?n.variables="Variables must be an object if provided":"object"===Pn(e.variables)&&Object.keys(e.variables).forEach((function(t,i){var r=e.variables[t];r.title&&r.option||(n["variables[".concat(t,"]")]="Each variable must have both title and option"),Array.isArray(r.option)&&r.option.forEach((function(i,r){i.label&&i.value||(n["variables[".concat(t,"][").concat(r,"]")]="Each variable must have both label and value"),void 0!==i.price&&("number"!=typeof i.price||i.price<0)&&(n["variables[".concat(t,"][").concat(r,"]")]="Price must be a non-negative number"),void 0!==i.offerPrice&&("number"!=typeof i.offerPrice||e.offerPrice<0)&&(n["variables[".concat(t,"][").concat(r,"]")]="Offer price must be a non-negative number if provided")}))})),Object.keys(n).length>0&&r.push({index:t,errors:n})})),r.length>0?r:null);t?console.error(t):(this.w.globals.productLists=e,this.w.globals.productLoader=!1)}catch(e){console.error("add custom products error: "+e)}var n,i,r}}],t&&Ga(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function Wa(e){return Wa="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Wa(e)}function Va(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,qa(i.key),i)}}function qa(e){var t=function(e){if("object"!=Wa(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=Wa(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Wa(t)?t:t+""}"undefined"!=typeof window&&void 0===window.FaceAge&&(window.FaceAge={});var Ja=function(){return e=function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.ctx=t,this.w=t.w},(t=[{key:"initModules",value:function(){this.ctx.publicMethods=["onClickProblem","onDisplayProducts","onDisplayRoutines","onAddToCart","onCheckout","onClickProduct","onCloseModal","onRefresh"],this.ctx.publicApiMethods=["getAdvisorData","getActiveSelections","setCustomProducts","getImage","getRoutineGroup"],this.ctx.eventList=[],this.ctx.core=new Ra(this.ctx.el,this.ctx),this.ctx.events=new Ba(this.ctx),this.ctx.API=new Ha(this.ctx)}}])&&Va(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}(),Ya={en:{translation:JSON.parse('{"Skin Analysis":"Skin Analysis","Look Straight":"Look Straight","Face Position":"Face Position","Lighting":"Lighting","Good":"Good","Not Good":"Not Good","Bad":"Bad","Fair":"Fair","Powered by":"Powered by","Your distance is close to the camera":"Your distance is close to the camera","Keep your face inside the circle":"Keep your face inside the circle","Please stand in front of the camera":"Please stand in front of the camera","There is more than one person in the picture":"There is more than one person in the picture","Drag & Drop":"Drag & Drop","Or":"Or","browse":"browse","Supports: JPEG, JPG, PNG":"Supports: JPEG, JPG, PNG","Release to Upload":"Release to Upload","file not supported":"file not supported","Sending Facial Data...":"Sending Facial Data...","Scanning Face...":"Scanning Face...","Analyzing Facial Attributes...":"Analyzing Facial Attributes...","AI Crafting Report..":"AI Crafting Report..","Skin Info":"Skin Info","Fine Wrinkles":"Fine Wrinkles","Eye Wrinkles":"Eye Wrinkles","Deep Wrinkles":"Deep Wrinkles","Dark Circle":"Dark Circle","Eye Bag":"Eye Bag","Pores":"Pores","Pigment":"Pigment","Redness":"Redness","Oiliness":"Oiliness","Acnes":"Acne","Acne":"Acne","Skin Health":"Skin Health","Instructions":"Instructions","Get Ready to Start Skin Analysis":"Get Ready to Start Skin Analysis","Remove the glasses":"Remove the glasses","Clean your face":"Clean your face","Be in the right light":"Be in the right light","Be neutral face and fix position":"Be neutral face and fix position","Get Started":"Get Started","privacy.text":"Discover how to enhance your skin with the right products and routine tailored for you. Upload your selfie for personalized recommendations, and rest assured, your image will be deleted after analysis","See our":"See our","Privacy Policy":"Privacy Policy","for more information":"for more information","your picture quality is blurry":"Your image quality is blurry.","be wearing glasses":"be wearing glasses.","please remove them":"Please remove them for a clearer analysis.","Improve photo quality":"Improve photo quality","We noticed you might":"We noticed you might","and":"and","for better results":"for better results","Tips for taking better selfies":"Tips for taking better selfies","Continue":"Continue","Generate routine for you":"Generate routine for you","Re-take":"Re-take","Get recommended products!":"Get recommended products!","Recommendation Products":"Recommendation Products","Products That Just Work For you":"Products That Just Work For you","My Skin Report":"My Skin Report","Add to cart":"Add to cart","Add again":"Add again","Checkout":"Checkout","My Routines":"My Routines","Your":"Your","Routine":"Routine","Morning":"Morning","Night":"Night","Error":"Error","The face is not visible in the picture":"The face is not visible in the picture","The input image is not suitable":"The input image is not suitable","An error occurred, please check again":"An error occurred, please check again","Camera permission denied.":"Camera permission denied.","Unable to access the camera.":"Unable to access the camera.","validation.blurry":"Your image is blurry","validation.eyeGlass":"You have glasses","validation.brightness":"The light on your face is not suitable","validation.neutralFace":"The face is not neutral (You may have a smile)","Image is not suitable":"Image is not suitable","Check how you can improve your skin with the proper product and routine":"Check how you can improve your skin with the proper product and routine","There are no products to display":"There are no products to display","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.","Use a toner to balance your skin’s pH and remove any leftover residue.":"Use a toner to balance your skin’s pH and remove any leftover residue.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.","Cleanser":"Cleanser","Toner":"Toner","Serum":"Serum","Eye Cream":"Eye Cream","Spot Treatment":"Spot Treatment","Moisturizer":"Moisturizer","Sunscreen":"Sunscreen","Face Oil":"Face Oil","Night Cream":"Night Cream","Add all to cart":"Add all to cart","All Products":"All Products","validation.faceObstruction":"There is probably something on the surface of the facial skin (hair or piercing)","Product added to cart":"Product added to cart","products added to cart":"products added to cart","You reached the limits of your plan":"You reached the limits of your plan","Please renew your service for access":"Please renew your service for access","See the website’s privacy policy":"See the website’s privacy policy"}')},de:{translation:JSON.parse('{"Skin Analysis":"Hautanalyse","Look Straight":"Schauen Sie geradeaus","Face Position":"Gesichtsposition","Lighting":"Beleuchtung","Good":"Gut","Not Good":"Nicht gut","Bad":"Schlecht","Fair":"Gerecht","Powered by":"Angetrieben von","Your distance is close to the camera":"Ihr Abstand ist nah an der Kamera","Keep your face inside the circle":"Halten Sie Ihr Gesicht innerhalb des Kreises","Please stand in front of the camera":"Bitte stellen Sie sich vor die Kamera","There is more than one person in the picture":"Auf dem Bild sind mehr als eine Person zu sehen","Drag & Drop":"Drag & Drop","Or":"Oder","browse":"durchsuchen","Supports: JPEG, JPG, PNG":"Unterstützt: JPEG, JPG, PNG","Release to Upload":"Zum Hochladen freigeben","file not supported":"Datei wird nicht unterstützt","Sending Facial Data...":"Gesichtsdaten werden gesendet...","Scanning Face...":"Gesicht scannen...","Analyzing Facial Attributes...":"Gesichtsattribute analysieren...","AI Crafting Report..":"KI-Crafting-Bericht.","Skin Info":"Hautinformationen","Fine Wrinkles":"Feine Falten","Eye Wrinkles":"Augenfalten","Deep Wrinkles":"Tiefe Falten","Dark Circle":"Dunkler Kreis","Eye Bag":"Augenbeutel","Pores":"Poren","Pigment":"Pigment","Redness":"Rötung","Oiliness":"Fettigkeit","Acnes":"Akne","Acne":"Akne","Skin Health":"Hautgesundheit","Instructions":"Anweisungen","Get Ready to Start Skin Analysis":"Machen Sie sich bereit für die Hautanalyse","Remove the glasses":"Nehmen Sie die Brille ab","Clean your face":"Reinige dein Gesicht","Be in the right light":"Seien Sie im richtigen Licht","Be neutral face and fix position":"Seien Sie neutral und fixieren Sie die Position","Get Started":"Legen Sie los","privacy.text":"Entdecken Sie, wie Sie Ihre Haut mit den richtigen Produkten und einer auf Sie zugeschnittenen Routine verbessern können. Laden Sie Ihr Selfie hoch, um personalisierte Empfehlungen zu erhalten, und seien Sie versichert, dass Ihr Bild nach der Analyse gelöscht wird","See our":"Sehen Sie sich unsere an","Privacy Policy":"Datenschutzrichtlinie","for more information":"für weitere Informationen","your picture quality is blurry":"Ihre Bildqualität ist verschwommen","be wearing glasses":"eine Brille tragen","please remove them":"Bitte entfernen Sie sie","Improve photo quality":"Verbessern Sie die Fotoqualität","We noticed you might":"Wir haben es bemerkt","and":"Und","for better results":"für bessere Ergebnisse","Tips for taking better selfies":"Tipps für bessere Selfies","Continue":"Weitermachen","Generate routine for you":"Schaffen Sie Routine für sich","Re-take":"Wiederholung","Get recommended products!":"Holen Sie sich empfohlene Produkte!","Recommendation Products":"Empfehlungsprodukte","Products That Just Work For you":"Produkte, die genau zu Ihnen passen","My Skin Report":"Mein Hautbericht","Add to cart":"In den Warenkorb legen","Add again":"Nochmals hinzufügen","Checkout":"Kasse","My Routines":"Meine Routinen","Your":"Dein","Routine":"Routine","Morning":"Morgen","Night":"Nacht","Error":"Fehler","The face is not visible in the picture":"Das Gesicht ist auf dem Bild nicht zu sehen","The input image is not suitable":"Das Eingabebild ist nicht geeignet","An error occurred, please check again":"Es ist ein Fehler aufgetreten, bitte überprüfen Sie es erneut","Camera permission denied.":"Kameraberechtigung verweigert.","Unable to access the camera.":"Auf die Kamera kann nicht zugegriffen werden.","validation.blurry":"Ihr Bild ist verschwommen","validation.eyeGlass":"Du hast eine Brille","validation.brightness":"Das Licht auf Ihrem Gesicht ist nicht geeignet","validation.neutralFace":"Das Gesicht ist nicht neutral (Sie haben möglicherweise ein Lächeln)","Image is not suitable":"Bild ist nicht geeignet","Check how you can improve your skin with the proper product and routine":"Prüfen Sie, wie Sie Ihre Haut mit dem richtigen Produkt und der richtigen Routine verbessern können","There are no products to display":"Es sind keine Produkte zum Anzeigen vorhanden","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Waschen Sie zunächst Ihr Gesicht, um Schmutz, Öl und Unreinheiten zu entfernen. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Verwenden Sie einen Toner, um den pH-Wert Ihrer Haut auszugleichen und alle Rückstände zu entfernen.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Tragen Sie ein konzentriertes Serum auf, das gezielt auf bestimmte Anliegen abzielt, z. B. Aufhellung oder Anti-Aging. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Tragen Sie die Augencreme sanft auf die Augenpartie auf, um sie mit Feuchtigkeit zu versorgen und Schwellungen oder Augenringe zu reduzieren.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Tragen Sie die punktuelle Behandlung auf Problemzonen wie Akne oder Hautunreinheiten auf. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Schützen Sie Ihre Haut mit Feuchtigkeit, indem Sie eine Feuchtigkeitscreme auftragen, die zu Ihrem Hauttyp passt. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Schützen Sie Ihre Haut vor schädlichen UV-Strahlen, indem Sie Sonnenschutzmittel mit Breitbandschutz verwenden. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Tragen Sie ein leichtes Gesichtsöl auf, um die Feuchtigkeit einzuschließen und Ihrer Haut einen strahlenden Glanz zu verleihen. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Verwenden Sie eine reichhaltige Nachtcreme, um Ihre Haut im Schlaf zu reparieren und wiederherzustellen. ","Cleanser":"Reinigungsmittel","Toner":"Toner","Serum":"Serum","Eye Cream":"Augencreme","Spot Treatment":"Spot-Behandlung","Moisturizer":"Feuchtigkeitscreme","Sunscreen":"Sonnenschutz","Face Oil":"Gesichtsöl","Night Cream":"Nachtcreme","Add all to cart":"Alles in den Warenkorb legen","All Products":"Alle Produkte","validation.faceObstruction":"Wahrscheinlich befindet sich etwas auf der Oberfläche der Gesichtshaut (Haare oder Piercing)","Product added to cart":"Produkt zum Warenkorb hinzugefügt","products added to cart":"Produkte zum Warenkorb hinzugefügt","You reached the limits of your plan":"Sie haben die Grenzen Ihres Plans erreicht","Please renew your service for access":"Bitte erneuern Sie Ihren Dienst für den Zugriff","See the website’s privacy policy":"Siehe die Datenschutzrichtlinie der Website"}')},zh:{translation:JSON.parse('{"Skin Analysis":"皮肤分析","Look Straight":"直视","Face Position":"面部位置","Lighting":"灯光","Good":"好的","Not Good":"不好","Bad":"坏的","Fair":"公平的","Powered by":"供电","Your distance is close to the camera":"您与相机的距离很近","Keep your face inside the circle":"将脸保持在圆圈内","Please stand in front of the camera":"请站在镜头前","There is more than one person in the picture":"图片中不止一个人","Drag & Drop":"拖放","Or":"或者","browse":"浏览","Supports: JPEG, JPG, PNG":"支持:JPEG、JPG、PNG","Release to Upload":"发布上传","file not supported":"文件不支持","Sending Facial Data...":"正在发送面部数据...","Scanning Face...":"扫描人脸...","Analyzing Facial Attributes...":"分析面部特征...","AI Crafting Report..":"人工智能制作报告..","Skin Info":"皮肤信息","Fine Wrinkles":"细皱纹","Eye Wrinkles":"眼部皱纹","Deep Wrinkles":"深层皱纹","Dark Circle":"黑眼圈","Eye Bag":"眼袋","Pores":"毛孔","Pigment":"颜料","Redness":"发红","Oiliness":"油性","Acnes":"粉刺","Acne":"粉刺","Skin Health":"皮肤健康","Instructions":"指示","Get Ready to Start Skin Analysis":"准备开始皮肤分析","Remove the glasses":"摘下眼镜","Clean your face":"清洁你的脸","Be in the right light":"在正确的光线下","Be neutral face and fix position":"保持中立表情并固定位置","Get Started":"开始使用","privacy.text":"了解如何使用适合您的产品和日常护理来增强您的皮肤。上传您的自拍照以获得个性化推荐,请放心,您的图像将在分析后删除","See our":"看看我们的","Privacy Policy":"隐私政策","for more information":"欲了解更多信息","your picture quality is blurry":"你的画质很模糊","be wearing glasses":"戴眼镜","please remove them":"请删除它们","Improve photo quality":"提高照片质量","We noticed you might":"我们注意到您可能","and":"和","for better results":"为了更好的结果","Tips for taking better selfies":"拍摄更好自拍照的技巧","Continue":"继续","Generate routine for you":"为您生成例程","Re-take":"重拍","Get recommended products!":"获取推荐产品!","Recommendation Products":"推荐产品","Products That Just Work For you":"适合您的产品","My Skin Report":"我的皮肤报告","Add to cart":"添加到购物车","Add again":"再次添加","Checkout":"查看","My Routines":"我的日常","Your":"你的","Routine":"常规","Morning":"早晨","Night":"夜晚","Error":"错误","The face is not visible in the picture":"照片中看不到脸","The input image is not suitable":"输入图像不合适","An error occurred, please check again":"发生错误,请再次检查","Camera permission denied.":"相机权限被拒绝。","Unable to access the camera.":"无法访问相机。","validation.blurry":"你的图像模糊","validation.eyeGlass":"你有眼镜","validation.brightness":"你脸上的光线不适合","validation.neutralFace":"脸不是中性的(你可能有微笑)","Image is not suitable":"图片不合适","Check how you can improve your skin with the proper product and routine":"检查如何使用正确的产品和日常护理来改善皮肤","There are no products to display":"没有可展示的产品","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"首先洗脸,去除污垢、油脂和杂质。","Use a toner to balance your skin’s pH and remove any leftover residue.":"使用爽肤水来平衡皮肤的 pH 值并去除任何残留物。","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"使用针对特定问题的浓缩精华液,例如美白或抗衰老。","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"轻轻拍打眼部周围的眼霜,以补充水分并减少浮肿或黑眼圈。","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"对任何有问题的区域进行局部治疗,例如痤疮或瑕疵。","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"使用适合您皮肤类型的保湿霜来锁住水分。","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"使用具有广谱保护的防晒霜,保护您的皮肤免受有害紫外线的伤害。","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"涂抹轻质面油,锁住水分,让肌肤焕发光彩。","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"使用浓郁的晚霜有助于在睡眠时修复和恢复皮肤。","Cleanser":"洁面乳","Toner":"爽肤水","Serum":"血清","Eye Cream":"眼霜","Spot Treatment":"斑点处理","Moisturizer":"保湿霜","Sunscreen":"防晒霜","Face Oil":"面油","Night Cream":"晚霜","Add all to cart":"全部添加到购物车","All Products":"所有产品","validation.faceObstruction":"面部皮肤表面可能有东西(头发或穿孔)","Product added to cart":"产品已添加到购物车","products added to cart":"产品已添加到购物车","You reached the limits of your plan":"您已达到计划的极限","Please renew your service for access":"请续订您的服务以进行访问","See the website’s privacy policy":"请参阅网站的隐私政策"}')},tr:{translation:JSON.parse('{"Skin Analysis":"Cilt Analizi","Look Straight":"Düz Görün","Face Position":"Yüz Konumu","Lighting":"Aydınlatma","Good":"İyi","Not Good":"İyi değil","Bad":"Kötü","Fair":"Adil","Powered by":"Tarafından desteklenmektedir","Your distance is close to the camera":"Mesafeniz kameraya yakın","Keep your face inside the circle":"Yüzünüzü dairenin içinde tutun","Please stand in front of the camera":"Lütfen kameranın önünde durun","There is more than one person in the picture":"Resimde birden fazla kişi var","Drag & Drop":"Sürükle ve Bırak","Or":"Veya","browse":"göz at","Supports: JPEG, JPG, PNG":"Destekler: JPEG, JPG, PNG","Release to Upload":"Yüklemek için Yayınla","file not supported":"dosya desteklenmiyor","Sending Facial Data...":"Yüz Verileri Gönderiliyor...","Scanning Face...":"Yüz Taranıyor...","Analyzing Facial Attributes...":"Yüz Nitelikleri Analiz Ediliyor...","AI Crafting Report..":"Yapay Zeka Hazırlama Raporu..","Skin Info":"Cilt Bilgisi","Fine Wrinkles":"İnce Kırışıklıklar","Eye Wrinkles":"Göz Kırışıklıkları","Deep Wrinkles":"Derin Kırışıklıklar","Dark Circle":"Karanlık Çember","Eye Bag":"Göz Torbası","Pores":"Gözenekler","Pigment":"Pigment","Redness":"Kırmızılık","Oiliness":"Yağlılık","Acnes":"Akne","Acne":"Akne","Skin Health":"Cilt Sağlığı","Instructions":"Talimatlar","Get Ready to Start Skin Analysis":"Cilt Analizine Başlamaya Hazır Olun","Remove the glasses":"Gözlükleri çıkarın","Clean your face":"Yüzünü temizle","Be in the right light":"Doğru ışıkta olun","Be neutral face and fix position":"Nötr yüz olun ve pozisyonu sabitleyin","Get Started":"Başlarken","privacy.text":"Size özel doğru ürünler ve rutinlerle cildinizi nasıl güzelleştireceğinizi keşfedin. Kişiselleştirilmiş öneriler için selfie\'nizi yükleyin; analiz sonrasında görüntünüzün silineceğinden emin olun","See our":"Bizimkilere bakın","Privacy Policy":"Gizlilik Politikası","for more information":"daha fazla bilgi için","your picture quality is blurry":"resim kaliteniz bulanık","be wearing glasses":"gözlük takıyor olmak","please remove them":"lütfen onları kaldırın","Improve photo quality":"Fotoğraf kalitesini artırın","We noticed you might":"yapabileceğini fark ettik","and":"Ve","for better results":"daha iyi sonuçlar için","Tips for taking better selfies":"Daha iyi selfieler çekmek için ipuçları","Continue":"Devam etmek","Generate routine for you":"Kendiniz için rutin oluşturun","Re-take":"Tekrar al","Get recommended products!":"Önerilen ürünleri alın!","Recommendation Products":"Tavsiye Ürünleri","Products That Just Work For you":"Tam İşinize Yarayan Ürünler","My Skin Report":"Cilt Raporum","Add to cart":"Sepete ekle","Add again":"Tekrar ekle","Checkout":"Çıkış yapmak","My Routines":"Rutinlerim","Your":"Senin","Routine":"Rutin","Morning":"Sabah","Night":"Gece","Error":"Hata","The face is not visible in the picture":"Resimde yüzü görünmüyor","The input image is not suitable":"Giriş görüntüsü uygun değil","An error occurred, please check again":"Bir hata oluştu, lütfen tekrar kontrol edin","Camera permission denied.":"Kamera izni reddedildi.","Unable to access the camera.":"Kameraya erişilemiyor.","validation.blurry":"Görüntünüz bulanık","validation.eyeGlass":"Gözlüklerin var","validation.brightness":"Yüzünüzdeki ışık uygun değil","validation.neutralFace":"Yüz nötr değil (Bir gülümsemeniz olabilir)","Image is not suitable":"Resim uygun değil","Check how you can improve your skin with the proper product and routine":"Doğru ürün ve rutinle cildinizi nasıl iyileştirebileceğinizi kontrol edin","There are no products to display":"Gösterilecek ürün yok","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Kiri, yağı ve yabancı maddeleri temizlemek için yüzünüzü yıkayarak başlayın. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Cildinizin pH\'ını dengelemek ve kalan kalıntıları gidermek için bir toner kullanın.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Parlatma veya yaşlanma karşıtı gibi belirli endişeleri hedef alan konsantre bir serum uygulayın. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Nemlendirmek ve şişlikleri veya koyu halkaları azaltmak için göz kremini göz çevresine hafifçe vurun.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Sivilce veya leke gibi sorunlu bölgelere leke tedavisi uygulayın. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Cilt tipinize uygun bir nemlendirici uygulayarak nemi sabitleyin. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Geniş spektrumlu güneş koruyucu kullanarak cildinizi zararlı UV ışınlarından koruyun. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Nemi hapsetmek ve cildinize parlak bir parlaklık kazandırmak için hafif bir yüz yağı uygulayın. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Uyurken cildinizin onarılmasına ve yenilenmesine yardımcı olması için zengin bir gece kremi kullanın. ","Cleanser":"Temizleyici","Toner":"Toner","Serum":"Serum","Eye Cream":"Göz Kremi","Spot Treatment":"Leke Tedavisi","Moisturizer":"Nemlendirici","Sunscreen":"Güneş kremi","Face Oil":"Yüz Yağı","Night Cream":"Gece Kremi","Add all to cart":"Hepsini sepete ekle","All Products":"Tüm Ürünler","validation.faceObstruction":"Muhtemelen yüz derisinin yüzeyinde bir şey vardır (saç veya piercing)","Product added to cart":"Ürün sepete eklendi","products added to cart":"sepete eklenen ürünler","You reached the limits of your plan":"Planınızın sınırlarına ulaştınız","Please renew your service for access":"Lütfen erişim için hizmetinizi yenileyin","See the website’s privacy policy":"Web sitesinin gizlilik politikasına bakın"}')},hu:{translation:JSON.parse('{"Skin Analysis":"Bőrelemzés","Look Straight":"Nézz egyenesen","Face Position":"Arc helyzete","Lighting":"Világítás","Good":"Jó","Not Good":"Nem jó","Bad":"Rossz","Fair":"Igazságos","Powered by":"Powered by","Your distance is close to the camera":"A távolság közel van a kamerához","Keep your face inside the circle":"Tartsa az arcát a körön belül","Please stand in front of the camera":"Kérem, álljon a kamera elé","There is more than one person in the picture":"A képen egynél több ember van","Drag & Drop":"Drag & Drop","Or":"Vagy","browse":"böngésszen","Supports: JPEG, JPG, PNG":"Támogatja: JPEG, JPG, PNG","Release to Upload":"Engedje fel a feltöltéshez","file not supported":"fájl nem támogatott","Sending Facial Data...":"Arcadatok küldése...","Scanning Face...":"Arc beolvasása...","Analyzing Facial Attributes...":"Arctulajdonságok elemzése...","AI Crafting Report..":"AI Crafting Report...","Skin Info":"Bőrinformáció","Fine Wrinkles":"Finom ráncok","Eye Wrinkles":"Szemráncok","Deep Wrinkles":"Mély ráncok","Dark Circle":"Sötét Kör","Eye Bag":"Szemtáska","Pores":"Pórusok","Pigment":"Pigment","Redness":"Vörösség","Oiliness":"Olajosság","Acnes":"Pattanás","Acne":"Pattanás","Skin Health":"Bőr egészsége","Instructions":"Utasítás","Get Ready to Start Skin Analysis":"Készüljön fel a bőrelemzés megkezdésére","Remove the glasses":"Távolítsa el a szemüveget","Clean your face":"Tisztítsa meg az arcát","Be in the right light":"Legyen a megfelelő fényben","Be neutral face and fix position":"Legyen semleges arc és rögzítse a pozícióját","Get Started":"Kezdje el","privacy.text":"Fedezze fel, hogyan javíthatja bőrét a megfelelő termékekkel és az Ön számára kialakított rutinnal. Töltsd fel szelfidet a személyre szabott ajánlásokhoz, és biztos lehetsz benne, hogy az elemzés után a képed törlődik","See our":"Lásd a mi","Privacy Policy":"Adatvédelmi szabályzat","for more information":"további információkért","your picture quality is blurry":"a képminősége homályos","be wearing glasses":"legyen szemüveges","please remove them":"kérjük távolítsa el őket","Improve photo quality":"Javítsa a fénykép minőségét","We noticed you might":"Észrevettük, hogy lehet","and":"és","for better results":"jobb eredmények érdekében","Tips for taking better selfies":"Tippek jobb szelfik készítéséhez","Continue":"Folytatás","Generate routine for you":"Generáljon rutint az Ön számára","Re-take":"Vedd újra","Get recommended products!":"Szerezze be az ajánlott termékeket!","Recommendation Products":"Termékajánlás","Products That Just Work For you":"Termékek, amelyek csak Önnek működnek","My Skin Report":"My Skin Report","Add to cart":"Kosárba","Add again":"Adja hozzá újra","Checkout":"Pénztár","My Routines":"Saját rutinok","Your":"A te","Routine":"Rutin","Morning":"Reggel","Night":"Éjszaka","Error":"Hiba","The face is not visible in the picture":"Az arc nem látszik a képen","The input image is not suitable":"A bemeneti kép nem megfelelő","An error occurred, please check again":"Hiba történt, ellenőrizze újra","Camera permission denied.":"Kameraengedély megtagadva.","Unable to access the camera.":"Nem lehet hozzáférni a kamerához.","validation.blurry":"A képed homályos","validation.eyeGlass":"Szemüveged van","validation.brightness":"Az arc fénye nem megfelelő","validation.neutralFace":"Az arc nem semleges (mosolyoghat)","Image is not suitable":"A kép nem megfelelő","Check how you can improve your skin with the proper product and routine":"Ellenőrizze, hogyan javíthatja bőrét a megfelelő termékkel és rutinnal","There are no products to display":"Nincsenek megjeleníthető termékek","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Kezdje az arcmosással, hogy eltávolítsa a szennyeződéseket, olajat és szennyeződéseket. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Használjon tonikot a bőr pH-értékének kiegyensúlyozására és a maradék maradék eltávolítására.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Használjon koncentrált szérumot, amely speciális problémákat céloz meg, mint például a fényesítő vagy az öregedésgátló. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Finoman dörzsölje be a szemkörnyéki krémet a szemkörnyék körül, hogy hidratálja és csökkentse a duzzanatot vagy a sötét karikákat.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Alkalmazzon foltkezelést minden problémás területre, például pattanásokra vagy foltokra. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Rögzítse a hidratálást a bőrtípusának megfelelő hidratáló krémmel. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Védje bőrét a káros UV-sugárzástól széles spektrumú fényvédő krémmel. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Vigyen fel egy könnyű arcolajat, hogy elzárja a nedvességet, és ragyogó fényt adjon bőrének. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Használjon gazdag éjszakai krémet a bőr helyreállításához és helyreállításához alvás közben. ","Cleanser":"Tisztítószer","Toner":"Toner","Serum":"Szérum","Eye Cream":"Szemkörnyékápoló krém","Spot Treatment":"Spot kezelés","Moisturizer":"Hidratáló krém","Sunscreen":"Fényvédő krém","Face Oil":"Arcolaj","Night Cream":"Éjszakai krém","Add all to cart":"Mindent a kosárba","All Products":"Minden termék","validation.faceObstruction":"Valószínűleg van valami az arcbőr felszínén (haj vagy piercing)","Product added to cart":"A termék a kosárba került","products added to cart":"kosárba helyezett termékek","You reached the limits of your plan":"Elérted terved határait","Please renew your service for access":"Kérjük, újítsa meg szolgáltatását a hozzáféréshez","See the website’s privacy policy":"Tekintse meg a weboldal adatvédelmi szabályzatát"}')},lt:{translation:JSON.parse('{"Skin Analysis":"Odos analizė","Look Straight":"Žiūrėk tiesiai","Face Position":"Veido padėtis","Lighting":"Apšvietimas","Good":"Gerai","Not Good":"Negerai","Bad":"Blogai","Fair":"Sąžininga","Powered by":"Maitinamas","Your distance is close to the camera":"Jūsų atstumas yra arti fotoaparato","Keep your face inside the circle":"Laikykite veidą apskritimo viduje","Please stand in front of the camera":"Prašome atsistoti prieš kamerą","There is more than one person in the picture":"Nuotraukoje yra daugiau nei vienas asmuo","Drag & Drop":"Drag & Drop","Or":"Arba","browse":"naršyti","Supports: JPEG, JPG, PNG":"Palaiko: JPEG, JPG, PNG","Release to Upload":"Išleiskite įkelti","file not supported":"failas nepalaikomas","Sending Facial Data...":"Siunčiami veido duomenys...","Scanning Face...":"Nuskaitomas veidas...","Analyzing Facial Attributes...":"Analizuojamos veido savybės...","AI Crafting Report..":"AI kūrimo ataskaita..","Skin Info":"Informacija apie odą","Fine Wrinkles":"Smulkios raukšlės","Eye Wrinkles":"Akių raukšlės","Deep Wrinkles":"Gilios raukšlės","Dark Circle":"Tamsus ratas","Eye Bag":"Akių krepšys","Pores":"Poros","Pigment":"Pigmentas","Redness":"Paraudimas","Oiliness":"Riebalingumas","Acnes":"Spuogai","Acne":"Spuogai","Skin Health":"Odos sveikata","Instructions":"Instrukcijos","Get Ready to Start Skin Analysis":"Pasiruoškite pradėti odos analizę","Remove the glasses":"Nuimkite akinius","Clean your face":"Nuvalykite veidą","Be in the right light":"Būkite tinkamoje šviesoje","Be neutral face and fix position":"Būkite neutralus veidas ir fiksuokite padėtį","Get Started":"Pradėkite","privacy.text":"Sužinokite, kaip patobulinti savo odą tinkamais produktais ir jums pritaikyta tvarka. Įkelkite asmenukę, kad gautumėte suasmenintų rekomendacijų, ir būkite tikri, po analizės jūsų vaizdas bus ištrintas","See our":"Žiūrėkite mūsų","Privacy Policy":"Privatumo politika","for more information":"Norėdami gauti daugiau informacijos","your picture quality is blurry":"jūsų vaizdo kokybė yra neryški","be wearing glasses":"nešioti akinius","please remove them":"prašome juos pašalinti","Improve photo quality":"Pagerinkite nuotraukų kokybę","We noticed you might":"Mes pastebėjome, kad galite","and":"ir","for better results":"geresnių rezultatų","Tips for taking better selfies":"Patarimai, kaip daryti geresnes asmenukes","Continue":"Tęsti","Generate routine for you":"Sukurkite jums rutiną","Re-take":"Paimkite iš naujo","Get recommended products!":"Gaukite rekomenduojamus produktus!","Recommendation Products":"Rekomendacijos produktai","Products That Just Work For you":"Produktai, kurie tinka tik jums","My Skin Report":"Mano odos ataskaita","Add to cart":"Pridėti į krepšelį","Add again":"Pridėti dar kartą","Checkout":"Patikra","My Routines":"Mano kasdienybės","Your":"Jūsų","Routine":"Rutina","Morning":"Rytas","Night":"Naktis","Error":"Klaida","The face is not visible in the picture":"Nuotraukoje veido nesimato","The input image is not suitable":"Įvesties vaizdas netinka","An error occurred, please check again":"Įvyko klaida, patikrinkite dar kartą","Camera permission denied.":"Fotoaparato leidimas atmestas.","Unable to access the camera.":"Nepavyko pasiekti fotoaparato.","validation.blurry":"Jūsų vaizdas neryškus","validation.eyeGlass":"Tu turi akinius","validation.brightness":"Šviesa ant veido netinka","validation.neutralFace":"Veidas nėra neutralus (galite šypsotis)","Image is not suitable":"Vaizdas netinkamas","Check how you can improve your skin with the proper product and routine":"Patikrinkite, kaip galite pagerinti savo odą naudodami tinkamą produktą ir įprastą tvarką","There are no products to display":"Nėra produktų, kuriuos būtų galima rodyti","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Pradėkite plaudami veidą, kad pašalintumėte nešvarumus, aliejų ir nešvarumus. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Naudokite toniką, kad subalansuotumėte odos pH ir pašalintumėte likusius likučius.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Tepkite koncentruotą serumą, skirtą konkrečioms problemoms, pvz., šviesinimui ar senėjimui stabdymui. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Švelniai patepkite paakių kremu aplink akių sritį, kad sudrėkintumėte ir sumažintumėte paburkimą ar tamsius ratilus.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Tepkite taškinį gydymą ant bet kokių probleminių vietų, tokių kaip spuogai ar dėmės. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Užfiksuokite hidrataciją naudodami jūsų odos tipą atitinkantį drėkinamąjį kremą. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Apsaugokite odą nuo žalingų UV spindulių naudodami plataus spektro apsaugą nuo saulės. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Užtepkite lengvo veido aliejaus, kad sulaikytumėte drėgmę ir suteiktumėte odai spindesio. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Naudokite sodrų naktinį kremą, kuris padės atkurti ir atkurti odą miegant. ","Cleanser":"Valiklis","Toner":"Toneris","Serum":"Serumas","Eye Cream":"Akių kremas","Spot Treatment":"Taškinis gydymas","Moisturizer":"Drėkiklis","Sunscreen":"Apsauginis kremas nuo saulės","Face Oil":"Veido aliejus","Night Cream":"Naktinis kremas","Add all to cart":"Įdėkite viską į krepšelį","All Products":"Visi produktai","validation.faceObstruction":"Tikriausiai kažkas yra ant veido odos paviršiaus (plaukų ar auskarų)","Product added to cart":"Prekė įdėta į krepšelį","products added to cart":"produktai įdėta į krepšelį","You reached the limits of your plan":"Pasiekėte savo plano ribas","Please renew your service for access":"Norėdami gauti prieigą, atnaujinkite savo paslaugą","See the website’s privacy policy":"Peržiūrėkite svetainės privatumo politiką"}')},bn:{translation:JSON.parse('{"Skin Analysis":"ত্বক বিশ্লেষণ","Look Straight":"সোজাসুজি তাকান","Face Position":"মুখের অবস্থান","Lighting":"লাইটিং","Good":"ভাল","Not Good":"ভালো না","Bad":"খারাপ","Fair":"মেলা","Powered by":"দ্বারা চালিত","Your distance is close to the camera":"আপনার দূরত্ব ক্যামেরার কাছাকাছি","Keep your face inside the circle":"আপনার মুখ বৃত্তের ভিতরে রাখুন","Please stand in front of the camera":"দয়া করে ক্যামেরার সামনে দাঁড়ান","There is more than one person in the picture":"ছবিতে একাধিক ব্যক্তি রয়েছেন","Drag & Drop":"টেনে আনুন","Or":"বা","browse":"ব্রাউজ","Supports: JPEG, JPG, PNG":"সমর্থন করে: JPEG, JPG, PNG","Release to Upload":"আপলোড করতে রিলিজ করুন","file not supported":"ফাইল সমর্থিত নয়","Sending Facial Data...":"ফেসিয়াল ডেটা পাঠানো হচ্ছে...","Scanning Face...":"মুখ স্ক্যান করা হচ্ছে...","Analyzing Facial Attributes...":"মুখের বৈশিষ্ট্য বিশ্লেষণ করা হচ্ছে...","AI Crafting Report..":"এআই ক্রাফটিং রিপোর্ট..","Skin Info":"ত্বকের তথ্য","Fine Wrinkles":"সূক্ষ্ম বলি","Eye Wrinkles":"চোখের বলি","Deep Wrinkles":"গভীর বলিরেখা","Dark Circle":"ডার্ক সার্কেল","Eye Bag":"চোখের ব্যাগ","Pores":"ছিদ্র","Pigment":"রঙ্গক","Redness":"লালভাব","Oiliness":"তৈলাক্ততা","Acnes":"ব্রণ","Acne":"ব্রণ","Skin Health":"ত্বকের স্বাস্থ্য","Instructions":"নির্দেশনা","Get Ready to Start Skin Analysis":"ত্বক বিশ্লেষণ শুরু করার জন্য প্রস্তুত হন","Remove the glasses":"চশমা সরান","Clean your face":"আপনার মুখ পরিষ্কার করুন","Be in the right light":"সঠিক আলোতে থাকুন","Be neutral face and fix position":"নিরপেক্ষ মুখ হতে এবং অবস্থান ঠিক করুন","Get Started":"শুরু করুন","privacy.text":"আপনার জন্য তৈরি সঠিক পণ্য এবং রুটিন দিয়ে কীভাবে আপনার ত্বককে উন্নত করবেন তা আবিষ্কার করুন। ব্যক্তিগতকৃত সুপারিশের জন্য আপনার সেলফি আপলোড করুন এবং নিশ্চিত থাকুন, বিশ্লেষণের পরে আপনার ছবি মুছে ফেলা হবে","See our":"আমাদের দেখুন","Privacy Policy":"গোপনীয়তা নীতি","for more information":"আরও তথ্যের জন্য","your picture quality is blurry":"আপনার ছবির মান অস্পষ্ট","be wearing glasses":"চশমা পরা হবে","please remove them":"তাদের অপসারণ করুন","Improve photo quality":"ছবির গুণমান উন্নত করুন","We noticed you might":"আমরা লক্ষ্য করেছি আপনি হতে পারে","and":"এবং","for better results":"ভালো ফলাফলের জন্য","Tips for taking better selfies":"আরও ভালো সেলফি তোলার টিপস","Continue":"চালিয়ে যান","Generate routine for you":"আপনার জন্য রুটিন তৈরি করুন","Re-take":"পুনরায় গ্রহণ করুন","Get recommended products!":"প্রস্তাবিত পণ্য পান!","Recommendation Products":"সুপারিশ পণ্য","Products That Just Work For you":"আপনার জন্য কাজ করে এমন পণ্য","My Skin Report":"আমার ত্বক রিপোর্ট","Add to cart":"কার্টে যোগ করুন","Add again":"আবার যোগ করুন","Checkout":"চেকআউট","My Routines":"আমার রুটিন","Your":"আপনার","Routine":"রুটিন","Morning":"সকাল","Night":"রাত্রি","Error":"ত্রুটি","The face is not visible in the picture":"ছবিতে মুখ দেখা যাচ্ছে না","The input image is not suitable":"ইনপুট ইমেজ উপযুক্ত নয়","An error occurred, please check again":"একটি ত্রুটি ঘটেছে, অনুগ্রহ করে আবার পরীক্ষা করুন৷","Camera permission denied.":"ক্যামেরার অনুমতি অস্বীকার করা হয়েছে৷","Unable to access the camera.":"ক্যামেরা অ্যাক্সেস করতে অক্ষম।","validation.blurry":"আপনার ইমেজ ঝাপসা","validation.eyeGlass":"তোমার চশমা আছে","validation.brightness":"আপনার মুখের আলো উপযুক্ত নয়","validation.neutralFace":"মুখ নিরপেক্ষ নয় (আপনার হাসি থাকতে পারে)","Image is not suitable":"ছবি উপযুক্ত নয়","Check how you can improve your skin with the proper product and routine":"সঠিক পণ্য এবং রুটিন দিয়ে আপনি কীভাবে আপনার ত্বকের উন্নতি করতে পারেন তা পরীক্ষা করুন","There are no products to display":"প্রদর্শন করার জন্য কোন পণ্য নেই","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"ময়লা, তেল এবং অমেধ্য দূর করতে আপনার মুখ ধুয়ে শুরু করুন। ","Use a toner to balance your skin’s pH and remove any leftover residue.":"আপনার ত্বকের পিএইচ ভারসাম্য রাখতে এবং অবশিষ্ট অবশিষ্টাংশগুলি সরাতে একটি টোনার ব্যবহার করুন।","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"উজ্জ্বল বা বিরোধী বার্ধক্য মত নির্দিষ্ট উদ্বেগ লক্ষ্য করে একটি ঘনীভূত সিরাম প্রয়োগ করুন। ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"হাইড্রেট করতে এবং ফোলাভাব বা ডার্ক সার্কেল কমাতে চোখের চারপাশে আলতো করে আই ক্রিম প্যাট করুন।","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"ব্রণ বা দাগের মতো সমস্যাযুক্ত স্থানে স্পট ট্রিটমেন্ট প্রয়োগ করুন। ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"আপনার ত্বকের ধরন অনুসারে একটি ময়েশ্চারাইজার প্রয়োগ করে হাইড্রেশন লক করুন। ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"ব্রড-স্পেকট্রাম সুরক্ষা সহ সানস্ক্রিন ব্যবহার করে ক্ষতিকারক UV রশ্মি থেকে আপনার ত্বককে রক্ষা করুন। ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"আর্দ্রতা সিল করতে এবং আপনার ত্বককে একটি উজ্জ্বল আভা দিতে হালকা ওজনের মুখের তেল প্রয়োগ করুন। ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"আপনার ঘুমানোর সময় আপনার ত্বক মেরামত এবং পুনরুদ্ধার করতে একটি সমৃদ্ধ নাইট ক্রিম ব্যবহার করুন। ","Cleanser":"ক্লিনজার","Toner":"টোনার","Serum":"সিরাম","Eye Cream":"আই ক্রিম","Spot Treatment":"স্পট ট্রিটমেন্ট","Moisturizer":"ময়েশ্চারাইজার","Sunscreen":"সানস্ক্রিন","Face Oil":"মুখের তেল","Night Cream":"নাইট ক্রিম","Add all to cart":"কার্টে সব যোগ করুন","All Products":"সমস্ত পণ্য","validation.faceObstruction":"মুখের ত্বকের পৃষ্ঠে সম্ভবত কিছু আছে (চুল বা ছিদ্র)","Product added to cart":"পণ্য কার্টে যোগ করা হয়েছে","products added to cart":"পণ্য কার্টে যোগ করা হয়েছে","You reached the limits of your plan":"আপনি আপনার পরিকল্পনার সীমাতে পৌঁছেছেন","Please renew your service for access":"অ্যাক্সেসের জন্য আপনার পরিষেবা পুনর্নবীকরণ করুন","See the website’s privacy policy":"ওয়েবসাইটের গোপনীয়তা নীতি দেখুন"}')},nl:{translation:JSON.parse('{"Skin Analysis":"Huidanalyse","Look Straight":"Kijk recht","Face Position":"Gezichtspositie","Lighting":"Verlichting","Good":"Goed","Not Good":"Niet goed","Bad":"Slecht","Fair":"Eerlijk","Powered by":"Aangedreven door","Your distance is close to the camera":"Je afstand is dichtbij de camera","Keep your face inside the circle":"Houd uw gezicht binnen de cirkel","Please stand in front of the camera":"Ga alsjeblieft voor de camera staan","There is more than one person in the picture":"Er is meer dan één persoon op de foto","Drag & Drop":"Slepen en neerzetten","Or":"Of","browse":"bladeren","Supports: JPEG, JPG, PNG":"Ondersteunt: JPEG, JPG, PNG","Release to Upload":"Laat los om te uploaden","file not supported":"bestand niet ondersteund","Sending Facial Data...":"Gezichtsgegevens verzenden...","Scanning Face...":"Gezicht scannen...","Analyzing Facial Attributes...":"Gezichtskenmerken analyseren...","AI Crafting Report..":"AI Crafting-rapport..","Skin Info":"Huidinformatie","Fine Wrinkles":"Fijne rimpels","Eye Wrinkles":"Oog rimpels","Deep Wrinkles":"Diepe rimpels","Dark Circle":"Donkere cirkel","Eye Bag":"Oogzak","Pores":"Poriën","Pigment":"Pigment","Redness":"Roodheid","Oiliness":"Vettigheid","Acnes":"Acne","Acne":"Acne","Skin Health":"Gezondheid van de huid","Instructions":"Instructies","Get Ready to Start Skin Analysis":"Maak je klaar om huidanalyse te starten","Remove the glasses":"Verwijder de glazen","Clean your face":"Maak je gezicht schoon","Be in the right light":"Wees in het juiste licht","Be neutral face and fix position":"Wees neutraal en fixeer de positie","Get Started":"Aan de slag","privacy.text":"Ontdek hoe u uw huid kunt verbeteren met de juiste producten en routines op maat voor u. Upload uw selfie voor gepersonaliseerde aanbevelingen en u kunt er zeker van zijn dat uw afbeelding na analyse wordt verwijderd","See our":"Zie onze","Privacy Policy":"Privacybeleid","for more information":"voor meer informatie","your picture quality is blurry":"uw beeldkwaliteit is wazig","be wearing glasses":"een bril dragen","please remove them":"verwijder ze alstublieft","Improve photo quality":"Verbeter de fotokwaliteit","We noticed you might":"We hebben gemerkt dat je dat misschien wel zou doen","and":"En","for better results":"voor betere resultaten","Tips for taking better selfies":"Tips voor het maken van betere selfies","Continue":"Doorgaan","Generate routine for you":"Creëer routine voor u","Re-take":"Opnieuw nemen","Get recommended products!":"Ontvang aanbevolen producten!","Recommendation Products":"Aanbeveling producten","Products That Just Work For you":"Producten die gewoon voor u werken","My Skin Report":"Mijn huidrapport","Add to cart":"Voeg toe aan winkelwagen","Add again":"Voeg opnieuw toe","Checkout":"Afrekenen","My Routines":"Mijn routines","Your":"Jouw","Routine":"Routine","Morning":"Ochtend","Night":"Nacht","Error":"Fout","The face is not visible in the picture":"Het gezicht is niet zichtbaar op de foto","The input image is not suitable":"De invoerafbeelding is niet geschikt","An error occurred, please check again":"Er is een fout opgetreden. Controleer het opnieuw","Camera permission denied.":"Cameratoestemming geweigerd.","Unable to access the camera.":"Kan geen toegang krijgen tot de camera.","validation.blurry":"Je beeld is wazig","validation.eyeGlass":"Je hebt een bril","validation.brightness":"Het licht op je gezicht is niet geschikt","validation.neutralFace":"Het gezicht is niet neutraal (je hebt misschien een glimlach)","Image is not suitable":"Afbeelding is niet geschikt","Check how you can improve your skin with the proper product and routine":"Ontdek hoe u uw huid kunt verbeteren met het juiste product en de juiste routine","There are no products to display":"Er zijn geen producten om weer te geven","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Begin met het wassen van je gezicht om vuil, olie en onzuiverheden te verwijderen. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Gebruik een toner om de pH-waarde van uw huid in evenwicht te brengen en eventuele overgebleven resten te verwijderen.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Breng een geconcentreerd serum aan dat gericht is op specifieke problemen, zoals verheldering of anti-veroudering. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Dep de oogcrème zachtjes rond de ogen om te hydrateren en wallen of donkere kringen te verminderen.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Breng een spotbehandeling aan op probleemgebieden, zoals acne of puistjes. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Houd de hydratatie vast door een vochtinbrengende crème aan te brengen die bij uw huidtype past. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Bescherm uw huid tegen schadelijke UV-stralen door zonnebrandcrème met breedspectrumbescherming te gebruiken. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Breng een lichtgewicht gezichtsolie aan om vocht vast te houden en uw huid een stralende glans te geven. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Gebruik een rijke nachtcrème om uw huid te helpen herstellen en herstellen terwijl u slaapt. ","Cleanser":"Reiniger","Toner":"Toner","Serum":"Serum","Eye Cream":"Oogcrème","Spot Treatment":"Behandeling ter plaatse","Moisturizer":"Vochtinbrengende crème","Sunscreen":"Zonnebrandcrème","Face Oil":"Gezichtsolie","Night Cream":"Nachtcrème","Add all to cart":"Voeg alles toe aan winkelwagen","All Products":"Alle producten","validation.faceObstruction":"Er zit waarschijnlijk iets op het oppervlak van de gezichtshuid (haar of piercing)","Product added to cart":"Product toegevoegd aan winkelwagen","products added to cart":"producten toegevoegd aan winkelwagen","You reached the limits of your plan":"Je hebt de grenzen van je plan bereikt","Please renew your service for access":"Verleng uw service voor toegang","See the website’s privacy policy":"Zie het privacybeleid van de website"}')},ms:{translation:JSON.parse('{"Skin Analysis":"Analisis Kulit","Look Straight":"Pandang Lurus","Face Position":"Kedudukan Muka","Lighting":"Pencahayaan","Good":"bagus","Not Good":"Tidak Baik","Bad":"teruk","Fair":"Adil","Powered by":"Dikuasakan oleh","Your distance is close to the camera":"Jarak anda dekat dengan kamera","Keep your face inside the circle":"Simpan muka anda di dalam bulatan","Please stand in front of the camera":"Sila berdiri di hadapan kamera","There is more than one person in the picture":"Terdapat lebih daripada seorang dalam gambar","Drag & Drop":"Seret & Lepas","Or":"Ataupun","browse":"semak imbas","Supports: JPEG, JPG, PNG":"Menyokong: JPEG, JPG, PNG","Release to Upload":"Keluarkan untuk Muat Naik","file not supported":"fail tidak disokong","Sending Facial Data...":"Menghantar Data Muka...","Scanning Face...":"Mengimbas Wajah...","Analyzing Facial Attributes...":"Menganalisis Atribut Muka...","AI Crafting Report..":"Laporan Penciptaan AI..","Skin Info":"Maklumat Kulit","Fine Wrinkles":"Kedutan Halus","Eye Wrinkles":"Kedutan Mata","Deep Wrinkles":"Kedutan Dalam","Dark Circle":"Bulatan Gelap","Eye Bag":"Beg Mata","Pores":"Liang pori","Pigment":"Pigmen","Redness":"kemerahan","Oiliness":"Berminyak","Acnes":"Jerawat","Acne":"Jerawat","Skin Health":"Kesihatan Kulit","Instructions":"Arahan","Get Ready to Start Skin Analysis":"Bersedia untuk Memulakan Analisis Kulit","Remove the glasses":"Tanggalkan cermin mata","Clean your face":"Bersihkan muka anda","Be in the right light":"Berada dalam cahaya yang betul","Be neutral face and fix position":"Bersikap neutral dan tetapkan kedudukan","Get Started":"Mulakan","privacy.text":"Temui cara untuk meningkatkan kulit anda dengan produk dan rutin yang betul yang disesuaikan untuk anda. Muat naik swafoto anda untuk cadangan yang diperibadikan, dan yakinlah, imej anda akan dipadamkan selepas analisis","See our":"Lihat kami","Privacy Policy":"Dasar Privasi","for more information":"untuk maklumat lanjut","your picture quality is blurry":"kualiti gambar anda kabur","be wearing glasses":"memakai cermin mata","please remove them":"sila keluarkan mereka","Improve photo quality":"Tingkatkan kualiti foto","We noticed you might":"Kami perasan anda mungkin","and":"dan","for better results":"untuk hasil yang lebih baik","Tips for taking better selfies":"Petua untuk mengambil swafoto yang lebih baik","Continue":"teruskan","Generate routine for you":"Hasilkan rutin untuk anda","Re-take":"Ambil semula","Get recommended products!":"Dapatkan produk yang disyorkan!","Recommendation Products":"Produk Cadangan","Products That Just Work For you":"Produk Yang Hanya Berfungsi Untuk anda","My Skin Report":"Laporan Kulit Saya","Add to cart":"Tambah ke troli","Add again":"Tambah lagi","Checkout":"Checkout","My Routines":"Rutin Saya","Your":"awak","Routine":"Rutin","Morning":"Pagi","Night":"Malam","Error":"ralat","The face is not visible in the picture":"Wajah tidak kelihatan dalam gambar","The input image is not suitable":"Imej input tidak sesuai","An error occurred, please check again":"Ralat telah berlaku, sila semak semula","Camera permission denied.":"Kebenaran kamera ditolak.","Unable to access the camera.":"Tidak dapat mengakses kamera.","validation.blurry":"Imej anda kabur","validation.eyeGlass":"Anda mempunyai cermin mata","validation.brightness":"Cahaya di muka anda tidak sesuai","validation.neutralFace":"Wajah tidak neutral (Anda mungkin tersenyum)","Image is not suitable":"Imej tidak sesuai","Check how you can improve your skin with the proper product and routine":"Semak bagaimana anda boleh memperbaiki kulit anda dengan produk dan rutin yang betul","There are no products to display":"Tiada produk untuk dipaparkan","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Mulakan dengan mencuci muka untuk menghilangkan kotoran, minyak dan kekotoran. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Gunakan penyegar untuk mengimbangi pH kulit anda dan mengeluarkan sebarang sisa yang tertinggal.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Sapukan serum pekat yang menyasarkan kebimbangan khusus, seperti pencerahan atau anti-penuaan. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Tepuk krim mata perlahan-lahan di sekitar kawasan mata untuk melembapkan dan mengurangkan bengkak atau lingkaran hitam.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Sapukan rawatan di kawasan yang bermasalah, seperti jerawat atau jeragat. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Kunci dalam penghidratan dengan menggunakan pelembap yang sesuai dengan jenis kulit anda. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Lindungi kulit anda daripada sinaran UV yang berbahaya dengan menggunakan pelindung matahari dengan perlindungan spektrum luas. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Sapukan minyak muka yang ringan untuk menutup kelembapan dan memberikan kulit anda cahaya berseri. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Gunakan krim malam yang kaya untuk membantu membaiki dan memulihkan kulit anda semasa anda tidur. ","Cleanser":"Pembersih","Toner":"Toner","Serum":"Serum","Eye Cream":"Krim Mata","Spot Treatment":"Rawatan Bintik","Moisturizer":"Pelembap","Sunscreen":"pelindung matahari","Face Oil":"Minyak Muka","Night Cream":"Krim Malam","Add all to cart":"Tambahkan semua ke troli","All Products":"Semua Produk","validation.faceObstruction":"Mungkin ada sesuatu pada permukaan kulit muka (rambut atau tindikan)","Product added to cart":"Produk ditambah ke troli","products added to cart":"produk yang ditambahkan pada troli","You reached the limits of your plan":"Anda telah mencapai had rancangan anda","Please renew your service for access":"Sila perbaharui perkhidmatan anda untuk akses","See the website’s privacy policy":"Lihat dasar privasi tapak web"}')},ja:{translation:JSON.parse('{"Skin Analysis":"肌分析","Look Straight":"まっすぐに見てください","Face Position":"顔の位置","Lighting":"点灯","Good":"良い","Not Good":"良くない","Bad":"悪い","Fair":"公平","Powered by":"搭載","Your distance is close to the camera":"カメラとの距離が近い","Keep your face inside the circle":"顔を円の中に入れてください","Please stand in front of the camera":"カメラの前に立ってください","There is more than one person in the picture":"写真には複数の人物が写っています","Drag & Drop":"ドラッグ&ドロップ","Or":"または","browse":"ブラウズ","Supports: JPEG, JPG, PNG":"サポート: JPEG、JPG、PNG","Release to Upload":"リリースからアップロードまで","file not supported":"ファイルはサポートされていません","Sending Facial Data...":"顔データを送信中...","Scanning Face...":"顔をスキャン中...","Analyzing Facial Attributes...":"顔の属性を分析中...","AI Crafting Report..":"AI製作レポート..","Skin Info":"スキン情報","Fine Wrinkles":"小じわ","Eye Wrinkles":"目のシワ","Deep Wrinkles":"深いシワ","Dark Circle":"ダークサークル","Eye Bag":"目袋","Pores":"毛穴","Pigment":"顔料","Redness":"赤み","Oiliness":"油っぽさ","Acnes":"ニキビ","Acne":"ニキビ","Skin Health":"皮膚の健康","Instructions":"説明書","Get Ready to Start Skin Analysis":"肌分析を始める準備をしましょう","Remove the glasses":"メガネを外してください","Clean your face":"顔をきれいにしてください","Be in the right light":"適切な光の中にいてください","Be neutral face and fix position":"無表情で姿勢を固定する","Get Started":"始めましょう","privacy.text":"あなたに合った適切な製品と習慣で肌を改善する方法を見つけてください。自撮り写真をアップロードすると、カスタマイズされたおすすめが表示されます。画像は分析後に削除されますのでご安心ください。","See our":"私たちのを参照してください","Privacy Policy":"プライバシーポリシー","for more information":"詳細については","your picture quality is blurry":"画質がぼやけてます","be wearing glasses":"メガネをかけている","please remove them":"それらを削除してください","Improve photo quality":"写真の品質を向上させる","We noticed you might":"私たちはあなたがそうかもしれないことに気づきました","and":"そして","for better results":"より良い結果を得るために","Tips for taking better selfies":"より良いセルフィーを撮るためのヒント","Continue":"続く","Generate routine for you":"あなたのためのルーチンを生成する","Re-take":"再撮影","Get recommended products!":"おすすめ商品をゲットしよう!","Recommendation Products":"おすすめ商品","Products That Just Work For you":"あなたにぴったりの製品","My Skin Report":"私の肌レポート","Add to cart":"カートに追加","Add again":"再度追加","Checkout":"チェックアウト","My Routines":"私のルーティン","Your":"あなたの","Routine":"ルーティーン","Morning":"朝","Night":"夜","Error":"エラー","The face is not visible in the picture":"写真では顔が見えない","The input image is not suitable":"入力画像が適切ではありません","An error occurred, please check again":"エラーが発生しました。もう一度確認してください","Camera permission denied.":"カメラの許可が拒否されました。","Unable to access the camera.":"カメラにアクセスできません。","validation.blurry":"画像がぼやけています","validation.eyeGlass":"メガネをお持ちですね","validation.brightness":"あなたの顔に当たる光は適切ではありません","validation.neutralFace":"顔が中性的ではない(笑顔かもしれない)","Image is not suitable":"画像が適切ではありません","Check how you can improve your skin with the proper product and routine":"適切な製品と習慣で肌を改善できる方法を確認してください","There are no products to display":"表示する商品はありません","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"まずは顔を洗って汚れや油分、不純物を取り除くことから始めましょう。","Use a toner to balance your skin’s pH and remove any leftover residue.":"トナーを使用して肌の pH バランスを整え、残った残留物を取り除きます。","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"美白やアンチエイジングなど、特定の悩みをターゲットにした濃縮美容液を塗ります。","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"目の周りにアイクリームを優しくなじませて、潤いを与え、腫れやクマを軽減します。","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"ニキビやシミなどの問題のある部分にスポットトリートメントを適用します。","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"自分の肌タイプに合った保湿剤を塗布して、水分を閉じ込めてください。","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"広範囲の保護機能を持つ日焼け止めを使用して、有害な紫外線から肌を守りましょう。","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"軽いフェイス オイルを塗布して水分を閉じ込め、肌に輝く輝きを与えます。","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"睡眠中に肌の修復と回復を助けるために、濃厚なナイトクリームを使用してください。","Cleanser":"クレンザー","Toner":"トナー","Serum":"血清","Eye Cream":"アイクリーム","Spot Treatment":"スポットトリートメント","Moisturizer":"保湿剤","Sunscreen":"日焼け止め","Face Oil":"フェイスオイル","Night Cream":"ナイトクリーム","Add all to cart":"すべてをカートに追加する","All Products":"すべての製品","validation.faceObstruction":"おそらく顔の皮膚の表面に何か(髪またはピアス)があるでしょう","Product added to cart":"商品をカートに追加しました","products added to cart":"カートに商品が追加されました","You reached the limits of your plan":"プランの制限に達しました","Please renew your service for access":"アクセスするにはサービスを更新してください","See the website’s privacy policy":"ウェブサイトのプライバシーポリシーをご覧ください"}')},ru:{translation:JSON.parse('{"Skin Analysis":"Анализ кожи","Look Straight":"Смотри прямо","Face Position":"Положение лица","Lighting":"Освещение","Good":"Хороший","Not Good":"Не хорошо","Bad":"Плохой","Fair":"Справедливый","Powered by":"Питаться от","Your distance is close to the camera":"Ваше расстояние близко к камере","Keep your face inside the circle":"Держите лицо внутри круга","Please stand in front of the camera":"Пожалуйста, встаньте перед камерой","There is more than one person in the picture":"На фотографии несколько человек","Drag & Drop":"Перетаскивание","Or":"Или","browse":"просматривать","Supports: JPEG, JPG, PNG":"Поддерживает: JPEG, JPG, PNG.","Release to Upload":"Выпуск для загрузки","file not supported":"файл не поддерживается","Sending Facial Data...":"Отправка данных о лице...","Scanning Face...":"Сканирование лица...","Analyzing Facial Attributes...":"Анализ черт лица...","AI Crafting Report..":"Отчет о создании ИИ..","Skin Info":"Информация о скине","Fine Wrinkles":"Мелкие морщины","Eye Wrinkles":"Морщины под глазами","Deep Wrinkles":"Глубокие морщины","Dark Circle":"Темный круг","Eye Bag":"Сумка для глаз","Pores":"Поры","Pigment":"Пигмент","Redness":"Покраснение","Oiliness":"Маслянистость","Acnes":"Прыщи","Acne":"Прыщи","Skin Health":"Здоровье кожи","Instructions":"Инструкции","Get Ready to Start Skin Analysis":"Будьте готовы начать анализ кожи","Remove the glasses":"Снимите очки","Clean your face":"Очистите лицо","Be in the right light":"Будьте в правильном свете","Be neutral face and fix position":"Держите нейтральное лицо и зафиксируйте положение.","Get Started":"Начать","privacy.text":"Узнайте, как улучшить свою кожу с помощью правильных продуктов и процедур, адаптированных специально для вас. Загрузите свое селфи, чтобы получить персональные рекомендации, и будьте уверены, после анализа ваше изображение будет удалено.","See our":"Посмотрите наш","Privacy Policy":"политика конфиденциальности","for more information":"для получения дополнительной информации","your picture quality is blurry":"качество вашего изображения размытое","be wearing glasses":"носить очки","please remove them":"пожалуйста, удалите их","Improve photo quality":"Улучшите качество фотографий","We noticed you might":"Мы заметили, что вы можете","and":"и","for better results":"для лучших результатов","Tips for taking better selfies":"Советы, как делать лучшие селфи","Continue":"Продолжать","Generate routine for you":"Создайте для себя рутину","Re-take":"Пересдать","Get recommended products!":"Приобретайте рекомендованные товары!","Recommendation Products":"Рекомендованные продукты","Products That Just Work For you":"Продукты, которые просто работают на вас","My Skin Report":"Мой отчет о коже","Add to cart":"Добавить в корзину","Add again":"Добавить еще раз","Checkout":"Проверить","My Routines":"Мои рутины","Your":"Твой","Routine":"Рутина","Morning":"Утро","Night":"Ночь","Error":"Ошибка","The face is not visible in the picture":"На фото не видно лица","The input image is not suitable":"Входное изображение не подходит","An error occurred, please check again":"Произошла ошибка, пожалуйста, проверьте еще раз","Camera permission denied.":"Разрешение на использование камеры отклонено.","Unable to access the camera.":"Невозможно получить доступ к камере.","validation.blurry":"Ваше изображение размыто","validation.eyeGlass":"У тебя есть очки","validation.brightness":"Свет на вашем лице не подходит","validation.neutralFace":"Лицо не нейтральное (Вы можете улыбаться)","Image is not suitable":"Изображение не подходит","Check how you can improve your skin with the proper product and routine":"Узнайте, как вы можете улучшить свою кожу с помощью подходящего продукта и регулярного ухода.","There are no products to display":"Нет товаров для отображения","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Начните с умывания лица, чтобы удалить грязь, жир и примеси. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Используйте тоник, чтобы сбалансировать pH вашей кожи и удалить остатки.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Нанесите концентрированную сыворотку, направленную на решение конкретных проблем, например, осветление или омоложение. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Аккуратно промокните крем вокруг глаз, чтобы увлажнить и уменьшить отечность и темные круги.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Нанесите точечное лечение на проблемные участки, например прыщи или пятна. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Зафиксируйте увлажнение, нанеся увлажняющий крем, соответствующий вашему типу кожи. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Защитите свою кожу от вредных ультрафиолетовых лучей, используя солнцезащитный крем широкого спектра действия. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Нанесите легкое масло для лица, чтобы удержать влагу и придать коже сияющее сияние. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Используйте насыщенный ночной крем, чтобы восстановить кожу во время сна. ","Cleanser":"Очищающее средство","Toner":"Тонер","Serum":"сыворотка","Eye Cream":"Крем для глаз","Spot Treatment":"Точечное лечение","Moisturizer":"Увлажняющий крем","Sunscreen":"солнцезащитный крем","Face Oil":"Масло для лица","Night Cream":"Ночной крем","Add all to cart":"Добавить все в корзину","All Products":"Все продукты","validation.faceObstruction":"Вероятно, что-то есть на поверхности кожи лица (волосы или пирсинг)","Product added to cart":"Товар добавлен в корзину","products added to cart":"товары добавлены в корзину","You reached the limits of your plan":"Вы достигли пределов своего плана","Please renew your service for access":"Пожалуйста, обновите услугу для доступа","See the website’s privacy policy":"Ознакомьтесь с политикой конфиденциальности сайта."}')},pl:{translation:JSON.parse('{"Skin Analysis":"Analiza skóry","Look Straight":"Spójrz prosto","Face Position":"Pozycja twarzy","Lighting":"Oświetlenie","Good":"Dobry","Not Good":"Nie dobrze","Bad":"Zły","Fair":"Sprawiedliwy","Powered by":"Obsługiwane przez","Your distance is close to the camera":"Odległość od aparatu jest bliska","Keep your face inside the circle":"Trzymaj twarz wewnątrz okręgu","Please stand in front of the camera":"Proszę stanąć przed kamerą","There is more than one person in the picture":"Na zdjęciu jest więcej niż jedna osoba","Drag & Drop":"Przeciągnij i upuść","Or":"Lub","browse":"przeglądać","Supports: JPEG, JPG, PNG":"Obsługuje: JPEG, JPG, PNG","Release to Upload":"Zwolnij, aby przesłać","file not supported":"plik nie jest obsługiwany","Sending Facial Data...":"Wysyłanie danych twarzy...","Scanning Face...":"Skanowanie twarzy...","Analyzing Facial Attributes...":"Analiza cech twarzy...","AI Crafting Report..":"Raport o tworzeniu AI..","Skin Info":"Informacje o skórze","Fine Wrinkles":"Drobne zmarszczki","Eye Wrinkles":"Zmarszczki oczu","Deep Wrinkles":"Głębokie zmarszczki","Dark Circle":"Ciemny krąg","Eye Bag":"Torba na oczy","Pores":"Pory","Pigment":"Pigment","Redness":"Zaczerwienienie","Oiliness":"Wazeliniarstwo","Acnes":"Trądzik","Acne":"Trądzik","Skin Health":"Zdrowie skóry","Instructions":"Instrukcje","Get Ready to Start Skin Analysis":"Przygotuj się do rozpoczęcia analizy skóry","Remove the glasses":"Zdejmij okulary","Clean your face":"Oczyść twarz","Be in the right light":"Bądź we właściwym świetle","Be neutral face and fix position":"Zachowaj neutralną twarz i ustaloną pozycję","Get Started":"Rozpocznij","privacy.text":"Odkryj, jak poprawić swoją skórę za pomocą odpowiednich produktów i rutyny dostosowanej do Ciebie. Prześlij swoje selfie, aby uzyskać spersonalizowane rekomendacje i bądź pewien, że po analizie Twoje zdjęcie zostanie usunięte","See our":"Zobacz nasze","Privacy Policy":"Polityka prywatności","for more information":"aby uzyskać więcej informacji","your picture quality is blurry":"jakość obrazu jest niewyraźna","be wearing glasses":"nosić okulary","please remove them":"proszę je usunąć","Improve photo quality":"Popraw jakość zdjęć","We noticed you might":"Zauważyliśmy, że możesz","and":"I","for better results":"dla lepszych wyników","Tips for taking better selfies":"Wskazówki, jak robić lepsze selfie","Continue":"Kontynuować","Generate routine for you":"Wygeneruj dla siebie rutynę","Re-take":"Odzyskać","Get recommended products!":"Zdobądź polecane produkty!","Recommendation Products":"Produkty polecane","Products That Just Work For you":"Produkty, które po prostu działają dla Ciebie","My Skin Report":"Raport o mojej skórze","Add to cart":"Dodaj do koszyka","Add again":"Dodaj ponownie","Checkout":"Wymeldować się","My Routines":"Moje rutyny","Your":"Twój","Routine":"Rutyna","Morning":"Poranek","Night":"Noc","Error":"Błąd","The face is not visible in the picture":"Na zdjęciu nie widać twarzy","The input image is not suitable":"Obraz wejściowy nie jest odpowiedni","An error occurred, please check again":"Wystąpił błąd. Sprawdź ponownie","Camera permission denied.":"Odmowa dostępu do aparatu.","Unable to access the camera.":"Nie można uzyskać dostępu do kamery.","validation.blurry":"Twój obraz jest niewyraźny","validation.eyeGlass":"Masz okulary","validation.brightness":"Światło na twojej twarzy jest nieodpowiednie","validation.neutralFace":"Twarz nie jest neutralna (możesz się uśmiechać)","Image is not suitable":"Obraz nie jest odpowiedni","Check how you can improve your skin with the proper product and routine":"Sprawdź, jak możesz poprawić swoją skórę odpowiednim produktem i pielęgnacją","There are no products to display":"Brak produktów do wyświetlenia","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Zacznij od umycia twarzy, aby usunąć brud, olej i zanieczyszczenia. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Użyj toniku, aby zrównoważyć pH skóry i usunąć wszelkie pozostałości.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Zastosuj skoncentrowane serum ukierunkowane na konkretne problemy, takie jak rozjaśnianie lub przeciwdziałanie efektom starzenia. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Delikatnie wklep krem ​​pod oczy w okolicy oczu, aby nawilżyć i zmniejszyć obrzęki i cienie.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Zastosuj kurację punktową na obszarach problematycznych, takich jak trądzik lub przebarwienia. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Zatrzymaj nawilżenie, stosując krem ​​nawilżający odpowiedni do rodzaju skóry. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Chroń swoją skórę przed szkodliwym promieniowaniem UV stosując filtry przeciwsłoneczne o szerokim spektrum ochrony. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Nałóż lekki olejek do twarzy, aby zatrzymać wilgoć i nadać skórze promienny blask. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Stosuj bogaty krem ​​na noc, który pomoże zregenerować i zregenerować skórę podczas snu. ","Cleanser":"Środek czyszczący","Toner":"Toner","Serum":"Serum","Eye Cream":"Krem pod oczy","Spot Treatment":"Leczenie punktowe","Moisturizer":"Nawilżacz","Sunscreen":"Krem przeciwsłoneczny","Face Oil":"Olejek do twarzy","Night Cream":"Krem na noc","Add all to cart":"Dodaj wszystko do koszyka","All Products":"Wszystkie produkty","validation.faceObstruction":"Prawdopodobnie coś znajduje się na powierzchni skóry twarzy (włosy lub piercing)","Product added to cart":"Produkt dodany do koszyka","products added to cart":"produkty dodane do koszyka","You reached the limits of your plan":"Osiągnąłeś granice swojego planu","Please renew your service for access":"Aby uzyskać dostęp, odnów usługę","See the website’s privacy policy":"Zapoznaj się z polityką prywatności serwisu"}')},uk:{translation:JSON.parse('{"Skin Analysis":"Аналіз шкіри","Look Straight":"Дивіться прямо","Face Position":"Положення обличчя","Lighting":"Освітлення","Good":"добре","Not Good":"Не добре","Bad":"погано","Fair":"ярмарок","Powered by":"На основі","Your distance is close to the camera":"Ваша відстань близька до камери","Keep your face inside the circle":"Тримайте своє обличчя всередині кола","Please stand in front of the camera":"Будь ласка, встаньте перед камерою","There is more than one person in the picture":"На малюнку більше однієї людини","Drag & Drop":"Перетягніть і опустіть","Or":"Або","browse":"переглядати","Supports: JPEG, JPG, PNG":"Підтримує: JPEG, JPG, PNG","Release to Upload":"Відпустіть для завантаження","file not supported":"файл не підтримується","Sending Facial Data...":"Надсилання даних обличчя...","Scanning Face...":"Сканування обличчя...","Analyzing Facial Attributes...":"Аналіз особливостей обличчя...","AI Crafting Report..":"Звіт про створення AI..","Skin Info":"Інформація про шкіру","Fine Wrinkles":"Тонкі зморшки","Eye Wrinkles":"Зморшки під очима","Deep Wrinkles":"Глибокі зморшки","Dark Circle":"Темне коло","Eye Bag":"Очний мішок","Pores":"Пори","Pigment":"Пігмент","Redness":"Почервоніння","Oiliness":"жирність","Acnes":"акне","Acne":"акне","Skin Health":"Здоров\'я шкіри","Instructions":"Інструкції","Get Ready to Start Skin Analysis":"Підготуйтеся до аналізу шкіри","Remove the glasses":"Зняти окуляри","Clean your face":"Очистіть обличчя","Be in the right light":"Будьте в правильному світлі","Be neutral face and fix position":"Будьте нейтральним обличчям і зафіксуйте положення","Get Started":"Почніть роботу","privacy.text":"Дізнайтеся, як покращити свою шкіру за допомогою правильних продуктів і розпорядку, спеціально розробленого для вас. Завантажте своє селфі, щоб отримати персоналізовані рекомендації, і будьте певні, ваше зображення буде видалено після аналізу","See our":"Дивіться наш","Privacy Policy":"Політика конфіденційності","for more information":"для отримання додаткової інформації","your picture quality is blurry":"якість вашого зображення розмита","be wearing glasses":"бути в окулярах","please remove them":"будь ласка, видаліть їх","Improve photo quality":"Поліпшення якості фотографій","We noticed you might":"Ми помітили, що ви можете","and":"і","for better results":"для кращих результатів","Tips for taking better selfies":"Поради щодо кращих селфі","Continue":"Продовжити","Generate routine for you":"Створіть для себе розпорядок дня","Re-take":"Перезняти","Get recommended products!":"Отримайте рекомендовані продукти!","Recommendation Products":"Рекомендовані продукти","Products That Just Work For you":"Продукти, які працюють на вас","My Skin Report":"My Skin Report","Add to cart":"Додати в кошик","Add again":"Додайте знову","Checkout":"Оплата","My Routines":"Мої розпорядки","Your":"ваш","Routine":"Рутина","Morning":"Ранок","Night":"ніч","Error":"Помилка","The face is not visible in the picture":"На фото не видно обличчя","The input image is not suitable":"Вхідне зображення не підходить","An error occurred, please check again":"Сталася помилка, перевірте ще раз","Camera permission denied.":"Відмовлено в дозволі на камеру.","Unable to access the camera.":"Неможливо отримати доступ до камери.","validation.blurry":"Ваше зображення розмите","validation.eyeGlass":"У вас є окуляри","validation.brightness":"Світло на вашому обличчі не підходить","validation.neutralFace":"Обличчя не є нейтральним (Ви можете мати посмішку)","Image is not suitable":"Зображення не підходить","Check how you can improve your skin with the proper product and routine":"Перевірте, як ви можете покращити свою шкіру за допомогою відповідного продукту та процедури","There are no products to display":"Немає товарів для відображення","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Почніть з миття обличчя, щоб видалити бруд, жир і домішки. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Використовуйте тонік, щоб збалансувати рН шкіри та видалити будь-які залишки.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Нанесіть концентровану сироватку, спрямовану на конкретні проблеми, наприклад освітлення або запобігання старінню. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Обережно нанесіть крем на область навколо очей, щоб зволожити та зменшити набряки або темні кола.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Нанесіть точкове лікування на будь-які проблемні ділянки, такі як прищі або плями. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Зафіксуйте зволоження, застосовуючи зволожуючий крем, який підходить вашому типу шкіри. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Захистіть свою шкіру від шкідливого ультрафіолетового випромінювання, використовуючи сонцезахисний крем із широким спектром захисту. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Нанесіть легку олію для обличчя, щоб зберегти вологу та надати шкірі сяючого сяйва. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Використовуйте насичений нічний крем, щоб допомогти відновити шкіру під час сну. ","Cleanser":"Очищуючий засіб","Toner":"Тонер","Serum":"Сироватка","Eye Cream":"Крем для очей","Spot Treatment":"Лікування плям","Moisturizer":"Зволожуючий крем","Sunscreen":"Сонцезахисний крем","Face Oil":"Масло для обличчя","Night Cream":"Нічний крем","Add all to cart":"Додати все в кошик","All Products":"Всі продукти","validation.faceObstruction":"Ймовірно, є щось на поверхні шкіри обличчя (волосся або пірсинг)","Product added to cart":"Товар додано в кошик","products added to cart":"продуктів, доданих у кошик","You reached the limits of your plan":"Ви досягли межі свого плану","Please renew your service for access":"Щоб отримати доступ, поновіть послугу","See the website’s privacy policy":"Перегляньте політику конфіденційності веб-сайту"}')},fi:{translation:JSON.parse('{"Skin Analysis":"Ihon analyysi","Look Straight":"Katso Suoraan","Face Position":"Kasvojen asento","Lighting":"Valaistus","Good":"Hyvä","Not Good":"Ei hyvä","Bad":"Huono","Fair":"Reilu","Powered by":"Voimanlähteenä","Your distance is close to the camera":"Etäisyytesi on lähellä kameraa","Keep your face inside the circle":"Pidä kasvosi ympyrän sisällä","Please stand in front of the camera":"Ole hyvä ja seiso kameran edessä","There is more than one person in the picture":"Kuvassa on useampi kuin yksi henkilö","Drag & Drop":"Vedä ja pudota","Or":"Tai","browse":"selata","Supports: JPEG, JPG, PNG":"Tukee: JPEG, JPG, PNG","Release to Upload":"Vapauta lataukseen","file not supported":"tiedostoa ei tueta","Sending Facial Data...":"Lähetetään kasvotietoja...","Scanning Face...":"Skannataan kasvoja...","Analyzing Facial Attributes...":"Analysoidaan kasvojen ominaisuuksia...","AI Crafting Report..":"AI Crafting Report..","Skin Info":"Ihon tiedot","Fine Wrinkles":"Hienoja ryppyjä","Eye Wrinkles":"Silmärypyt","Deep Wrinkles":"Syviä ryppyjä","Dark Circle":"Pimeä ympyrä","Eye Bag":"Silmäpussi","Pores":"huokoset","Pigment":"Pigmentti","Redness":"Punoitus","Oiliness":"Öljyisyys","Acnes":"Akne","Acne":"Akne","Skin Health":"Ihon terveys","Instructions":"Ohjeet","Get Ready to Start Skin Analysis":"Valmistaudu aloittamaan ihoanalyysin","Remove the glasses":"Ota lasit pois","Clean your face":"Puhdista kasvosi","Be in the right light":"Ole oikeassa valossa","Be neutral face and fix position":"Ole neutraali kasvot ja kiinnitä asento","Get Started":"Aloita","privacy.text":"Tutustu siihen, kuinka voit parantaa ihoasi oikeilla tuotteilla ja rutiinilla, jotka on räätälöity sinulle. Lataa selfiesi saadaksesi henkilökohtaisia ​​suosituksia, ja voit olla varma, että kuvasi poistetaan analysoinnin jälkeen","See our":"Katso meidän","Privacy Policy":"Tietosuojakäytäntö","for more information":"saadaksesi lisätietoja","your picture quality is blurry":"kuvanlaatu on epäselvä","be wearing glasses":"käyttää silmälaseja","please remove them":"poista ne","Improve photo quality":"Paranna valokuvan laatua","We noticed you might":"Huomasimme, että saatat","and":"ja","for better results":"parempien tulosten saamiseksi","Tips for taking better selfies":"Vinkkejä parempien selfien ottamiseen","Continue":"Jatkaa","Generate routine for you":"Luo rutiineja sinulle","Re-take":"Ota uudelleen","Get recommended products!":"Hanki suositellut tuotteet!","Recommendation Products":"Suositustuotteet","Products That Just Work For you":"Tuotteet, jotka toimivat juuri sinulle","My Skin Report":"Oma ihoraportti","Add to cart":"Lisää ostoskoriin","Add again":"Lisää uudelleen","Checkout":"Kassalle","My Routines":"Omat rutiinit","Your":"Sinun","Routine":"Rutiini","Morning":"Aamu","Night":"Yö","Error":"Virhe","The face is not visible in the picture":"Kasvot eivät näy kuvassa","The input image is not suitable":"Syöttökuva ei ole sopiva","An error occurred, please check again":"Tapahtui virhe, tarkista uudelleen","Camera permission denied.":"Kameran lupa evätty.","Unable to access the camera.":"Kameraan ei pääse käsiksi.","validation.blurry":"Kuvasi on epäselvä","validation.eyeGlass":"Sinulla on lasit","validation.brightness":"Kasvojen valo ei ole sopiva","validation.neutralFace":"Kasvot eivät ole neutraalit (sinulla saattaa olla hymy)","Image is not suitable":"Kuva ei ole sopiva","Check how you can improve your skin with the proper product and routine":"Tarkista, kuinka voit parantaa ihoasi oikean tuotteen ja rutiinin avulla","There are no products to display":"Näytettäviä tuotteita ei ole","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Aloita pesemällä kasvosi poistaaksesi lian, öljyn ja epäpuhtaudet. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Käytä väriainetta tasapainottaaksesi ihosi pH-arvoa ja poistaaksesi mahdolliset jäämät.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Käytä tiivistettyä seerumia, joka kohdistuu tiettyihin huolenaiheisiin, kuten kirkastukseen tai ikääntymisen estoon. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Taputtele silmänympärysvoidetta varovasti silmänympärysiholle kosteuttaaksesi ja vähentääksesi turvotusta tai tummia silmänalusia.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Levitä pistehoitoa kaikille ongelma-alueille, kuten akneen tai epäpuhtauksiin. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Lukitse kosteus käyttämällä ihotyypillesi sopivaa kosteusvoidetta. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Suojaa ihoasi haitallisilta UV-säteiltä käyttämällä aurinkovoidetta, jossa on laajakirjoinen suoja. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Levitä kevyttä kasvoöljyä kosteuttaaksesi ja antaaksesi ihollesi hehkua. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Käytä täyteläistä yövoidetta korjaamaan ja elvyttämään ihoasi nukkuessasi. ","Cleanser":"Puhdistusaine","Toner":"Väriaine","Serum":"Seerumi","Eye Cream":"Silmänympärysvoide","Spot Treatment":"Pistehoito","Moisturizer":"Kosteusvoide","Sunscreen":"Aurinkosuojavoide","Face Oil":"Kasvoöljy","Night Cream":"Yövoide","Add all to cart":"Lisää kaikki ostoskoriin","All Products":"Kaikki tuotteet","validation.faceObstruction":"Kasvojen ihon pinnalla on luultavasti jotain (hiukset tai lävistykset)","Product added to cart":"Tuote lisätty ostoskoriin","products added to cart":"tuotteet lisätty ostoskoriin","You reached the limits of your plan":"Olet saavuttanut suunnitelmasi rajat","Please renew your service for access":"Uusi palvelusi pääsyä varten","See the website’s privacy policy":"Katso sivuston tietosuojakäytäntö"}')},ur:{translation:JSON.parse('{"Skin Analysis":"جلد کا تجزیہ","Look Straight":"سیدھا دیکھو","Face Position":"چہرے کی پوزیشن","Lighting":"لائٹنگ","Good":"اچھا","Not Good":"اچھا نہیں ہے۔","Bad":"برا","Fair":"میلہ","Powered by":"کی طرف سے طاقت","Your distance is close to the camera":"آپ کا فاصلہ کیمرے کے قریب ہے۔","Keep your face inside the circle":"اپنے چہرے کو دائرے کے اندر رکھیں","Please stand in front of the camera":"براہ کرم کیمرے کے سامنے کھڑے ہوں۔","There is more than one person in the picture":"تصویر میں ایک سے زیادہ لوگ ہیں۔","Drag & Drop":"گھسیٹیں اور چھوڑیں۔","Or":"یا","browse":"براؤز کریں","Supports: JPEG, JPG, PNG":"سپورٹ کرتا ہے: JPEG، JPG، PNG","Release to Upload":"اپ لوڈ کرنے کے لیے ریلیز کریں۔","file not supported":"فائل تعاون یافتہ نہیں ہے۔","Sending Facial Data...":"چہرے کا ڈیٹا بھیج رہا ہے...","Scanning Face...":"چہرہ سکین کیا جا رہا ہے...","Analyzing Facial Attributes...":"چہرے کے اوصاف کا تجزیہ...","AI Crafting Report..":"اے آئی کرافٹنگ رپورٹ ..","Skin Info":"جلد کی معلومات","Fine Wrinkles":"باریک جھریاں","Eye Wrinkles":"آنکھوں کی جھریاں","Deep Wrinkles":"گہری جھریاں","Dark Circle":"ڈارک سرکل","Eye Bag":"آئی بیگ","Pores":"pores","Pigment":"روغن","Redness":"سرخی","Oiliness":"تیل پن","Acnes":"مںہاسی","Acne":"مںہاسی","Skin Health":"جلد کی صحت","Instructions":"ہدایات","Get Ready to Start Skin Analysis":"جلد کا تجزیہ شروع کرنے کے لیے تیار ہو جائیں۔","Remove the glasses":"شیشے کو ہٹا دیں۔","Clean your face":"اپنا چہرہ صاف کریں۔","Be in the right light":"صحیح روشنی میں رہیں","Be neutral face and fix position":"غیر جانبدار چہرہ بنیں اور پوزیشن درست کریں۔","Get Started":"شروع کریں","privacy.text":"دریافت کریں کہ آپ کے لیے موزوں مصنوعات اور معمولات کے ساتھ اپنی جلد کو کیسے بہتر بنایا جائے۔ ذاتی سفارشات کے لیے اپنی سیلفی اپ لوڈ کریں، اور یقین رکھیں، تجزیہ کے بعد آپ کی تصویر حذف کر دی جائے گی۔","See our":"ہماری دیکھیں","Privacy Policy":"رازداری کی پالیسی","for more information":"مزید معلومات کے لیے","your picture quality is blurry":"آپ کی تصویر کا معیار دھندلا ہے۔","be wearing glasses":"عینک پہننا","please remove them":"براہ کرم انہیں ہٹا دیں۔","Improve photo quality":"تصویر کے معیار کو بہتر بنائیں","We noticed you might":"ہم نے محسوس کیا کہ آپ شاید","and":"اور","for better results":"بہتر نتائج کے لیے","Tips for taking better selfies":"بہتر سیلفی لینے کے لیے نکات","Continue":"جاری رکھیں","Generate routine for you":"آپ کے لیے روٹین تیار کریں۔","Re-take":"دوبارہ لینا","Get recommended products!":"تجویز کردہ مصنوعات حاصل کریں!","Recommendation Products":"سفارشی مصنوعات","Products That Just Work For you":"پروڈکٹس جو صرف آپ کے لیے کام کرتی ہیں۔","My Skin Report":"میری جلد کی رپورٹ","Add to cart":"ٹوکری میں شامل کریں۔","Add again":"دوبارہ شامل کریں۔","Checkout":"چیک آؤٹ","My Routines":"میرے معمولات","Your":"آپ کا","Routine":"روٹین","Morning":"صبح","Night":"رات","Error":"خرابی","The face is not visible in the picture":"تصویر میں چہرہ نظر نہیں آ رہا۔","The input image is not suitable":"ان پٹ امیج مناسب نہیں ہے۔","An error occurred, please check again":"ایک خرابی پیش آگئی، براہ کرم دوبارہ چیک کریں۔","Camera permission denied.":"کیمرے کی اجازت مسترد کر دی گئی۔","Unable to access the camera.":"کیمرے تک رسائی حاصل کرنے سے قاصر۔","validation.blurry":"آپ کی تصویر دھندلی ہے۔","validation.eyeGlass":"آپ کے پاس عینک ہے۔","validation.brightness":"آپ کے چہرے پر روشنی مناسب نہیں ہے۔","validation.neutralFace":"چہرہ غیر جانبدار نہیں ہے (آپ کی مسکراہٹ ہو سکتی ہے)","Image is not suitable":"تصویر مناسب نہیں ہے۔","Check how you can improve your skin with the proper product and routine":"چیک کریں کہ آپ مناسب پروڈکٹ اور روٹین کے ساتھ اپنی جلد کو کیسے بہتر بنا سکتے ہیں۔","There are no products to display":"ڈسپلے کرنے کے لیے کوئی پروڈکٹس نہیں ہیں۔","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"گندگی، تیل اور نجاست کو دور کرنے کے لیے اپنے چہرے کو دھو کر شروع کریں۔ ","Use a toner to balance your skin’s pH and remove any leftover residue.":"اپنی جلد کے پی ایچ کو متوازن کرنے کے لیے ٹونر کا استعمال کریں اور باقی بچ جانے والی چیزوں کو ہٹا دیں۔","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"مخصوص خدشات کو نشانہ بناتے ہوئے ایک مرتکز سیرم لگائیں، جیسے چمکانا یا اینٹی ایجنگ۔ ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"آنکھوں کے ارد گرد آنکھوں کی کریم کو آہستہ سے تھپتھپائیں تاکہ ہائیڈریٹ ہو اور سوجن یا سیاہ حلقوں کو کم کیا جا سکے۔","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"کسی بھی دشواری والے علاقوں پر اسپاٹ ٹریٹمنٹ لگائیں، جیسے ایکنی یا داغ۔ ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"آپ کی جلد کی قسم کے مطابق موئسچرائزر لگا کر ہائیڈریشن کو بند کریں۔ ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"براڈ اسپیکٹرم تحفظ کے ساتھ سن اسکرین کا استعمال کرکے اپنی جلد کو نقصان دہ UV شعاعوں سے بچائیں۔ ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"نمی میں سیل کرنے اور اپنی جلد کو چمکدار چمک دینے کے لیے ہلکا پھلکا چہرے کا تیل لگائیں۔ ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"سوتے وقت اپنی جلد کی مرمت اور بحالی میں مدد کے لیے بھرپور نائٹ کریم استعمال کریں۔ ","Cleanser":"صاف کرنے والا","Toner":"ٹونر","Serum":"سیرم","Eye Cream":"آئی کریم","Spot Treatment":"سپاٹ ٹریٹمنٹ","Moisturizer":"موئسچرائزر","Sunscreen":"سن اسکرین","Face Oil":"چہرے کا تیل","Night Cream":"نائٹ کریم","Add all to cart":"سب کو کارٹ میں شامل کریں۔","All Products":"تمام مصنوعات","validation.faceObstruction":"چہرے کی جلد کی سطح پر شاید کچھ ہے (بال یا چھیدنا)","Product added to cart":"پروڈکٹ کو کارٹ میں شامل کیا گیا۔","products added to cart":"مصنوعات کی ٹوکری میں شامل","You reached the limits of your plan":"آپ اپنے منصوبے کی حد تک پہنچ گئے۔","Please renew your service for access":"براہ کرم رسائی کے لیے اپنی سروس کی تجدید کریں۔","See the website’s privacy policy":"ویب سائٹ کی رازداری کی پالیسی دیکھیں"}')},sk:{translation:JSON.parse('{"Skin Analysis":"Analýza pokožky","Look Straight":"Pozrite sa rovno","Face Position":"Poloha tváre","Lighting":"Osvetlenie","Good":"Dobre","Not Good":"Nie je to dobré","Bad":"Zlé","Fair":"Spravodlivé","Powered by":"Poháňané","Your distance is close to the camera":"Vaša vzdialenosť je blízko fotoaparátu","Keep your face inside the circle":"Udržujte svoju tvár v kruhu","Please stand in front of the camera":"Postavte sa prosím pred kameru","There is more than one person in the picture":"Na obrázku je viac osôb","Drag & Drop":"Drag & Drop","Or":"Alebo","browse":"prehliadať","Supports: JPEG, JPG, PNG":"Podporuje: JPEG, JPG, PNG","Release to Upload":"Uvoľnite a nahrajte","file not supported":"súbor nie je podporovaný","Sending Facial Data...":"Odosielajú sa údaje o tvári...","Scanning Face...":"Skenuje sa tvár...","Analyzing Facial Attributes...":"Analýza vlastností tváre...","AI Crafting Report..":"Správa o tvorbe AI..","Skin Info":"Informácie o pokožke","Fine Wrinkles":"Jemné vrásky","Eye Wrinkles":"Očné vrásky","Deep Wrinkles":"Hlboké vrásky","Dark Circle":"Tmavý kruh","Eye Bag":"Taška na oči","Pores":"Póry","Pigment":"Pigment","Redness":"Sčervenanie","Oiliness":"Olejnatosť","Acnes":"Akné","Acne":"Akné","Skin Health":"Zdravie pokožky","Instructions":"Pokyny","Get Ready to Start Skin Analysis":"Pripravte sa na začatie analýzy pleti","Remove the glasses":"Odstráňte okuliare","Clean your face":"Vyčistite si tvár","Be in the right light":"Buďte v správnom svetle","Be neutral face and fix position":"Buďte neutrálna tvár a zafixujte si polohu","Get Started":"Začíname","privacy.text":"Zistite, ako zlepšiť svoju pleť pomocou správnych produktov a rutiny prispôsobenej pre vás. Nahrajte svoju selfie pre prispôsobené odporúčania a buďte si istí, že váš obrázok bude po analýze odstránený","See our":"Pozrite si naše","Privacy Policy":"Zásady ochrany osobných údajov","for more information":"pre viac informácií","your picture quality is blurry":"kvalita vášho obrazu je rozmazaná","be wearing glasses":"nosiť okuliare","please remove them":"prosím odstráňte ich","Improve photo quality":"Zlepšite kvalitu fotografie","We noticed you might":"Všimli sme si, že možno","and":"a","for better results":"pre lepšie výsledky","Tips for taking better selfies":"Tipy na lepšie selfie","Continue":"Pokračovať","Generate routine for you":"Vytvorte pre vás rutinu","Re-take":"Znova vziať","Get recommended products!":"Získajte odporúčané produkty!","Recommendation Products":"Odporúčané produkty","Products That Just Work For you":"Produkty, ktoré fungujú len pre vás","My Skin Report":"Správa o mojej pleti","Add to cart":"Pridať do košíka","Add again":"Pridajte znova","Checkout":"Pokladňa","My Routines":"Moje rutiny","Your":"Váš","Routine":"Rutina","Morning":"ráno","Night":"Noc","Error":"Chyba","The face is not visible in the picture":"Na obrázku nie je viditeľná tvár","The input image is not suitable":"Vstupný obrázok nie je vhodný","An error occurred, please check again":"Vyskytla sa chyba, skontrolujte to znova","Camera permission denied.":"Povolenie fotoaparátu bolo zamietnuté.","Unable to access the camera.":"Nedá sa získať prístup ku kamere.","validation.blurry":"Váš obrázok je rozmazaný","validation.eyeGlass":"Máš okuliare","validation.brightness":"Svetlo na vašej tvári nie je vhodné","validation.neutralFace":"Tvár nie je neutrálna (môžete mať úsmev)","Image is not suitable":"Obrázok nie je vhodný","Check how you can improve your skin with the proper product and routine":"Zistite, ako môžete zlepšiť svoju pleť pomocou správneho produktu a rutiny","There are no products to display":"Neexistujú žiadne produkty na zobrazenie","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Začnite umývaním tváre, aby ste odstránili špinu, olej a nečistoty. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Použite tonikum na vyrovnanie pH pokožky a odstránenie zvyškov.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Naneste koncentrované sérum zamerané na špecifické problémy, ako je rozjasnenie alebo anti-aging. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Jemne vmasírujte očný krém do okolia očí, aby ste hydratovali a zredukovali opuchy alebo tmavé kruhy.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Aplikujte bodové ošetrenie na akékoľvek problémové oblasti, ako je akné alebo škvrny. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Uzamknite hydratáciu nanesením hydratačného krému, ktorý vyhovuje vášmu typu pleti. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Chráňte svoju pokožku pred škodlivými UV lúčmi používaním opaľovacích krémov so širokospektrálnou ochranou. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Naneste ľahký pleťový olej na uzavretie vlhkosti a dodajte pokožke žiarivý lesk. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Použite bohatý nočný krém, ktorý vám pomôže opraviť a obnoviť pokožku počas spánku. ","Cleanser":"Čistiaci prostriedok","Toner":"Toner","Serum":"Sérum","Eye Cream":"Očný krém","Spot Treatment":"Bodové ošetrenie","Moisturizer":"Zvlhčovač","Sunscreen":"Opaľovací krém","Face Oil":"Olej na tvár","Night Cream":"Nočný krém","Add all to cart":"Pridajte všetko do košíka","All Products":"Všetky produkty","validation.faceObstruction":"Pravdepodobne je niečo na povrchu pokožky tváre (vlasy alebo piercing)","Product added to cart":"Produkt bol pridaný do košíka","products added to cart":"produkty pridané do košíka","You reached the limits of your plan":"Dosiahli ste hranice svojho plánu","Please renew your service for access":"Obnovte svoju službu pre prístup","See the website’s privacy policy":"Pozrite si zásady ochrany osobných údajov webovej stránky"}')},pt:{translation:JSON.parse('{"Skin Analysis":"Análise da Pele","Look Straight":"Olhe direito","Face Position":"Posição do rosto","Lighting":"Iluminação","Good":"Bom","Not Good":"Não é bom","Bad":"Ruim","Fair":"Justo","Powered by":"Distribuído por","Your distance is close to the camera":"Sua distância está perto da câmera","Keep your face inside the circle":"Mantenha seu rosto dentro do círculo","Please stand in front of the camera":"Por favor, fique na frente da câmera","There is more than one person in the picture":"Há mais de uma pessoa na foto","Drag & Drop":"Arrastar e soltar","Or":"Ou","browse":"navegar","Supports: JPEG, JPG, PNG":"Suporta: JPEG, JPG, PNG","Release to Upload":"Liberar para fazer upload","file not supported":"arquivo não suportado","Sending Facial Data...":"Enviando dados faciais...","Scanning Face...":"Digitalizando rosto...","Analyzing Facial Attributes...":"Analisando Atributos Faciais...","AI Crafting Report..":"Relatório de criação de IA.","Skin Info":"Informações da pele","Fine Wrinkles":"Rugas Finas","Eye Wrinkles":"Rugas nos olhos","Deep Wrinkles":"Rugas profundas","Dark Circle":"Círculo Negro","Eye Bag":"Bolsa para os olhos","Pores":"Poros","Pigment":"Pigmento","Redness":"Vermelhidão","Oiliness":"Oleosidade","Acnes":"Acne","Acne":"Acne","Skin Health":"Saúde da pele","Instructions":"Instruções","Get Ready to Start Skin Analysis":"Prepare-se para iniciar a análise da pele","Remove the glasses":"Retire os óculos","Clean your face":"Limpe seu rosto","Be in the right light":"Esteja na luz certa","Be neutral face and fix position":"Seja neutro e fixe a posição","Get Started":"Comece","privacy.text":"Descubra como melhorar a sua pele com os produtos certos e uma rotina personalizada para você. Envie sua selfie para recomendações personalizadas e fique tranquilo, sua imagem será excluída após análise","See our":"Veja nosso","Privacy Policy":"política de Privacidade","for more information":"para mais informações","your picture quality is blurry":"a qualidade da sua imagem está desfocada","be wearing glasses":"estar usando óculos","please remove them":"por favor remova-os","Improve photo quality":"Melhorar a qualidade da foto","We noticed you might":"Notamos que você pode","and":"e","for better results":"para melhores resultados","Tips for taking better selfies":"Dicas para tirar selfies melhores","Continue":"Continuar","Generate routine for you":"Gere rotina para você","Re-take":"Retomar","Get recommended products!":"Obtenha produtos recomendados!","Recommendation Products":"Produtos de recomendação","Products That Just Work For you":"Produtos que funcionam para você","My Skin Report":"Meu relatório de pele","Add to cart":"Adicionar ao carrinho","Add again":"Adicionar novamente","Checkout":"Confira","My Routines":"Minhas rotinas","Your":"Seu","Routine":"Rotina","Morning":"Manhã","Night":"Noite","Error":"Erro","The face is not visible in the picture":"O rosto não está visível na foto","The input image is not suitable":"A imagem de entrada não é adequada","An error occurred, please check again":"Ocorreu um erro, verifique novamente","Camera permission denied.":"Permissão da câmera negada.","Unable to access the camera.":"Não é possível acessar a câmera.","validation.blurry":"Sua imagem está borrada","validation.eyeGlass":"Você tem óculos","validation.brightness":"A luz em seu rosto não é adequada","validation.neutralFace":"O rosto não é neutro (você pode sorrir)","Image is not suitable":"A imagem não é adequada","Check how you can improve your skin with the proper product and routine":"Veja como você pode melhorar sua pele com o produto e rotina adequados","There are no products to display":"Não há produtos para exibir","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Comece lavando o rosto para remover sujeira, óleo e impurezas. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Use um toner para equilibrar o pH da pele e remover qualquer resíduo restante.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Aplique um sérum concentrado direcionado a preocupações específicas, como clareador ou antienvelhecimento. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Aplique suavemente o creme para os olhos ao redor da área dos olhos para hidratar e reduzir o inchaço ou as olheiras.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Aplique tratamento local em qualquer área problemática, como acne ou manchas. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Mantenha a hidratação aplicando um hidratante adequado ao seu tipo de pele. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Proteja sua pele dos raios UV prejudiciais usando protetor solar com proteção de amplo espectro. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Aplique um óleo facial leve para reter a umidade e dar à pele um brilho radiante. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Use um creme noturno rico para ajudar a reparar e restaurar a pele enquanto você dorme. ","Cleanser":"Limpador","Toner":"Toner","Serum":"Sérum","Eye Cream":"Creme para os olhos","Spot Treatment":"Tratamento local","Moisturizer":"Hidratante","Sunscreen":"Protetor solar","Face Oil":"Óleo facial","Night Cream":"Creme Noturno","Add all to cart":"Adicionar tudo ao carrinho","All Products":"Todos os produtos","validation.faceObstruction":"Provavelmente há algo na superfície da pele do rosto (cabelo ou piercing)","Product added to cart":"Produto adicionado ao carrinho","products added to cart":"produtos adicionados ao carrinho","You reached the limits of your plan":"Você atingiu os limites do seu plano","Please renew your service for access":"Por favor, renove seu serviço para acesso","See the website’s privacy policy":"Veja a política de privacidade do site"}')},it:{translation:JSON.parse('{"Skin Analysis":"Analisi della pelle","Look Straight":"Guarda dritto","Face Position":"Posizione del viso","Lighting":"Illuminazione","Good":"Bene","Not Good":"Non bene","Bad":"Cattivo","Fair":"Giusto","Powered by":"Offerto da","Your distance is close to the camera":"La tua distanza è vicina alla fotocamera","Keep your face inside the circle":"Mantieni il viso all\'interno del cerchio","Please stand in front of the camera":"Per favore, posizionati davanti alla telecamera","There is more than one person in the picture":"C\'è più di una persona nella foto","Drag & Drop":"Trascina e rilascia","Or":"O","browse":"sfogliare","Supports: JPEG, JPG, PNG":"Supporta: JPEG, JPG, PNG","Release to Upload":"Rilascia per caricare","file not supported":"file non supportato","Sending Facial Data...":"Invio dati facciali...","Scanning Face...":"Scansione volto...","Analyzing Facial Attributes...":"Analisi degli attributi facciali...","AI Crafting Report..":"Rapporto sulla creazione dell\'IA..","Skin Info":"Informazioni sulla pelle","Fine Wrinkles":"Rughe sottili","Eye Wrinkles":"Rughe degli occhi","Deep Wrinkles":"Rughe profonde","Dark Circle":"Cerchio scuro","Eye Bag":"Borsa per gli occhi","Pores":"Pori","Pigment":"Pigmento","Redness":"Arrossamento","Oiliness":"Oleosità","Acnes":"Acne","Acne":"Acne","Skin Health":"Salute della pelle","Instructions":"Istruzioni","Get Ready to Start Skin Analysis":"Preparati a iniziare l\'analisi della pelle","Remove the glasses":"Togliere gli occhiali","Clean your face":"Pulisci il viso","Be in the right light":"Sii nella giusta luce","Be neutral face and fix position":"Sii neutrale e fissa la posizione","Get Started":"Inizia","privacy.text":"Scopri come valorizzare la tua pelle con i prodotti giusti e la routine su misura per te. Carica il tuo selfie per consigli personalizzati e stai certo che la tua immagine verrà eliminata dopo l\'analisi","See our":"Vedi il nostro","Privacy Policy":"politica sulla riservatezza","for more information":"per ulteriori informazioni","your picture quality is blurry":"la qualità dell\'immagine è sfocata","be wearing glasses":"portare gli occhiali","please remove them":"per favore rimuovili","Improve photo quality":"Migliora la qualità delle foto","We noticed you might":"Abbiamo notato che potresti","and":"E","for better results":"per risultati migliori","Tips for taking better selfies":"Suggerimenti per scattare selfie migliori","Continue":"Continuare","Generate routine for you":"Genera routine per te","Re-take":"Riprendere","Get recommended products!":"Ottieni prodotti consigliati!","Recommendation Products":"Prodotti consigliati","Products That Just Work For you":"Prodotti che funzionano proprio per te","My Skin Report":"Il mio resoconto sulla pelle","Add to cart":"Aggiungi al carrello","Add again":"Aggiungi di nuovo","Checkout":"Guardare","My Routines":"Le mie routine","Your":"Tuo","Routine":"Routine","Morning":"Mattina","Night":"Notte","Error":"Errore","The face is not visible in the picture":"Il volto non è visibile nella foto","The input image is not suitable":"L\'immagine in ingresso non è adatta","An error occurred, please check again":"Si è verificato un errore, controlla di nuovo","Camera permission denied.":"Autorizzazione della fotocamera negata.","Unable to access the camera.":"Impossibile accedere alla fotocamera.","validation.blurry":"La tua immagine è sfocata","validation.eyeGlass":"Hai gli occhiali","validation.brightness":"La luce sul tuo viso non è adatta","validation.neutralFace":"Il viso non è neutro (potresti avere un sorriso)","Image is not suitable":"L\'immagine non è adatta","Check how you can improve your skin with the proper product and routine":"Scopri come puoi migliorare la tua pelle con il prodotto e la routine adeguati","There are no products to display":"Non ci sono prodotti da visualizzare","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Inizia lavando il viso per rimuovere sporco, olio e impurità. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Usa un tonico per bilanciare il pH della pelle e rimuovere eventuali residui rimasti.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Applica un siero concentrato mirato a problemi specifici, come schiarente o antietà. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Picchietta delicatamente la crema per gli occhi intorno alla zona degli occhi per idratare e ridurre il gonfiore e le occhiaie.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Applicare un trattamento localizzato su tutte le aree problematiche, come l\'acne o le imperfezioni. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Mantieni l\'idratazione applicando una crema idratante adatta al tuo tipo di pelle. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Proteggi la tua pelle dai dannosi raggi UV utilizzando creme solari con protezione ad ampio spettro. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Applica un olio viso leggero per trattenere l\'umidità e donare alla pelle una luminosità radiosa. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Usa una ricca crema da notte per aiutare a riparare e ripristinare la pelle mentre dormi. ","Cleanser":"Detergente","Toner":"Tonico","Serum":"Siero","Eye Cream":"Crema per gli occhi","Spot Treatment":"Trattamento spot","Moisturizer":"Crema idratante","Sunscreen":"Protezione solare","Face Oil":"Olio per il viso","Night Cream":"Crema da notte","Add all to cart":"Aggiungi tutto al carrello","All Products":"Tutti i prodotti","validation.faceObstruction":"Probabilmente c\'è qualcosa sulla superficie della pelle del viso (peli o piercing)","Product added to cart":"Prodotto aggiunto al carrello","products added to cart":"prodotti aggiunti al carrello","You reached the limits of your plan":"Hai raggiunto i limiti del tuo piano","Please renew your service for access":"Si prega di rinnovare il servizio per l\'accesso","See the website’s privacy policy":"Consulta la privacy policy del sito"}')},sr:{translation:JSON.parse('{"Skin Analysis":"Анализа коже","Look Straight":"Лоок Страигхт","Face Position":"Фаце Поситион","Lighting":"Осветљење","Good":"Добро","Not Good":"Није добро","Bad":"Лоше","Fair":"Сајам","Powered by":"Поверед би","Your distance is close to the camera":"Ваша удаљеност је близу камере","Keep your face inside the circle":"Држите лице унутар круга","Please stand in front of the camera":"Молим вас станите испред камере","There is more than one person in the picture":"На слици је више особа","Drag & Drop":"Превуците и испустите","Or":"Ор","browse":"прегледати","Supports: JPEG, JPG, PNG":"Подржава: ЈПЕГ, ЈПГ, ПНГ","Release to Upload":"Отпустите за отпремање","file not supported":"датотека није подржана","Sending Facial Data...":"Слање података о лицу...","Scanning Face...":"Скенирање лица...","Analyzing Facial Attributes...":"Анализирање атрибута лица...","AI Crafting Report..":"Извештај о изради вештачке интелигенције..","Skin Info":"Информације о кожи","Fine Wrinkles":"Фине Вринклес","Eye Wrinkles":"Боре око очију","Deep Wrinkles":"Дубоке боре","Dark Circle":"Дарк Цирцле","Eye Bag":"Еие Баг","Pores":"Поре","Pigment":"Пигмент","Redness":"Црвенило","Oiliness":"Уљеност","Acnes":"Акне","Acne":"Акне","Skin Health":"Здравље коже","Instructions":"Упутства","Get Ready to Start Skin Analysis":"Припремите се за почетак анализе коже","Remove the glasses":"Скините наочаре","Clean your face":"Очистите лице","Be in the right light":"Будите у правом светлу","Be neutral face and fix position":"Будите неутрални и поправите положај","Get Started":"Започните","privacy.text":"Откријте како да побољшате своју кожу са правим производима и рутином прилагођеном вама. Отпремите свој селфи за персонализоване препоруке и будите сигурни да ће ваша слика бити избрисана након анализе","See our":"Погледајте наше","Privacy Policy":"Политика приватности","for more information":"за више информација","your picture quality is blurry":"квалитет ваше слике је мутан","be wearing glasses":"да носи наочаре","please remove them":"молимо вас да их уклоните","Improve photo quality":"Побољшајте квалитет фотографија","We noticed you might":"Приметили смо да бисте могли","and":"и","for better results":"за боље резултате","Tips for taking better selfies":"Савети за прављење бољих селфија","Continue":"Настави","Generate routine for you":"Генеришите рутину за вас","Re-take":"Поново узми","Get recommended products!":"Набавите препоручене производе!","Recommendation Products":"Препоручени производи","Products That Just Work For you":"Производи који раде за вас","My Skin Report":"Мој извештај о кожи","Add to cart":"Додај у корпу","Add again":"Додајте поново","Checkout":"Цхецкоут","My Routines":"Моје рутине","Your":"Твоје","Routine":"Рутина","Morning":"Јутро","Night":"Ноћ","Error":"Грешка","The face is not visible in the picture":"Лице се не види на слици","The input image is not suitable":"Улазна слика није прикладна","An error occurred, please check again":"Дошло је до грешке, проверите поново","Camera permission denied.":"Дозвола за камеру је одбијена.","Unable to access the camera.":"Није могуће приступити камери.","validation.blurry":"Ваша слика је мутна","validation.eyeGlass":"Имаш наочаре","validation.brightness":"Светло на вашем лицу није прикладно","validation.neutralFace":"Лице није неутрално (можда имате осмех)","Image is not suitable":"Слика није прикладна","Check how you can improve your skin with the proper product and routine":"Проверите како можете побољшати своју кожу одговарајућим производом и рутином","There are no products to display":"Нема производа за приказ","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Почните прањем лица да бисте уклонили прљавштину, уље и нечистоће. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Користите тоник да уравнотежите пХ ваше коже и уклоните све остатке.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Нанесите концентровани серум који циља на специфичне проблеме, као што је посветљивање или против старења. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Нежно утапкајте крему око очију да бисте хидрирали и смањили натеченост или тамне кругове.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Нанесите третман тачака на било која проблематична подручја, као што су акне или флеке. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Закључајте хидратацију наношењем хидратантне креме која одговара вашем типу коже. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Заштитите своју кожу од штетних УВ зрака коришћењем креме за сунчање са заштитом широког спектра. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Нанесите лагано уље за лице како бисте запечатили влагу и дали својој кожи блистав сјај. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Користите богату ноћну крему која ће вам помоћи да поправите и обновите кожу док спавате. ","Cleanser":"Средство за чишћење","Toner":"Тонер","Serum":"Серум","Eye Cream":"Еие Цреам","Spot Treatment":"Спот Треатмент","Moisturizer":"Моистуризер","Sunscreen":"Крема за сунчање","Face Oil":"Уље за лице","Night Cream":"Ноћна крема","Add all to cart":"Додај све у корпу","All Products":"Сви производи","validation.faceObstruction":"Вероватно постоји нешто на површини коже лица (длака или пирсинг)","Product added to cart":"Производ је додат у корпу","products added to cart":"производи додати у корпу","You reached the limits of your plan":"Досегли сте границе свог плана","Please renew your service for access":"Молимо вас да обновите услугу за приступ","See the website’s privacy policy":"Погледајте политику приватности веб локације"}')},hr:{translation:JSON.parse('{"Skin Analysis":"Analiza kože","Look Straight":"Gledaj ravno","Face Position":"Položaj lica","Lighting":"Rasvjeta","Good":"Dobro","Not Good":"Nije dobro","Bad":"Loš","Fair":"Fer","Powered by":"Powered by","Your distance is close to the camera":"Vaša udaljenost je blizu kamere","Keep your face inside the circle":"Držite lice unutar kruga","Please stand in front of the camera":"Molim vas, stanite ispred kamere","There is more than one person in the picture":"Na slici je više od jedne osobe","Drag & Drop":"Povuci i ispusti","Or":"Ili","browse":"pregledavati","Supports: JPEG, JPG, PNG":"Podržava: JPEG, JPG, PNG","Release to Upload":"Otpustite za prijenos","file not supported":"datoteka nije podržana","Sending Facial Data...":"Slanje podataka o licu...","Scanning Face...":"Skeniranje lica...","Analyzing Facial Attributes...":"Analiza atributa lica...","AI Crafting Report..":"Izvješće o AI izradi..","Skin Info":"Informacije o koži","Fine Wrinkles":"Fine bore","Eye Wrinkles":"Bore oko očiju","Deep Wrinkles":"Duboke bore","Dark Circle":"tamni krug","Eye Bag":"Vrećica za oči","Pores":"Pore","Pigment":"Pigment","Redness":"Crvenilo","Oiliness":"Slatkorječivost","Acnes":"Akne","Acne":"Akne","Skin Health":"Zdravlje kože","Instructions":"upute","Get Ready to Start Skin Analysis":"Pripremite se za početak analize kože","Remove the glasses":"Uklonite naočale","Clean your face":"Očistite lice","Be in the right light":"Budite u pravom svjetlu","Be neutral face and fix position":"Budite neutralnog lica i popravite položaj","Get Started":"Započnite","privacy.text":"Otkrijte kako poboljšati svoju kožu pravim proizvodima i rutinom prilagođenom vama. Učitajte svoj selfie za personalizirane preporuke i budite uvjereni da će vaša slika biti izbrisana nakon analize","See our":"Pogledajte naše","Privacy Policy":"Politika privatnosti","for more information":"za više informacija","your picture quality is blurry":"kvaliteta vaše slike je mutna","be wearing glasses":"nositi naočale","please remove them":"molim vas uklonite ih","Improve photo quality":"Poboljšajte kvalitetu fotografije","We noticed you might":"Primijetili smo da možda","and":"i","for better results":"za bolje rezultate","Tips for taking better selfies":"Savjeti za snimanje boljih selfija","Continue":"Nastaviti","Generate routine for you":"Stvorite rutinu za vas","Re-take":"Ponovno snimanje","Get recommended products!":"Nabavite preporučene proizvode!","Recommendation Products":"Preporučeni proizvodi","Products That Just Work For you":"Proizvodi koji rade samo za vas","My Skin Report":"Moje izvješće o koži","Add to cart":"Dodaj u košaricu","Add again":"Dodajte ponovno","Checkout":"Odjava","My Routines":"Moje rutine","Your":"Vaš","Routine":"Rutina","Morning":"Jutro","Night":"Noć","Error":"Greška","The face is not visible in the picture":"Lice se ne vidi na slici","The input image is not suitable":"Ulazna slika nije prikladna","An error occurred, please check again":"Došlo je do pogreške, provjerite ponovno","Camera permission denied.":"Dopuštenje kamere odbijeno.","Unable to access the camera.":"Nije moguće pristupiti kameri.","validation.blurry":"Vaša slika je mutna","validation.eyeGlass":"Imaš naočale","validation.brightness":"Svjetlo na vašem licu nije prikladno","validation.neutralFace":"Lice nije neutralno (Možda imate osmijeh)","Image is not suitable":"Slika nije prikladna","Check how you can improve your skin with the proper product and routine":"Provjerite kako možete poboljšati svoju kožu uz pravilan proizvod i rutinu","There are no products to display":"Nema proizvoda za prikaz","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Započnite pranjem lica kako biste uklonili prljavštinu, masnoću i nečistoće. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Koristite tonik kako biste uravnotežili pH svoje kože i uklonili sve ostatke.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Nanesite koncentrirani serum za određene probleme, poput posvjetljivanja ili sprječavanja starenja. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Nježno utapkajte kremu za područje oko očiju kako biste hidratizirali i smanjili natečenost ili podočnjake.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Nanesite tretman na bilo koje problematično područje, poput akni ili mrlja. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Zadržite hidrataciju nanošenjem hidratantne kreme koja odgovara vašem tipu kože. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Zaštitite svoju kožu od štetnih UV zraka korištenjem krema za sunčanje sa zaštitom širokog spektra. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Nanesite lagano ulje za lice kako biste zadržali vlagu i dali svojoj koži blistav sjaj. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Koristite bogatu noćnu kremu za oporavak i obnavljanje kože dok spavate. ","Cleanser":"Sredstvo za čišćenje","Toner":"Toner","Serum":"Serum","Eye Cream":"Krema za oči","Spot Treatment":"Liječenje mrlja","Moisturizer":"Ovlaživač","Sunscreen":"Krema za sunčanje","Face Oil":"Ulje za lice","Night Cream":"Noćna krema","Add all to cart":"Dodaj sve u košaricu","All Products":"Svi proizvodi","validation.faceObstruction":"Vjerojatno postoji nešto na površini kože lica (dlake ili piercing)","Product added to cart":"Proizvod dodan u košaricu","products added to cart":"proizvoda dodanih u košaricu","You reached the limits of your plan":"Dosegli ste granice svog plana","Please renew your service for access":"Obnovite uslugu za pristup","See the website’s privacy policy":"Pogledajte politiku privatnosti web stranice"}')},tl:{translation:JSON.parse('{"Skin Analysis":"Pagsusuri sa Balat","Look Straight":"Tumingin ng Diretso","Face Position":"Posisyon ng Mukha","Lighting":"Pag-iilaw","Good":"Mabuti","Not Good":"Hindi Maganda","Bad":"Masama","Fair":"Patas","Powered by":"Pinapatakbo ng","Your distance is close to the camera":"Ang iyong distansya ay malapit sa camera","Keep your face inside the circle":"Panatilihin ang iyong mukha sa loob ng bilog","Please stand in front of the camera":"Mangyaring tumayo sa harap ng camera","There is more than one person in the picture":"Mayroong higit sa isang tao sa larawan","Drag & Drop":"I-drag at I-drop","Or":"O kaya","browse":"mag-browse","Supports: JPEG, JPG, PNG":"Sinusuportahan ang: JPEG, JPG, PNG","Release to Upload":"I-release sa Upload","file not supported":"hindi suportado ang file","Sending Facial Data...":"Nagpapadala ng Data sa Mukha...","Scanning Face...":"Ini-scan ang Mukha...","Analyzing Facial Attributes...":"Pagsusuri sa Mga Katangian ng Mukha...","AI Crafting Report..":"Ulat sa AI Crafting..","Skin Info":"Impormasyon sa Balat","Fine Wrinkles":"Mga Pinong Wrinkles","Eye Wrinkles":"Mga Lukot sa Mata","Deep Wrinkles":"Malalim na Wrinkles","Dark Circle":"Madilim na Bilog","Eye Bag":"Eye Bag","Pores":"Mga pores","Pigment":"Pigment","Redness":"Pamumula","Oiliness":"Kalangisan","Acnes":"Acne","Acne":"Acne","Skin Health":"Kalusugan ng Balat","Instructions":"Mga tagubilin","Get Ready to Start Skin Analysis":"Maghanda upang Simulan ang Pagsusuri ng Balat","Remove the glasses":"Tanggalin ang salamin","Clean your face":"Linisin ang iyong mukha","Be in the right light":"Maging nasa tamang liwanag","Be neutral face and fix position":"Maging neutral ang mukha at ayusin ang posisyon","Get Started":"Magsimula","privacy.text":"Tuklasin kung paano pagandahin ang iyong balat gamit ang mga tamang produkto at routine na iniakma para sa iyo. I-upload ang iyong selfie para sa mga personalized na rekomendasyon, at makatitiyak, ang iyong larawan ay tatanggalin pagkatapos ng pagsusuri","See our":"Tingnan ang aming","Privacy Policy":"Patakaran sa Privacy","for more information":"para sa karagdagang impormasyon","your picture quality is blurry":"malabo ang kalidad ng iyong larawan","be wearing glasses":"magsuot ng salamin","please remove them":"mangyaring alisin ang mga ito","Improve photo quality":"Pagbutihin ang kalidad ng larawan","We noticed you might":"Napansin namin na baka","and":"at","for better results":"para sa mas magandang resulta","Tips for taking better selfies":"Mga tip para sa pagkuha ng mas mahusay na mga selfie","Continue":"Magpatuloy","Generate routine for you":"Bumuo ng routine para sa iyo","Re-take":"Muling kunin","Get recommended products!":"Kumuha ng mga inirerekomendang produkto!","Recommendation Products":"Mga Produktong Rekomendasyon","Products That Just Work For you":"Mga Produktong Gumagana Lang Para sa Iyo","My Skin Report":"Ulat sa Balat Ko","Add to cart":"Idagdag sa cart","Add again":"Idagdag muli","Checkout":"Checkout","My Routines":"Aking Mga Gawain","Your":"Iyong","Routine":"nakagawian","Morning":"Umaga","Night":"Gabi","Error":"Error","The face is not visible in the picture":"Ang mukha ay hindi nakikita sa larawan","The input image is not suitable":"Ang input na imahe ay hindi angkop","An error occurred, please check again":"May naganap na error, pakisuri muli","Camera permission denied.":"Tinanggihan ang pahintulot sa camera.","Unable to access the camera.":"Hindi ma-access ang camera.","validation.blurry":"Malabo ang iyong larawan","validation.eyeGlass":"May salamin ka","validation.brightness":"Ang liwanag sa iyong mukha ay hindi angkop","validation.neutralFace":"Hindi neutral ang mukha (Maaaring may ngiti ka)","Image is not suitable":"Hindi angkop ang larawan","Check how you can improve your skin with the proper product and routine":"Suriin kung paano mo mapapabuti ang iyong balat sa tamang produkto at gawain","There are no products to display":"Walang mga produktong ipapakita","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Magsimula sa pamamagitan ng paghuhugas ng iyong mukha upang alisin ang dumi, langis, at mga dumi. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Gumamit ng toner para balansehin ang pH ng iyong balat at alisin ang anumang natitirang nalalabi.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Mag-apply ng concentrated serum na nagta-target ng mga partikular na alalahanin, tulad ng pagpapaputi o anti-aging. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Dahan-dahang i-pat ang eye cream sa paligid ng bahagi ng mata upang mag-hydrate at mabawasan ang puffiness o dark circles.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Mag-apply ng spot treatment sa anumang lugar na may problema, tulad ng acne o blemishes. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"I-lock ang hydration sa pamamagitan ng paglalagay ng moisturizer na angkop sa uri ng iyong balat. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Protektahan ang iyong balat mula sa mapaminsalang UV rays sa pamamagitan ng paggamit ng sunscreen na may malawak na spectrum na proteksyon. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Mag-apply ng magaan na face oil upang ma-seal ang moisture at bigyan ang iyong balat ng maningning na glow. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Gumamit ng masaganang night cream para makatulong sa pag-aayos at pagpapanumbalik ng iyong balat habang natutulog ka. ","Cleanser":"Panlinis","Toner":"Toner","Serum":"Serum","Eye Cream":"Cream sa Mata","Spot Treatment":"Paggamot sa Spot","Moisturizer":"Moisturizer","Sunscreen":"Sunscreen","Face Oil":"Langis sa Mukha","Night Cream":"Cream sa Gabi","Add all to cart":"Idagdag ang lahat sa cart","All Products":"Lahat ng Produkto","validation.faceObstruction":"Marahil ay mayroong isang bagay sa ibabaw ng balat ng mukha (buhok o butas)","Product added to cart":"Idinagdag ang produkto sa cart","products added to cart":"mga produktong idinagdag sa cart","You reached the limits of your plan":"Naabot mo ang mga limitasyon ng iyong plano","Please renew your service for access":"Mangyaring i-renew ang iyong serbisyo para sa pag-access","See the website’s privacy policy":"Tingnan ang patakaran sa privacy ng website"}')},et:{translation:JSON.parse('{"Skin Analysis":"Naha analüüs","Look Straight":"Vaata otse","Face Position":"Näo asend","Lighting":"Valgustus","Good":"Hea","Not Good":"Pole hea","Bad":"Halb","Fair":"Õiglane","Powered by":"Toiteallikaks","Your distance is close to the camera":"Teie kaugus on kaamerale lähedal","Keep your face inside the circle":"Hoidke oma nägu ringi sees","Please stand in front of the camera":"Palun seisa kaamera ees","There is more than one person in the picture":"Pildil on rohkem kui üks inimene","Drag & Drop":"Drag & Drop","Or":"Või","browse":"sirvida","Supports: JPEG, JPG, PNG":"Toetab: JPEG, JPG, PNG","Release to Upload":"Vabastage üleslaadimiseks","file not supported":"faili ei toetata","Sending Facial Data...":"Näoandmete saatmine...","Scanning Face...":"Näo skannimine...","Analyzing Facial Attributes...":"Näo omaduste analüüsimine...","AI Crafting Report..":"AI meisterdamisaruanne..","Skin Info":"Naha teave","Fine Wrinkles":"Peened kortsud","Eye Wrinkles":"Silma kortsud","Deep Wrinkles":"Sügavad kortsud","Dark Circle":"Tume ring","Eye Bag":"Silma kott","Pores":"Poorid","Pigment":"Pigment","Redness":"Punetus","Oiliness":"Õlisust","Acnes":"Akne","Acne":"Akne","Skin Health":"Naha tervis","Instructions":"Juhised","Get Ready to Start Skin Analysis":"Olge valmis alustama nahaanalüüsi","Remove the glasses":"Eemaldage prillid","Clean your face":"Puhastage oma nägu","Be in the right light":"Olge õiges valguses","Be neutral face and fix position":"Olge neutraalne nägu ja fikseerige asend","Get Started":"Alustage","privacy.text":"Avastage, kuidas parandada oma nahka teile kohandatud õigete toodete ja rutiiniga. Isikupärastatud soovituste saamiseks laadige oma selfie üles ja võite olla kindel, teie pilt kustutatakse pärast analüüsi","See our":"Vaadake meie","Privacy Policy":"Privaatsuspoliitika","for more information":"lisateabe saamiseks","your picture quality is blurry":"teie pildikvaliteet on udune","be wearing glasses":"prille kandma","please remove them":"palun eemaldage need","Improve photo quality":"Parandage foto kvaliteeti","We noticed you might":"Märkasime, et võite","and":"ja","for better results":"paremate tulemuste saamiseks","Tips for taking better selfies":"Näpunäiteid paremate selfide tegemiseks","Continue":"Jätka","Generate routine for you":"Looge teile rutiin","Re-take":"Võtke uuesti","Get recommended products!":"Hankige soovitatud tooteid!","Recommendation Products":"Soovituslikud tooted","Products That Just Work For you":"Tooted, mis töötavad just teie jaoks","My Skin Report":"Minu naha aruanne","Add to cart":"Lisa ostukorvi","Add again":"Lisa uuesti","Checkout":"Kassasse","My Routines":"Minu rutiinid","Your":"Sinu","Routine":"Rutiinne","Morning":"Hommik","Night":"Öö","Error":"Viga","The face is not visible in the picture":"Pildil ei ole nägu näha","The input image is not suitable":"Sisendpilt ei sobi","An error occurred, please check again":"Ilmnes viga, kontrollige uuesti","Camera permission denied.":"Kaamera luba on keelatud.","Unable to access the camera.":"Kaamerale ei pääse juurde.","validation.blurry":"Teie pilt on udune","validation.eyeGlass":"Sul on prillid","validation.brightness":"Valgus näole ei sobi","validation.neutralFace":"Nägu ei ole neutraalne (teil võib olla naeratus)","Image is not suitable":"Pilt ei sobi","Check how you can improve your skin with the proper product and routine":"Kontrollige, kuidas saate õige toote ja rutiini abil oma nahka parandada","There are no products to display":"Kuvamiseks pole tooteid","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Alustage näo pesemisega, et eemaldada mustus, õli ja mustus. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Kasutage toonikut, et tasakaalustada naha pH-taset ja eemaldada kõik järelejäänud jäägid.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Kasutage kontsentreeritud seerumit, mis on suunatud konkreetsetele probleemidele, nagu sära andev või vananemisvastane toime. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Patsutage silmaümbruskreemi õrnalt ümber silmaümbruse, et niisutada ja vähendada turseid või tumedaid ringe.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Kandke punkthooldust kõikidele probleemsetele kohtadele, nagu akne või plekid. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Lukustage hüdratsioon, kandes nahatüübile sobivat niisutajat. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Kaitske oma nahka kahjulike UV-kiirte eest, kasutades laia spektriga päikesekaitsekreemi. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Kandke kerget näoõli, et suletada niiskust ja anda nahale särav sära. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Kasutage rikkalikku öökreemi, mis aitab magada nahka parandada ja taastada. ","Cleanser":"Puhastusvahend","Toner":"Tooner","Serum":"Seerum","Eye Cream":"Silmaümbruskreem","Spot Treatment":"Kohapealne ravi","Moisturizer":"Niisutaja","Sunscreen":"Päikesekaitsekreem","Face Oil":"Näoõli","Night Cream":"Öökreem","Add all to cart":"Lisa kõik ostukorvi","All Products":"Kõik tooted","validation.faceObstruction":"Tõenäoliselt on näonaha pinnal midagi (juuksed või augustamine)","Product added to cart":"Toode lisatud ostukorvi","products added to cart":"tooted lisatud ostukorvi","You reached the limits of your plan":"Jõudsite oma plaani piirini","Please renew your service for access":"Juurdepääsu saamiseks uuendage oma teenust","See the website’s privacy policy":"Vaadake veebisaidi privaatsuspoliitikat"}')},fr:{translation:JSON.parse('{"Skin Analysis":"Analyse de la peau","Look Straight":"Regardez droit","Face Position":"Position du visage","Lighting":"Éclairage","Good":"Bien","Not Good":"Pas bon","Bad":"Mauvais","Fair":"Équitable","Powered by":"Alimenté par","Your distance is close to the camera":"Votre distance est proche de la caméra","Keep your face inside the circle":"Gardez votre visage à l\'intérieur du cercle","Please stand in front of the camera":"Veuillez vous tenir devant la caméra","There is more than one person in the picture":"Il y a plus d\'une personne sur la photo","Drag & Drop":"Glisser-déposer","Or":"Ou","browse":"parcourir","Supports: JPEG, JPG, PNG":"Prise en charge : JPEG, JPG, PNG","Release to Upload":"Libérer pour télécharger","file not supported":"fichier non pris en charge","Sending Facial Data...":"Envoi de données faciales...","Scanning Face...":"Numérisation du visage...","Analyzing Facial Attributes...":"Analyse des attributs du visage...","AI Crafting Report..":"Rapport de création d\'IA.","Skin Info":"Informations sur la peau","Fine Wrinkles":"Rides fines","Eye Wrinkles":"Rides des yeux","Deep Wrinkles":"Rides profondes","Dark Circle":"Cercle noir","Eye Bag":"Sac pour les yeux","Pores":"Pores","Pigment":"Pigment","Redness":"Rougeur","Oiliness":"Onctuosité","Acnes":"Acné","Acne":"Acné","Skin Health":"Santé de la peau","Instructions":"Instructions","Get Ready to Start Skin Analysis":"Préparez-vous à commencer l\'analyse de la peau","Remove the glasses":"Retirez les lunettes","Clean your face":"Nettoyez votre visage","Be in the right light":"Soyez sous le bon jour","Be neutral face and fix position":"Soyez neutre et fixez votre position","Get Started":"Commencer","privacy.text":"Découvrez comment sublimer votre peau avec les bons produits et une routine adaptée à vos besoins. Téléchargez votre selfie pour des recommandations personnalisées, et rassurez-vous, votre image sera supprimée après analyse","See our":"Voir notre","Privacy Policy":"politique de confidentialité","for more information":"pour plus d\'informations","your picture quality is blurry":"la qualité de votre image est floue","be wearing glasses":"porter des lunettes","please remove them":"veuillez les supprimer","Improve photo quality":"Améliorer la qualité des photos","We noticed you might":"Nous avons remarqué que vous pourriez","and":"et","for better results":"pour de meilleurs résultats","Tips for taking better selfies":"Conseils pour prendre de meilleurs selfies","Continue":"Continuer","Generate routine for you":"Générez une routine pour vous","Re-take":"Reprendre","Get recommended products!":"Obtenez des produits recommandés !","Recommendation Products":"Produits recommandés","Products That Just Work For you":"Des produits qui fonctionnent juste pour vous","My Skin Report":"Mon rapport sur la peau","Add to cart":"Ajouter au panier","Add again":"Ajouter à nouveau","Checkout":"Vérifier","My Routines":"Mes routines","Your":"Ton","Routine":"Routine","Morning":"Matin","Night":"Nuit","Error":"Erreur","The face is not visible in the picture":"Le visage n\'est pas visible sur la photo","The input image is not suitable":"L\'image d\'entrée ne convient pas","An error occurred, please check again":"Une erreur s\'est produite, veuillez vérifier à nouveau","Camera permission denied.":"Autorisation de la caméra refusée.","Unable to access the camera.":"Impossible d\'accéder à la caméra.","validation.blurry":"Votre image est floue","validation.eyeGlass":"tu as des lunettes","validation.brightness":"La lumière sur votre visage n\'est pas adaptée","validation.neutralFace":"Le visage n\'est pas neutre (Vous pouvez avoir un sourire)","Image is not suitable":"L\'image ne convient pas","Check how you can improve your skin with the proper product and routine":"Vérifiez comment vous pouvez améliorer votre peau avec le produit et la routine appropriés","There are no products to display":"Il n\'y a aucun produit à afficher","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Commencez par vous laver le visage pour éliminer la saleté, l’huile et les impuretés. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Utilisez un tonique pour équilibrer le pH de votre peau et éliminer tout résidu restant.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Appliquez un sérum concentré ciblant des préoccupations spécifiques, comme éclaircissantes ou anti-âge. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Appliquez doucement la crème pour les yeux autour du contour des yeux pour hydrater et réduire les poches ou les cernes.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Appliquez un traitement localisé sur toutes les zones à problèmes, telles que l\'acné ou les imperfections. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Conservez l\'hydratation en appliquant une crème hydratante adaptée à votre type de peau. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Protégez votre peau des rayons UV nocifs en utilisant un écran solaire offrant une protection à large spectre. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Appliquez une huile légère pour le visage pour retenir l’humidité et donner à votre peau un éclat radieux. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Utilisez une crème de nuit riche pour aider à réparer et restaurer votre peau pendant que vous dormez. ","Cleanser":"Nettoyant","Toner":"Tonique","Serum":"Sérum","Eye Cream":"Crème pour les yeux","Spot Treatment":"Traitement localisé","Moisturizer":"Crème hydratante","Sunscreen":"Crème solaire","Face Oil":"Huile Visage","Night Cream":"Crème de Nuit","Add all to cart":"Tout ajouter au panier","All Products":"Tous les produits","validation.faceObstruction":"Il y a probablement quelque chose à la surface de la peau du visage (cheveux ou piercing)","Product added to cart":"Produit ajouté au panier","products added to cart":"produits ajoutés au panier","You reached the limits of your plan":"Vous avez atteint les limites de votre plan","Please renew your service for access":"Veuillez renouveler votre service pour y accéder","See the website’s privacy policy":"Voir la politique de confidentialité du site"}')},el:{translation:JSON.parse('{"Skin Analysis":"Ανάλυση δέρματος","Look Straight":"Κοιτάξτε ευθεία","Face Position":"Θέση προσώπου","Lighting":"Φωτισμός","Good":"Καλός","Not Good":"Δεν είναι καλό","Bad":"Κακός","Fair":"Εκθεση","Powered by":"Τροφοδοτείται από","Your distance is close to the camera":"Η απόσταση σας είναι κοντά στην κάμερα","Keep your face inside the circle":"Κρατήστε το πρόσωπό σας μέσα στον κύκλο","Please stand in front of the camera":"Παρακαλώ σταθείτε μπροστά στην κάμερα","There is more than one person in the picture":"Υπάρχουν περισσότερα από ένα άτομα στην εικόνα","Drag & Drop":"Μεταφορά και απόθεση","Or":"Ή","browse":"ξεφυλλίζω","Supports: JPEG, JPG, PNG":"Υποστηρίζει: JPEG, JPG, PNG","Release to Upload":"Αφήστε για μεταφόρτωση","file not supported":"αρχείο δεν υποστηρίζεται","Sending Facial Data...":"Αποστολή δεδομένων προσώπου...","Scanning Face...":"Σάρωση προσώπου...","Analyzing Facial Attributes...":"Ανάλυση ιδιοτήτων προσώπου...","AI Crafting Report..":"Αναφορά τεχνητής νοημοσύνης..","Skin Info":"Πληροφορίες δέρματος","Fine Wrinkles":"Λεπτές ρυτίδες","Eye Wrinkles":"Ρυτίδες ματιών","Deep Wrinkles":"Βαθιές ρυτίδες","Dark Circle":"Σκοτεινός Κύκλος","Eye Bag":"Τσάντα ματιών","Pores":"Πόροι","Pigment":"Χρώμα","Redness":"Ερυθρότητα","Oiliness":"Ελλαιώδες","Acnes":"Ακμή","Acne":"Ακμή","Skin Health":"Υγεία του δέρματος","Instructions":"Οδηγίες","Get Ready to Start Skin Analysis":"Ετοιμαστείτε να ξεκινήσετε την ανάλυση δέρματος","Remove the glasses":"Αφαιρέστε τα γυαλιά","Clean your face":"Καθαρίστε το πρόσωπό σας","Be in the right light":"Να είστε στο σωστό φως","Be neutral face and fix position":"Να είστε ουδέτερο πρόσωπο και να σταθεροποιήσετε τη θέση","Get Started":"Ξεκινήστε","privacy.text":"Ανακαλύψτε πώς να βελτιώσετε το δέρμα σας με τα κατάλληλα προϊόντα και τη ρουτίνα που είναι προσαρμοσμένη για εσάς. Ανεβάστε τη selfie σας για εξατομικευμένες προτάσεις και να είστε σίγουροι ότι η εικόνα σας θα διαγραφεί μετά την ανάλυση","See our":"Δείτε το δικό μας","Privacy Policy":"Πολιτική Απορρήτου","for more information":"για περισσότερες πληροφορίες","your picture quality is blurry":"η ποιότητα της εικόνας σας είναι θολή","be wearing glasses":"να φοράτε γυαλιά","please remove them":"παρακαλώ αφαιρέστε τα","Improve photo quality":"Βελτιώστε την ποιότητα της φωτογραφίας","We noticed you might":"Παρατηρήσαμε ότι μπορείς","and":"και","for better results":"για καλύτερα αποτελέσματα","Tips for taking better selfies":"Συμβουλές για καλύτερες selfies","Continue":"Συνεχίζω","Generate routine for you":"Δημιουργήστε ρουτίνα για εσάς","Re-take":"Ξαναπαίρνω","Get recommended products!":"Λάβετε προτεινόμενα προϊόντα!","Recommendation Products":"Προϊόντα Σύστασης","Products That Just Work For you":"Προϊόντα που λειτουργούν μόνο για εσάς","My Skin Report":"My Skin Report","Add to cart":"Προσθήκη στο καλάθι","Add again":"Προσθέστε ξανά","Checkout":"Αποχώρηση","My Routines":"Οι ρουτίνες μου","Your":"Σας","Routine":"Ρουτίνα","Morning":"Πρωί","Night":"Νύχτα","Error":"Σφάλμα","The face is not visible in the picture":"Το πρόσωπο δεν φαίνεται στην εικόνα","The input image is not suitable":"Η εικόνα εισόδου δεν είναι κατάλληλη","An error occurred, please check again":"Παρουσιάστηκε σφάλμα, ελέγξτε ξανά","Camera permission denied.":"Η άδεια κάμερας απορρίφθηκε.","Unable to access the camera.":"Δεν είναι δυνατή η πρόσβαση στην κάμερα.","validation.blurry":"Η εικόνα σας είναι θολή","validation.eyeGlass":"Έχεις γυαλιά","validation.brightness":"Το φως στο πρόσωπό σας δεν είναι κατάλληλο","validation.neutralFace":"Το πρόσωπο δεν είναι ουδέτερο (Μπορεί να έχετε ένα χαμόγελο)","Image is not suitable":"Η εικόνα δεν είναι κατάλληλη","Check how you can improve your skin with the proper product and routine":"Ελέγξτε πώς μπορείτε να βελτιώσετε το δέρμα σας με το κατάλληλο προϊόν και τη ρουτίνα","There are no products to display":"Δεν υπάρχουν προϊόντα προς εμφάνιση","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Ξεκινήστε πλένοντας το πρόσωπό σας για να αφαιρέσετε ρύπους, λάδια και ακαθαρσίες. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Χρησιμοποιήστε ένα τονωτικό για να εξισορροπήσετε το pH του δέρματός σας και να αφαιρέσετε τυχόν υπολείμματα.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Εφαρμόστε έναν συμπυκνωμένο ορό που στοχεύει σε συγκεκριμένες ανησυχίες, όπως λεύκανση ή αντιγήρανση. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Απλώστε απαλά την κρέμα ματιών γύρω από την περιοχή των ματιών για να ενυδατώσει και να μειώσει το πρήξιμο ή τους μαύρους κύκλους.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Εφαρμόστε θεραπεία με σημεία σε οποιεσδήποτε προβληματικές περιοχές, όπως ακμή ή κηλίδες. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Κλείστε την ενυδάτωση εφαρμόζοντας μια ενυδατική κρέμα που ταιριάζει στον τύπο του δέρματός σας. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Προστατέψτε το δέρμα σας από τις βλαβερές ακτίνες UV χρησιμοποιώντας αντηλιακό με προστασία ευρέος φάσματος. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Απλώστε ένα ελαφρύ λάδι προσώπου για να σφραγίσει την υγρασία και να δώσει στο δέρμα σας μια λαμπερή λάμψη. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Χρησιμοποιήστε μια πλούσια κρέμα νύχτας για να σας βοηθήσει να επανορθώσετε και να αποκαταστήσετε το δέρμα σας ενώ κοιμάστε. ","Cleanser":"Καθαριστικό","Toner":"Τονίζων","Serum":"Ορρός","Eye Cream":"Κρέμα Ματιών","Spot Treatment":"Θεραπεία κηλίδων","Moisturizer":"Ενυδατική κρέμα","Sunscreen":"Αντηλιακό","Face Oil":"Λάδι προσώπου","Night Cream":"Κρέμα Νύχτας","Add all to cart":"Προσθήκη όλων στο καλάθι","All Products":"Όλα τα Προϊόντα","validation.faceObstruction":"Πιθανότατα υπάρχει κάτι στην επιφάνεια του δέρματος του προσώπου (τρίχες ή τρύπημα)","Product added to cart":"Το προϊόν προστέθηκε στο καλάθι","products added to cart":"προϊόντα που προστέθηκαν στο καλάθι","You reached the limits of your plan":"Φτάσατε στα όρια του σχεδίου σας","Please renew your service for access":"Ανανεώστε την υπηρεσία σας για πρόσβαση","See the website’s privacy policy":"Δείτε την πολιτική απορρήτου του ιστότοπου"}')},bg:{translation:JSON.parse('{"Skin Analysis":"Анализ на кожата","Look Straight":"Гледай направо","Face Position":"Позиция на лицето","Lighting":"Осветление","Good":"добре","Not Good":"Не е добре","Bad":"лошо","Fair":"Справедлива","Powered by":"Осъществено от","Your distance is close to the camera":"Разстоянието ви е близо до камерата","Keep your face inside the circle":"Дръжте лицето си вътре в кръга","Please stand in front of the camera":"Моля, застанете пред камерата","There is more than one person in the picture":"На снимката има повече от един човек","Drag & Drop":"Плъзнете и пуснете","Or":"или","browse":"разглеждате","Supports: JPEG, JPG, PNG":"Поддържа: JPEG, JPG, PNG","Release to Upload":"Освободете за качване","file not supported":"файлът не се поддържа","Sending Facial Data...":"Изпращане на лицеви данни...","Scanning Face...":"Сканиране на лицето...","Analyzing Facial Attributes...":"Анализиране на характеристиките на лицето...","AI Crafting Report..":"Доклад за AI Crafting..","Skin Info":"Информация за кожата","Fine Wrinkles":"Фини бръчки","Eye Wrinkles":"Очни бръчки","Deep Wrinkles":"Дълбоки бръчки","Dark Circle":"тъмен кръг","Eye Bag":"Торбичка под очите","Pores":"Пори","Pigment":"Пигмент","Redness":"Зачервяване","Oiliness":"Омазняване","Acnes":"акне","Acne":"акне","Skin Health":"Здраве на кожата","Instructions":"Инструкции","Get Ready to Start Skin Analysis":"Пригответе се да започнете анализ на кожата","Remove the glasses":"Махнете очилата","Clean your face":"Почистете лицето си","Be in the right light":"Бъдете в правилната светлина","Be neutral face and fix position":"Бъдете неутрално лице и фиксирайте позицията","Get Started":"Започнете","privacy.text":"Открийте как да подобрите кожата си с правилните продукти и рутина, съобразена с вас. Качете вашето селфи за персонализирани препоръки и бъдете сигурни, че вашето изображение ще бъде изтрито след анализ","See our":"Вижте нашите","Privacy Policy":"Политика за поверителност","for more information":"за повече информация","your picture quality is blurry":"качеството на картината ви е размазано","be wearing glasses":"да носите очила","please remove them":"моля, премахнете ги","Improve photo quality":"Подобрете качеството на снимките","We noticed you might":"Забелязахме, че може","and":"и","for better results":"за по-добри резултати","Tips for taking better selfies":"Съвети за правене на по-добри селфита","Continue":"Продължи","Generate routine for you":"Създайте рутина за вас","Re-take":"Повторно вземане","Get recommended products!":"Вземете препоръчани продукти!","Recommendation Products":"Препоръчителни продукти","Products That Just Work For you":"Продукти, които работят само за вас","My Skin Report":"Моят доклад за кожата","Add to cart":"Добавяне в количката","Add again":"Добавете отново","Checkout":"Плащане","My Routines":"Моите съчетания","Your":"Вашият","Routine":"Рутина","Morning":"сутрин","Night":"нощ","Error":"Грешка","The face is not visible in the picture":"Лицето не се вижда на снимката","The input image is not suitable":"Въведеното изображение не е подходящо","An error occurred, please check again":"Възникна грешка, моля, проверете отново","Camera permission denied.":"Разрешението за камерата е отказано.","Unable to access the camera.":"Няма достъп до камерата.","validation.blurry":"Вашето изображение е размазано","validation.eyeGlass":"Имате очила","validation.brightness":"Светлината на лицето ви не е подходяща","validation.neutralFace":"Лицето не е неутрално (може да имате усмивка)","Image is not suitable":"Изображението не е подходящо","Check how you can improve your skin with the proper product and routine":"Вижте как можете да подобрите кожата си с правилния продукт и рутина","There are no products to display":"Няма продукти за показване","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Започнете с измиване на лицето, за да премахнете мръсотията, маслото и примесите. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Използвайте тоник, за да балансирате рН на кожата си и да премахнете всички остатъци.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Нанесете концентриран серум, насочен към специфични проблеми, като изсветляване или против стареене. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Внимателно потупвайте околоочния крем около очите, за да хидратирате и намалите подпухналостта или тъмните кръгове.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Нанесете точково лечение върху всякакви проблемни зони, като акне или петна. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Заключете хидратацията, като нанесете овлажнител, който отговаря на вашия тип кожа. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Защитете кожата си от вредните UV лъчи, като използвате слънцезащитен крем с широкоспектърна защита. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Нанесете леко масло за лице, за да запечатате влагата и да придадете на кожата си сияйна светлина. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Използвайте богат нощен крем, за да възстановите кожата си, докато спите. ","Cleanser":"Почистващо средство","Toner":"Тонер","Serum":"Серум","Eye Cream":"Околоочен крем","Spot Treatment":"Лечение на петна","Moisturizer":"Овлажнител","Sunscreen":"Слънцезащитен крем","Face Oil":"Масло за лице","Night Cream":"Нощен крем","Add all to cart":"Добавете всички в количката","All Products":"Всички продукти","validation.faceObstruction":"Вероятно има нещо на повърхността на кожата на лицето (косми или пиърсинг)","Product added to cart":"Продуктът е добавен в количката","products added to cart":"продукти, добавени в количката","You reached the limits of your plan":"Достигнахте границите на вашия план","Please renew your service for access":"Моля, подновете услугата си за достъп","See the website’s privacy policy":"Вижте политиката за поверителност на уебсайта"}')},ro:{translation:JSON.parse('{"Skin Analysis":"Analiza pielii","Look Straight":"Uită-te drept","Face Position":"Poziția feței","Lighting":"Iluminat","Good":"Bun","Not Good":"Nu e bun","Bad":"Rău","Fair":"Corect","Powered by":"Cu sprijinul","Your distance is close to the camera":"Distanța ta este aproape de cameră","Keep your face inside the circle":"Ține-ți fața în interiorul cercului","Please stand in front of the camera":"Vă rugăm să stați în fața camerei","There is more than one person in the picture":"Există mai mult de o persoană în imagine","Drag & Drop":"Trageți și plasați","Or":"Sau","browse":"răsfoiește","Supports: JPEG, JPG, PNG":"Suporta: JPEG, JPG, PNG","Release to Upload":"Eliberați pentru a încărca","file not supported":"fișierul nu este acceptat","Sending Facial Data...":"Se trimit date faciale...","Scanning Face...":"Se scanează chipul...","Analyzing Facial Attributes...":"Se analizează atributele faciale...","AI Crafting Report..":"Raport despre crearea AI..","Skin Info":"Informații despre piele","Fine Wrinkles":"Riduri fine","Eye Wrinkles":"Ridurile ochilor","Deep Wrinkles":"Riduri adânci","Dark Circle":"Cercul întunecat","Eye Bag":"Geanta pentru ochi","Pores":"Porii","Pigment":"Pigment","Redness":"Roşeaţă","Oiliness":"Oleositate","Acnes":"Acnee","Acne":"Acnee","Skin Health":"Sănătatea pielii","Instructions":"Instrucţiuni","Get Ready to Start Skin Analysis":"Pregătește-te pentru a începe analiza pielii","Remove the glasses":"Scoateți ochelarii","Clean your face":"Curățați-vă fața","Be in the right light":"Fii în lumina potrivită","Be neutral face and fix position":"Fiți neutru față și fixați poziția","Get Started":"Începeți","privacy.text":"Descoperă cum să-ți îmbunătățești pielea cu produsele potrivite și rutina potrivită pentru tine. Încarcă-ți selfie-ul pentru recomandări personalizate și fii sigur că imaginea ta va fi ștearsă după analiză","See our":"Vezi noastre","Privacy Policy":"Politica de confidențialitate","for more information":"pentru mai multe informații","your picture quality is blurry":"calitatea imaginii dvs. este neclară","be wearing glasses":"să poarte ochelari","please remove them":"vă rog să le eliminați","Improve photo quality":"Îmbunătățiți calitatea fotografiei","We noticed you might":"Am observat că s-ar putea","and":"şi","for better results":"pentru rezultate mai bune","Tips for taking better selfies":"Sfaturi pentru a face selfie-uri mai bune","Continue":"Continua","Generate routine for you":"Generați rutină pentru dvs","Re-take":"Relua","Get recommended products!":"Obțineți produse recomandate!","Recommendation Products":"Produse de recomandare","Products That Just Work For you":"Produse care funcționează doar pentru tine","My Skin Report":"Raportul meu de piele","Add to cart":"Adaugă in coş","Add again":"Adaugă din nou","Checkout":"Verifică","My Routines":"Rutinele mele","Your":"Dvs","Routine":"Rutină","Morning":"Dimineaţă","Night":"Noapte","Error":"Eroare","The face is not visible in the picture":"Fața nu este vizibilă în imagine","The input image is not suitable":"Imaginea de intrare nu este potrivită","An error occurred, please check again":"A apărut o eroare, vă rugăm să verificați din nou","Camera permission denied.":"Permisiunea camerei a fost refuzată.","Unable to access the camera.":"Nu se poate accesa camera.","validation.blurry":"Imaginea ta este neclară","validation.eyeGlass":"Ai ochelari","validation.brightness":"Lumina de pe fata ta nu este potrivita","validation.neutralFace":"Fața nu este neutră (poate avea un zâmbet)","Image is not suitable":"Imaginea nu este potrivită","Check how you can improve your skin with the proper product and routine":"Verificați cum vă puteți îmbunătăți pielea cu produsul și rutina adecvate","There are no products to display":"Nu există produse de afișat","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Începeți prin a vă spăla fața pentru a îndepărta murdăria, uleiul și impuritățile. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Utilizați un toner pentru a echilibra pH-ul pielii și pentru a elimina orice reziduuri rămase.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Aplicați un ser concentrat care vizează probleme specifice, cum ar fi strălucirea sau anti-îmbătrânire. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Lipiți ușor crema de ochi în jurul zonei ochilor pentru a hidrata și a reduce umflarea sau cearcănele.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Aplicați tratament la fața locului pe orice zone cu probleme, cum ar fi acneea sau petele. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Asigurați-vă hidratarea aplicând o cremă hidratantă care se potrivește tipului dvs. de piele. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Protejați-vă pielea de razele UV dăunătoare utilizând protecție solară cu protecție cu spectru larg. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Aplicați un ulei ușor de față pentru a etanșa umiditatea și pentru a oferi pielii o strălucire strălucitoare. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Utilizați o cremă bogată de noapte pentru a vă ajuta să vă reparați și să vă refaceți pielea în timp ce dormiți. ","Cleanser":"Demachiant","Toner":"Toner","Serum":"Ser","Eye Cream":"Crema de ochi","Spot Treatment":"Tratamentul punctual","Moisturizer":"Cremă hidratantă","Sunscreen":"Cremă de protecție solară","Face Oil":"Ulei de față","Night Cream":"Crema de noapte","Add all to cart":"Adăugați totul în coș","All Products":"Toate produsele","validation.faceObstruction":"Probabil că există ceva pe suprafața pielii feței (păr sau piercing)","Product added to cart":"Produs adăugat în coș","products added to cart":"produse adăugate în coș","You reached the limits of your plan":"Ai atins limitele planului tău","Please renew your service for access":"Vă rugăm să vă reînnoiți serviciul pentru acces","See the website’s privacy policy":"Consultați politica de confidențialitate a site-ului"}')},hi:{translation:JSON.parse('{"Skin Analysis":"त्वचा विश्लेषण","Look Straight":"सीधे देखना","Face Position":"चेहरे की स्थिति","Lighting":"प्रकाश","Good":"अच्छा","Not Good":"अच्छा नहीं है","Bad":"खराब","Fair":"गोरा","Powered by":"द्वारा संचालित","Your distance is close to the camera":"आपकी दूरी कैमरे के करीब है","Keep your face inside the circle":"अपना चेहरा गोले के अंदर रखें","Please stand in front of the camera":"कृपया कैमरे के सामने खड़े हों","There is more than one person in the picture":"चित्र में एक से अधिक व्यक्ति हैं","Drag & Drop":"खींचें और छोड़ें","Or":"या","browse":"ब्राउज़","Supports: JPEG, JPG, PNG":"समर्थन करता है: जेपीईजी, जेपीजी, पीएनजी","Release to Upload":"अपलोड करने के लिए जारी करें","file not supported":"फ़ाइल समर्थित नहीं है","Sending Facial Data...":"चेहरे का डेटा भेजा जा रहा है...","Scanning Face...":"चेहरा स्कैन किया जा रहा है...","Analyzing Facial Attributes...":"चेहरे की विशेषताओं का विश्लेषण...","AI Crafting Report..":"एआई क्राफ्टिंग रिपोर्ट..","Skin Info":"त्वचा की जानकारी","Fine Wrinkles":"महीन झुर्रियाँ","Eye Wrinkles":"आँखों की झुर्रियाँ","Deep Wrinkles":"गहरी झुर्रियाँ","Dark Circle":"डार्क सर्कल","Eye Bag":"आंख के काले घेरे","Pores":"छिद्र","Pigment":"रंग","Redness":"लालपन","Oiliness":"चाटुकारिता","Acnes":"मुंहासा","Acne":"मुंहासा","Skin Health":"त्वचा का स्वास्थ्य","Instructions":"निर्देश","Get Ready to Start Skin Analysis":"त्वचा विश्लेषण शुरू करने के लिए तैयार हो जाइए","Remove the glasses":"चश्मा हटाओ","Clean your face":"अपना चेहरा साफ़ करें","Be in the right light":"सही रोशनी में रहें","Be neutral face and fix position":"तटस्थ रहें और स्थिति ठीक करें","Get Started":"शुरू हो जाओ","privacy.text":"जानें कि आपके लिए उपयुक्त उत्पादों और दिनचर्या से अपनी त्वचा को कैसे निखारा जाए। वैयक्तिकृत अनुशंसाओं के लिए अपनी सेल्फी अपलोड करें और निश्चिंत रहें, विश्लेषण के बाद आपकी छवि हटा दी जाएगी","See our":"हमारा देखें","Privacy Policy":"गोपनीयता नीति","for more information":"अधिक जानकारी के लिए","your picture quality is blurry":"आपकी तस्वीर की गुणवत्ता धुंधली है","be wearing glasses":"चश्मा पहने रहना","please remove them":"कृपया उन्हें हटा दें","Improve photo quality":"फ़ोटो की गुणवत्ता सुधारें","We noticed you might":"हमने देखा कि आप हो सकते हैं","and":"और","for better results":"बेहतर परिणाम के लिए","Tips for taking better selfies":"बेहतर सेल्फी लेने के टिप्स","Continue":"जारी रखना","Generate routine for you":"आपके लिए दिनचर्या बनाएं","Re-take":"पुन: ले","Get recommended products!":"अनुशंसित उत्पाद प्राप्त करें!","Recommendation Products":"सिफ़ारिश उत्पाद","Products That Just Work For you":"उत्पाद जो आपके लिए बिल्कुल काम करते हैं","My Skin Report":"मेरी त्वचा रिपोर्ट","Add to cart":"कार्ट में जोड़ें","Add again":"पुनः जोड़ें","Checkout":"चेक आउट","My Routines":"मेरी दिनचर्या","Your":"आपका","Routine":"दिनचर्या","Morning":"सुबह","Night":"रात","Error":"गलती","The face is not visible in the picture":"तस्वीर में चेहरा नजर नहीं आ रहा है","The input image is not suitable":"इनपुट छवि उपयुक्त नहीं है","An error occurred, please check again":"कोई त्रुटि उत्पन्न हुई, कृपया पुनः जाँचें","Camera permission denied.":"कैमरे की अनुमति अस्वीकृत.","Unable to access the camera.":"कैमरे तक पहुंचने में असमर्थ.","validation.blurry":"आपकी छवि धुंधली है","validation.eyeGlass":"आपके पास चश्मा है","validation.brightness":"आपके चेहरे पर रोशनी उपयुक्त नहीं है","validation.neutralFace":"चेहरा तटस्थ नहीं है (आपके चेहरे पर मुस्कान हो सकती है)","Image is not suitable":"छवि उपयुक्त नहीं है","Check how you can improve your skin with the proper product and routine":"जांचें कि आप उचित उत्पाद और दिनचर्या से अपनी त्वचा को कैसे बेहतर बना सकते हैं","There are no products to display":"प्रदर्शित करने के लिए कोई उत्पाद नही हैं","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"गंदगी, तेल और अशुद्धियाँ हटाने के लिए अपना चेहरा धोकर शुरुआत करें। ","Use a toner to balance your skin’s pH and remove any leftover residue.":"अपनी त्वचा के पीएच को संतुलित करने और बचे हुए अवशेषों को हटाने के लिए टोनर का उपयोग करें।","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"ब्राइटनिंग या एंटी-एजिंग जैसी विशिष्ट चिंताओं को ध्यान में रखते हुए एक केंद्रित सीरम लगाएं। ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"आंखों को नमी प्रदान करने और सूजन या काले घेरों को कम करने के लिए आंखों के आसपास आई क्रीम को धीरे से थपथपाएं।","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"किसी भी समस्या वाले क्षेत्र, जैसे मुँहासे या दाग-धब्बे, पर स्पॉट ट्रीटमेंट लागू करें। ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"अपनी त्वचा के प्रकार के अनुरूप मॉइस्चराइज़र लगाकर जलयोजन बनाए रखें। ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"ब्रॉड-स्पेक्ट्रम सुरक्षा वाले सनस्क्रीन का उपयोग करके अपनी त्वचा को हानिकारक यूवी किरणों से बचाएं। ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"नमी बनाए रखने और अपनी त्वचा को चमकदार चमक देने के लिए हल्के चेहरे का तेल लगाएं। ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"सोते समय अपनी त्वचा की मरम्मत और पुनर्स्थापना में मदद के लिए एक समृद्ध नाइट क्रीम का उपयोग करें। ","Cleanser":"cleanser","Toner":"टोनर","Serum":"सीरम","Eye Cream":"आँख का क्रीम","Spot Treatment":"स्पॉट ट्रीटमेंट","Moisturizer":"मॉइस्चराइज़र","Sunscreen":"सनस्क्रीन","Face Oil":"चेहरे का तेल","Night Cream":"नाइट क्रीम","Add all to cart":"सभी को कार्ट में जोड़ें","All Products":"सभी प्रोडक्ट","validation.faceObstruction":"संभवतः चेहरे की त्वचा की सतह पर कुछ है (बाल या छेदन)","Product added to cart":"उत्पाद कार्ट में जोड़ा गया","products added to cart":"उत्पाद कार्ट में जोड़े गए","You reached the limits of your plan":"आप अपनी योजना की सीमा तक पहुंच गए","Please renew your service for access":"कृपया पहुंच के लिए अपनी सेवा नवीनीकृत करें","See the website’s privacy policy":"वेबसाइट की गोपनीयता नीति देखें"}')},ko:{translation:JSON.parse('{"Skin Analysis":"피부 분석","Look Straight":"똑바로 봐","Face Position":"얼굴 위치","Lighting":"조명","Good":"좋은","Not Good":"좋지 않음","Bad":"나쁜","Fair":"공정한","Powered by":"제공:","Your distance is close to the camera":"당신의 거리는 카메라에 가깝습니다","Keep your face inside the circle":"얼굴을 원 안에 유지하세요.","Please stand in front of the camera":"카메라 앞에 서주세요","There is more than one person in the picture":"사진에 사람이 한 명 이상 있습니다","Drag & Drop":"드래그 앤 드롭","Or":"또는","browse":"먹다","Supports: JPEG, JPG, PNG":"지원: JPEG, JPG, PNG","Release to Upload":"업로드하려면 릴리스하세요.","file not supported":"지원되지 않는 파일","Sending Facial Data...":"얼굴 데이터를 보내는 중...","Scanning Face...":"얼굴 스캔 중...","Analyzing Facial Attributes...":"얼굴 속성 분석 중...","AI Crafting Report..":"AI 크래프팅 리포트..","Skin Info":"스킨 정보","Fine Wrinkles":"잔주름","Eye Wrinkles":"눈가 주름","Deep Wrinkles":"깊은 주름","Dark Circle":"다크서클","Eye Bag":"아이백","Pores":"모공","Pigment":"그림 물감","Redness":"홍반","Oiliness":"유질","Acnes":"좌창","Acne":"좌창","Skin Health":"피부 건강","Instructions":"지침","Get Ready to Start Skin Analysis":"피부 분석을 시작할 준비를 하세요","Remove the glasses":"안경을 제거하세요","Clean your face":"얼굴을 깨끗이 하세요","Be in the right light":"올바른 빛을 받으십시오","Be neutral face and fix position":"중립 얼굴을 유지하고 위치를 고정합니다.","Get Started":"시작하기","privacy.text":"귀하에게 꼭 맞는 제품과 루틴을 통해 피부를 개선하는 방법을 알아보세요. 맞춤형 추천을 받으려면 셀카를 업로드하세요. 분석 후 이미지가 삭제되므로 안심하세요.","See our":"우리를 참조하십시오","Privacy Policy":"개인 정보 보호 정책","for more information":"자세한 내용은","your picture quality is blurry":"화질이 흐릿해요","be wearing glasses":"안경을 쓰고 있다","please remove them":"제거해주세요","Improve photo quality":"사진 품질 향상","We noticed you might":"우리는 당신이 그럴 수도 있다는 것을 알았습니다","and":"그리고","for better results":"더 나은 결과를 위해","Tips for taking better selfies":"더 나은 셀카를 찍는 팁","Continue":"계속하다","Generate routine for you":"당신을 위한 루틴 생성","Re-take":"다시 잡다","Get recommended products!":"추천상품 받아가세요!","Recommendation Products":"추천상품","Products That Just Work For you":"당신에게 꼭 맞는 제품","My Skin Report":"나의 피부 보고서","Add to cart":"장바구니에 추가","Add again":"다시 추가","Checkout":"점검","My Routines":"내 루틴","Your":"당신의","Routine":"루틴","Morning":"아침","Night":"밤","Error":"오류","The face is not visible in the picture":"사진에는 ​​얼굴이 안보이네요","The input image is not suitable":"입력 이미지가 적합하지 않습니다.","An error occurred, please check again":"오류가 발생했습니다. 다시 확인해 주세요.","Camera permission denied.":"카메라 권한이 거부되었습니다.","Unable to access the camera.":"카메라에 액세스할 수 없습니다.","validation.blurry":"이미지가 흐릿합니다","validation.eyeGlass":"당신은 안경을 가지고 있습니다","validation.brightness":"얼굴에 비치는 빛이 적합하지 않아요","validation.neutralFace":"얼굴이 중립적이지 않음 (웃으실 수도 있음)","Image is not suitable":"이미지가 적합하지 않습니다","Check how you can improve your skin with the proper product and routine":"올바른 제품과 루틴으로 어떻게 피부를 개선할 수 있는지 확인해 보세요.","There are no products to display":"표시할 상품이 없습니다.","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"먼저 얼굴을 씻어 먼지, 기름, 불순물을 제거하세요. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"토너를 사용하여 피부의 pH 균형을 맞추고 남은 잔여물을 제거하세요.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"브라이트닝, 안티에이징 등 특정 고민을 겨냥한 농축 세럼을 발라보세요. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"아이크림을 눈가 주위에 가볍게 두드려 수분을 공급하고 붓기나 다크서클을 줄여줍니다.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"여드름이나 잡티 등 문제가 있는 부위에 스팟 트리트먼트를 발라주세요. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"피부 타입에 맞는 보습제를 발라 수분을 유지하세요. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"광범위한 스펙트럼 보호 기능을 갖춘 자외선 차단제를 사용하여 유해한 자외선으로부터 피부를 보호하세요. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"가벼운 페이스 오일을 발라 수분을 가두어 피부를 윤기나게 가꿔보세요. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"잠자는 동안 피부를 회복하고 회복하는 데 도움이 되는 풍부한 나이트 크림을 사용하세요. ","Cleanser":"세제","Toner":"토너","Serum":"혈청","Eye Cream":"아이크림","Spot Treatment":"스팟 트리트먼트","Moisturizer":"보습제","Sunscreen":"자외선 차단제","Face Oil":"페이스 오일","Night Cream":"나이트크림","Add all to cart":"장바구니에 모두 추가","All Products":"모든 제품","validation.faceObstruction":"아마도 얼굴 피부 표면에 뭔가(머리카락이나 피어싱 등)가 있을 것입니다.","Product added to cart":"장바구니에 추가된 제품","products added to cart":"장바구니에 추가된 제품","You reached the limits of your plan":"계획의 한도에 도달했습니다.","Please renew your service for access":"액세스하려면 서비스를 갱신하세요.","See the website’s privacy policy":"웹사이트의 개인정보 보호정책을 확인하세요"}')},he:{translation:JSON.parse('{"Skin Analysis":"ניתוח עור","Look Straight":"תראה ישר","Face Position":"מיקום פנים","Lighting":"תְאוּרָה","Good":"טוֹב","Not Good":"לא טוב","Bad":"רַע","Fair":"הוֹגֶן","Powered by":"מופעל על ידי","Your distance is close to the camera":"המרחק שלך קרוב למצלמה","Keep your face inside the circle":"שמור את הפנים שלך בתוך המעגל","Please stand in front of the camera":"נא לעמוד מול המצלמה","There is more than one person in the picture":"בתמונה יש יותר מאדם אחד","Drag & Drop":"גרור ושחרר","Or":"אוֹ","browse":"לְדַפדֵף","Supports: JPEG, JPG, PNG":"תומך: JPEG, JPG, PNG","Release to Upload":"שחרר להעלאה","file not supported":"הקובץ אינו נתמך","Sending Facial Data...":"שולח נתוני פנים...","Scanning Face...":"סורק פנים...","Analyzing Facial Attributes...":"ניתוח תכונות פנים...","AI Crafting Report..":"דוח יצירה של AI..","Skin Info":"מידע על העור","Fine Wrinkles":"קמטים עדינים","Eye Wrinkles":"קמטים בעיניים","Deep Wrinkles":"קמטים עמוקים","Dark Circle":"עיגול אפל","Eye Bag":"תיק עיניים","Pores":"נקבוביות","Pigment":"פִּיגמֶנט","Redness":"אוֹדֶם","Oiliness":"שַמנוּנִיוּת","Acnes":"אַקְנֶה","Acne":"אַקְנֶה","Skin Health":"בריאות העור","Instructions":"הוראות","Get Ready to Start Skin Analysis":"התכונן להתחיל בניתוח עור","Remove the glasses":"הסר את המשקפיים","Clean your face":"נקה את הפנים שלך","Be in the right light":"להיות באור הנכון","Be neutral face and fix position":"היו פנים ניטרליים וקבעו את המיקום","Get Started":"התחל","privacy.text":"גלה כיצד לשפר את העור שלך עם המוצרים והשגרה הנכונים המותאמים לך. העלה את הסלפי שלך לקבלת המלצות מותאמות אישית, והיו בטוחים שהתמונה שלך תימחק לאחר הניתוח","See our":"ראה שלנו","Privacy Policy":"מדיניות פרטיות","for more information":"למידע נוסף","your picture quality is blurry":"איכות התמונה שלך מטושטשת","be wearing glasses":"להיות עם משקפיים","please remove them":"אנא הסר אותם","Improve photo quality":"שפר את איכות הצילום","We noticed you might":"שמנו לב שאולי","and":"ו","for better results":"לתוצאות טובות יותר","Tips for taking better selfies":"טיפים לצילום סלפי טוב יותר","Continue":"לְהַמשִׁיך","Generate routine for you":"צור לך שגרה","Re-take":"לְצַלֵם שׁוּב","Get recommended products!":"קבלו מוצרים מומלצים!","Recommendation Products":"מוצרי המלצה","Products That Just Work For you":"מוצרים שעובדים בדיוק בשבילך","My Skin Report":"דוח העור שלי","Add to cart":"הוסף לעגלה","Add again":"הוסף שוב","Checkout":"קופה","My Routines":"השגרה שלי","Your":"שֶׁלְךָ","Routine":"שִׁגרָתִי","Morning":"שַׁחַר","Night":"לַיְלָה","Error":"שְׁגִיאָה","The face is not visible in the picture":"הפנים לא נראים בתמונה","The input image is not suitable":"תמונת הקלט אינה מתאימה","An error occurred, please check again":"אירעה שגיאה, אנא בדוק שוב","Camera permission denied.":"הרשאת המצלמה נדחתה.","Unable to access the camera.":"אין אפשרות לגשת למצלמה.","validation.blurry":"התמונה שלך מטושטשת","validation.eyeGlass":"יש לך משקפיים","validation.brightness":"האור על הפנים שלך לא מתאים","validation.neutralFace":"הפנים לא ניטרליות (אולי יש לך חיוך)","Image is not suitable":"תמונה לא מתאימה","Check how you can improve your skin with the proper product and routine":"בדוק כיצד תוכל לשפר את העור שלך עם המוצר והשגרה הנכונים","There are no products to display":"אין מוצרים להציג","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"התחל על ידי שטיפת הפנים שלך כדי להסיר לכלוך, שמן ולכלוכים. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"השתמש בטונר כדי לאזן את ה-pH של העור שלך ולהסיר שאריות שאריות.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"יש למרוח סרום מרוכז המכוון לדאגות ספציפיות, כמו הבהרה או אנטי אייג\'ינג. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"טפח בעדינות את קרם העיניים מסביב לאזור העיניים כדי לחות ולהפחית נפיחות או עיגולים כהים.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"החל טיפול נקודתי על כל אזור בעייתי, כגון אקנה או כתמים. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"נעל את הלחות על ידי מריחת קרם לחות המתאים לסוג העור שלך. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"הגן על העור שלך מפני קרני UV מזיקות על ידי שימוש בקרם הגנה עם הגנה רחבה. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"מרחי שמן פנים קל משקל כדי לאטום לחות ולהעניק לעור שלך זוהר זוהר. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"השתמש בקרם לילה עשיר כדי לעזור בשיקום ושיקום העור שלך בזמן השינה. ","Cleanser":"חומר ניקוי","Toner":"טונר","Serum":"נַסיוֹב","Eye Cream":"קרם עיניים","Spot Treatment":"טיפול נקודתי","Moisturizer":"קרם לחות","Sunscreen":"קרם הגנה","Face Oil":"שמן פנים","Night Cream":"קרם לילה","Add all to cart":"הוסף הכל לעגלה","All Products":"כל המוצרים","validation.faceObstruction":"כנראה יש משהו על פני עור הפנים (שיער או פירסינג)","Product added to cart":"המוצר נוסף לעגלה","products added to cart":"מוצרים שנוספו לעגלה","You reached the limits of your plan":"הגעת לגבולות התוכנית שלך","Please renew your service for access":"אנא חדש את השירות שלך לגישה","See the website’s privacy policy":"עיין במדיניות הפרטיות של האתר"}')},vi:{translation:JSON.parse('{"Skin Analysis":"Phân tích da","Look Straight":"Nhìn thẳng","Face Position":"Vị trí khuôn mặt","Lighting":"Chiếu sáng","Good":"Tốt","Not Good":"Không tốt","Bad":"Xấu","Fair":"Hội chợ","Powered by":"Được cung cấp bởi","Your distance is close to the camera":"Khoảng cách của bạn gần với máy ảnh","Keep your face inside the circle":"Giữ khuôn mặt của bạn bên trong vòng tròn","Please stand in front of the camera":"Hãy đứng trước camera","There is more than one person in the picture":"Có nhiều hơn một người trong bức ảnh","Drag & Drop":"Kéo và thả","Or":"Hoặc","browse":"duyệt qua","Supports: JPEG, JPG, PNG":"Hỗ trợ: JPEG, JPG, PNG","Release to Upload":"Phát hành để tải lên","file not supported":"tập tin không được hỗ trợ","Sending Facial Data...":"Đang gửi dữ liệu khuôn mặt...","Scanning Face...":"Đang quét khuôn mặt...","Analyzing Facial Attributes...":"Phân tích đặc điểm khuôn mặt...","AI Crafting Report..":"Báo cáo chế tạo AI..","Skin Info":"Thông tin da","Fine Wrinkles":"nếp nhăn tốt","Eye Wrinkles":"nếp nhăn ở mắt","Deep Wrinkles":"nếp nhăn sâu","Dark Circle":"Vòng tròn tối","Eye Bag":"Túi mắt","Pores":"lỗ chân lông","Pigment":"Sắc tố","Redness":"Đỏ","Oiliness":"Dầu","Acnes":"Mụn trứng cá","Acne":"Mụn trứng cá","Skin Health":"Sức khỏe làn da","Instructions":"Hướng dẫn","Get Ready to Start Skin Analysis":"Hãy sẵn sàng để bắt đầu phân tích da","Remove the glasses":"Tháo kính","Clean your face":"Làm sạch khuôn mặt của bạn","Be in the right light":"Ở trong ánh sáng phù hợp","Be neutral face and fix position":"Hãy giữ vẻ mặt trung lập và cố định vị trí","Get Started":"Bắt đầu","privacy.text":"Khám phá cách cải thiện làn da của bạn với các sản phẩm phù hợp và thói quen phù hợp với bạn. Tải ảnh selfie của bạn lên để nhận các đề xuất được cá nhân hóa và hãy yên tâm, hình ảnh của bạn sẽ bị xóa sau khi phân tích","See our":"Xem của chúng tôi","Privacy Policy":"Chính sách bảo mật","for more information":"để biết thêm thông tin","your picture quality is blurry":"chất lượng hình ảnh của bạn bị mờ","be wearing glasses":"đeo kính","please remove them":"vui lòng loại bỏ chúng","Improve photo quality":"Cải thiện chất lượng ảnh","We noticed you might":"Chúng tôi nhận thấy bạn có thể","and":"Và","for better results":"để có kết quả tốt hơn","Tips for taking better selfies":"Mẹo để chụp ảnh selfie đẹp hơn","Continue":"Tiếp tục","Generate routine for you":"Tạo thói quen cho bạn","Re-take":"Thi lại","Get recommended products!":"Nhận sản phẩm được đề xuất!","Recommendation Products":"Sản phẩm khuyến nghị","Products That Just Work For you":"Sản phẩm phù hợp với bạn","My Skin Report":"Báo cáo làn da của tôi","Add to cart":"Thêm vào giỏ hàng","Add again":"Thêm lại","Checkout":"Thanh toán","My Routines":"Thói quen của tôi","Your":"Của bạn","Routine":"Lịch trình","Morning":"Buổi sáng","Night":"Đêm","Error":"Lỗi","The face is not visible in the picture":"Khuôn mặt không nhìn thấy được trong ảnh","The input image is not suitable":"Hình ảnh đầu vào không phù hợp","An error occurred, please check again":"Đã xảy ra lỗi, vui lòng kiểm tra lại","Camera permission denied.":"Quyền sử dụng máy ảnh bị từ chối.","Unable to access the camera.":"Không thể truy cập vào máy ảnh.","validation.blurry":"Hình ảnh của bạn bị mờ","validation.eyeGlass":"Bạn có kính","validation.brightness":"Ánh sáng trên khuôn mặt của bạn không phù hợp","validation.neutralFace":"Khuôn mặt không trung tính (Bạn có thể mỉm cười)","Image is not suitable":"Hình ảnh không phù hợp","Check how you can improve your skin with the proper product and routine":"Kiểm tra cách bạn có thể cải thiện làn da của mình bằng sản phẩm và thói quen phù hợp","There are no products to display":"Không có sản phẩm nào để hiển thị","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Bắt đầu bằng cách rửa mặt để loại bỏ bụi bẩn, dầu và tạp chất. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Sử dụng mực để cân bằng độ pH cho làn da của bạn và loại bỏ mọi chất cặn còn sót lại.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Áp dụng huyết thanh đậm đặc nhắm vào các mối quan tâm cụ thể, như làm sáng hoặc chống lão hóa. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Nhẹ nhàng vỗ nhẹ kem quanh vùng mắt để cấp nước và giảm bọng mắt hoặc quầng thâm.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Áp dụng phương pháp điều trị tại chỗ trên bất kỳ khu vực có vấn đề nào, chẳng hạn như mụn trứng cá hoặc vết thâm. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Khóa độ ẩm bằng cách thoa kem dưỡng ẩm phù hợp với loại da của bạn. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Bảo vệ làn da của bạn khỏi các tia UV có hại bằng cách sử dụng kem chống nắng có khả năng bảo vệ phổ rộng. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Thoa một loại dầu nhẹ lên mặt để giữ ẩm và mang lại làn da sáng rạng rỡ. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Sử dụng kem dưỡng da ban đêm giàu dưỡng chất để giúp sửa chữa và phục hồi làn da của bạn trong khi bạn ngủ. ","Cleanser":"Sữa rửa mặt","Toner":"Mực toner","Serum":"Huyết thanh","Eye Cream":"Kem mắt","Spot Treatment":"Điều trị tại chỗ","Moisturizer":"Kem dưỡng ẩm","Sunscreen":"Kem chống nắng","Face Oil":"Dầu mặt","Night Cream":"Kem dưỡng ban đêm","Add all to cart":"Thêm tất cả vào giỏ hàng","All Products":"Tất cả sản phẩm","validation.faceObstruction":"Có thể có vật gì đó trên bề mặt da mặt (tóc hoặc lỗ xỏ khuyên)","Product added to cart":"Sản phẩm đã được thêm vào giỏ hàng","products added to cart":"sản phẩm đã thêm vào giỏ hàng","You reached the limits of your plan":"Bạn đã đạt đến giới hạn trong kế hoạch của mình","Please renew your service for access":"Vui lòng gia hạn dịch vụ của bạn để truy cập","See the website’s privacy policy":"Xem chính sách quyền riêng tư của trang web"}')},fa:{translation:JSON.parse('{"Skin Analysis":"تجزیه و تحلیل پوست","Look Straight":"مستقیم نگاه کن","Face Position":"موقعیت صورت","Lighting":"نورپردازی","Good":"خوب","Not Good":"خوب نیست","Bad":"بد","Fair":"منصفانه","Powered by":"پشتیبانی شده توسط","Your distance is close to the camera":"فاصله شما به دوربین نزدیک است","Keep your face inside the circle":"صورت خود را داخل دایره نگه دارید","Please stand in front of the camera":"لطفا جلوی دوربین بایستید","There is more than one person in the picture":"بیش از یک نفر در تصویر وجود دارد","Drag & Drop":"کشیدن و رها کردن","Or":"یا","browse":"مرور کنید","Supports: JPEG, JPG, PNG":"پشتیبانی از: JPEG، JPG، PNG","Release to Upload":"برای آپلود رها کنید","file not supported":"فایل پشتیبانی نمی شود","Sending Facial Data...":"ارسال اطلاعات چهره...","Scanning Face...":"اسکن چهره...","Analyzing Facial Attributes...":"تجزیه و تحلیل ویژگی های صورت ...","AI Crafting Report..":"گزارش ساخت هوش مصنوعی..","Skin Info":"اطلاعات پوست","Fine Wrinkles":"چین و چروک های ظریف","Eye Wrinkles":"چین و چروک چشم","Deep Wrinkles":"چین و چروک عمیق","Dark Circle":"دایره تاریک","Eye Bag":"کیف چشم","Pores":"منافذ","Pigment":"رنگدانه","Redness":"سرخی","Oiliness":"چرب بودن","Acnes":"آکنه","Acne":"آکنه","Skin Health":"سلامت پوست","Instructions":"دستورالعمل ها","Get Ready to Start Skin Analysis":"برای شروع تجزیه و تحلیل پوست آماده شوید","Remove the glasses":"عینک را بردارید","Clean your face":"صورتت را تمیز کن","Be in the right light":"در نور مناسب باشید","Be neutral face and fix position":"صورت خنثی باشید و وضعیت را ثابت کنید","Get Started":"شروع کنید","privacy.text":"کشف کنید که چگونه می توانید پوست خود را با محصولات مناسب و روتین مناسب برای شما تقویت کنید. سلفی خود را برای توصیه های شخصی بارگذاری کنید، و مطمئن باشید که تصویر شما پس از تجزیه و تحلیل حذف خواهد شد","See our":"ما را ببینید","Privacy Policy":"سیاست حفظ حریم خصوصی","for more information":"برای اطلاعات بیشتر","your picture quality is blurry":"کیفیت عکس شما تار است","be wearing glasses":"عینک زدن باشد","please remove them":"لطفا آنها را حذف کنید","Improve photo quality":"بهبود کیفیت عکس","We noticed you might":"ما متوجه شدیم که ممکن است","and":"و","for better results":"برای نتایج بهتر","Tips for taking better selfies":"نکاتی برای گرفتن سلفی بهتر","Continue":"ادامه دهید","Generate routine for you":"برای شما روتین ایجاد کنید","Re-take":"دوباره بگیر","Get recommended products!":"محصولات توصیه شده را دریافت کنید!","Recommendation Products":"محصولات پیشنهادی","Products That Just Work For you":"محصولاتی که فقط برای شما کار می کنند","My Skin Report":"گزارش پوست من","Add to cart":"به سبد خرید اضافه کنید","Add again":"دوباره اضافه کنید","Checkout":"تسویه حساب","My Routines":"روتین های من","Your":"شما","Routine":"روال","Morning":"صبح","Night":"شب","Error":"خطا","The face is not visible in the picture":"صورت در تصویر مشخص نیست","The input image is not suitable":"تصویر ورودی مناسب نیست","An error occurred, please check again":"خطایی رخ داده است، لطفاً دوباره بررسی کنید","Camera permission denied.":"اجازه دوربین رد شد.","Unable to access the camera.":"دسترسی به دوربین امکان پذیر نیست.","validation.blurry":"تصویر شما تار است","validation.eyeGlass":"عینک داری","validation.brightness":"نور صورت شما مناسب نیست","validation.neutralFace":"صورت خنثی نیست (شاید لبخند بزنید)","Image is not suitable":"تصویر مناسب نیست","Check how you can improve your skin with the proper product and routine":"بررسی کنید که چگونه می توانید پوست خود را با محصول مناسب و روتین بهبود بخشید","There are no products to display":"هیچ محصولی برای نمایش وجود ندارد","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"برای از بین بردن کثیفی، چربی و ناخالصی ها، با شستن صورت خود شروع کنید. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"از یک تونر برای متعادل کردن pH پوست خود استفاده کنید و هر گونه باقیمانده را از بین ببرید.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"از سرم غلیظی استفاده کنید که نگرانی های خاصی را هدف قرار می دهد، مانند روشن کننده یا ضد پیری. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"کرم دور چشم را به آرامی دور دور چشم بزنید تا آبرسانی کند و پف یا سیاهی دور چشم را کاهش دهد.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"درمان نقطه ای را روی هر ناحیه مشکل دار مانند آکنه یا لک انجام دهید. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"با استفاده از مرطوب کننده ای که مناسب نوع پوست شما است، هیدراتاسیون خود را حفظ کنید. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"با استفاده از کرم ضد آفتاب با طیف وسیع حفاظت از پوست خود در برابر اشعه های مضر UV محافظت کنید. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"یک روغن سبک وزن روی صورت بمالید تا رطوبت آن را ببندد و به پوست شما درخشندگی ببخشد. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"از یک کرم شب غنی برای کمک به ترمیم و ترمیم پوست در هنگام خواب استفاده کنید. ","Cleanser":"پاک کننده","Toner":"تونر","Serum":"سرم","Eye Cream":"کرم دور چشم","Spot Treatment":"درمان لکه","Moisturizer":"مرطوب کننده","Sunscreen":"ضد آفتاب","Face Oil":"روغن صورت","Night Cream":"کرم شب","Add all to cart":"همه را به سبد خرید اضافه کنید","All Products":"همه محصولات","validation.faceObstruction":"احتمالاً چیزی روی سطح پوست صورت وجود دارد (مو یا سوراخ کردن)","Product added to cart":"محصول به سبد خرید اضافه شد","products added to cart":"محصولات اضافه شده به سبد خرید","You reached the limits of your plan":"شما به محدودیت های برنامه خود رسیدید","Please renew your service for access":"لطفاً سرویس خود را برای دسترسی تمدید کنید","See the website’s privacy policy":"سیاست حفظ حریم خصوصی وب سایت را ببینید"}')},cs:{translation:JSON.parse('{"Skin Analysis":"Analýza pleti","Look Straight":"Podívejte se rovně","Face Position":"Pozice obličeje","Lighting":"Osvětlení","Good":"Dobrý","Not Good":"Není dobrý","Bad":"Špatný","Fair":"Veletrh","Powered by":"Provozováno na","Your distance is close to the camera":"Vaše vzdálenost je blízko fotoaparátu","Keep your face inside the circle":"Udržujte svůj obličej uvnitř kruhu","Please stand in front of the camera":"Postavte se prosím před kameru","There is more than one person in the picture":"Na obrázku je více než jedna osoba","Drag & Drop":"Drag & Drop","Or":"Nebo","browse":"prohlížet","Supports: JPEG, JPG, PNG":"Podporuje: JPEG, JPG, PNG","Release to Upload":"Uvolněte pro nahrání","file not supported":"soubor není podporován","Sending Facial Data...":"Odesílání údajů o obličeji...","Scanning Face...":"Skenování obličeje...","Analyzing Facial Attributes...":"Analýza rysů obličeje...","AI Crafting Report..":"Zpráva o tvorbě AI..","Skin Info":"Informace o kůži","Fine Wrinkles":"Jemné vrásky","Eye Wrinkles":"Oční vrásky","Deep Wrinkles":"Hluboké vrásky","Dark Circle":"Temný kruh","Eye Bag":"Oční vak","Pores":"Póry","Pigment":"Pigment","Redness":"Zarudnutí","Oiliness":"Olejnatost","Acnes":"Akné","Acne":"Akné","Skin Health":"Zdraví kůže","Instructions":"Instrukce","Get Ready to Start Skin Analysis":"Připravte se na analýzu pleti","Remove the glasses":"Odstraňte brýle","Clean your face":"Vyčistěte si obličej","Be in the right light":"Buďte ve správném světle","Be neutral face and fix position":"Buďte neutrální a zafixujte si pozici","Get Started":"Začněte","privacy.text":"Objevte, jak vylepšit svou pleť pomocí správných produktů a rutiny šité na míru vám. Nahrajte své selfie pro personalizovaná doporučení a buďte si jisti, že váš obrázek bude po analýze smazán","See our":"Podívejte se na naše","Privacy Policy":"Zásady ochrany osobních údajů","for more information":"pro více informací","your picture quality is blurry":"kvalita vašeho obrázku je rozmazaná","be wearing glasses":"nosit brýle","please remove them":"prosím odstraňte je","Improve photo quality":"Zlepšete kvalitu fotografií","We noticed you might":"Všimli jsme si, že možná","and":"a","for better results":"pro lepší výsledky","Tips for taking better selfies":"Tipy pro pořizování lepších selfie","Continue":"Pokračovat","Generate routine for you":"Vytvořte pro vás rutinu","Re-take":"Znovudobytí","Get recommended products!":"Získejte doporučené produkty!","Recommendation Products":"Doporučené produkty","Products That Just Work For you":"Produkty, které pro vás fungují","My Skin Report":"Zpráva o mé pleti","Add to cart":"Přidat do košíku","Add again":"Přidejte znovu","Checkout":"Pokladna","My Routines":"Moje rutiny","Your":"Vaše","Routine":"Rutina","Morning":"Ráno","Night":"Noc","Error":"Chyba","The face is not visible in the picture":"Na obrázku není vidět obličej","The input image is not suitable":"Vstupní obrázek není vhodný","An error occurred, please check again":"Došlo k chybě, zkontrolujte prosím znovu","Camera permission denied.":"Povolení fotoaparátu odepřeno.","Unable to access the camera.":"Nelze získat přístup ke kameře.","validation.blurry":"Váš obrázek je rozmazaný","validation.eyeGlass":"Máš brýle","validation.brightness":"Světlo na vaší tváři není vhodné","validation.neutralFace":"Obličej není neutrální (můžete mít úsměv)","Image is not suitable":"Obrázek není vhodný","Check how you can improve your skin with the proper product and routine":"Podívejte se, jak můžete zlepšit svou pleť správným produktem a rutinou","There are no products to display":"Nejsou žádné produkty k zobrazení","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Začněte umytím obličeje, abyste odstranili špínu, olej a nečistoty. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Použijte tonikum k vyrovnání pH pokožky a odstranění zbytků.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Aplikujte koncentrované sérum zaměřené na specifické problémy, jako je rozjasnění nebo anti-aging. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Jemně vmasírujte oční krém do okolí očí pro hydrataci a redukci otoků nebo tmavých kruhů.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Aplikujte bodové ošetření na jakékoli problémové oblasti, jako je akné nebo skvrny. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Uzamkněte hydrataci aplikací hydratačního krému, který vyhovuje vašemu typu pleti. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Chraňte svou pokožku před škodlivými UV paprsky používáním opalovacího krému se širokospektrální ochranou. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Naneste lehký obličejový olej, který uzavře vlhkost a dodá vaší pleti zářivý lesk. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Používejte bohatý noční krém, který vám pomůže opravit a obnovit pokožku během spánku. ","Cleanser":"Čistič","Toner":"Toner","Serum":"Sérum","Eye Cream":"Oční krém","Spot Treatment":"Bodové ošetření","Moisturizer":"Zvlhčovač","Sunscreen":"Opalovací krém","Face Oil":"Olej na obličej","Night Cream":"Noční krém","Add all to cart":"Přidejte vše do košíku","All Products":"Všechny produkty","validation.faceObstruction":"Pravděpodobně je něco na povrchu pokožky obličeje (vlasy nebo piercing)","Product added to cart":"Produkt přidán do košíku","products added to cart":"produkty přidány do košíku","You reached the limits of your plan":"Dosáhli jste limitů svého plánu","Please renew your service for access":"Obnovte svou službu pro přístup","See the website’s privacy policy":"Podívejte se na zásady ochrany osobních údajů webu"}')},id:{translation:JSON.parse('{"Skin Analysis":"Analisis Kulit","Look Straight":"Lihat Lurus","Face Position":"Posisi Wajah","Lighting":"Penerangan","Good":"Bagus","Not Good":"Tidak bagus","Bad":"Buruk","Fair":"Adil","Powered by":"Didukung oleh","Your distance is close to the camera":"Jarak Anda dekat dengan kamera","Keep your face inside the circle":"Pertahankan wajah Anda di dalam lingkaran","Please stand in front of the camera":"Silakan berdiri di depan kamera","There is more than one person in the picture":"Ada lebih dari satu orang di dalam gambar","Drag & Drop":"Seret & Jatuhkan","Or":"Atau","browse":"jelajahi","Supports: JPEG, JPG, PNG":"Mendukung: JPEG, JPG, PNG","Release to Upload":"Lepaskan untuk Mengunggah","file not supported":"berkas tidak didukung","Sending Facial Data...":"Mengirim Data Wajah...","Scanning Face...":"Memindai Wajah...","Analyzing Facial Attributes...":"Menganalisis Atribut Wajah...","AI Crafting Report..":"Laporan Pembuatan AI..","Skin Info":"Info Kulit","Fine Wrinkles":"Kerutan Halus","Eye Wrinkles":"Kerutan Mata","Deep Wrinkles":"Kerutan Dalam","Dark Circle":"Lingkaran Hitam","Eye Bag":"Kantong Mata","Pores":"pori-pori","Pigment":"Pigmen","Redness":"Kemerahan","Oiliness":"Sifat manis mulut","Acnes":"Jerawat","Acne":"Jerawat","Skin Health":"Kesehatan Kulit","Instructions":"instruksi","Get Ready to Start Skin Analysis":"Bersiaplah untuk Memulai Analisis Kulit","Remove the glasses":"Lepaskan kacamatanya","Clean your face":"Bersihkan wajahmu","Be in the right light":"Berada dalam cahaya yang tepat","Be neutral face and fix position":"Bersikaplah netral dan perbaiki posisi","Get Started":"Memulai","privacy.text":"Temukan cara mempercantik kulit Anda dengan produk dan rutinitas yang tepat yang disesuaikan untuk Anda. Unggah selfie Anda untuk mendapatkan rekomendasi yang dipersonalisasi, dan yakinlah, gambar Anda akan dihapus setelah dianalisis","See our":"Lihat kami","Privacy Policy":"Kebijakan Privasi","for more information":"untuk informasi lebih lanjut","your picture quality is blurry":"kualitas gambar Anda buram","be wearing glasses":"memakai kacamata","please remove them":"tolong hapus mereka","Improve photo quality":"Tingkatkan kualitas foto","We noticed you might":"Kami memperhatikan Anda mungkin","and":"Dan","for better results":"untuk hasil yang lebih baik","Tips for taking better selfies":"Kiat untuk mengambil foto selfie yang lebih baik","Continue":"Melanjutkan","Generate routine for you":"Hasilkan rutinitas untuk Anda","Re-take":"Merebut kembali","Get recommended products!":"Dapatkan produk yang direkomendasikan!","Recommendation Products":"Produk Rekomendasi","Products That Just Work For you":"Produk Yang Cocok Untuk Anda","My Skin Report":"Laporan Kulit Saya","Add to cart":"Tambahkan ke troli","Add again":"Tambahkan lagi","Checkout":"Check-out","My Routines":"Rutinitas saya","Your":"Milikmu","Routine":"Rutin","Morning":"Pagi","Night":"Malam","Error":"Kesalahan","The face is not visible in the picture":"Wajahnya tidak terlihat di gambar","The input image is not suitable":"Gambar masukan tidak sesuai","An error occurred, please check again":"Terjadi kesalahan, harap periksa kembali","Camera permission denied.":"Izin kamera ditolak.","Unable to access the camera.":"Tidak dapat mengakses kamera.","validation.blurry":"Gambar Anda buram","validation.eyeGlass":"Anda punya kacamata","validation.brightness":"Cahaya di wajahmu tidak cocok","validation.neutralFace":"Wajahnya tidak netral (Anda mungkin tersenyum)","Image is not suitable":"Gambar tidak cocok","Check how you can improve your skin with the proper product and routine":"Periksa bagaimana Anda dapat memperbaiki kulit Anda dengan produk dan rutinitas yang tepat","There are no products to display":"Tidak ada produk untuk ditampilkan","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Mulailah dengan mencuci muka untuk menghilangkan kotoran, minyak, dan kotoran. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Gunakan toner untuk menyeimbangkan pH kulit Anda dan menghilangkan sisa residu.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Oleskan serum terkonsentrasi yang menargetkan masalah tertentu, seperti mencerahkan atau anti penuaan. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Tepuk-tepuk krim mata dengan lembut di sekitar area mata untuk melembabkan dan mengurangi bengkak atau lingkaran hitam.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Oleskan perawatan spot pada area yang bermasalah, seperti jerawat atau noda. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Kunci hidrasi dengan mengoleskan pelembab yang sesuai dengan jenis kulit Anda. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Lindungi kulit Anda dari sinar UV yang berbahaya dengan menggunakan tabir surya dengan perlindungan spektrum luas. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Oleskan minyak wajah ringan untuk mengunci kelembapan dan membuat kulit Anda bersinar. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Gunakan krim malam yang kaya untuk membantu memperbaiki dan memulihkan kulit Anda saat Anda tidur. ","Cleanser":"Pembersih","Toner":"toner","Serum":"Serum","Eye Cream":"Krim Mata","Spot Treatment":"Perawatan Tempat","Moisturizer":"Pelembab","Sunscreen":"Tabir surya","Face Oil":"Minyak Wajah","Night Cream":"Krim Malam","Add all to cart":"Tambahkan semua ke troli","All Products":"Semua Produk","validation.faceObstruction":"Kemungkinan ada sesuatu pada permukaan kulit wajah (rambut atau tindik)","Product added to cart":"Produk ditambahkan ke troli","products added to cart":"produk ditambahkan ke keranjang","You reached the limits of your plan":"Anda mencapai batas rencana Anda","Please renew your service for access":"Harap perbarui layanan Anda untuk akses","See the website’s privacy policy":"Lihat kebijakan privasi situs web"}')},lv:{translation:JSON.parse('{"Skin Analysis":"Ādas analīze","Look Straight":"Skaties taisni","Face Position":"Sejas pozīcija","Lighting":"Apgaismojums","Good":"Labi","Not Good":"Nav labi","Bad":"Slikti","Fair":"Godīgi","Powered by":"Nodrošina","Your distance is close to the camera":"Jūsu attālums ir tuvu kamerai","Keep your face inside the circle":"Turiet seju apļa iekšpusē","Please stand in front of the camera":"Lūdzu, stāviet kameras priekšā","There is more than one person in the picture":"Attēlā ir vairāk nekā viens cilvēks","Drag & Drop":"Velciet un nometiet","Or":"Or","browse":"pārlūkot","Supports: JPEG, JPG, PNG":"Atbalsta: JPEG, JPG, PNG","Release to Upload":"Atlaidiet, lai augšupielādētu","file not supported":"fails netiek atbalstīts","Sending Facial Data...":"Notiek sejas datu sūtīšana...","Scanning Face...":"Notiek sejas skenēšana...","Analyzing Facial Attributes...":"Notiek sejas īpašību analīze...","AI Crafting Report..":"AI izstrādes ziņojums..","Skin Info":"Informācija par ādu","Fine Wrinkles":"Smalkas grumbas","Eye Wrinkles":"Acu grumbas","Deep Wrinkles":"Dziļas grumbas","Dark Circle":"Tumšais aplis","Eye Bag":"Acu maisiņš","Pores":"Poras","Pigment":"Pigments","Redness":"Apsārtums","Oiliness":"Eļļainība","Acnes":"Pinnes","Acne":"Pinnes","Skin Health":"Ādas veselība","Instructions":"Norādījumi","Get Ready to Start Skin Analysis":"Esiet gatavs sākt ādas analīzi","Remove the glasses":"Noņemiet brilles","Clean your face":"Notīriet seju","Be in the right light":"Esiet pareizajā gaismā","Be neutral face and fix position":"Esiet neitrāla seja un nofiksējiet pozīciju","Get Started":"Sāciet darbu","privacy.text":"Atklājiet, kā uzlabot savu ādu ar jums piemērotiem produktiem un rutīnu. Augšupielādējiet savu pašbildi, lai saņemtu personalizētus ieteikumus, un esiet drošs, pēc analīzes jūsu attēls tiks dzēsts","See our":"Skatiet mūsu","Privacy Policy":"Privātuma politika","for more information":"lai iegūtu vairāk informācijas","your picture quality is blurry":"jūsu attēla kvalitāte ir izplūdusi","be wearing glasses":"valkāt brilles","please remove them":"lūdzu, noņemiet tos","Improve photo quality":"Uzlabojiet fotoattēlu kvalitāti","We noticed you might":"Mēs pamanījām, ka jūs varētu","and":"un","for better results":"labākiem rezultātiem","Tips for taking better selfies":"Padomi labāku selfiju uzņemšanai","Continue":"Turpināt","Generate routine for you":"Izveidojiet rutīnu jums","Re-take":"Ņem atkārtoti","Get recommended products!":"Iegūstiet ieteicamos produktus!","Recommendation Products":"Ieteikuma produkti","Products That Just Work For you":"Produkti, kas darbojas tieši jums","My Skin Report":"Pārskats par manu ādu","Add to cart":"Pievienot grozam","Add again":"Pievienojiet vēlreiz","Checkout":"Izrakstīšanās","My Routines":"Manas rutīnas","Your":"Jūsu","Routine":"Rutīna","Morning":"Rīts","Night":"Nakts","Error":"Kļūda","The face is not visible in the picture":"Seja bildē nav redzama","The input image is not suitable":"Ievades attēls nav piemērots","An error occurred, please check again":"Radās kļūda. Lūdzu, pārbaudiet vēlreiz","Camera permission denied.":"Kameras atļauja liegta.","Unable to access the camera.":"Nevar piekļūt kamerai.","validation.blurry":"Jūsu attēls ir izplūdis","validation.eyeGlass":"Tev ir brilles","validation.brightness":"Gaisma uz jūsu sejas nav piemērota","validation.neutralFace":"Seja nav neitrāla (jums var būt smaids)","Image is not suitable":"Attēls nav piemērots","Check how you can improve your skin with the proper product and routine":"Pārbaudiet, kā jūs varat uzlabot savu ādu ar atbilstošu produktu un rutīnu","There are no products to display":"Nav neviena produkta, ko parādīt","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Sāciet ar sejas mazgāšanu, lai noņemtu netīrumus, eļļu un netīrumus. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Izmantojiet toniku, lai līdzsvarotu ādas pH un noņemtu visus atlikumus.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Uzklājiet koncentrētu serumu, kas vērsts uz specifiskām problēmām, piemēram, balināšanu vai pretnovecošanos. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Viegli uzklājiet acu krēmu ap acu zonu, lai mitrinātu un samazinātu pietūkumu vai tumšos lokus.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Uzklājiet traipu uz visām problemātiskajām zonām, piemēram, pinnēm vai plankumiem. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Nofiksējiet hidratāciju, uzklājot mitrinātāju, kas atbilst jūsu ādas tipam. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Aizsargājiet savu ādu no kaitīgiem UV stariem, izmantojot sauļošanās līdzekli ar plaša spektra aizsardzību. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Uzklājiet vieglu sejas eļļu, lai nostiprinātu mitrumu un piešķirtu ādai mirdzošu mirdzumu. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Izmantojiet bagātīgu nakts krēmu, lai palīdzētu atjaunot un atjaunot ādu miega laikā. ","Cleanser":"Tīrīšanas līdzeklis","Toner":"Toneris","Serum":"Serums","Eye Cream":"Acu krēms","Spot Treatment":"Vietu ārstēšana","Moisturizer":"Mitrinātājs","Sunscreen":"Saules aizsargkrēms","Face Oil":"Sejas eļļa","Night Cream":"Nakts krēms","Add all to cart":"Pievienot visu grozam","All Products":"Visi produkti","validation.faceObstruction":"Visticamāk, uz sejas ādas virsmas ir kaut kas (mati vai pīrsings)","Product added to cart":"Prece pievienota grozam","products added to cart":"produkti pievienoti grozam","You reached the limits of your plan":"Jūs sasniedzāt sava plāna robežas","Please renew your service for access":"Lūdzu, atjaunojiet savu pakalpojumu, lai piekļūtu","See the website’s privacy policy":"Skatiet vietnes privātuma politiku"}')},no:{translation:JSON.parse('{"Skin Analysis":"Hudanalyse","Look Straight":"Se rett ut","Face Position":"Ansiktsposisjon","Lighting":"Belysning","Good":"God","Not Good":"Ikke bra","Bad":"Dårlig","Fair":"Rettferdig","Powered by":"Drevet av","Your distance is close to the camera":"Avstanden din er nær kameraet","Keep your face inside the circle":"Hold ansiktet innenfor sirkelen","Please stand in front of the camera":"Vennligst stå foran kameraet","There is more than one person in the picture":"Det er mer enn én person på bildet","Drag & Drop":"Dra og slipp","Or":"Eller","browse":"bla","Supports: JPEG, JPG, PNG":"Støtter: JPEG, JPG, PNG","Release to Upload":"Slipp for å laste opp","file not supported":"fil støttes ikke","Sending Facial Data...":"Sender ansiktsdata...","Scanning Face...":"Skanner ansikt...","Analyzing Facial Attributes...":"Analyserer ansiktsegenskaper...","AI Crafting Report..":"AI Crafting Report..","Skin Info":"Hudinformasjon","Fine Wrinkles":"Fine rynker","Eye Wrinkles":"Øye rynker","Deep Wrinkles":"Dype rynker","Dark Circle":"Mørk sirkel","Eye Bag":"Øyeveske","Pores":"Porer","Pigment":"Pigment","Redness":"Rødhet","Oiliness":"Fethet","Acnes":"Akne","Acne":"Akne","Skin Health":"Hudhelse","Instructions":"Instruksjoner","Get Ready to Start Skin Analysis":"Gjør deg klar til å starte hudanalyse","Remove the glasses":"Fjern glassene","Clean your face":"Rengjør ansiktet ditt","Be in the right light":"Vær i det rette lyset","Be neutral face and fix position":"Vær nøytral i ansiktet og fiks posisjon","Get Started":"Kom i gang","privacy.text":"Oppdag hvordan du kan forbedre huden din med de riktige produktene og rutinene som er skreddersydd for deg. Last opp selfien din for personlig tilpassede anbefalinger, og vær sikker på at bildet ditt vil bli slettet etter analyse","See our":"Se vår","Privacy Policy":"Personvernerklæring","for more information":"for mer informasjon","your picture quality is blurry":"bildekvaliteten din er uskarp","be wearing glasses":"ha på briller","please remove them":"vennligst fjern dem","Improve photo quality":"Forbedre bildekvaliteten","We noticed you might":"Vi la merke til at du kanskje","and":"og","for better results":"for bedre resultater","Tips for taking better selfies":"Tips for å ta bedre selfies","Continue":"Fortsette","Generate routine for you":"Generer rutiner for deg","Re-take":"Ta på nytt","Get recommended products!":"Få anbefalte produkter!","Recommendation Products":"Anbefalte produkter","Products That Just Work For you":"Produkter som bare fungerer for deg","My Skin Report":"Min hudrapport","Add to cart":"Legg i handlekurv","Add again":"Legg til igjen","Checkout":"Kasse","My Routines":"Mine rutiner","Your":"Din","Routine":"Rutine","Morning":"Morgen","Night":"Natt","Error":"Feil","The face is not visible in the picture":"Ansiktet er ikke synlig på bildet","The input image is not suitable":"Inndatabildet er ikke egnet","An error occurred, please check again":"Det oppsto en feil, vennligst sjekk på nytt","Camera permission denied.":"Kameratillatelse nektet.","Unable to access the camera.":"Får ikke tilgang til kameraet.","validation.blurry":"Bildet ditt er uskarpt","validation.eyeGlass":"Du har briller","validation.brightness":"Lyset i ansiktet ditt er ikke egnet","validation.neutralFace":"Ansiktet er ikke nøytralt (du kan ha et smil)","Image is not suitable":"Bildet er ikke egnet","Check how you can improve your skin with the proper product and routine":"Sjekk hvordan du kan forbedre huden din med riktig produkt og rutine","There are no products to display":"Det er ingen produkter å vise","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Start med å vaske ansiktet for å fjerne smuss, olje og urenheter. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Bruk en toner for å balansere hudens pH og fjerne eventuelle rester.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Påfør et konsentrert serum rettet mot spesifikke bekymringer, som lysere eller anti-aldring. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Klapp forsiktig øyekrem rundt øyeområdet for å fukte og redusere hevelser eller mørke ringer.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Påfør punktbehandling på alle problemområder, for eksempel akne eller urenheter. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Lås på fuktighet ved å bruke en fuktighetskrem som passer din hudtype. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Beskytt huden din mot skadelige UV-stråler ved å bruke solkrem med bredspektret beskyttelse. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Påfør en lett ansiktsolje for å forsegle fuktighet og gi huden din en strålende glød. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Bruk en fyldig nattkrem for å reparere og gjenopprette huden mens du sover. ","Cleanser":"Rensemiddel","Toner":"Toner","Serum":"Serum","Eye Cream":"Øyekrem","Spot Treatment":"Spotbehandling","Moisturizer":"Fuktighetskrem","Sunscreen":"Solkrem","Face Oil":"Ansiktsolje","Night Cream":"Nattkrem","Add all to cart":"Legg alt i handlekurven","All Products":"Alle produkter","validation.faceObstruction":"Det er sannsynligvis noe på overflaten av ansiktshuden (hår eller piercing)","Product added to cart":"Produktet er lagt i handlekurven","products added to cart":"produkter lagt i handlekurven","You reached the limits of your plan":"Du nådde grensene for planen din","Please renew your service for access":"Vennligst forny tjenesten for tilgang","See the website’s privacy policy":"Se nettstedets personvernerklæring"}')},da:{translation:JSON.parse('{"Skin Analysis":"Hudanalyse","Look Straight":"Se lige ud","Face Position":"Ansigtsposition","Lighting":"Belysning","Good":"God","Not Good":"Ikke godt","Bad":"Dårligt","Fair":"Retfærdig","Powered by":"Drevet af","Your distance is close to the camera":"Din afstand er tæt på kameraet","Keep your face inside the circle":"Hold dit ansigt inde i cirklen","Please stand in front of the camera":"Stil dig venligst foran kameraet","There is more than one person in the picture":"Der er mere end én person på billedet","Drag & Drop":"Træk og slip","Or":"Eller","browse":"gennemse","Supports: JPEG, JPG, PNG":"Understøtter: JPEG, JPG, PNG","Release to Upload":"Slip for at uploade","file not supported":"fil understøttes ikke","Sending Facial Data...":"Sender ansigtsdata...","Scanning Face...":"Scanner ansigt...","Analyzing Facial Attributes...":"Analyse af ansigtsegenskaber...","AI Crafting Report..":"AI Crafting Report..","Skin Info":"Hud info","Fine Wrinkles":"Fine rynker","Eye Wrinkles":"Øjenrynker","Deep Wrinkles":"Dybe rynker","Dark Circle":"Mørk cirkel","Eye Bag":"Øjentaske","Pores":"Porer","Pigment":"Pigment","Redness":"Rødme","Oiliness":"Fedtethed","Acnes":"Acne","Acne":"Acne","Skin Health":"Hudsundhed","Instructions":"Instruktioner","Get Ready to Start Skin Analysis":"Gør dig klar til at starte hudanalyse","Remove the glasses":"Fjern glassene","Clean your face":"Rens dit ansigt","Be in the right light":"Vær i det rigtige lys","Be neutral face and fix position":"Vær neutralt ansigt og fastgør position","Get Started":"Kom i gang","privacy.text":"Opdag, hvordan du forbedrer din hud med de rigtige produkter og rutiner, der er skræddersyet til dig. Upload din selfie for at få personlige anbefalinger, og vær sikker på, dit billede vil blive slettet efter analyse","See our":"Se vores","Privacy Policy":"Privatlivspolitik","for more information":"for mere information","your picture quality is blurry":"din billedkvalitet er sløret","be wearing glasses":"have briller på","please remove them":"venligst fjern dem","Improve photo quality":"Forbedre billedkvaliteten","We noticed you might":"Vi har bemærket, at du måske","and":"og","for better results":"for bedre resultater","Tips for taking better selfies":"Tips til at tage bedre selfies","Continue":"Fortsætte","Generate routine for you":"Skab rutine for dig","Re-take":"Gentag","Get recommended products!":"Få anbefalede produkter!","Recommendation Products":"Anbefalede produkter","Products That Just Work For you":"Produkter, der bare fungerer for dig","My Skin Report":"Min hud rapport","Add to cart":"Tilføj til kurv","Add again":"Tilføj igen","Checkout":"Checkout","My Routines":"Mine rutiner","Your":"Dine","Routine":"Rutine","Morning":"Morgen","Night":"Nat","Error":"Fejl","The face is not visible in the picture":"Ansigtet er ikke synligt på billedet","The input image is not suitable":"Indgangsbilledet er ikke egnet","An error occurred, please check again":"Der opstod en fejl. Tjek venligst igen","Camera permission denied.":"Kameratilladelse nægtet.","Unable to access the camera.":"Kan ikke få adgang til kameraet.","validation.blurry":"Dit billede er sløret","validation.eyeGlass":"Du har briller","validation.brightness":"Lyset på dit ansigt er ikke egnet","validation.neutralFace":"Ansigtet er ikke neutralt (du kan have et smil)","Image is not suitable":"Billedet er ikke egnet","Check how you can improve your skin with the proper product and routine":"Tjek, hvordan du kan forbedre din hud med det rigtige produkt og rutine","There are no products to display":"Der er ingen produkter at vise","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Start med at vaske dit ansigt for at fjerne snavs, olie og urenheder. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Brug en toner til at afbalancere din huds pH og fjerne eventuelle rester.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Påfør et koncentreret serum rettet mod specifikke bekymringer, såsom lysnende eller anti-aging. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Dup forsigtigt øjencremen omkring øjenområdet for at fugte og reducere hævelser eller mørke rande.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Påfør pletbehandling på alle problemområder, såsom acne eller pletter. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Lås på hydrering ved at påføre en fugtighedscreme, der passer til din hudtype. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Beskyt din hud mod skadelige UV-stråler ved at bruge solcreme med bredspektret beskyttelse. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Påfør en let ansigtsolie for at forsegle fugt og give din hud en strålende glød. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Brug en rig natcreme til at hjælpe med at reparere og genoprette din hud, mens du sover. ","Cleanser":"Rensemiddel","Toner":"Toner","Serum":"Serum","Eye Cream":"Øjencreme","Spot Treatment":"Pletbehandling","Moisturizer":"Fugtighedscreme","Sunscreen":"Solcreme","Face Oil":"Ansigtsolie","Night Cream":"Natcreme","Add all to cart":"Tilføj alt til indkøbskurven","All Products":"Alle produkter","validation.faceObstruction":"Der er sandsynligvis noget på overfladen af ​​ansigtshuden (hår eller piercing)","Product added to cart":"Produkt tilføjet til indkøbskurv","products added to cart":"produkter lagt i indkøbskurven","You reached the limits of your plan":"Du nåede grænserne for din plan","Please renew your service for access":"Forny venligst din tjeneste for at få adgang","See the website’s privacy policy":"Se hjemmesidens privatlivspolitik"}')},th:{translation:JSON.parse('{"Skin Analysis":"การวิเคราะห์ผิวหนัง","Look Straight":"ดูตรง","Face Position":"ตำแหน่งใบหน้า","Lighting":"แสงสว่าง","Good":"ดี","Not Good":"ไม่ดี","Bad":"แย่","Fair":"ยุติธรรม","Powered by":"ขับเคลื่อนโดย","Your distance is close to the camera":"ระยะห่างของคุณใกล้กับกล้อง","Keep your face inside the circle":"ให้ใบหน้าของคุณอยู่ในวงกลม","Please stand in front of the camera":"กรุณายืนหน้ากล้องครับ","There is more than one person in the picture":"มีคนมากกว่าหนึ่งคนในภาพ","Drag & Drop":"ลากและวาง","Or":"หรือ","browse":"เรียกดู","Supports: JPEG, JPG, PNG":"รองรับ: JPEG, JPG, PNG","Release to Upload":"ปล่อยเพื่ออัปโหลด","file not supported":"ไม่รองรับไฟล์","Sending Facial Data...":"กำลังส่งข้อมูลใบหน้า...","Scanning Face...":"กำลังสแกนใบหน้า...","Analyzing Facial Attributes...":"กำลังวิเคราะห์ลักษณะใบหน้า...","AI Crafting Report..":"รายงานการประดิษฐ์ AI..","Skin Info":"ข้อมูลผิวหนัง","Fine Wrinkles":"ริ้วรอยละเอียด","Eye Wrinkles":"ริ้วรอยรอบดวงตา","Deep Wrinkles":"ริ้วรอยลึก","Dark Circle":"วงกลมมืด","Eye Bag":"ถุงใต้ตา","Pores":"รูขุมขน","Pigment":"เม็ดสี","Redness":"รอยแดง","Oiliness":"ความมัน","Acnes":"สิว","Acne":"สิว","Skin Health":"สุขภาพผิว","Instructions":"คำแนะนำ","Get Ready to Start Skin Analysis":"เตรียมพร้อมเริ่มการวิเคราะห์ผิวหนัง","Remove the glasses":"ถอดแว่นตาออก","Clean your face":"ทำความสะอาดใบหน้าของคุณ","Be in the right light":"อยู่ในแสงที่เหมาะสม","Be neutral face and fix position":"ทำหน้าเป็นกลางและแก้ไขตำแหน่ง","Get Started":"เริ่มต้นเลย","privacy.text":"ค้นพบวิธีปรับปรุงผิวของคุณด้วยผลิตภัณฑ์ที่เหมาะสมและกิจวัตรที่เหมาะกับคุณ อัปโหลดภาพเซลฟี่ของคุณเพื่อรับคำแนะนำส่วนตัว และมั่นใจได้ว่าภาพของคุณจะถูกลบหลังการวิเคราะห์","See our":"ดูของเรา","Privacy Policy":"นโยบายความเป็นส่วนตัว","for more information":"สำหรับข้อมูลเพิ่มเติม","your picture quality is blurry":"คุณภาพของภาพของคุณไม่ชัด","be wearing glasses":"จะสวมแว่นตา","please remove them":"โปรดลบออก","Improve photo quality":"ปรับปรุงคุณภาพของภาพถ่าย","We noticed you might":"เราสังเกตเห็นว่าคุณอาจ","and":"และ","for better results":"เพื่อผลลัพธ์ที่ดีกว่า","Tips for taking better selfies":"เคล็ดลับในการเซลฟี่ให้ดีขึ้น","Continue":"ดำเนินการต่อ","Generate routine for you":"สร้างกิจวัตรสำหรับคุณ","Re-take":"ถ่ายใหม่","Get recommended products!":"รับสินค้าแนะนำ!","Recommendation Products":"สินค้าแนะนำ","Products That Just Work For you":"ผลิตภัณฑ์ที่เหมาะกับคุณ","My Skin Report":"รายงานผิวของฉัน","Add to cart":"เพิ่มลงในรถเข็น","Add again":"เพิ่มอีกครั้ง","Checkout":"ชำระเงิน","My Routines":"กิจวัตรของฉัน","Your":"ของคุณ","Routine":"กิจวัตรประจำวัน","Morning":"เช้า","Night":"กลางคืน","Error":"ข้อผิดพลาด","The face is not visible in the picture":"ไม่เห็นใบหน้าในภาพ","The input image is not suitable":"รูปภาพที่ป้อนไม่เหมาะสม","An error occurred, please check again":"เกิดข้อผิดพลาด โปรดตรวจสอบอีกครั้ง","Camera permission denied.":"การอนุญาตกล้องถูกปฏิเสธ","Unable to access the camera.":"ไม่สามารถเข้าถึงกล้องได้","validation.blurry":"ภาพของคุณเบลอ","validation.eyeGlass":"คุณมีแว่นตา","validation.brightness":"แสงบนใบหน้าของคุณไม่เหมาะ","validation.neutralFace":"หน้าตาไม่เป็นกลาง (อาจยิ้มได้)","Image is not suitable":"รูปภาพไม่เหมาะสม","Check how you can improve your skin with the proper product and routine":"ตรวจสอบว่าคุณสามารถปรับปรุงผิวของคุณด้วยผลิตภัณฑ์และกิจวัตรที่เหมาะสมได้อย่างไร","There are no products to display":"ไม่มีสินค้าที่จะแสดง","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"เริ่มต้นด้วยการล้างหน้าเพื่อขจัดสิ่งสกปรก ความมัน และสิ่งสกปรก ","Use a toner to balance your skin’s pH and remove any leftover residue.":"ใช้โทนเนอร์เพื่อปรับสมดุล pH ของผิวและขจัดสิ่งตกค้าง","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"ใช้เซรั่มเข้มข้นโดยเน้นไปที่ข้อกังวลเฉพาะ เช่น ความกระจ่างใสหรือการต่อต้านวัย ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"แตะครีมบำรุงรอบดวงตาเบาๆ รอบดวงตาเพื่อเพิ่มความชุ่มชื้นและลดอาการบวมหรือรอยคล้ำ","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"ใช้ทรีทเมนต์เฉพาะจุดกับบริเวณที่มีปัญหา เช่น สิวหรือรอยตำหนิ ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"ล็อคความชุ่มชื้นด้วยการทามอยเจอร์ไรเซอร์ที่เหมาะกับสภาพผิวของคุณ ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"ปกป้องผิวของคุณจากรังสียูวีที่เป็นอันตรายโดยใช้ครีมกันแดดที่มีการป้องกันในวงกว้าง ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"ทาน้ำมันบำรุงผิวหน้าเนื้อบางเบาเพื่อกักเก็บความชุ่มชื้นและให้ผิวของคุณเปล่งประกายเปล่งประกาย ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"ใช้ไนท์ครีมเข้มข้นเพื่อช่วยซ่อมแซมและฟื้นฟูผิวขณะนอนหลับ ","Cleanser":"คลีนเซอร์","Toner":"ผงหมึก","Serum":"เซรั่ม","Eye Cream":"ครีมบำรุงรอบดวงตา","Spot Treatment":"การรักษาเฉพาะจุด","Moisturizer":"มอยเจอร์ไรเซอร์","Sunscreen":"ครีมกันแดด","Face Oil":"น้ำมันทาหน้า","Night Cream":"ไนท์ครีม","Add all to cart":"เพิ่มทั้งหมดลงในรถเข็น","All Products":"สินค้าทั้งหมด","validation.faceObstruction":"อาจมีอะไรบางอย่างบนผิวหน้า (ผม หรือ เจาะ)","Product added to cart":"สินค้าถูกเพิ่มลงตะกร้าแล้ว","products added to cart":"สินค้าถูกเพิ่มลงตะกร้า","You reached the limits of your plan":"คุณถึงขีดจำกัดของแผนของคุณแล้ว","Please renew your service for access":"โปรดต่ออายุบริการของคุณเพื่อการเข้าถึง","See the website’s privacy policy":"ดูนโยบายความเป็นส่วนตัวของเว็บไซต์"}')},sv:{translation:JSON.parse('{"Skin Analysis":"Hudanalys","Look Straight":"Se rak ut","Face Position":"Ansiktsposition","Lighting":"Belysning","Good":"Bra","Not Good":"Inte bra","Bad":"Dålig","Fair":"Rättvis","Powered by":"Drivs av","Your distance is close to the camera":"Ditt avstånd är nära kameran","Keep your face inside the circle":"Håll ditt ansikte inom cirkeln","Please stand in front of the camera":"Vänligen ställ dig framför kameran","There is more than one person in the picture":"Det är mer än en person på bilden","Drag & Drop":"Dra och släpp","Or":"Eller","browse":"bläddra","Supports: JPEG, JPG, PNG":"Stöder: JPEG, JPG, PNG","Release to Upload":"Släpp för att ladda upp","file not supported":"fil stöds inte","Sending Facial Data...":"Skickar ansiktsdata...","Scanning Face...":"Skannar ansikte...","Analyzing Facial Attributes...":"Analyserar ansiktsegenskaper...","AI Crafting Report..":"AI Crafting Report..","Skin Info":"Hudinformation","Fine Wrinkles":"Fina rynkor","Eye Wrinkles":"Ögonrynkor","Deep Wrinkles":"Djupa rynkor","Dark Circle":"Mörk cirkel","Eye Bag":"Ögonväska","Pores":"Porer","Pigment":"Pigment","Redness":"Rodnad","Oiliness":"Fetighet","Acnes":"Acne","Acne":"Acne","Skin Health":"Hudens hälsa","Instructions":"Instruktioner","Get Ready to Start Skin Analysis":"Gör dig redo att börja hudanalys","Remove the glasses":"Ta bort glasen","Clean your face":"Rengör ditt ansikte","Be in the right light":"Var i rätt ljus","Be neutral face and fix position":"Var neutralt ansikte och fixa position","Get Started":"Kom igång","privacy.text":"Upptäck hur du förbättrar din hud med rätt produkter och rutiner som är skräddarsydda för dig. Ladda upp din selfie för personliga rekommendationer, och var säker, din bild kommer att raderas efter analys","See our":"Se vår","Privacy Policy":"Sekretesspolicy","for more information":"för mer information","your picture quality is blurry":"din bildkvalitet är suddig","be wearing glasses":"ha glasögon på sig","please remove them":"snälla ta bort dem","Improve photo quality":"Förbättra fotokvaliteten","We noticed you might":"Vi märkte att du kanske","and":"och","for better results":"för bättre resultat","Tips for taking better selfies":"Tips för att ta bättre selfies","Continue":"Fortsätta","Generate routine for you":"Skapa rutin åt dig","Re-take":"Ta om","Get recommended products!":"Få rekommenderade produkter!","Recommendation Products":"Rekommendationsprodukter","Products That Just Work For you":"Produkter som bara fungerar för dig","My Skin Report":"My Skin Report","Add to cart":"Lägg till i varukorgen","Add again":"Lägg till igen","Checkout":"Kassa","My Routines":"Mina rutiner","Your":"Din","Routine":"Rutin","Morning":"Morgon","Night":"Natt","Error":"Fel","The face is not visible in the picture":"Ansiktet syns inte på bilden","The input image is not suitable":"Ingångsbilden är inte lämplig","An error occurred, please check again":"Ett fel uppstod, kontrollera igen","Camera permission denied.":"Kameratillstånd nekad.","Unable to access the camera.":"Det går inte att komma åt kameran.","validation.blurry":"Din bild är suddig","validation.eyeGlass":"Du har glasögon","validation.brightness":"Ljuset i ditt ansikte är inte lämpligt","validation.neutralFace":"Ansiktet är inte neutralt (du kanske har ett leende)","Image is not suitable":"Bilden är inte lämplig","Check how you can improve your skin with the proper product and routine":"Kolla hur du kan förbättra din hud med rätt produkt och rutin","There are no products to display":"Det finns inga produkter att visa","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Börja med att tvätta ansiktet för att ta bort smuts, olja och orenheter. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Använd en ansiktsvatten för att balansera hudens pH och ta bort eventuella rester.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Applicera ett koncentrerat serum med inriktning på specifika problem, som ljusning eller anti-aging. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Klappa försiktigt ögonkrämen runt ögonområdet för att återfukta och minska svullnader eller mörka ringar.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Applicera punktbehandling på alla problemområden, såsom akne eller fläckar. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Lås in återfuktning genom att applicera en fuktkräm som passar din hudtyp. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Skydda din hud från skadliga UV-strålar genom att använda solskyddsmedel med brett spektrumskydd. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Applicera en lätt ansiktsolja för att täta in fukt och ge din hud en strålande lyster. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Använd en rik nattkräm för att reparera och återställa din hud medan du sover. ","Cleanser":"Rengöringsmedel","Toner":"Toner","Serum":"Serum","Eye Cream":"Ögonkräm","Spot Treatment":"Fläckbehandling","Moisturizer":"Fuktighetskräm","Sunscreen":"Solskyddsmedel","Face Oil":"Ansiktsolja","Night Cream":"Nattkräm","Add all to cart":"Lägg allt i varukorgen","All Products":"Alla produkter","validation.faceObstruction":"Det finns förmodligen något på ytan av ansiktshuden (hår eller piercing)","Product added to cart":"Produkten har lagts till i kundvagnen","products added to cart":"produkter läggs till i kundvagnen","You reached the limits of your plan":"Du nådde gränserna för din plan","Please renew your service for access":"Vänligen förnya din tjänst för åtkomst","See the website’s privacy policy":"Se webbplatsens sekretesspolicy"}')},es:{translation:JSON.parse('{"Skin Analysis":"Analyse de la peau","Look Straight":"Regardez droit","Face Position":"Position du visage","Lighting":"Éclairage","Good":"Bien","Not Good":"Pas bon","Bad":"Mauvais","Fair":"Équitable","Powered by":"Alimenté par","Your distance is close to the camera":"Votre distance est proche de la caméra","Keep your face inside the circle":"Gardez votre visage à l\'intérieur du cercle","Please stand in front of the camera":"Veuillez vous tenir devant la caméra","There is more than one person in the picture":"Il y a plus d\'une personne sur la photo","Drag & Drop":"Glisser-déposer","Or":"Ou","browse":"parcourir","Supports: JPEG, JPG, PNG":"Prise en charge : JPEG, JPG, PNG","Release to Upload":"Libérer pour télécharger","file not supported":"fichier non pris en charge","Sending Facial Data...":"Envoi de données faciales...","Scanning Face...":"Numérisation du visage...","Analyzing Facial Attributes...":"Analyse des attributs du visage...","AI Crafting Report..":"Rapport de création d\'IA.","Skin Info":"Informations sur la peau","Fine Wrinkles":"Arrugas finas","Eye Wrinkles":"Rides des yeux","Deep Wrinkles":"Rides profondes","Dark Circle":"Cercle noir","Eye Bag":"Sac pour les yeux","Pores":"Pores","Pigment":"Pigmento","Redness":"Rougeur","Oiliness":"Onctuosité","Acnes":"Acné","Acne":"Acné","Skin Health":"Santé de la peau","Instructions":"Instructions","Get Ready to Start Skin Analysis":"Préparez-vous à commencer l\'analyse de la peau","Remove the glasses":"Retirez les lunettes","Clean your face":"Nettoyez votre visage","Be in the right light":"Soyez sous le bon jour","Be neutral face and fix position":"Soyez neutre et fixez votre position","Get Started":"Commencer","privacy.text":"Descubra cómo mejorar su piel con los productos adecuados y la rutina adaptada a usted. Sube tu selfie para obtener recomendaciones personalizadas y ten la seguridad de que tu imagen se eliminará después del análisis.","See our":"Voir notre","Privacy Policy":"politique de confidentialité","for more information":"pour plus d\'informations","your picture quality is blurry":"la qualité de votre image est floue","be wearing glasses":"porter des lunettes","please remove them":"veuillez les supprimer","Improve photo quality":"Améliorer la qualité des photos","We noticed you might":"Nous avons remarqué que vous pourriez","and":"et","for better results":"pour de meilleurs résultats","Tips for taking better selfies":"Conseils pour prendre de meilleurs selfies","Continue":"Continuer","Generate routine for you":"Générez une routine pour vous","Re-take":"Reprendre","Get recommended products!":"Obtenez des produits recommandés !","Recommendation Products":"Produits recommandés","Products That Just Work For you":"Des produits qui fonctionnent juste pour vous","My Skin Report":"Mon rapport sur la peau","Add to cart":"Ajouter au panier","Add again":"Ajouter à nouveau","Checkout":"Vérifier","My Routines":"Mes routines","Your":"Ton","Routine":"Routine","Morning":"Matin","Night":"Nuit","Error":"Erreur","The face is not visible in the picture":"Le visage n\'est pas visible sur la photo","The input image is not suitable":"L\'image d\'entrée ne convient pas","An error occurred, please check again":"Une erreur s\'est produite, veuillez vérifier à nouveau","Camera permission denied.":"Autorisation de la caméra refusée.","Unable to access the camera.":"Impossible d\'accéder à la caméra.","validation.blurry":"Tu imagen esta borrosa","validation.eyeGlass":"tienes gafas","validation.brightness":"La luz en tu cara no es la adecuada.","validation.neutralFace":"La cara no es neutral (puede que tengas una sonrisa)","Image is not suitable":"L\'image ne convient pas","Check how you can improve your skin with the proper product and routine":"Vérifiez comment vous pouvez améliorer votre peau avec le produit et la routine appropriés","There are no products to display":"Il n\'y a aucun produit à afficher","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"Commencez par vous laver le visage pour éliminer la saleté, l’huile et les impuretés. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"Utilisez un tonique pour équilibrer le pH de votre peau et éliminer tout résidu restant.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"Appliquez un sérum concentré ciblant des préoccupations spécifiques, comme éclaircissantes ou anti-âge. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"Appliquez doucement la crème pour les yeux autour du contour des yeux pour hydrater et réduire les poches ou les cernes.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"Appliquez un traitement localisé sur toutes les zones à problèmes, telles que l\'acné ou les imperfections. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"Conservez l\'hydratation en appliquant une crème hydratante adaptée à votre type de peau. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"Protégez votre peau des rayons UV nocifs en utilisant un écran solaire offrant une protection à large spectre. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"Appliquez une huile légère pour le visage pour retenir l’humidité et donner à votre peau un éclat radieux. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"Utilisez une crème de nuit riche pour aider à réparer et restaurer votre peau pendant que vous dormez. ","Cleanser":"Nettoyant","Toner":"Tonique","Serum":"Sérum","Eye Cream":"Crème pour les yeux","Spot Treatment":"Traitement localisé","Moisturizer":"Crème hydratante","Sunscreen":"Crème solaire","Face Oil":"Huile Visage","Night Cream":"Crème de Nuit","Add all to cart":"Añadir todo al carrito","All Products":"Todos los productos","validation.faceObstruction":"Probablemente haya algo en la superficie de la piel del rostro (pelo o piercing).","Product added to cart":"Producto agregado al carrito","products added to cart":"productos agregados al carrito","You reached the limits of your plan":"Llegaste a los límites de tu plan.","Please renew your service for access":"Por favor renueve su servicio para acceder","See the website’s privacy policy":"Ver la política de privacidad del sitio web"}')},ar:{translation:JSON.parse('{"Skin Analysis":"تحليل الجلد","Look Straight":"تبدو مستقيمة","Face Position":"موقف الوجه","Lighting":"إضاءة","Good":"جيد","Not Good":"ليس جيدا","Bad":"سيء","Fair":"عدل","Powered by":"مدعوم من","Your distance is close to the camera":"المسافة الخاصة بك قريبة من الكاميرا","Keep your face inside the circle":"أبقِ وجهك داخل الدائرة","Please stand in front of the camera":"يرجى الوقوف أمام الكاميرا","There is more than one person in the picture":"يوجد أكثر من شخص في الصورة","Drag & Drop":"السحب والإسقاط","Or":"أو","browse":"تصفح","Supports: JPEG, JPG, PNG":"يدعم: JPEG، JPG، PNG","Release to Upload":"الافراج للتحميل","file not supported":"الملف غير مدعوم","Sending Facial Data...":"إرسال بيانات الوجه...","Scanning Face...":"مسح الوجه...","Analyzing Facial Attributes...":"تحليل سمات الوجه...","AI Crafting Report..":"تقرير صياغة الذكاء الاصطناعي..","Skin Info":"معلومات الجلد","Fine Wrinkles":"التجاعيد الدقيقة","Eye Wrinkles":"تجاعيد العين","Deep Wrinkles":"التجاعيد العميقة","Dark Circle":"الدائرة المظلمة","Eye Bag":"حقيبة العين","Pores":"المسام","Pigment":"الصباغ","Redness":"احمرار","Oiliness":"زيتية","Acnes":"حَبُّ الشّبَاب","Acne":"حَبُّ الشّبَاب","Skin Health":"صحة الجلد","Instructions":"تعليمات","Get Ready to Start Skin Analysis":"استعد لبدء تحليل الجلد","Remove the glasses":"قم بإزالة النظارات","Clean your face":"نظف وجهك","Be in the right light":"كن في الضوء الصحيح","Be neutral face and fix position":"كن محايدًا للوجه وثبت الموقف","Get Started":"ابدأ","privacy.text":"اكتشف كيفية تحسين بشرتك باستخدام المنتجات المناسبة والروتين المناسب لك. قم بتحميل صورتك الشخصية للحصول على توصيات مخصصة، وكن مطمئنًا، سيتم حذف صورتك بعد التحليل","See our":"انظر لدينا","Privacy Policy":"سياسة الخصوصية","for more information":"لمزيد من المعلومات","your picture quality is blurry":"جودة صورتك ضبابية","be wearing glasses":"يكون يرتدي النظارات","please remove them":"يرجى إزالتها","Improve photo quality":"تحسين جودة الصورة","We noticed you might":"لقد لاحظنا أنك قد تفعل ذلك","and":"و","for better results":"للحصول على نتائج أفضل","Tips for taking better selfies":"نصائح لالتقاط صور سيلفي أفضل","Continue":"يكمل","Generate routine for you":"إنشاء روتين بالنسبة لك","Re-take":"إعادة اتخاذ","Get recommended products!":"احصل على المنتجات الموصى بها!","Recommendation Products":"منتجات التوصية","Products That Just Work For you":"المنتجات التي تناسبك فقط","My Skin Report":"تقرير بشرتي","Add to cart":"أضف إلى السلة","Add again":"أضف مرة أخرى","Checkout":"الدفع","My Routines":"روتيناتي","Your":"لك","Routine":"روتين","Morning":"صباح","Night":"ليلة","Error":"خطأ","The face is not visible in the picture":"الوجه غير ظاهر في الصورة","The input image is not suitable":"صورة الإدخال غير مناسبة","An error occurred, please check again":"حدث خطأ، يرجى التحقق مرة أخرى","Camera permission denied.":"تم رفض إذن الكاميرا.","Unable to access the camera.":"غير قادر على الوصول إلى الكاميرا.","validation.blurry":"صورتك ضبابية","validation.eyeGlass":"لديك نظارات","validation.brightness":"الضوء على وجهك غير مناسب","validation.neutralFace":"الوجه ليس محايدًا (قد تبتسم)","Image is not suitable":"الصورة غير مناسبة","Check how you can improve your skin with the proper product and routine":"تحقق من كيفية تحسين بشرتك باستخدام المنتج والروتين المناسبين","There are no products to display":"لا توجد منتجات لعرضها","Start by washing your face to remove dirt, oil, and impurities. This prepares your skin for the next steps and leaves it feeling refreshed.":"ابدأ بغسل وجهك لإزالة الأوساخ والزيوت والشوائب. ","Use a toner to balance your skin’s pH and remove any leftover residue.":"استخدمي التونر لموازنة درجة حموضة بشرتك وإزالة أي بقايا متبقية.","Apply a concentrated serum targeting specific concerns, like brightening or anti-aging. Serums penetrate deeper into the skin to deliver active ingredients.":"ضعي مصلًا مركّزًا يستهدف اهتمامات محددة، مثل تفتيح البشرة أو مكافحة الشيخوخة. ","Gently pat eye cream around the eye area to hydrate and reduce puffiness or dark circles.":"ضعي كريم العين بلطف حول منطقة العين لترطيبها وتقليل الانتفاخ أو الهالات السوداء.","Apply spot treatment on any problem areas, such as acne or blemishes. It delivers targeted care to help clear up those imperfections faster.":"ضعي علاجًا موضعيًا على أي مناطق تعاني من مشاكل، مثل حب الشباب أو العيوب. ","Lock in hydration by applying a moisturizer that suits your skin type. This keeps your skin soft, smooth, and protected from environmental factors.":"احتفظي بالترطيب من خلال وضع مرطب يناسب نوع بشرتك. ","Protect your skin from harmful UV rays by using sunscreen with broad-spectrum protection. Sunscreen is essential even on cloudy days to prevent skin damage.":"قم بحماية بشرتك من الأشعة فوق البنفسجية الضارة باستخدام واقي الشمس ذو الحماية واسعة النطاق. ","Apply a lightweight face oil to seal in moisture and give your skin a radiant glow. It adds an extra layer of hydration and nourishment.":"ضعي زيت وجه خفيف الوزن للحفاظ على الرطوبة ومنح بشرتك توهجًا مشعًا. ","Use a rich night cream to help repair and restore your skin while you sleep. It deeply hydrates and supports the skin’s natural nighttime regeneration.":"استخدمي كريمًا ليليًا غنيًا للمساعدة في إصلاح واستعادة بشرتك أثناء النوم. ","Cleanser":"منظف","Toner":"الحبر","Serum":"مصل","Eye Cream":"كريم العين","Spot Treatment":"علاج البقع","Moisturizer":"مرطب","Sunscreen":"واقي الشمس","Face Oil":"زيت الوجه","Night Cream":"كريم الليل","Add all to cart":"أضف الكل إلى سلة التسوق","All Products":"جميع المنتجات","validation.faceObstruction":"من المحتمل أن يكون هناك شيء ما على سطح بشرة الوجه (شعر أو ثقب)","Product added to cart":"تمت إضافة المنتج إلى سلة التسوق","products added to cart":"المنتجات المضافة إلى سلة التسوق","You reached the limits of your plan":"لقد وصلت إلى حدود خطتك","Please renew your service for access":"يرجى تجديد الخدمة للوصول إليها","See the website’s privacy policy":"راجع سياسة الخصوصية الخاصة بالموقع"}')}};function Ka(e){return Ka="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ka(e)}function $a(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Za(i.key),i)}}function Za(e){var t=function(e){if("object"!=Ka(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=Ka(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Ka(t)?t:t+""}Sn.init({resources:Ya,lng:"en",fallbackLng:"en",interpolation:{escapeValue:!1}});var Xa=function(){return e=function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.opts=t,this.w=new Bn(t).init(),this.el=this.w.config.element,new Ja(this).initModules()},t=[{key:"render",value:function(){var e=this;return new Promise((function(t,n){null!==e.el?(e.w.globals.faceID=Oa.randomId(),e.core.setupElements()):n(new Error("Element not found"))}))}},{key:"onload",value:function(e){var t=this;return new Promise((function(n,i){"function"==typeof e?t.w.globals.onload=function(t){try{e(t)}catch(e){i(new Error("Error calling:",e.message))}}:i(new Error("function not valid"))}))}},{key:"onClickProblem",value:function(e){var t=this;return new Promise((function(n,i){"function"==typeof e?t.w.globals.onClickProblem=function(t){try{e(t)}catch(e){i(new Error("Error calling:",e.message))}}:i(new Error("function not valid"))}))}},{key:"onAddToCart",value:function(e){var t=this;return new Promise((function(n,i){"function"==typeof e?t.w.globals.onAddToCart=function(t){try{e(t)}catch(e){i(new Error("Error calling:",e.message))}}:i(new Error("function not valid"))}))}},{key:"onCheckout",value:function(e){var t=this;return new Promise((function(n,i){"function"==typeof e?t.w.globals.onCheckout=function(t){try{e(t)}catch(e){i(new Error("Error calling:",e.message))}}:i(new Error("function not valid"))}))}},{key:"onClickProduct",value:function(e){var t=this;return new Promise((function(n,i){"function"==typeof e?t.w.globals.onClickProduct=function(t){try{e(t)}catch(e){i(new Error("Error calling:",e.message))}}:i(new Error("function not valid"))}))}},{key:"onDisplayProducts",value:function(e){var t=this;return new Promise((function(n,i){"function"==typeof e?t.w.globals.onDisplayProducts=function(t){try{e(t)}catch(e){i(new Error("Error calling:",e.message))}}:i(new Error("function not valid"))}))}},{key:"onDisplayRoutines",value:function(e){var t=this;return new Promise((function(n,i){"function"==typeof e?t.w.globals.onDisplayRoutines=function(t){try{e(t)}catch(e){i(new Error("Error calling:",e.message))}}:i(new Error("function not valid"))}))}},{key:"onCloseModal",value:function(e){var t=this;return new Promise((function(n,i){"function"==typeof e?t.w.globals.onCloseModal=function(t){try{e(t)}catch(e){i(new Error("Error calling:",e.message))}}:i(new Error("function not valid"))}))}},{key:"onResetData",value:function(e){var t=this;return new Promise((function(n,i){"function"==typeof e?t.w.globals.onRefresh=function(n){try{t.w.globals.productLists&&(t.w.globals.productLists=[]),t.w.globals.productAddToCart&&(t.w.globals.productAddToCart=[]),t.w.globals.productLoader=!1,e(n)}catch(e){i(new Error("Error calling:",e.message))}}:i(new Error("function not valid"))}))}}],t&&$a(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}()})(),i.default})()));