@tryghost/portal 2.33.2 → 2.33.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.
package/umd/portal.min.js CHANGED
@@ -1,5 +1,5 @@
1
1
  (function(){"use strict";try{if(typeof document<"u"){var t=document.createElement("style");t.appendChild(document.createTextNode(".gh-portal-account-header{display:flex;flex-direction:column;align-items:center;margin:0 0 32px}.gh-portal-account-header .gh-portal-avatar{margin:6px 0 8px!important}.gh-portal-account-data{margin-bottom:40px}footer.gh-portal-account-footer{display:flex}.gh-portal-account-footer.paid{margin-top:12px}.gh-portal-account-footermenu{display:flex;align-items:center;list-style:none;padding:0;margin:0}.gh-portal-account-footerright{display:flex;flex-grow:1;align-items:center;justify-content:flex-end}.gh-portal-account-footermenu li{margin-right:16px}.gh-portal-account-footermenu li:last-of-type{margin-right:0}.gh-portal-freeaccount-newsletter{display:flex;align-items:center;justify-content:space-between;margin-top:24px}.gh-portal-freeaccount-newsletter .label{display:flex;flex-direction:column;flex-grow:1}.gh-portal-free-ctatext{margin-top:-12px}.gh-portal-cancelcontinue-container{margin:24px 0 32px}.gh-portal-list-detail .gh-portal-email-notice{display:flex;align-items:center;gap:5px;margin-top:6px;color:var(--red);font-weight:500;font-size:1.25rem;letter-spacing:.2px}.gh-portal-email-notice-icon{width:20px;height:20px}.gh-portal-billing-button-loader{width:32px;height:32px;margin-right:-3px;opacity:.6}.gh-portal-product-icon{width:52px;margin-right:12px;border-radius:2px}.gh-portal-account-discountcontainer{position:relative;display:flex;align-items:center}.gh-portal-account-old-price{text-decoration:line-through;color:var(--grey9)!important}.gh-portal-account-tagicon{width:16px;height:16px;color:var(--brandcolor);margin-right:5px;z-index:999}@media (max-width: 390px){.gh-portal-account-footer{padding:0!important}}@media (max-width: 340px){.gh-portal-account-footer{padding:0!important;flex-wrap:wrap;gap:12px}.gh-portal-account-footer .gh-portal-account-footerright{justify-content:flex-start}}.gh-email-suppressed-page-title{margin-bottom:14px}.gh-email-suppressed-page-icon{display:block;width:38px;height:38px;margin:0 auto 18px}.gh-email-suppressed-page-text{padding:0 14px;text-align:center;color:var(--grey6)}.gh-email-faq-footer-text{color:var(--grey8)}.gh-portal-list-detail.email-newsletter .gh-email-faq-page-button{display:block;margin-top:3px}.accountEmail .gh-email-faq-page-button{margin-left:4px}.emailReceivingFAQ .gh-portal-btn-back,.emailReceivingFAQ .gh-portal-btn-back:hover{left:calc(6vmin - 14px)}.emailReceivingFAQ .gh-portal-closeicon-container{right:calc(6vmin - 20px)}@media (max-width: 480px){.emailReceivingFAQ .gh-portal-btn-back,.emailReceivingFAQ .gh-portal-btn-back:hover{left:16px}.emailReceivingFAQ .gh-portal-closeicon-container{right:24px}}.gh-email-faq-page-button{color:var(--brandcolor);cursor:pointer;background:none;transition:color linear .1s;font-size:1.45rem}")),document.head.appendChild(t)}}catch(e){console.error("vite-plugin-css-injected-by-js",e)}})();
2
- (function(je){typeof define=="function"&&define.amd?define(je):je()})(function(){var eu,ng,rg;"use strict";var H1=Object.defineProperty;var q1=(je,Qe,Fe)=>Qe in je?H1(je,Qe,{enumerable:!0,configurable:!0,writable:!0,value:Fe}):je[Qe]=Fe;var G=(je,Qe,Fe)=>(q1(je,typeof Qe!="symbol"?Qe+"":Qe,Fe),Fe);function je(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Qe={exports:{}},Fe={};/*
2
+ (function(je){typeof define=="function"&&define.amd?define(je):je()})(function(){var eu,ng,rg;"use strict";var H1=Object.defineProperty;var q1=(je,Qe,Ye)=>Qe in je?H1(je,Qe,{enumerable:!0,configurable:!0,writable:!0,value:Ye}):je[Qe]=Ye;var G=(je,Qe,Ye)=>(q1(je,typeof Qe!="symbol"?Qe+"":Qe,Ye),Ye);function je(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Qe={exports:{}},Ye={};/*
3
3
  object-assign
4
4
  (c) Sindre Sorhus
5
5
  @license MIT
@@ -17,14 +17,14 @@ object-assign
17
17
  *
18
18
  * This source code is licensed under the MIT license found in the
19
19
  * LICENSE file in the root directory of this source tree.
20
- */var mg=v,vu=60103;if(Fe.Fragment=60107,typeof Symbol=="function"&&Symbol.for){var ku=Symbol.for;vu=ku("react.element"),Fe.Fragment=ku("react.fragment")}var hg=mg.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,fg=Object.prototype.hasOwnProperty,gg={key:!0,ref:!0,__self:!0,__source:!0};function wu(e,t,n){var r,a={},i=null,o=null;n!==void 0&&(i=""+n),t.key!==void 0&&(i=""+t.key),t.ref!==void 0&&(o=t.ref);for(r in t)fg.call(t,r)&&!gg.hasOwnProperty(r)&&(a[r]=t[r]);if(e&&e.defaultProps)for(r in t=e.defaultProps,t)a[r]===void 0&&(a[r]=t[r]);return{$$typeof:vu,type:e,key:i,ref:o,props:a,_owner:hg.current}}Fe.jsx=wu,Fe.jsxs=wu,Qe.exports=Fe;var c=Qe.exports,xu={exports:{}},Ie={},Su={exports:{}},Eu={};/** @license React v0.20.2
20
+ */var mg=v,vu=60103;if(Ye.Fragment=60107,typeof Symbol=="function"&&Symbol.for){var ku=Symbol.for;vu=ku("react.element"),Ye.Fragment=ku("react.fragment")}var hg=mg.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,fg=Object.prototype.hasOwnProperty,gg={key:!0,ref:!0,__self:!0,__source:!0};function wu(e,t,n){var r,a={},i=null,o=null;n!==void 0&&(i=""+n),t.key!==void 0&&(i=""+t.key),t.ref!==void 0&&(o=t.ref);for(r in t)fg.call(t,r)&&!gg.hasOwnProperty(r)&&(a[r]=t[r]);if(e&&e.defaultProps)for(r in t=e.defaultProps,t)a[r]===void 0&&(a[r]=t[r]);return{$$typeof:vu,type:e,key:i,ref:o,props:a,_owner:hg.current}}Ye.jsx=wu,Ye.jsxs=wu,Qe.exports=Ye;var c=Qe.exports,xu={exports:{}},Ie={},Su={exports:{}},Eu={};/** @license React v0.20.2
21
21
  * scheduler.production.min.js
22
22
  *
23
23
  * Copyright (c) Facebook, Inc. and its affiliates.
24
24
  *
25
25
  * This source code is licensed under the MIT license found in the
26
26
  * LICENSE file in the root directory of this source tree.
27
- */(function(e){var t,n,r,a;if(typeof performance=="object"&&typeof performance.now=="function"){var i=performance;e.unstable_now=function(){return i.now()}}else{var o=Date,s=o.now();e.unstable_now=function(){return o.now()-s}}if(typeof window>"u"||typeof MessageChannel!="function"){var l=null,u=null,p=function(){if(l!==null)try{var _=e.unstable_now();l(!0,_),l=null}catch(A){throw setTimeout(p,0),A}};t=function(_){l!==null?setTimeout(t,0,_):(l=_,setTimeout(p,0))},n=function(_,A){u=setTimeout(_,A)},r=function(){clearTimeout(u)},e.unstable_shouldYield=function(){return!1},a=e.unstable_forceFrameRate=function(){}}else{var m=window.setTimeout,d=window.clearTimeout;if(typeof console<"u"){var y=window.cancelAnimationFrame;typeof window.requestAnimationFrame!="function"&&console.error("This browser doesn't support requestAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills"),typeof y!="function"&&console.error("This browser doesn't support cancelAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills")}var b=!1,x=null,f=-1,h=5,g=0;e.unstable_shouldYield=function(){return e.unstable_now()>=g},a=function(){},e.unstable_forceFrameRate=function(_){0>_||125<_?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):h=0<_?Math.floor(1e3/_):5};var w=new MessageChannel,k=w.port2;w.port1.onmessage=function(){if(x!==null){var _=e.unstable_now();g=_+h;try{x(!0,_)?k.postMessage(null):(b=!1,x=null)}catch(A){throw k.postMessage(null),A}}else b=!1},t=function(_){x=_,b||(b=!0,k.postMessage(null))},n=function(_,A){f=m(function(){_(e.unstable_now())},A)},r=function(){d(f),f=-1}}function C(_,A){var M=_.length;_.push(A);e:for(;;){var Z=M-1>>>1,me=_[Z];if(me!==void 0&&0<T(me,A))_[Z]=A,_[M]=me,M=Z;else break e}}function S(_){return _=_[0],_===void 0?null:_}function $(_){var A=_[0];if(A!==void 0){var M=_.pop();if(M!==A){_[0]=M;e:for(var Z=0,me=_.length;Z<me;){var fn=2*(Z+1)-1,gn=_[fn],Ia=fn+1,gr=_[Ia];if(gn!==void 0&&0>T(gn,M))gr!==void 0&&0>T(gr,gn)?(_[Z]=gr,_[Ia]=M,Z=Ia):(_[Z]=gn,_[fn]=M,Z=fn);else if(gr!==void 0&&0>T(gr,M))_[Z]=gr,_[Ia]=M,Z=Ia;else break e}}return A}return null}function T(_,A){var M=_.sortIndex-A.sortIndex;return M!==0?M:_.id-A.id}var j=[],O=[],ot=1,ie=null,W=3,st=!1,Ye=!1,qt=!1;function pe(_){for(var A=S(O);A!==null;){if(A.callback===null)$(O);else if(A.startTime<=_)$(O),A.sortIndex=A.expirationTime,C(j,A);else break;A=S(O)}}function lt(_){if(qt=!1,pe(_),!Ye)if(S(j)!==null)Ye=!0,t(fr);else{var A=S(O);A!==null&&n(lt,A.startTime-_)}}function fr(_,A){Ye=!1,qt&&(qt=!1,r()),st=!0;var M=W;try{for(pe(A),ie=S(j);ie!==null&&(!(ie.expirationTime>A)||_&&!e.unstable_shouldYield());){var Z=ie.callback;if(typeof Z=="function"){ie.callback=null,W=ie.priorityLevel;var me=Z(ie.expirationTime<=A);A=e.unstable_now(),typeof me=="function"?ie.callback=me:ie===S(j)&&$(j),pe(A)}else $(j);ie=S(j)}if(ie!==null)var fn=!0;else{var gn=S(O);gn!==null&&n(lt,gn.startTime-A),fn=!1}return fn}finally{ie=null,W=M,st=!1}}var Ho=a;e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(_){_.callback=null},e.unstable_continueExecution=function(){Ye||st||(Ye=!0,t(fr))},e.unstable_getCurrentPriorityLevel=function(){return W},e.unstable_getFirstCallbackNode=function(){return S(j)},e.unstable_next=function(_){switch(W){case 1:case 2:case 3:var A=3;break;default:A=W}var M=W;W=A;try{return _()}finally{W=M}},e.unstable_pauseExecution=function(){},e.unstable_requestPaint=Ho,e.unstable_runWithPriority=function(_,A){switch(_){case 1:case 2:case 3:case 4:case 5:break;default:_=3}var M=W;W=_;try{return A()}finally{W=M}},e.unstable_scheduleCallback=function(_,A,M){var Z=e.unstable_now();switch(typeof M=="object"&&M!==null?(M=M.delay,M=typeof M=="number"&&0<M?Z+M:Z):M=Z,_){case 1:var me=-1;break;case 2:me=250;break;case 5:me=1073741823;break;case 4:me=1e4;break;default:me=5e3}return me=M+me,_={id:ot++,callback:A,priorityLevel:_,startTime:M,expirationTime:me,sortIndex:-1},M>Z?(_.sortIndex=M,C(O,_),S(j)===null&&_===S(O)&&(qt?r():qt=!0,n(lt,M-Z))):(_.sortIndex=me,C(j,_),Ye||st||(Ye=!0,t(fr))),_},e.unstable_wrapCallback=function(_){var A=W;return function(){var M=W;W=A;try{return _.apply(this,arguments)}finally{W=M}}}})(Eu),Su.exports=Eu;var yg=Su.exports;/** @license React v17.0.2
27
+ */(function(e){var t,n,r,a;if(typeof performance=="object"&&typeof performance.now=="function"){var i=performance;e.unstable_now=function(){return i.now()}}else{var o=Date,s=o.now();e.unstable_now=function(){return o.now()-s}}if(typeof window>"u"||typeof MessageChannel!="function"){var l=null,u=null,p=function(){if(l!==null)try{var _=e.unstable_now();l(!0,_),l=null}catch(A){throw setTimeout(p,0),A}};t=function(_){l!==null?setTimeout(t,0,_):(l=_,setTimeout(p,0))},n=function(_,A){u=setTimeout(_,A)},r=function(){clearTimeout(u)},e.unstable_shouldYield=function(){return!1},a=e.unstable_forceFrameRate=function(){}}else{var m=window.setTimeout,d=window.clearTimeout;if(typeof console<"u"){var y=window.cancelAnimationFrame;typeof window.requestAnimationFrame!="function"&&console.error("This browser doesn't support requestAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills"),typeof y!="function"&&console.error("This browser doesn't support cancelAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills")}var b=!1,x=null,f=-1,h=5,g=0;e.unstable_shouldYield=function(){return e.unstable_now()>=g},a=function(){},e.unstable_forceFrameRate=function(_){0>_||125<_?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):h=0<_?Math.floor(1e3/_):5};var w=new MessageChannel,k=w.port2;w.port1.onmessage=function(){if(x!==null){var _=e.unstable_now();g=_+h;try{x(!0,_)?k.postMessage(null):(b=!1,x=null)}catch(A){throw k.postMessage(null),A}}else b=!1},t=function(_){x=_,b||(b=!0,k.postMessage(null))},n=function(_,A){f=m(function(){_(e.unstable_now())},A)},r=function(){d(f),f=-1}}function C(_,A){var M=_.length;_.push(A);e:for(;;){var Z=M-1>>>1,me=_[Z];if(me!==void 0&&0<T(me,A))_[Z]=A,_[M]=me,M=Z;else break e}}function S(_){return _=_[0],_===void 0?null:_}function $(_){var A=_[0];if(A!==void 0){var M=_.pop();if(M!==A){_[0]=M;e:for(var Z=0,me=_.length;Z<me;){var fn=2*(Z+1)-1,gn=_[fn],Ia=fn+1,gr=_[Ia];if(gn!==void 0&&0>T(gn,M))gr!==void 0&&0>T(gr,gn)?(_[Z]=gr,_[Ia]=M,Z=Ia):(_[Z]=gn,_[fn]=M,Z=fn);else if(gr!==void 0&&0>T(gr,M))_[Z]=gr,_[Ia]=M,Z=Ia;else break e}}return A}return null}function T(_,A){var M=_.sortIndex-A.sortIndex;return M!==0?M:_.id-A.id}var j=[],O=[],ot=1,ie=null,W=3,st=!1,Fe=!1,qt=!1;function pe(_){for(var A=S(O);A!==null;){if(A.callback===null)$(O);else if(A.startTime<=_)$(O),A.sortIndex=A.expirationTime,C(j,A);else break;A=S(O)}}function lt(_){if(qt=!1,pe(_),!Fe)if(S(j)!==null)Fe=!0,t(fr);else{var A=S(O);A!==null&&n(lt,A.startTime-_)}}function fr(_,A){Fe=!1,qt&&(qt=!1,r()),st=!0;var M=W;try{for(pe(A),ie=S(j);ie!==null&&(!(ie.expirationTime>A)||_&&!e.unstable_shouldYield());){var Z=ie.callback;if(typeof Z=="function"){ie.callback=null,W=ie.priorityLevel;var me=Z(ie.expirationTime<=A);A=e.unstable_now(),typeof me=="function"?ie.callback=me:ie===S(j)&&$(j),pe(A)}else $(j);ie=S(j)}if(ie!==null)var fn=!0;else{var gn=S(O);gn!==null&&n(lt,gn.startTime-A),fn=!1}return fn}finally{ie=null,W=M,st=!1}}var Ho=a;e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(_){_.callback=null},e.unstable_continueExecution=function(){Fe||st||(Fe=!0,t(fr))},e.unstable_getCurrentPriorityLevel=function(){return W},e.unstable_getFirstCallbackNode=function(){return S(j)},e.unstable_next=function(_){switch(W){case 1:case 2:case 3:var A=3;break;default:A=W}var M=W;W=A;try{return _()}finally{W=M}},e.unstable_pauseExecution=function(){},e.unstable_requestPaint=Ho,e.unstable_runWithPriority=function(_,A){switch(_){case 1:case 2:case 3:case 4:case 5:break;default:_=3}var M=W;W=_;try{return A()}finally{W=M}},e.unstable_scheduleCallback=function(_,A,M){var Z=e.unstable_now();switch(typeof M=="object"&&M!==null?(M=M.delay,M=typeof M=="number"&&0<M?Z+M:Z):M=Z,_){case 1:var me=-1;break;case 2:me=250;break;case 5:me=1073741823;break;case 4:me=1e4;break;default:me=5e3}return me=M+me,_={id:ot++,callback:A,priorityLevel:_,startTime:M,expirationTime:me,sortIndex:-1},M>Z?(_.sortIndex=M,C(O,_),S(j)===null&&_===S(O)&&(qt?r():qt=!0,n(lt,M-Z))):(_.sortIndex=me,C(j,_),Fe||st||(Fe=!0,t(fr))),_},e.unstable_wrapCallback=function(_){var A=W;return function(){var M=W;W=A;try{return _.apply(this,arguments)}finally{W=M}}}})(Eu),Su.exports=Eu;var yg=Su.exports;/** @license React v17.0.2
28
28
  * react-dom.production.min.js
29
29
  *
30
30
  * Copyright (c) Facebook, Inc. and its affiliates.
@@ -35,28 +35,28 @@ object-assign
35
35
  `+ls+e}var cs=!1;function Ua(e,t){if(!e||cs)return"";cs=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(t)if(t=function(){throw Error()},Object.defineProperty(t.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(t,[])}catch(l){var r=l}Reflect.construct(e,[],t)}else{try{t.call()}catch(l){r=l}e.call(t.prototype)}else{try{throw Error()}catch(l){r=l}e()}}catch(l){if(l&&r&&typeof l.stack=="string"){for(var a=l.stack.split(`
36
36
  `),i=r.stack.split(`
37
37
  `),o=a.length-1,s=i.length-1;1<=o&&0<=s&&a[o]!==i[s];)s--;for(;1<=o&&0<=s;o--,s--)if(a[o]!==i[s]){if(o!==1||s!==1)do if(o--,s--,0>s||a[o]!==i[s])return`
38
- `+a[o].replace(" at new "," at ");while(1<=o&&0<=s);break}}}finally{cs=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?Sr(e):""}function xg(e){switch(e.tag){case 5:return Sr(e.type);case 16:return Sr("Lazy");case 13:return Sr("Suspense");case 19:return Sr("SuspenseList");case 0:case 2:case 15:return e=Ua(e.type,!1),e;case 11:return e=Ua(e.type.render,!1),e;case 22:return e=Ua(e.type._render,!1),e;case 1:return e=Ua(e.type,!0),e;default:return""}}function kn(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case kt:return"Fragment";case Gt:return"Portal";case kr:return"Profiler";case es:return"StrictMode";case wr:return"Suspense";case Ra:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case ns:return(e.displayName||"Context")+".Consumer";case ts:return(e._context.displayName||"Context")+".Provider";case za:var t=e.render;return t=t.displayName||t.name||"",e.displayName||(t!==""?"ForwardRef("+t+")":"ForwardRef");case La:return kn(e.type);case as:return kn(e._render);case rs:t=e._payload,e=e._init;try{return kn(e(t))}catch{}}return null}function wt(e){switch(typeof e){case"boolean":case"number":case"object":case"string":case"undefined":return e;default:return""}}function Tu(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function Sg(e){var t=Tu(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&typeof n<"u"&&typeof n.get=="function"&&typeof n.set=="function"){var a=n.get,i=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return a.call(this)},set:function(o){r=""+o,i.call(this,o)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(o){r=""+o},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function Oa(e){e._valueTracker||(e._valueTracker=Sg(e))}function Iu(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=Tu(e)?e.checked?"true":"false":e.value),e=r,e!==n?(t.setValue(e),!0):!1}function Ya(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}function us(e,t){var n=t.checked;return H({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??e._wrapperState.initialChecked})}function Du(e,t){var n=t.defaultValue==null?"":t.defaultValue,r=t.checked!=null?t.checked:t.defaultChecked;n=wt(t.value!=null?t.value:n),e._wrapperState={initialChecked:r,initialValue:n,controlled:t.type==="checkbox"||t.type==="radio"?t.checked!=null:t.value!=null}}function Au(e,t){t=t.checked,t!=null&&Zo(e,"checked",t,!1)}function ds(e,t){Au(e,t);var n=wt(t.value),r=t.type;if(n!=null)r==="number"?(n===0&&e.value===""||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if(r==="submit"||r==="reset"){e.removeAttribute("value");return}t.hasOwnProperty("value")?ps(e,t.type,n):t.hasOwnProperty("defaultValue")&&ps(e,t.type,wt(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function Mu(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type;if(!(r!=="submit"&&r!=="reset"||t.value!==void 0&&t.value!==null))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}n=e.name,n!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,n!==""&&(e.name=n)}function ps(e,t,n){(t!=="number"||Ya(e.ownerDocument)!==e)&&(n==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}function Eg(e){var t="";return Ma.Children.forEach(e,function(n){n!=null&&(t+=n)}),t}function ms(e,t){return e=H({children:void 0},t),(t=Eg(t.children))&&(e.children=t),e}function wn(e,t,n,r){if(e=e.options,t){t={};for(var a=0;a<n.length;a++)t["$"+n[a]]=!0;for(n=0;n<e.length;n++)a=t.hasOwnProperty("$"+e[n].value),e[n].selected!==a&&(e[n].selected=a),a&&r&&(e[n].defaultSelected=!0)}else{for(n=""+wt(n),t=null,a=0;a<e.length;a++){if(e[a].value===n){e[a].selected=!0,r&&(e[a].defaultSelected=!0);return}t!==null||e[a].disabled||(t=e[a])}t!==null&&(t.selected=!0)}}function hs(e,t){if(t.dangerouslySetInnerHTML!=null)throw Error(E(91));return H({},t,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function zu(e,t){var n=t.value;if(n==null){if(n=t.children,t=t.defaultValue,n!=null){if(t!=null)throw Error(E(92));if(Array.isArray(n)){if(!(1>=n.length))throw Error(E(93));n=n[0]}t=n}t==null&&(t=""),n=t}e._wrapperState={initialValue:wt(n)}}function Ru(e,t){var n=wt(t.value),r=wt(t.defaultValue);n!=null&&(n=""+n,n!==e.value&&(e.value=n),t.defaultValue==null&&e.defaultValue!==n&&(e.defaultValue=n)),r!=null&&(e.defaultValue=""+r)}function Lu(e){var t=e.textContent;t===e._wrapperState.initialValue&&t!==""&&t!==null&&(e.value=t)}var fs={html:"http://www.w3.org/1999/xhtml",mathml:"http://www.w3.org/1998/Math/MathML",svg:"http://www.w3.org/2000/svg"};function Uu(e){switch(e){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function gs(e,t){return e==null||e==="http://www.w3.org/1999/xhtml"?Uu(t):e==="http://www.w3.org/2000/svg"&&t==="foreignObject"?"http://www.w3.org/1999/xhtml":e}var Fa,Ou=function(e){return typeof MSApp<"u"&&MSApp.execUnsafeLocalFunction?function(t,n,r,a){MSApp.execUnsafeLocalFunction(function(){return e(t,n,r,a)})}:e}(function(e,t){if(e.namespaceURI!==fs.svg||"innerHTML"in e)e.innerHTML=t;else{for(Fa=Fa||document.createElement("div"),Fa.innerHTML="<svg>"+t.valueOf().toString()+"</svg>",t=Fa.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function Er(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var Cr={animationIterationCount:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},Cg=["Webkit","ms","Moz","O"];Object.keys(Cr).forEach(function(e){Cg.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),Cr[t]=Cr[e]})});function Yu(e,t,n){return t==null||typeof t=="boolean"||t===""?"":n||typeof t!="number"||t===0||Cr.hasOwnProperty(e)&&Cr[e]?(""+t).trim():t+"px"}function Fu(e,t){e=e.style;for(var n in t)if(t.hasOwnProperty(n)){var r=n.indexOf("--")===0,a=Yu(n,t[n],r);n==="float"&&(n="cssFloat"),r?e.setProperty(n,a):e[n]=a}}var $g=H({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function ys(e,t){if(t){if($g[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(E(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(E(60));if(!(typeof t.dangerouslySetInnerHTML=="object"&&"__html"in t.dangerouslySetInnerHTML))throw Error(E(61))}if(t.style!=null&&typeof t.style!="object")throw Error(E(62))}}function bs(e,t){if(e.indexOf("-")===-1)return typeof t.is=="string";switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}function vs(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var ks=null,xn=null,Sn=null;function Bu(e){if(e=Hr(e)){if(typeof ks!="function")throw Error(E(280));var t=e.stateNode;t&&(t=oi(t),ks(e.stateNode,e.type,t))}}function Hu(e){xn?Sn?Sn.push(e):Sn=[e]:xn=e}function qu(){if(xn){var e=xn,t=Sn;if(Sn=xn=null,Bu(e),t)for(e=0;e<t.length;e++)Bu(t[e])}}function ws(e,t){return e(t)}function Vu(e,t,n,r,a){return e(t,n,r,a)}function xs(){}var Wu=ws,Kt=!1,Ss=!1;function Es(){(xn!==null||Sn!==null)&&(xs(),qu())}function _g(e,t,n){if(Ss)return e(t,n);Ss=!0;try{return Wu(e,t,n)}finally{Ss=!1,Es()}}function $r(e,t){var n=e.stateNode;if(n===null)return null;var r=oi(n);if(r===null)return null;n=r[t];e:switch(t){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(r=!r.disabled)||(e=e.type,r=!(e==="button"||e==="input"||e==="select"||e==="textarea")),e=!r;break e;default:e=!1}if(e)return null;if(n&&typeof n!="function")throw Error(E(231,t,typeof n));return n}var Cs=!1;if(ut)try{var _r={};Object.defineProperty(_r,"passive",{get:function(){Cs=!0}}),window.addEventListener("test",_r,_r),window.removeEventListener("test",_r,_r)}catch{Cs=!1}function jg(e,t,n,r,a,i,o,s,l){var u=Array.prototype.slice.call(arguments,3);try{t.apply(n,u)}catch(p){this.onError(p)}}var jr=!1,Ba=null,Ha=!1,$s=null,Pg={onError:function(e){jr=!0,Ba=e}};function Ng(e,t,n,r,a,i,o,s,l){jr=!1,Ba=null,jg.apply(Pg,arguments)}function Tg(e,t,n,r,a,i,o,s,l){if(Ng.apply(this,arguments),jr){if(jr){var u=Ba;jr=!1,Ba=null}else throw Error(E(198));Ha||(Ha=!0,$s=u)}}function Jt(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,t.flags&1026&&(n=t.return),e=t.return;while(e)}return t.tag===3?n:null}function Gu(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function Ku(e){if(Jt(e)!==e)throw Error(E(188))}function Ig(e){var t=e.alternate;if(!t){if(t=Jt(e),t===null)throw Error(E(188));return t!==e?null:e}for(var n=e,r=t;;){var a=n.return;if(a===null)break;var i=a.alternate;if(i===null){if(r=a.return,r!==null){n=r;continue}break}if(a.child===i.child){for(i=a.child;i;){if(i===n)return Ku(a),e;if(i===r)return Ku(a),t;i=i.sibling}throw Error(E(188))}if(n.return!==r.return)n=a,r=i;else{for(var o=!1,s=a.child;s;){if(s===n){o=!0,n=a,r=i;break}if(s===r){o=!0,r=a,n=i;break}s=s.sibling}if(!o){for(s=i.child;s;){if(s===n){o=!0,n=i,r=a;break}if(s===r){o=!0,r=i,n=a;break}s=s.sibling}if(!o)throw Error(E(189))}}if(n.alternate!==r)throw Error(E(190))}if(n.tag!==3)throw Error(E(188));return n.stateNode.current===n?e:t}function Ju(e){if(e=Ig(e),!e)return null;for(var t=e;;){if(t.tag===5||t.tag===6)return t;if(t.child)t.child.return=t,t=t.child;else{if(t===e)break;for(;!t.sibling;){if(!t.return||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}}return null}function Qu(e,t){for(var n=e.alternate;t!==null;){if(t===e||t===n)return!0;t=t.return}return!1}var Xu,_s,Zu,ed,js=!1,Xe=[],xt=null,St=null,Et=null,Pr=new Map,Nr=new Map,Tr=[],td="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit".split(" ");function Ps(e,t,n,r,a){return{blockedOn:e,domEventName:t,eventSystemFlags:n|16,nativeEvent:a,targetContainers:[r]}}function nd(e,t){switch(e){case"focusin":case"focusout":xt=null;break;case"dragenter":case"dragleave":St=null;break;case"mouseover":case"mouseout":Et=null;break;case"pointerover":case"pointerout":Pr.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":Nr.delete(t.pointerId)}}function Ir(e,t,n,r,a,i){return e===null||e.nativeEvent!==i?(e=Ps(t,n,r,a,i),t!==null&&(t=Hr(t),t!==null&&_s(t)),e):(e.eventSystemFlags|=r,t=e.targetContainers,a!==null&&t.indexOf(a)===-1&&t.push(a),e)}function Dg(e,t,n,r,a){switch(t){case"focusin":return xt=Ir(xt,e,t,n,r,a),!0;case"dragenter":return St=Ir(St,e,t,n,r,a),!0;case"mouseover":return Et=Ir(Et,e,t,n,r,a),!0;case"pointerover":var i=a.pointerId;return Pr.set(i,Ir(Pr.get(i)||null,e,t,n,r,a)),!0;case"gotpointercapture":return i=a.pointerId,Nr.set(i,Ir(Nr.get(i)||null,e,t,n,r,a)),!0}return!1}function Ag(e){var t=Qt(e.target);if(t!==null){var n=Jt(t);if(n!==null){if(t=n.tag,t===13){if(t=Gu(n),t!==null){e.blockedOn=t,ed(e.lanePriority,function(){ne.unstable_runWithPriority(e.priority,function(){Zu(n)})});return}}else if(t===3&&n.stateNode.hydrate){e.blockedOn=n.tag===3?n.stateNode.containerInfo:null;return}}}e.blockedOn=null}function qa(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var n=Ms(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(n!==null)return t=Hr(n),t!==null&&_s(t),e.blockedOn=n,!1;t.shift()}return!0}function rd(e,t,n){qa(e)&&n.delete(t)}function Mg(){for(js=!1;0<Xe.length;){var e=Xe[0];if(e.blockedOn!==null){e=Hr(e.blockedOn),e!==null&&Xu(e);break}for(var t=e.targetContainers;0<t.length;){var n=Ms(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(n!==null){e.blockedOn=n;break}t.shift()}e.blockedOn===null&&Xe.shift()}xt!==null&&qa(xt)&&(xt=null),St!==null&&qa(St)&&(St=null),Et!==null&&qa(Et)&&(Et=null),Pr.forEach(rd),Nr.forEach(rd)}function Dr(e,t){e.blockedOn===t&&(e.blockedOn=null,js||(js=!0,ne.unstable_scheduleCallback(ne.unstable_NormalPriority,Mg)))}function ad(e){function t(a){return Dr(a,e)}if(0<Xe.length){Dr(Xe[0],e);for(var n=1;n<Xe.length;n++){var r=Xe[n];r.blockedOn===e&&(r.blockedOn=null)}}for(xt!==null&&Dr(xt,e),St!==null&&Dr(St,e),Et!==null&&Dr(Et,e),Pr.forEach(t),Nr.forEach(t),n=0;n<Tr.length;n++)r=Tr[n],r.blockedOn===e&&(r.blockedOn=null);for(;0<Tr.length&&(n=Tr[0],n.blockedOn===null);)Ag(n),n.blockedOn===null&&Tr.shift()}function Va(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n}var En={animationend:Va("Animation","AnimationEnd"),animationiteration:Va("Animation","AnimationIteration"),animationstart:Va("Animation","AnimationStart"),transitionend:Va("Transition","TransitionEnd")},Ns={},id={};ut&&(id=document.createElement("div").style,"AnimationEvent"in window||(delete En.animationend.animation,delete En.animationiteration.animation,delete En.animationstart.animation),"TransitionEvent"in window||delete En.transitionend.transition);function Wa(e){if(Ns[e])return Ns[e];if(!En[e])return e;var t=En[e],n;for(n in t)if(t.hasOwnProperty(n)&&n in id)return Ns[e]=t[n];return e}var od=Wa("animationend"),sd=Wa("animationiteration"),ld=Wa("animationstart"),cd=Wa("transitionend"),ud=new Map,Ts=new Map,zg=["abort","abort",od,"animationEnd",sd,"animationIteration",ld,"animationStart","canplay","canPlay","canplaythrough","canPlayThrough","durationchange","durationChange","emptied","emptied","encrypted","encrypted","ended","ended","error","error","gotpointercapture","gotPointerCapture","load","load","loadeddata","loadedData","loadedmetadata","loadedMetadata","loadstart","loadStart","lostpointercapture","lostPointerCapture","playing","playing","progress","progress","seeking","seeking","stalled","stalled","suspend","suspend","timeupdate","timeUpdate",cd,"transitionEnd","waiting","waiting"];function Is(e,t){for(var n=0;n<e.length;n+=2){var r=e[n],a=e[n+1];a="on"+(a[0].toUpperCase()+a.slice(1)),Ts.set(r,t),ud.set(r,a),Vt(a,[r])}}var Rg=ne.unstable_now;Rg();var Y=8;function Cn(e){if(1&e)return Y=15,1;if(2&e)return Y=14,2;if(4&e)return Y=13,4;var t=24&e;return t!==0?(Y=12,t):e&32?(Y=11,32):(t=192&e,t!==0?(Y=10,t):e&256?(Y=9,256):(t=3584&e,t!==0?(Y=8,t):e&4096?(Y=7,4096):(t=4186112&e,t!==0?(Y=6,t):(t=62914560&e,t!==0?(Y=5,t):e&67108864?(Y=4,67108864):e&134217728?(Y=3,134217728):(t=805306368&e,t!==0?(Y=2,t):1073741824&e?(Y=1,1073741824):(Y=8,e))))))}function Lg(e){switch(e){case 99:return 15;case 98:return 10;case 97:case 96:return 8;case 95:return 2;default:return 0}}function Ug(e){switch(e){case 15:case 14:return 99;case 13:case 12:case 11:case 10:return 98;case 9:case 8:case 7:case 6:case 4:case 5:return 97;case 3:case 2:case 1:return 95;case 0:return 90;default:throw Error(E(358,e))}}function Ar(e,t){var n=e.pendingLanes;if(n===0)return Y=0;var r=0,a=0,i=e.expiredLanes,o=e.suspendedLanes,s=e.pingedLanes;if(i!==0)r=i,a=Y=15;else if(i=n&134217727,i!==0){var l=i&~o;l!==0?(r=Cn(l),a=Y):(s&=i,s!==0&&(r=Cn(s),a=Y))}else i=n&~o,i!==0?(r=Cn(i),a=Y):s!==0&&(r=Cn(s),a=Y);if(r===0)return 0;if(r=31-Ct(r),r=n&((0>r?0:1<<r)<<1)-1,t!==0&&t!==r&&!(t&o)){if(Cn(t),a<=Y)return t;Y=a}if(t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=r;0<t;)n=31-Ct(t),a=1<<n,r|=e[n],t&=~a;return r}function dd(e){return e=e.pendingLanes&-1073741825,e!==0?e:e&1073741824?1073741824:0}function Ga(e,t){switch(e){case 15:return 1;case 14:return 2;case 12:return e=$n(24&~t),e===0?Ga(10,t):e;case 10:return e=$n(192&~t),e===0?Ga(8,t):e;case 8:return e=$n(3584&~t),e===0&&(e=$n(4186112&~t),e===0&&(e=512)),e;case 2:return t=$n(805306368&~t),t===0&&(t=268435456),t}throw Error(E(358,e))}function $n(e){return e&-e}function Ds(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Ka(e,t,n){e.pendingLanes|=t;var r=t-1;e.suspendedLanes&=r,e.pingedLanes&=r,e=e.eventTimes,t=31-Ct(t),e[t]=n}var Ct=Math.clz32?Math.clz32:Fg,Og=Math.log,Yg=Math.LN2;function Fg(e){return e===0?32:31-(Og(e)/Yg|0)|0}var Bg=ne.unstable_UserBlockingPriority,Hg=ne.unstable_runWithPriority,Ja=!0;function qg(e,t,n,r){Kt||xs();var a=As,i=Kt;Kt=!0;try{Vu(a,e,t,n,r)}finally{(Kt=i)||Es()}}function Vg(e,t,n,r){Hg(Bg,As.bind(null,e,t,n,r))}function As(e,t,n,r){if(Ja){var a;if((a=(t&4)===0)&&0<Xe.length&&-1<td.indexOf(e))e=Ps(null,e,t,n,r),Xe.push(e);else{var i=Ms(e,t,n,r);if(i===null)a&&nd(e,r);else{if(a){if(-1<td.indexOf(e)){e=Ps(i,e,t,n,r),Xe.push(e);return}if(Dg(i,e,t,n,r))return;nd(e,r)}Yd(e,t,r,null,n)}}}}function Ms(e,t,n,r){var a=vs(r);if(a=Qt(a),a!==null){var i=Jt(a);if(i===null)a=null;else{var o=i.tag;if(o===13){if(a=Gu(i),a!==null)return a;a=null}else if(o===3){if(i.stateNode.hydrate)return i.tag===3?i.stateNode.containerInfo:null;a=null}else i!==a&&(a=null)}}return Yd(e,t,r,a,n),null}var $t=null,zs=null,Qa=null;function pd(){if(Qa)return Qa;var e,t=zs,n=t.length,r,a="value"in $t?$t.value:$t.textContent,i=a.length;for(e=0;e<n&&t[e]===a[e];e++);var o=n-e;for(r=1;r<=o&&t[n-r]===a[i-r];r++);return Qa=a.slice(e,1<r?1-r:void 0)}function Xa(e){var t=e.keyCode;return"charCode"in e?(e=e.charCode,e===0&&t===13&&(e=13)):e=t,e===10&&(e=13),32<=e||e===13?e:0}function Za(){return!0}function md(){return!1}function Pe(e){function t(n,r,a,i,o){this._reactName=n,this._targetInst=a,this.type=r,this.nativeEvent=i,this.target=o,this.currentTarget=null;for(var s in e)e.hasOwnProperty(s)&&(n=e[s],this[s]=n?n(i):i[s]);return this.isDefaultPrevented=(i.defaultPrevented!=null?i.defaultPrevented:i.returnValue===!1)?Za:md,this.isPropagationStopped=md,this}return H(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var n=this.nativeEvent;n&&(n.preventDefault?n.preventDefault():typeof n.returnValue!="unknown"&&(n.returnValue=!1),this.isDefaultPrevented=Za)},stopPropagation:function(){var n=this.nativeEvent;n&&(n.stopPropagation?n.stopPropagation():typeof n.cancelBubble!="unknown"&&(n.cancelBubble=!0),this.isPropagationStopped=Za)},persist:function(){},isPersistent:Za}),t}var _n={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},Rs=Pe(_n),Mr=H({},_n,{view:0,detail:0}),Wg=Pe(Mr),Ls,Us,zr,ei=H({},Mr,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Ys,button:0,buttons:0,relatedTarget:function(e){return e.relatedTarget===void 0?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return"movementX"in e?e.movementX:(e!==zr&&(zr&&e.type==="mousemove"?(Ls=e.screenX-zr.screenX,Us=e.screenY-zr.screenY):Us=Ls=0,zr=e),Ls)},movementY:function(e){return"movementY"in e?e.movementY:Us}}),hd=Pe(ei),Gg=H({},ei,{dataTransfer:0}),Kg=Pe(Gg),Jg=H({},Mr,{relatedTarget:0}),Os=Pe(Jg),Qg=H({},_n,{animationName:0,elapsedTime:0,pseudoElement:0}),Xg=Pe(Qg),Zg=H({},_n,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),ey=Pe(Zg),ty=H({},_n,{data:0}),fd=Pe(ty),ny={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},ry={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},ay={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function iy(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=ay[e])?!!t[e]:!1}function Ys(){return iy}var oy=H({},Mr,{key:function(e){if(e.key){var t=ny[e.key]||e.key;if(t!=="Unidentified")return t}return e.type==="keypress"?(e=Xa(e),e===13?"Enter":String.fromCharCode(e)):e.type==="keydown"||e.type==="keyup"?ry[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Ys,charCode:function(e){return e.type==="keypress"?Xa(e):0},keyCode:function(e){return e.type==="keydown"||e.type==="keyup"?e.keyCode:0},which:function(e){return e.type==="keypress"?Xa(e):e.type==="keydown"||e.type==="keyup"?e.keyCode:0}}),sy=Pe(oy),ly=H({},ei,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),gd=Pe(ly),cy=H({},Mr,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Ys}),uy=Pe(cy),dy=H({},_n,{propertyName:0,elapsedTime:0,pseudoElement:0}),py=Pe(dy),my=H({},ei,{deltaX:function(e){return"deltaX"in e?e.deltaX:"wheelDeltaX"in e?-e.wheelDeltaX:0},deltaY:function(e){return"deltaY"in e?e.deltaY:"wheelDeltaY"in e?-e.wheelDeltaY:"wheelDelta"in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0}),hy=Pe(my),fy=[9,13,27,32],Fs=ut&&"CompositionEvent"in window,Rr=null;ut&&"documentMode"in document&&(Rr=document.documentMode);var gy=ut&&"TextEvent"in window&&!Rr,yd=ut&&(!Fs||Rr&&8<Rr&&11>=Rr),bd=String.fromCharCode(32),vd=!1;function kd(e,t){switch(e){case"keyup":return fy.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function wd(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var jn=!1;function yy(e,t){switch(e){case"compositionend":return wd(t);case"keypress":return t.which!==32?null:(vd=!0,bd);case"textInput":return e=t.data,e===bd&&vd?null:e;default:return null}}function by(e,t){if(jn)return e==="compositionend"||!Fs&&kd(e,t)?(e=pd(),Qa=zs=$t=null,jn=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case"compositionend":return yd&&t.locale!=="ko"?null:t.data;default:return null}}var vy={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function xd(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t==="input"?!!vy[e.type]:t==="textarea"}function Sd(e,t,n,r){Hu(r),t=ni(t,"onChange"),0<t.length&&(n=new Rs("onChange","change",null,n,r),e.push({event:n,listeners:t}))}var Lr=null,Ur=null;function ky(e){zd(e,0)}function ti(e){var t=Dn(e);if(Iu(t))return e}function wy(e,t){if(e==="change")return t}var Ed=!1;if(ut){var Bs;if(ut){var Hs="oninput"in document;if(!Hs){var Cd=document.createElement("div");Cd.setAttribute("oninput","return;"),Hs=typeof Cd.oninput=="function"}Bs=Hs}else Bs=!1;Ed=Bs&&(!document.documentMode||9<document.documentMode)}function $d(){Lr&&(Lr.detachEvent("onpropertychange",_d),Ur=Lr=null)}function _d(e){if(e.propertyName==="value"&&ti(Ur)){var t=[];if(Sd(t,Ur,e,vs(e)),e=ky,Kt)e(t);else{Kt=!0;try{ws(e,t)}finally{Kt=!1,Es()}}}}function xy(e,t,n){e==="focusin"?($d(),Lr=t,Ur=n,Lr.attachEvent("onpropertychange",_d)):e==="focusout"&&$d()}function Sy(e){if(e==="selectionchange"||e==="keyup"||e==="keydown")return ti(Ur)}function Ey(e,t){if(e==="click")return ti(t)}function Cy(e,t){if(e==="input"||e==="change")return ti(t)}function $y(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var De=typeof Object.is=="function"?Object.is:$y,_y=Object.prototype.hasOwnProperty;function Or(e,t){if(De(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(r=0;r<n.length;r++)if(!_y.call(t,n[r])||!De(e[n[r]],t[n[r]]))return!1;return!0}function jd(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function Pd(e,t){var n=jd(e);e=0;for(var r;n;){if(n.nodeType===3){if(r=e+n.textContent.length,e<=t&&r>=t)return{node:n,offset:t-e};e=r}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=jd(n)}}function Nd(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Nd(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Td(){for(var e=window,t=Ya();t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=Ya(e.document)}return t}function qs(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}var jy=ut&&"documentMode"in document&&11>=document.documentMode,Pn=null,Vs=null,Yr=null,Ws=!1;function Id(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;Ws||Pn==null||Pn!==Ya(r)||(r=Pn,"selectionStart"in r&&qs(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),Yr&&Or(Yr,r)||(Yr=r,r=ni(Vs,"onSelect"),0<r.length&&(t=new Rs("onSelect","select",null,t,n),e.push({event:t,listeners:r}),t.target=Pn)))}Is("cancel cancel click click close close contextmenu contextMenu copy copy cut cut auxclick auxClick dblclick doubleClick dragend dragEnd dragstart dragStart drop drop focusin focus focusout blur input input invalid invalid keydown keyDown keypress keyPress keyup keyUp mousedown mouseDown mouseup mouseUp paste paste pause pause play play pointercancel pointerCancel pointerdown pointerDown pointerup pointerUp ratechange rateChange reset reset seeked seeked submit submit touchcancel touchCancel touchend touchEnd touchstart touchStart volumechange volumeChange".split(" "),0),Is("drag drag dragenter dragEnter dragexit dragExit dragleave dragLeave dragover dragOver mousemove mouseMove mouseout mouseOut mouseover mouseOver pointermove pointerMove pointerout pointerOut pointerover pointerOver scroll scroll toggle toggle touchmove touchMove wheel wheel".split(" "),1),Is(zg,2);for(var Dd="change selectionchange textInput compositionstart compositionend compositionupdate".split(" "),Gs=0;Gs<Dd.length;Gs++)Ts.set(Dd[Gs],0);vn("onMouseEnter",["mouseout","mouseover"]),vn("onMouseLeave",["mouseout","mouseover"]),vn("onPointerEnter",["pointerout","pointerover"]),vn("onPointerLeave",["pointerout","pointerover"]),Vt("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),Vt("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),Vt("onBeforeInput",["compositionend","keypress","textInput","paste"]),Vt("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),Vt("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),Vt("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var Fr="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),Ad=new Set("cancel close invalid load scroll toggle".split(" ").concat(Fr));function Md(e,t,n){var r=e.type||"unknown-event";e.currentTarget=n,Tg(r,t,void 0,e),e.currentTarget=null}function zd(e,t){t=(t&4)!==0;for(var n=0;n<e.length;n++){var r=e[n],a=r.event;r=r.listeners;e:{var i=void 0;if(t)for(var o=r.length-1;0<=o;o--){var s=r[o],l=s.instance,u=s.currentTarget;if(s=s.listener,l!==i&&a.isPropagationStopped())break e;Md(a,s,u),i=l}else for(o=0;o<r.length;o++){if(s=r[o],l=s.instance,u=s.currentTarget,s=s.listener,l!==i&&a.isPropagationStopped())break e;Md(a,s,u),i=l}}}if(Ha)throw e=$s,Ha=!1,$s=null,e}function F(e,t){var n=Wd(t),r=e+"__bubble";n.has(r)||(Od(t,e,2,!1),n.add(r))}var Rd="_reactListening"+Math.random().toString(36).slice(2);function Ld(e){e[Rd]||(e[Rd]=!0,Cu.forEach(function(t){Ad.has(t)||Ud(t,!1,e,null),Ud(t,!0,e,null)}))}function Ud(e,t,n,r){var a=4<arguments.length&&arguments[4]!==void 0?arguments[4]:0,i=n;if(e==="selectionchange"&&n.nodeType!==9&&(i=n.ownerDocument),r!==null&&!t&&Ad.has(e)){if(e!=="scroll")return;a|=2,i=r}var o=Wd(i),s=e+"__"+(t?"capture":"bubble");o.has(s)||(t&&(a|=4),Od(i,e,a,t),o.add(s))}function Od(e,t,n,r){var a=Ts.get(t);switch(a===void 0?2:a){case 0:a=qg;break;case 1:a=Vg;break;default:a=As}n=a.bind(null,t,n,e),a=void 0,!Cs||t!=="touchstart"&&t!=="touchmove"&&t!=="wheel"||(a=!0),r?a!==void 0?e.addEventListener(t,n,{capture:!0,passive:a}):e.addEventListener(t,n,!0):a!==void 0?e.addEventListener(t,n,{passive:a}):e.addEventListener(t,n,!1)}function Yd(e,t,n,r,a){var i=r;if(!(t&1)&&!(t&2)&&r!==null)e:for(;;){if(r===null)return;var o=r.tag;if(o===3||o===4){var s=r.stateNode.containerInfo;if(s===a||s.nodeType===8&&s.parentNode===a)break;if(o===4)for(o=r.return;o!==null;){var l=o.tag;if((l===3||l===4)&&(l=o.stateNode.containerInfo,l===a||l.nodeType===8&&l.parentNode===a))return;o=o.return}for(;s!==null;){if(o=Qt(s),o===null)return;if(l=o.tag,l===5||l===6){r=i=o;continue e}s=s.parentNode}}r=r.return}_g(function(){var u=i,p=vs(n),m=[];e:{var d=ud.get(e);if(d!==void 0){var y=Rs,b=e;switch(e){case"keypress":if(Xa(n)===0)break e;case"keydown":case"keyup":y=sy;break;case"focusin":b="focus",y=Os;break;case"focusout":b="blur",y=Os;break;case"beforeblur":case"afterblur":y=Os;break;case"click":if(n.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":y=hd;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":y=Kg;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":y=uy;break;case od:case sd:case ld:y=Xg;break;case cd:y=py;break;case"scroll":y=Wg;break;case"wheel":y=hy;break;case"copy":case"cut":case"paste":y=ey;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":y=gd}var x=(t&4)!==0,f=!x&&e==="scroll",h=x?d!==null?d+"Capture":null:d;x=[];for(var g=u,w;g!==null;){w=g;var k=w.stateNode;if(w.tag===5&&k!==null&&(w=k,h!==null&&(k=$r(g,h),k!=null&&x.push(Br(g,k,w)))),f)break;g=g.return}0<x.length&&(d=new y(d,b,null,n,p),m.push({event:d,listeners:x}))}}if(!(t&7)){e:{if(d=e==="mouseover"||e==="pointerover",y=e==="mouseout"||e==="pointerout",d&&!(t&16)&&(b=n.relatedTarget||n.fromElement)&&(Qt(b)||b[In]))break e;if((y||d)&&(d=p.window===p?p:(d=p.ownerDocument)?d.defaultView||d.parentWindow:window,y?(b=n.relatedTarget||n.toElement,y=u,b=b?Qt(b):null,b!==null&&(f=Jt(b),b!==f||b.tag!==5&&b.tag!==6)&&(b=null)):(y=null,b=u),y!==b)){if(x=hd,k="onMouseLeave",h="onMouseEnter",g="mouse",(e==="pointerout"||e==="pointerover")&&(x=gd,k="onPointerLeave",h="onPointerEnter",g="pointer"),f=y==null?d:Dn(y),w=b==null?d:Dn(b),d=new x(k,g+"leave",y,n,p),d.target=f,d.relatedTarget=w,k=null,Qt(p)===u&&(x=new x(h,g+"enter",b,n,p),x.target=w,x.relatedTarget=f,k=x),f=k,y&&b)t:{for(x=y,h=b,g=0,w=x;w;w=Nn(w))g++;for(w=0,k=h;k;k=Nn(k))w++;for(;0<g-w;)x=Nn(x),g--;for(;0<w-g;)h=Nn(h),w--;for(;g--;){if(x===h||h!==null&&x===h.alternate)break t;x=Nn(x),h=Nn(h)}x=null}else x=null;y!==null&&Fd(m,d,y,x,!1),b!==null&&f!==null&&Fd(m,f,b,x,!0)}}e:{if(d=u?Dn(u):window,y=d.nodeName&&d.nodeName.toLowerCase(),y==="select"||y==="input"&&d.type==="file")var C=wy;else if(xd(d))if(Ed)C=Cy;else{C=Sy;var S=xy}else(y=d.nodeName)&&y.toLowerCase()==="input"&&(d.type==="checkbox"||d.type==="radio")&&(C=Ey);if(C&&(C=C(e,u))){Sd(m,C,n,p);break e}S&&S(e,d,u),e==="focusout"&&(S=d._wrapperState)&&S.controlled&&d.type==="number"&&ps(d,"number",d.value)}switch(S=u?Dn(u):window,e){case"focusin":(xd(S)||S.contentEditable==="true")&&(Pn=S,Vs=u,Yr=null);break;case"focusout":Yr=Vs=Pn=null;break;case"mousedown":Ws=!0;break;case"contextmenu":case"mouseup":case"dragend":Ws=!1,Id(m,n,p);break;case"selectionchange":if(jy)break;case"keydown":case"keyup":Id(m,n,p)}var $;if(Fs)e:{switch(e){case"compositionstart":var T="onCompositionStart";break e;case"compositionend":T="onCompositionEnd";break e;case"compositionupdate":T="onCompositionUpdate";break e}T=void 0}else jn?kd(e,n)&&(T="onCompositionEnd"):e==="keydown"&&n.keyCode===229&&(T="onCompositionStart");T&&(yd&&n.locale!=="ko"&&(jn||T!=="onCompositionStart"?T==="onCompositionEnd"&&jn&&($=pd()):($t=p,zs="value"in $t?$t.value:$t.textContent,jn=!0)),S=ni(u,T),0<S.length&&(T=new fd(T,e,null,n,p),m.push({event:T,listeners:S}),$?T.data=$:($=wd(n),$!==null&&(T.data=$)))),($=gy?yy(e,n):by(e,n))&&(u=ni(u,"onBeforeInput"),0<u.length&&(p=new fd("onBeforeInput","beforeinput",null,n,p),m.push({event:p,listeners:u}),p.data=$))}zd(m,t)})}function Br(e,t,n){return{instance:e,listener:t,currentTarget:n}}function ni(e,t){for(var n=t+"Capture",r=[];e!==null;){var a=e,i=a.stateNode;a.tag===5&&i!==null&&(a=i,i=$r(e,n),i!=null&&r.unshift(Br(e,i,a)),i=$r(e,t),i!=null&&r.push(Br(e,i,a))),e=e.return}return r}function Nn(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5);return e||null}function Fd(e,t,n,r,a){for(var i=t._reactName,o=[];n!==null&&n!==r;){var s=n,l=s.alternate,u=s.stateNode;if(l!==null&&l===r)break;s.tag===5&&u!==null&&(s=u,a?(l=$r(n,i),l!=null&&o.unshift(Br(n,l,s))):a||(l=$r(n,i),l!=null&&o.push(Br(n,l,s)))),n=n.return}o.length!==0&&e.push({event:t,listeners:o})}function ri(){}var Ks=null,Js=null;function Bd(e,t){switch(e){case"button":case"input":case"select":case"textarea":return!!t.autoFocus}return!1}function Qs(e,t){return e==="textarea"||e==="option"||e==="noscript"||typeof t.children=="string"||typeof t.children=="number"||typeof t.dangerouslySetInnerHTML=="object"&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var Hd=typeof setTimeout=="function"?setTimeout:void 0,Py=typeof clearTimeout=="function"?clearTimeout:void 0;function Xs(e){e.nodeType===1?e.textContent="":e.nodeType===9&&(e=e.body,e!=null&&(e.textContent=""))}function Tn(e){for(;e!=null;e=e.nextSibling){var t=e.nodeType;if(t===1||t===3)break}return e}function qd(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n==="$"||n==="$!"||n==="$?"){if(t===0)return e;t--}else n==="/$"&&t++}e=e.previousSibling}return null}var Zs=0;function Ny(e){return{$$typeof:is,toString:e,valueOf:e}}var ai=Math.random().toString(36).slice(2),_t="__reactFiber$"+ai,ii="__reactProps$"+ai,In="__reactContainer$"+ai,Vd="__reactEvents$"+ai;function Qt(e){var t=e[_t];if(t)return t;for(var n=e.parentNode;n;){if(t=n[In]||n[_t]){if(n=t.alternate,t.child!==null||n!==null&&n.child!==null)for(e=qd(e);e!==null;){if(n=e[_t])return n;e=qd(e)}return t}e=n,n=e.parentNode}return null}function Hr(e){return e=e[_t]||e[In],!e||e.tag!==5&&e.tag!==6&&e.tag!==13&&e.tag!==3?null:e}function Dn(e){if(e.tag===5||e.tag===6)return e.stateNode;throw Error(E(33))}function oi(e){return e[ii]||null}function Wd(e){var t=e[Vd];return t===void 0&&(t=e[Vd]=new Set),t}var el=[],An=-1;function jt(e){return{current:e}}function B(e){0>An||(e.current=el[An],el[An]=null,An--)}function K(e,t){An++,el[An]=e.current,e.current=t}var Pt={},he=jt(Pt),Ee=jt(!1),Xt=Pt;function Mn(e,t){var n=e.type.contextTypes;if(!n)return Pt;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var a={},i;for(i in n)a[i]=t[i];return r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=a),a}function Ce(e){return e=e.childContextTypes,e!=null}function si(){B(Ee),B(he)}function Gd(e,t,n){if(he.current!==Pt)throw Error(E(168));K(he,t),K(Ee,n)}function Kd(e,t,n){var r=e.stateNode;if(e=t.childContextTypes,typeof r.getChildContext!="function")return n;r=r.getChildContext();for(var a in r)if(!(a in e))throw Error(E(108,kn(t)||"Unknown",a));return H({},n,r)}function li(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||Pt,Xt=he.current,K(he,e),K(Ee,Ee.current),!0}function Jd(e,t,n){var r=e.stateNode;if(!r)throw Error(E(169));n?(e=Kd(e,t,Xt),r.__reactInternalMemoizedMergedChildContext=e,B(Ee),B(he),K(he,e)):B(Ee),K(Ee,n)}var tl=null,Zt=null,Ty=ne.unstable_runWithPriority,nl=ne.unstable_scheduleCallback,rl=ne.unstable_cancelCallback,Iy=ne.unstable_shouldYield,Qd=ne.unstable_requestPaint,al=ne.unstable_now,Dy=ne.unstable_getCurrentPriorityLevel,ci=ne.unstable_ImmediatePriority,Xd=ne.unstable_UserBlockingPriority,Zd=ne.unstable_NormalPriority,ep=ne.unstable_LowPriority,tp=ne.unstable_IdlePriority,il={},Ay=Qd!==void 0?Qd:function(){},dt=null,ui=null,ol=!1,np=al(),fe=1e4>np?al:function(){return al()-np};function zn(){switch(Dy()){case ci:return 99;case Xd:return 98;case Zd:return 97;case ep:return 96;case tp:return 95;default:throw Error(E(332))}}function rp(e){switch(e){case 99:return ci;case 98:return Xd;case 97:return Zd;case 96:return ep;case 95:return tp;default:throw Error(E(332))}}function en(e,t){return e=rp(e),Ty(e,t)}function qr(e,t,n){return e=rp(e),nl(e,t,n)}function Ze(){if(ui!==null){var e=ui;ui=null,rl(e)}ap()}function ap(){if(!ol&&dt!==null){ol=!0;var e=0;try{var t=dt;en(99,function(){for(;e<t.length;e++){var n=t[e];do n=n(!0);while(n!==null)}}),dt=null}catch(n){throw dt!==null&&(dt=dt.slice(e+1)),nl(ci,Ze),n}finally{ol=!1}}}var My=Wt.ReactCurrentBatchConfig;function He(e,t){if(e&&e.defaultProps){t=H({},t),e=e.defaultProps;for(var n in e)t[n]===void 0&&(t[n]=e[n]);return t}return t}var di=jt(null),pi=null,Rn=null,mi=null;function sl(){mi=Rn=pi=null}function ll(e){var t=di.current;B(di),e.type._context._currentValue=t}function ip(e,t){for(;e!==null;){var n=e.alternate;if((e.childLanes&t)===t){if(n===null||(n.childLanes&t)===t)break;n.childLanes|=t}else e.childLanes|=t,n!==null&&(n.childLanes|=t);e=e.return}}function Ln(e,t){pi=e,mi=Rn=null,e=e.dependencies,e!==null&&e.firstContext!==null&&(e.lanes&t&&(qe=!0),e.firstContext=null)}function Ae(e,t){if(mi!==e&&t!==!1&&t!==0)if((typeof t!="number"||t===1073741823)&&(mi=e,t=1073741823),t={context:e,observedBits:t,next:null},Rn===null){if(pi===null)throw Error(E(308));Rn=t,pi.dependencies={lanes:0,firstContext:t,responders:null}}else Rn=Rn.next=t;return e._currentValue}var Nt=!1;function cl(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null},effects:null}}function op(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function Tt(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function It(e,t){if(e=e.updateQueue,e!==null){e=e.shared;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}}function sp(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var a=null,i=null;if(n=n.firstBaseUpdate,n!==null){do{var o={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};i===null?a=i=o:i=i.next=o,n=n.next}while(n!==null);i===null?a=i=t:i=i.next=t}else a=i=t;n={baseState:r.baseState,firstBaseUpdate:a,lastBaseUpdate:i,shared:r.shared,effects:r.effects},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function Vr(e,t,n,r){var a=e.updateQueue;Nt=!1;var i=a.firstBaseUpdate,o=a.lastBaseUpdate,s=a.shared.pending;if(s!==null){a.shared.pending=null;var l=s,u=l.next;l.next=null,o===null?i=u:o.next=u,o=l;var p=e.alternate;if(p!==null){p=p.updateQueue;var m=p.lastBaseUpdate;m!==o&&(m===null?p.firstBaseUpdate=u:m.next=u,p.lastBaseUpdate=l)}}if(i!==null){m=a.baseState,o=0,p=u=l=null;do{s=i.lane;var d=i.eventTime;if((r&s)===s){p!==null&&(p=p.next={eventTime:d,lane:0,tag:i.tag,payload:i.payload,callback:i.callback,next:null});e:{var y=e,b=i;switch(s=t,d=n,b.tag){case 1:if(y=b.payload,typeof y=="function"){m=y.call(d,m,s);break e}m=y;break e;case 3:y.flags=y.flags&-4097|64;case 0:if(y=b.payload,s=typeof y=="function"?y.call(d,m,s):y,s==null)break e;m=H({},m,s);break e;case 2:Nt=!0}}i.callback!==null&&(e.flags|=32,s=a.effects,s===null?a.effects=[i]:s.push(i))}else d={eventTime:d,lane:s,tag:i.tag,payload:i.payload,callback:i.callback,next:null},p===null?(u=p=d,l=m):p=p.next=d,o|=s;if(i=i.next,i===null){if(s=a.shared.pending,s===null)break;i=s.next,s.next=null,a.lastBaseUpdate=s,a.shared.pending=null}}while(1);p===null&&(l=m),a.baseState=l,a.firstBaseUpdate=u,a.lastBaseUpdate=p,aa|=o,e.lanes=o,e.memoizedState=m}}function lp(e,t,n){if(e=t.effects,t.effects=null,e!==null)for(t=0;t<e.length;t++){var r=e[t],a=r.callback;if(a!==null){if(r.callback=null,r=n,typeof a!="function")throw Error(E(191,a));a.call(r)}}}var cp=new Ma.Component().refs;function hi(e,t,n,r){t=e.memoizedState,n=n(r,t),n=n==null?t:H({},t,n),e.memoizedState=n,e.lanes===0&&(e.updateQueue.baseState=n)}var fi={isMounted:function(e){return(e=e._reactInternals)?Jt(e)===e:!1},enqueueSetState:function(e,t,n){e=e._reactInternals;var r=Ne(),a=Mt(e),i=Tt(r,a);i.payload=t,n!=null&&(i.callback=n),It(e,i),zt(e,a,r)},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=Ne(),a=Mt(e),i=Tt(r,a);i.tag=1,i.payload=t,n!=null&&(i.callback=n),It(e,i),zt(e,a,r)},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=Ne(),r=Mt(e),a=Tt(n,r);a.tag=2,t!=null&&(a.callback=t),It(e,a),zt(e,r,n)}};function up(e,t,n,r,a,i,o){return e=e.stateNode,typeof e.shouldComponentUpdate=="function"?e.shouldComponentUpdate(r,i,o):t.prototype&&t.prototype.isPureReactComponent?!Or(n,r)||!Or(a,i):!0}function dp(e,t,n){var r=!1,a=Pt,i=t.contextType;return typeof i=="object"&&i!==null?i=Ae(i):(a=Ce(t)?Xt:he.current,r=t.contextTypes,i=(r=r!=null)?Mn(e,a):Pt),t=new t(n,i),e.memoizedState=t.state!==null&&t.state!==void 0?t.state:null,t.updater=fi,e.stateNode=t,t._reactInternals=e,r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=a,e.__reactInternalMemoizedMaskedChildContext=i),t}function pp(e,t,n,r){e=t.state,typeof t.componentWillReceiveProps=="function"&&t.componentWillReceiveProps(n,r),typeof t.UNSAFE_componentWillReceiveProps=="function"&&t.UNSAFE_componentWillReceiveProps(n,r),t.state!==e&&fi.enqueueReplaceState(t,t.state,null)}function ul(e,t,n,r){var a=e.stateNode;a.props=n,a.state=e.memoizedState,a.refs=cp,cl(e);var i=t.contextType;typeof i=="object"&&i!==null?a.context=Ae(i):(i=Ce(t)?Xt:he.current,a.context=Mn(e,i)),Vr(e,n,a,r),a.state=e.memoizedState,i=t.getDerivedStateFromProps,typeof i=="function"&&(hi(e,t,i,n),a.state=e.memoizedState),typeof t.getDerivedStateFromProps=="function"||typeof a.getSnapshotBeforeUpdate=="function"||typeof a.UNSAFE_componentWillMount!="function"&&typeof a.componentWillMount!="function"||(t=a.state,typeof a.componentWillMount=="function"&&a.componentWillMount(),typeof a.UNSAFE_componentWillMount=="function"&&a.UNSAFE_componentWillMount(),t!==a.state&&fi.enqueueReplaceState(a,a.state,null),Vr(e,n,a,r),a.state=e.memoizedState),typeof a.componentDidMount=="function"&&(e.flags|=4)}var gi=Array.isArray;function Wr(e,t,n){if(e=n.ref,e!==null&&typeof e!="function"&&typeof e!="object"){if(n._owner){if(n=n._owner,n){if(n.tag!==1)throw Error(E(309));var r=n.stateNode}if(!r)throw Error(E(147,e));var a=""+e;return t!==null&&t.ref!==null&&typeof t.ref=="function"&&t.ref._stringRef===a?t.ref:(t=function(i){var o=r.refs;o===cp&&(o=r.refs={}),i===null?delete o[a]:o[a]=i},t._stringRef=a,t)}if(typeof e!="string")throw Error(E(284));if(!n._owner)throw Error(E(290,e))}return e}function yi(e,t){if(e.type!=="textarea")throw Error(E(31,Object.prototype.toString.call(t)==="[object Object]"?"object with keys {"+Object.keys(t).join(", ")+"}":t))}function mp(e){function t(f,h){if(e){var g=f.lastEffect;g!==null?(g.nextEffect=h,f.lastEffect=h):f.firstEffect=f.lastEffect=h,h.nextEffect=null,h.flags=8}}function n(f,h){if(!e)return null;for(;h!==null;)t(f,h),h=h.sibling;return null}function r(f,h){for(f=new Map;h!==null;)h.key!==null?f.set(h.key,h):f.set(h.index,h),h=h.sibling;return f}function a(f,h){return f=Ut(f,h),f.index=0,f.sibling=null,f}function i(f,h,g){return f.index=g,e?(g=f.alternate,g!==null?(g=g.index,g<h?(f.flags=2,h):g):(f.flags=2,h)):h}function o(f){return e&&f.alternate===null&&(f.flags=2),f}function s(f,h,g,w){return h===null||h.tag!==6?(h=Vl(g,f.mode,w),h.return=f,h):(h=a(h,g),h.return=f,h)}function l(f,h,g,w){return h!==null&&h.elementType===g.type?(w=a(h,g.props),w.ref=Wr(f,h,g),w.return=f,w):(w=Mi(g.type,g.key,g.props,null,f.mode,w),w.ref=Wr(f,h,g),w.return=f,w)}function u(f,h,g,w){return h===null||h.tag!==4||h.stateNode.containerInfo!==g.containerInfo||h.stateNode.implementation!==g.implementation?(h=Wl(g,f.mode,w),h.return=f,h):(h=a(h,g.children||[]),h.return=f,h)}function p(f,h,g,w,k){return h===null||h.tag!==7?(h=Vn(g,f.mode,w,k),h.return=f,h):(h=a(h,g),h.return=f,h)}function m(f,h,g){if(typeof h=="string"||typeof h=="number")return h=Vl(""+h,f.mode,g),h.return=f,h;if(typeof h=="object"&&h!==null){switch(h.$$typeof){case vr:return g=Mi(h.type,h.key,h.props,null,f.mode,g),g.ref=Wr(f,null,h),g.return=f,g;case Gt:return h=Wl(h,f.mode,g),h.return=f,h}if(gi(h)||xr(h))return h=Vn(h,f.mode,g,null),h.return=f,h;yi(f,h)}return null}function d(f,h,g,w){var k=h!==null?h.key:null;if(typeof g=="string"||typeof g=="number")return k!==null?null:s(f,h,""+g,w);if(typeof g=="object"&&g!==null){switch(g.$$typeof){case vr:return g.key===k?g.type===kt?p(f,h,g.props.children,w,k):l(f,h,g,w):null;case Gt:return g.key===k?u(f,h,g,w):null}if(gi(g)||xr(g))return k!==null?null:p(f,h,g,w,null);yi(f,g)}return null}function y(f,h,g,w,k){if(typeof w=="string"||typeof w=="number")return f=f.get(g)||null,s(h,f,""+w,k);if(typeof w=="object"&&w!==null){switch(w.$$typeof){case vr:return f=f.get(w.key===null?g:w.key)||null,w.type===kt?p(h,f,w.props.children,k,w.key):l(h,f,w,k);case Gt:return f=f.get(w.key===null?g:w.key)||null,u(h,f,w,k)}if(gi(w)||xr(w))return f=f.get(g)||null,p(h,f,w,k,null);yi(h,w)}return null}function b(f,h,g,w){for(var k=null,C=null,S=h,$=h=0,T=null;S!==null&&$<g.length;$++){S.index>$?(T=S,S=null):T=S.sibling;var j=d(f,S,g[$],w);if(j===null){S===null&&(S=T);break}e&&S&&j.alternate===null&&t(f,S),h=i(j,h,$),C===null?k=j:C.sibling=j,C=j,S=T}if($===g.length)return n(f,S),k;if(S===null){for(;$<g.length;$++)S=m(f,g[$],w),S!==null&&(h=i(S,h,$),C===null?k=S:C.sibling=S,C=S);return k}for(S=r(f,S);$<g.length;$++)T=y(S,f,$,g[$],w),T!==null&&(e&&T.alternate!==null&&S.delete(T.key===null?$:T.key),h=i(T,h,$),C===null?k=T:C.sibling=T,C=T);return e&&S.forEach(function(O){return t(f,O)}),k}function x(f,h,g,w){var k=xr(g);if(typeof k!="function")throw Error(E(150));if(g=k.call(g),g==null)throw Error(E(151));for(var C=k=null,S=h,$=h=0,T=null,j=g.next();S!==null&&!j.done;$++,j=g.next()){S.index>$?(T=S,S=null):T=S.sibling;var O=d(f,S,j.value,w);if(O===null){S===null&&(S=T);break}e&&S&&O.alternate===null&&t(f,S),h=i(O,h,$),C===null?k=O:C.sibling=O,C=O,S=T}if(j.done)return n(f,S),k;if(S===null){for(;!j.done;$++,j=g.next())j=m(f,j.value,w),j!==null&&(h=i(j,h,$),C===null?k=j:C.sibling=j,C=j);return k}for(S=r(f,S);!j.done;$++,j=g.next())j=y(S,f,$,j.value,w),j!==null&&(e&&j.alternate!==null&&S.delete(j.key===null?$:j.key),h=i(j,h,$),C===null?k=j:C.sibling=j,C=j);return e&&S.forEach(function(ot){return t(f,ot)}),k}return function(f,h,g,w){var k=typeof g=="object"&&g!==null&&g.type===kt&&g.key===null;k&&(g=g.props.children);var C=typeof g=="object"&&g!==null;if(C)switch(g.$$typeof){case vr:e:{for(C=g.key,k=h;k!==null;){if(k.key===C){switch(k.tag){case 7:if(g.type===kt){n(f,k.sibling),h=a(k,g.props.children),h.return=f,f=h;break e}break;default:if(k.elementType===g.type){n(f,k.sibling),h=a(k,g.props),h.ref=Wr(f,k,g),h.return=f,f=h;break e}}n(f,k);break}else t(f,k);k=k.sibling}g.type===kt?(h=Vn(g.props.children,f.mode,w,g.key),h.return=f,f=h):(w=Mi(g.type,g.key,g.props,null,f.mode,w),w.ref=Wr(f,h,g),w.return=f,f=w)}return o(f);case Gt:e:{for(k=g.key;h!==null;){if(h.key===k)if(h.tag===4&&h.stateNode.containerInfo===g.containerInfo&&h.stateNode.implementation===g.implementation){n(f,h.sibling),h=a(h,g.children||[]),h.return=f,f=h;break e}else{n(f,h);break}else t(f,h);h=h.sibling}h=Wl(g,f.mode,w),h.return=f,f=h}return o(f)}if(typeof g=="string"||typeof g=="number")return g=""+g,h!==null&&h.tag===6?(n(f,h.sibling),h=a(h,g),h.return=f,f=h):(n(f,h),h=Vl(g,f.mode,w),h.return=f,f=h),o(f);if(gi(g))return b(f,h,g,w);if(xr(g))return x(f,h,g,w);if(C&&yi(f,g),typeof g>"u"&&!k)switch(f.tag){case 1:case 22:case 0:case 11:case 15:throw Error(E(152,kn(f.type)||"Component"))}return n(f,h)}}var bi=mp(!0),hp=mp(!1),Gr={},et=jt(Gr),Kr=jt(Gr),Jr=jt(Gr);function tn(e){if(e===Gr)throw Error(E(174));return e}function dl(e,t){switch(K(Jr,t),K(Kr,e),K(et,Gr),e=t.nodeType,e){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:gs(null,"");break;default:e=e===8?t.parentNode:t,t=e.namespaceURI||null,e=e.tagName,t=gs(t,e)}B(et),K(et,t)}function Un(){B(et),B(Kr),B(Jr)}function fp(e){tn(Jr.current);var t=tn(et.current),n=gs(t,e.type);t!==n&&(K(Kr,e),K(et,n))}function pl(e){Kr.current===e&&(B(et),B(Kr))}var J=jt(0);function vi(e){for(var t=e;t!==null;){if(t.tag===13){var n=t.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||n.data==="$?"||n.data==="$!"))return t}else if(t.tag===19&&t.memoizedProps.revealOrder!==void 0){if(t.flags&64)return t}else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var pt=null,Dt=null,tt=!1;function gp(e,t){var n=Re(5,null,null,0);n.elementType="DELETED",n.type="DELETED",n.stateNode=t,n.return=e,n.flags=8,e.lastEffect!==null?(e.lastEffect.nextEffect=n,e.lastEffect=n):e.firstEffect=e.lastEffect=n}function yp(e,t){switch(e.tag){case 5:var n=e.type;return t=t.nodeType!==1||n.toLowerCase()!==t.nodeName.toLowerCase()?null:t,t!==null?(e.stateNode=t,!0):!1;case 6:return t=e.pendingProps===""||t.nodeType!==3?null:t,t!==null?(e.stateNode=t,!0):!1;case 13:return!1;default:return!1}}function ml(e){if(tt){var t=Dt;if(t){var n=t;if(!yp(e,t)){if(t=Tn(n.nextSibling),!t||!yp(e,t)){e.flags=e.flags&-1025|2,tt=!1,pt=e;return}gp(pt,n)}pt=e,Dt=Tn(t.firstChild)}else e.flags=e.flags&-1025|2,tt=!1,pt=e}}function bp(e){for(e=e.return;e!==null&&e.tag!==5&&e.tag!==3&&e.tag!==13;)e=e.return;pt=e}function ki(e){if(e!==pt)return!1;if(!tt)return bp(e),tt=!0,!1;var t=e.type;if(e.tag!==5||t!=="head"&&t!=="body"&&!Qs(t,e.memoizedProps))for(t=Dt;t;)gp(e,t),t=Tn(t.nextSibling);if(bp(e),e.tag===13){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(E(317));e:{for(e=e.nextSibling,t=0;e;){if(e.nodeType===8){var n=e.data;if(n==="/$"){if(t===0){Dt=Tn(e.nextSibling);break e}t--}else n!=="$"&&n!=="$!"&&n!=="$?"||t++}e=e.nextSibling}Dt=null}}else Dt=pt?Tn(e.stateNode.nextSibling):null;return!0}function hl(){Dt=pt=null,tt=!1}var On=[];function fl(){for(var e=0;e<On.length;e++)On[e]._workInProgressVersionPrimary=null;On.length=0}var Qr=Wt.ReactCurrentDispatcher,Me=Wt.ReactCurrentBatchConfig,Xr=0,X=null,ge=null,se=null,wi=!1,Zr=!1;function $e(){throw Error(E(321))}function gl(e,t){if(t===null)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!De(e[n],t[n]))return!1;return!0}function yl(e,t,n,r,a,i){if(Xr=i,X=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,Qr.current=e===null||e.memoizedState===null?Ry:Ly,e=n(r,a),Zr){i=0;do{if(Zr=!1,!(25>i))throw Error(E(301));i+=1,se=ge=null,t.updateQueue=null,Qr.current=Uy,e=n(r,a)}while(Zr)}if(Qr.current=Ci,t=ge!==null&&ge.next!==null,Xr=0,se=ge=X=null,wi=!1,t)throw Error(E(300));return e}function nn(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return se===null?X.memoizedState=se=e:se=se.next=e,se}function rn(){if(ge===null){var e=X.alternate;e=e!==null?e.memoizedState:null}else e=ge.next;var t=se===null?X.memoizedState:se.next;if(t!==null)se=t,ge=e;else{if(e===null)throw Error(E(310));ge=e,e={memoizedState:ge.memoizedState,baseState:ge.baseState,baseQueue:ge.baseQueue,queue:ge.queue,next:null},se===null?X.memoizedState=se=e:se=se.next=e}return se}function nt(e,t){return typeof t=="function"?t(e):t}function ea(e){var t=rn(),n=t.queue;if(n===null)throw Error(E(311));n.lastRenderedReducer=e;var r=ge,a=r.baseQueue,i=n.pending;if(i!==null){if(a!==null){var o=a.next;a.next=i.next,i.next=o}r.baseQueue=a=i,n.pending=null}if(a!==null){a=a.next,r=r.baseState;var s=o=i=null,l=a;do{var u=l.lane;if((Xr&u)===u)s!==null&&(s=s.next={lane:0,action:l.action,eagerReducer:l.eagerReducer,eagerState:l.eagerState,next:null}),r=l.eagerReducer===e?l.eagerState:e(r,l.action);else{var p={lane:u,action:l.action,eagerReducer:l.eagerReducer,eagerState:l.eagerState,next:null};s===null?(o=s=p,i=r):s=s.next=p,X.lanes|=u,aa|=u}l=l.next}while(l!==null&&l!==a);s===null?i=r:s.next=o,De(r,t.memoizedState)||(qe=!0),t.memoizedState=r,t.baseState=i,t.baseQueue=s,n.lastRenderedState=r}return[t.memoizedState,n.dispatch]}function ta(e){var t=rn(),n=t.queue;if(n===null)throw Error(E(311));n.lastRenderedReducer=e;var r=n.dispatch,a=n.pending,i=t.memoizedState;if(a!==null){n.pending=null;var o=a=a.next;do i=e(i,o.action),o=o.next;while(o!==a);De(i,t.memoizedState)||(qe=!0),t.memoizedState=i,t.baseQueue===null&&(t.baseState=i),n.lastRenderedState=i}return[i,r]}function vp(e,t,n){var r=t._getVersion;r=r(t._source);var a=t._workInProgressVersionPrimary;if(a!==null?e=a===r:(e=e.mutableReadLanes,(e=(Xr&e)===e)&&(t._workInProgressVersionPrimary=r,On.push(t))),e)return n(t._source);throw On.push(t),Error(E(350))}function kp(e,t,n,r){var a=ke;if(a===null)throw Error(E(349));var i=t._getVersion,o=i(t._source),s=Qr.current,l=s.useState(function(){return vp(a,t,n)}),u=l[1],p=l[0];l=se;var m=e.memoizedState,d=m.refs,y=d.getSnapshot,b=m.source;m=m.subscribe;var x=X;return e.memoizedState={refs:d,source:t,subscribe:r},s.useEffect(function(){d.getSnapshot=n,d.setSnapshot=u;var f=i(t._source);if(!De(o,f)){f=n(t._source),De(p,f)||(u(f),f=Mt(x),a.mutableReadLanes|=f&a.pendingLanes),f=a.mutableReadLanes,a.entangledLanes|=f;for(var h=a.entanglements,g=f;0<g;){var w=31-Ct(g),k=1<<w;h[w]|=f,g&=~k}}},[n,t,r]),s.useEffect(function(){return r(t._source,function(){var f=d.getSnapshot,h=d.setSnapshot;try{h(f(t._source));var g=Mt(x);a.mutableReadLanes|=g&a.pendingLanes}catch(w){h(function(){throw w})}})},[t,r]),De(y,n)&&De(b,t)&&De(m,r)||(e={pending:null,dispatch:null,lastRenderedReducer:nt,lastRenderedState:p},e.dispatch=u=wl.bind(null,X,e),l.queue=e,l.baseQueue=null,p=vp(a,t,n),l.memoizedState=l.baseState=p),p}function wp(e,t,n){var r=rn();return kp(r,e,t,n)}function na(e){var t=nn();return typeof e=="function"&&(e=e()),t.memoizedState=t.baseState=e,e=t.queue={pending:null,dispatch:null,lastRenderedReducer:nt,lastRenderedState:e},e=e.dispatch=wl.bind(null,X,e),[t.memoizedState,e]}function xi(e,t,n,r){return e={tag:e,create:t,destroy:n,deps:r,next:null},t=X.updateQueue,t===null?(t={lastEffect:null},X.updateQueue=t,t.lastEffect=e.next=e):(n=t.lastEffect,n===null?t.lastEffect=e.next=e:(r=n.next,n.next=e,e.next=r,t.lastEffect=e)),e}function xp(e){var t=nn();return e={current:e},t.memoizedState=e}function Si(){return rn().memoizedState}function bl(e,t,n,r){var a=nn();X.flags|=e,a.memoizedState=xi(1|t,n,void 0,r===void 0?null:r)}function vl(e,t,n,r){var a=rn();r=r===void 0?null:r;var i=void 0;if(ge!==null){var o=ge.memoizedState;if(i=o.destroy,r!==null&&gl(r,o.deps)){xi(t,n,i,r);return}}X.flags|=e,a.memoizedState=xi(1|t,n,i,r)}function Sp(e,t){return bl(516,4,e,t)}function Ei(e,t){return vl(516,4,e,t)}function Ep(e,t){return vl(4,2,e,t)}function Cp(e,t){if(typeof t=="function")return e=e(),t(e),function(){t(null)};if(t!=null)return e=e(),t.current=e,function(){t.current=null}}function $p(e,t,n){return n=n!=null?n.concat([e]):null,vl(4,2,Cp.bind(null,t,e),n)}function kl(){}function _p(e,t){var n=rn();t=t===void 0?null:t;var r=n.memoizedState;return r!==null&&t!==null&&gl(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function jp(e,t){var n=rn();t=t===void 0?null:t;var r=n.memoizedState;return r!==null&&t!==null&&gl(t,r[1])?r[0]:(e=e(),n.memoizedState=[e,t],e)}function zy(e,t){var n=zn();en(98>n?98:n,function(){e(!0)}),en(97<n?97:n,function(){var r=Me.transition;Me.transition=1;try{e(!1),t()}finally{Me.transition=r}})}function wl(e,t,n){var r=Ne(),a=Mt(e),i={lane:a,action:n,eagerReducer:null,eagerState:null,next:null},o=t.pending;if(o===null?i.next=i:(i.next=o.next,o.next=i),t.pending=i,o=e.alternate,e===X||o!==null&&o===X)Zr=wi=!0;else{if(e.lanes===0&&(o===null||o.lanes===0)&&(o=t.lastRenderedReducer,o!==null))try{var s=t.lastRenderedState,l=o(s,n);if(i.eagerReducer=o,i.eagerState=l,De(l,s))return}catch{}finally{}zt(e,a,r)}}var Ci={readContext:Ae,useCallback:$e,useContext:$e,useEffect:$e,useImperativeHandle:$e,useLayoutEffect:$e,useMemo:$e,useReducer:$e,useRef:$e,useState:$e,useDebugValue:$e,useDeferredValue:$e,useTransition:$e,useMutableSource:$e,useOpaqueIdentifier:$e,unstable_isNewReconciler:!1},Ry={readContext:Ae,useCallback:function(e,t){return nn().memoizedState=[e,t===void 0?null:t],e},useContext:Ae,useEffect:Sp,useImperativeHandle:function(e,t,n){return n=n!=null?n.concat([e]):null,bl(4,2,Cp.bind(null,t,e),n)},useLayoutEffect:function(e,t){return bl(4,2,e,t)},useMemo:function(e,t){var n=nn();return t=t===void 0?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=nn();return t=n!==void 0?n(t):t,r.memoizedState=r.baseState=t,e=r.queue={pending:null,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},e=e.dispatch=wl.bind(null,X,e),[r.memoizedState,e]},useRef:xp,useState:na,useDebugValue:kl,useDeferredValue:function(e){var t=na(e),n=t[0],r=t[1];return Sp(function(){var a=Me.transition;Me.transition=1;try{r(e)}finally{Me.transition=a}},[e]),n},useTransition:function(){var e=na(!1),t=e[0];return e=zy.bind(null,e[1]),xp(e),[e,t]},useMutableSource:function(e,t,n){var r=nn();return r.memoizedState={refs:{getSnapshot:t,setSnapshot:null},source:e,subscribe:n},kp(r,e,t,n)},useOpaqueIdentifier:function(){if(tt){var e=!1,t=Ny(function(){throw e||(e=!0,n("r:"+(Zs++).toString(36))),Error(E(355))}),n=na(t)[1];return!(X.mode&2)&&(X.flags|=516,xi(5,function(){n("r:"+(Zs++).toString(36))},void 0,null)),t}return t="r:"+(Zs++).toString(36),na(t),t},unstable_isNewReconciler:!1},Ly={readContext:Ae,useCallback:_p,useContext:Ae,useEffect:Ei,useImperativeHandle:$p,useLayoutEffect:Ep,useMemo:jp,useReducer:ea,useRef:Si,useState:function(){return ea(nt)},useDebugValue:kl,useDeferredValue:function(e){var t=ea(nt),n=t[0],r=t[1];return Ei(function(){var a=Me.transition;Me.transition=1;try{r(e)}finally{Me.transition=a}},[e]),n},useTransition:function(){var e=ea(nt)[0];return[Si().current,e]},useMutableSource:wp,useOpaqueIdentifier:function(){return ea(nt)[0]},unstable_isNewReconciler:!1},Uy={readContext:Ae,useCallback:_p,useContext:Ae,useEffect:Ei,useImperativeHandle:$p,useLayoutEffect:Ep,useMemo:jp,useReducer:ta,useRef:Si,useState:function(){return ta(nt)},useDebugValue:kl,useDeferredValue:function(e){var t=ta(nt),n=t[0],r=t[1];return Ei(function(){var a=Me.transition;Me.transition=1;try{r(e)}finally{Me.transition=a}},[e]),n},useTransition:function(){var e=ta(nt)[0];return[Si().current,e]},useMutableSource:wp,useOpaqueIdentifier:function(){return ta(nt)[0]},unstable_isNewReconciler:!1},Oy=Wt.ReactCurrentOwner,qe=!1;function _e(e,t,n,r){t.child=e===null?hp(t,null,n,r):bi(t,e.child,n,r)}function Pp(e,t,n,r,a){n=n.render;var i=t.ref;return Ln(t,a),r=yl(e,t,n,r,i,a),e!==null&&!qe?(t.updateQueue=e.updateQueue,t.flags&=-517,e.lanes&=~a,mt(e,t,a)):(t.flags|=1,_e(e,t,r,a),t.child)}function Np(e,t,n,r,a,i){if(e===null){var o=n.type;return typeof o=="function"&&!Hl(o)&&o.defaultProps===void 0&&n.compare===null&&n.defaultProps===void 0?(t.tag=15,t.type=o,Tp(e,t,o,r,a,i)):(e=Mi(n.type,null,r,t,t.mode,i),e.ref=t.ref,e.return=t,t.child=e)}return o=e.child,!(a&i)&&(a=o.memoizedProps,n=n.compare,n=n!==null?n:Or,n(a,r)&&e.ref===t.ref)?mt(e,t,i):(t.flags|=1,e=Ut(o,r),e.ref=t.ref,e.return=t,t.child=e)}function Tp(e,t,n,r,a,i){if(e!==null&&Or(e.memoizedProps,r)&&e.ref===t.ref)if(qe=!1,(i&a)!==0)e.flags&16384&&(qe=!0);else return t.lanes=e.lanes,mt(e,t,i);return Sl(e,t,n,r,i)}function xl(e,t,n){var r=t.pendingProps,a=r.children,i=e!==null?e.memoizedState:null;if(r.mode==="hidden"||r.mode==="unstable-defer-without-hiding")if(!(t.mode&4))t.memoizedState={baseLanes:0},Ai(t,n);else if(n&1073741824)t.memoizedState={baseLanes:0},Ai(t,i!==null?i.baseLanes:n);else return e=i!==null?i.baseLanes|n:n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e},Ai(t,e),null;else i!==null?(r=i.baseLanes|n,t.memoizedState=null):r=n,Ai(t,r);return _e(e,t,a,n),t.child}function Ip(e,t){var n=t.ref;(e===null&&n!==null||e!==null&&e.ref!==n)&&(t.flags|=128)}function Sl(e,t,n,r,a){var i=Ce(n)?Xt:he.current;return i=Mn(t,i),Ln(t,a),n=yl(e,t,n,r,i,a),e!==null&&!qe?(t.updateQueue=e.updateQueue,t.flags&=-517,e.lanes&=~a,mt(e,t,a)):(t.flags|=1,_e(e,t,n,a),t.child)}function Dp(e,t,n,r,a){if(Ce(n)){var i=!0;li(t)}else i=!1;if(Ln(t,a),t.stateNode===null)e!==null&&(e.alternate=null,t.alternate=null,t.flags|=2),dp(t,n,r),ul(t,n,r,a),r=!0;else if(e===null){var o=t.stateNode,s=t.memoizedProps;o.props=s;var l=o.context,u=n.contextType;typeof u=="object"&&u!==null?u=Ae(u):(u=Ce(n)?Xt:he.current,u=Mn(t,u));var p=n.getDerivedStateFromProps,m=typeof p=="function"||typeof o.getSnapshotBeforeUpdate=="function";m||typeof o.UNSAFE_componentWillReceiveProps!="function"&&typeof o.componentWillReceiveProps!="function"||(s!==r||l!==u)&&pp(t,o,r,u),Nt=!1;var d=t.memoizedState;o.state=d,Vr(t,r,o,a),l=t.memoizedState,s!==r||d!==l||Ee.current||Nt?(typeof p=="function"&&(hi(t,n,p,r),l=t.memoizedState),(s=Nt||up(t,n,s,r,d,l,u))?(m||typeof o.UNSAFE_componentWillMount!="function"&&typeof o.componentWillMount!="function"||(typeof o.componentWillMount=="function"&&o.componentWillMount(),typeof o.UNSAFE_componentWillMount=="function"&&o.UNSAFE_componentWillMount()),typeof o.componentDidMount=="function"&&(t.flags|=4)):(typeof o.componentDidMount=="function"&&(t.flags|=4),t.memoizedProps=r,t.memoizedState=l),o.props=r,o.state=l,o.context=u,r=s):(typeof o.componentDidMount=="function"&&(t.flags|=4),r=!1)}else{o=t.stateNode,op(e,t),s=t.memoizedProps,u=t.type===t.elementType?s:He(t.type,s),o.props=u,m=t.pendingProps,d=o.context,l=n.contextType,typeof l=="object"&&l!==null?l=Ae(l):(l=Ce(n)?Xt:he.current,l=Mn(t,l));var y=n.getDerivedStateFromProps;(p=typeof y=="function"||typeof o.getSnapshotBeforeUpdate=="function")||typeof o.UNSAFE_componentWillReceiveProps!="function"&&typeof o.componentWillReceiveProps!="function"||(s!==m||d!==l)&&pp(t,o,r,l),Nt=!1,d=t.memoizedState,o.state=d,Vr(t,r,o,a);var b=t.memoizedState;s!==m||d!==b||Ee.current||Nt?(typeof y=="function"&&(hi(t,n,y,r),b=t.memoizedState),(u=Nt||up(t,n,u,r,d,b,l))?(p||typeof o.UNSAFE_componentWillUpdate!="function"&&typeof o.componentWillUpdate!="function"||(typeof o.componentWillUpdate=="function"&&o.componentWillUpdate(r,b,l),typeof o.UNSAFE_componentWillUpdate=="function"&&o.UNSAFE_componentWillUpdate(r,b,l)),typeof o.componentDidUpdate=="function"&&(t.flags|=4),typeof o.getSnapshotBeforeUpdate=="function"&&(t.flags|=256)):(typeof o.componentDidUpdate!="function"||s===e.memoizedProps&&d===e.memoizedState||(t.flags|=4),typeof o.getSnapshotBeforeUpdate!="function"||s===e.memoizedProps&&d===e.memoizedState||(t.flags|=256),t.memoizedProps=r,t.memoizedState=b),o.props=r,o.state=b,o.context=l,r=u):(typeof o.componentDidUpdate!="function"||s===e.memoizedProps&&d===e.memoizedState||(t.flags|=4),typeof o.getSnapshotBeforeUpdate!="function"||s===e.memoizedProps&&d===e.memoizedState||(t.flags|=256),r=!1)}return El(e,t,n,r,i,a)}function El(e,t,n,r,a,i){Ip(e,t);var o=(t.flags&64)!==0;if(!r&&!o)return a&&Jd(t,n,!1),mt(e,t,i);r=t.stateNode,Oy.current=t;var s=o&&typeof n.getDerivedStateFromError!="function"?null:r.render();return t.flags|=1,e!==null&&o?(t.child=bi(t,e.child,null,i),t.child=bi(t,null,s,i)):_e(e,t,s,i),t.memoizedState=r.state,a&&Jd(t,n,!0),t.child}function Ap(e){var t=e.stateNode;t.pendingContext?Gd(e,t.pendingContext,t.pendingContext!==t.context):t.context&&Gd(e,t.context,!1),dl(e,t.containerInfo)}var $i={dehydrated:null,retryLane:0};function Mp(e,t,n){var r=t.pendingProps,a=J.current,i=!1,o;return(o=(t.flags&64)!==0)||(o=e!==null&&e.memoizedState===null?!1:(a&2)!==0),o?(i=!0,t.flags&=-65):e!==null&&e.memoizedState===null||r.fallback===void 0||r.unstable_avoidThisFallback===!0||(a|=1),K(J,a&1),e===null?(r.fallback!==void 0&&ml(t),e=r.children,a=r.fallback,i?(e=zp(t,e,a,n),t.child.memoizedState={baseLanes:n},t.memoizedState=$i,e):typeof r.unstable_expectedLoadTime=="number"?(e=zp(t,e,a,n),t.child.memoizedState={baseLanes:n},t.memoizedState=$i,t.lanes=33554432,e):(n=ql({mode:"visible",children:e},t.mode,n,null),n.return=t,t.child=n)):e.memoizedState!==null?i?(r=Lp(e,t,r.children,r.fallback,n),i=t.child,a=e.child.memoizedState,i.memoizedState=a===null?{baseLanes:n}:{baseLanes:a.baseLanes|n},i.childLanes=e.childLanes&~n,t.memoizedState=$i,r):(n=Rp(e,t,r.children,n),t.memoizedState=null,n):i?(r=Lp(e,t,r.children,r.fallback,n),i=t.child,a=e.child.memoizedState,i.memoizedState=a===null?{baseLanes:n}:{baseLanes:a.baseLanes|n},i.childLanes=e.childLanes&~n,t.memoizedState=$i,r):(n=Rp(e,t,r.children,n),t.memoizedState=null,n)}function zp(e,t,n,r){var a=e.mode,i=e.child;return t={mode:"hidden",children:t},!(a&2)&&i!==null?(i.childLanes=0,i.pendingProps=t):i=ql(t,a,0,null),n=Vn(n,a,r,null),i.return=e,n.return=e,i.sibling=n,e.child=i,n}function Rp(e,t,n,r){var a=e.child;return e=a.sibling,n=Ut(a,{mode:"visible",children:n}),!(t.mode&2)&&(n.lanes=r),n.return=t,n.sibling=null,e!==null&&(e.nextEffect=null,e.flags=8,t.firstEffect=t.lastEffect=e),t.child=n}function Lp(e,t,n,r,a){var i=t.mode,o=e.child;e=o.sibling;var s={mode:"hidden",children:n};return!(i&2)&&t.child!==o?(n=t.child,n.childLanes=0,n.pendingProps=s,o=n.lastEffect,o!==null?(t.firstEffect=n.firstEffect,t.lastEffect=o,o.nextEffect=null):t.firstEffect=t.lastEffect=null):n=Ut(o,s),e!==null?r=Ut(e,r):(r=Vn(r,i,a,null),r.flags|=2),r.return=t,n.return=t,n.sibling=r,t.child=n,r}function Up(e,t){e.lanes|=t;var n=e.alternate;n!==null&&(n.lanes|=t),ip(e.return,t)}function Cl(e,t,n,r,a,i){var o=e.memoizedState;o===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:a,lastEffect:i}:(o.isBackwards=t,o.rendering=null,o.renderingStartTime=0,o.last=r,o.tail=n,o.tailMode=a,o.lastEffect=i)}function Op(e,t,n){var r=t.pendingProps,a=r.revealOrder,i=r.tail;if(_e(e,t,r.children,n),r=J.current,r&2)r=r&1|2,t.flags|=64;else{if(e!==null&&e.flags&64)e:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&Up(e,n);else if(e.tag===19)Up(e,n);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;e.sibling===null;){if(e.return===null||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}r&=1}if(K(J,r),!(t.mode&2))t.memoizedState=null;else switch(a){case"forwards":for(n=t.child,a=null;n!==null;)e=n.alternate,e!==null&&vi(e)===null&&(a=n),n=n.sibling;n=a,n===null?(a=t.child,t.child=null):(a=n.sibling,n.sibling=null),Cl(t,!1,a,n,i,t.lastEffect);break;case"backwards":for(n=null,a=t.child,t.child=null;a!==null;){if(e=a.alternate,e!==null&&vi(e)===null){t.child=a;break}e=a.sibling,a.sibling=n,n=a,a=e}Cl(t,!0,n,null,i,t.lastEffect);break;case"together":Cl(t,!1,null,null,void 0,t.lastEffect);break;default:t.memoizedState=null}return t.child}function mt(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),aa|=t.lanes,n&t.childLanes){if(e!==null&&t.child!==e.child)throw Error(E(153));if(t.child!==null){for(e=t.child,n=Ut(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=Ut(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}return null}var Yp,$l,Fp,Bp;Yp=function(e,t){for(var n=t.child;n!==null;){if(n.tag===5||n.tag===6)e.appendChild(n.stateNode);else if(n.tag!==4&&n.child!==null){n.child.return=n,n=n.child;continue}if(n===t)break;for(;n.sibling===null;){if(n.return===null||n.return===t)return;n=n.return}n.sibling.return=n.return,n=n.sibling}},$l=function(){},Fp=function(e,t,n,r){var a=e.memoizedProps;if(a!==r){e=t.stateNode,tn(et.current);var i=null;switch(n){case"input":a=us(e,a),r=us(e,r),i=[];break;case"option":a=ms(e,a),r=ms(e,r),i=[];break;case"select":a=H({},a,{value:void 0}),r=H({},r,{value:void 0}),i=[];break;case"textarea":a=hs(e,a),r=hs(e,r),i=[];break;default:typeof a.onClick!="function"&&typeof r.onClick=="function"&&(e.onclick=ri)}ys(n,r);var o;n=null;for(u in a)if(!r.hasOwnProperty(u)&&a.hasOwnProperty(u)&&a[u]!=null)if(u==="style"){var s=a[u];for(o in s)s.hasOwnProperty(o)&&(n||(n={}),n[o]="")}else u!=="dangerouslySetInnerHTML"&&u!=="children"&&u!=="suppressContentEditableWarning"&&u!=="suppressHydrationWarning"&&u!=="autoFocus"&&(br.hasOwnProperty(u)?i||(i=[]):(i=i||[]).push(u,null));for(u in r){var l=r[u];if(s=a!=null?a[u]:void 0,r.hasOwnProperty(u)&&l!==s&&(l!=null||s!=null))if(u==="style")if(s){for(o in s)!s.hasOwnProperty(o)||l&&l.hasOwnProperty(o)||(n||(n={}),n[o]="");for(o in l)l.hasOwnProperty(o)&&s[o]!==l[o]&&(n||(n={}),n[o]=l[o])}else n||(i||(i=[]),i.push(u,n)),n=l;else u==="dangerouslySetInnerHTML"?(l=l?l.__html:void 0,s=s?s.__html:void 0,l!=null&&s!==l&&(i=i||[]).push(u,l)):u==="children"?typeof l!="string"&&typeof l!="number"||(i=i||[]).push(u,""+l):u!=="suppressContentEditableWarning"&&u!=="suppressHydrationWarning"&&(br.hasOwnProperty(u)?(l!=null&&u==="onScroll"&&F("scroll",e),i||s===l||(i=[])):typeof l=="object"&&l!==null&&l.$$typeof===is?l.toString():(i=i||[]).push(u,l))}n&&(i=i||[]).push("style",n);var u=i;(t.updateQueue=u)&&(t.flags|=4)}},Bp=function(e,t,n,r){n!==r&&(t.flags|=4)};function ra(e,t){if(!tt)switch(e.tailMode){case"hidden":t=e.tail;for(var n=null;t!==null;)t.alternate!==null&&(n=t),t=t.sibling;n===null?e.tail=null:n.sibling=null;break;case"collapsed":n=e.tail;for(var r=null;n!==null;)n.alternate!==null&&(r=n),n=n.sibling;r===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:r.sibling=null}}function Yy(e,t,n){var r=t.pendingProps;switch(t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return null;case 1:return Ce(t.type)&&si(),null;case 3:return Un(),B(Ee),B(he),fl(),r=t.stateNode,r.pendingContext&&(r.context=r.pendingContext,r.pendingContext=null),(e===null||e.child===null)&&(ki(t)?t.flags|=4:r.hydrate||(t.flags|=256)),$l(t),null;case 5:pl(t);var a=tn(Jr.current);if(n=t.type,e!==null&&t.stateNode!=null)Fp(e,t,n,r,a),e.ref!==t.ref&&(t.flags|=128);else{if(!r){if(t.stateNode===null)throw Error(E(166));return null}if(e=tn(et.current),ki(t)){r=t.stateNode,n=t.type;var i=t.memoizedProps;switch(r[_t]=t,r[ii]=i,n){case"dialog":F("cancel",r),F("close",r);break;case"iframe":case"object":case"embed":F("load",r);break;case"video":case"audio":for(e=0;e<Fr.length;e++)F(Fr[e],r);break;case"source":F("error",r);break;case"img":case"image":case"link":F("error",r),F("load",r);break;case"details":F("toggle",r);break;case"input":Du(r,i),F("invalid",r);break;case"select":r._wrapperState={wasMultiple:!!i.multiple},F("invalid",r);break;case"textarea":zu(r,i),F("invalid",r)}ys(n,i),e=null;for(var o in i)i.hasOwnProperty(o)&&(a=i[o],o==="children"?typeof a=="string"?r.textContent!==a&&(e=["children",a]):typeof a=="number"&&r.textContent!==""+a&&(e=["children",""+a]):br.hasOwnProperty(o)&&a!=null&&o==="onScroll"&&F("scroll",r));switch(n){case"input":Oa(r),Mu(r,i,!0);break;case"textarea":Oa(r),Lu(r);break;case"select":case"option":break;default:typeof i.onClick=="function"&&(r.onclick=ri)}r=e,t.updateQueue=r,r!==null&&(t.flags|=4)}else{switch(o=a.nodeType===9?a:a.ownerDocument,e===fs.html&&(e=Uu(n)),e===fs.html?n==="script"?(e=o.createElement("div"),e.innerHTML="<script><\/script>",e=e.removeChild(e.firstChild)):typeof r.is=="string"?e=o.createElement(n,{is:r.is}):(e=o.createElement(n),n==="select"&&(o=e,r.multiple?o.multiple=!0:r.size&&(o.size=r.size))):e=o.createElementNS(e,n),e[_t]=t,e[ii]=r,Yp(e,t,!1,!1),t.stateNode=e,o=bs(n,r),n){case"dialog":F("cancel",e),F("close",e),a=r;break;case"iframe":case"object":case"embed":F("load",e),a=r;break;case"video":case"audio":for(a=0;a<Fr.length;a++)F(Fr[a],e);a=r;break;case"source":F("error",e),a=r;break;case"img":case"image":case"link":F("error",e),F("load",e),a=r;break;case"details":F("toggle",e),a=r;break;case"input":Du(e,r),a=us(e,r),F("invalid",e);break;case"option":a=ms(e,r);break;case"select":e._wrapperState={wasMultiple:!!r.multiple},a=H({},r,{value:void 0}),F("invalid",e);break;case"textarea":zu(e,r),a=hs(e,r),F("invalid",e);break;default:a=r}ys(n,a);var s=a;for(i in s)if(s.hasOwnProperty(i)){var l=s[i];i==="style"?Fu(e,l):i==="dangerouslySetInnerHTML"?(l=l?l.__html:void 0,l!=null&&Ou(e,l)):i==="children"?typeof l=="string"?(n!=="textarea"||l!=="")&&Er(e,l):typeof l=="number"&&Er(e,""+l):i!=="suppressContentEditableWarning"&&i!=="suppressHydrationWarning"&&i!=="autoFocus"&&(br.hasOwnProperty(i)?l!=null&&i==="onScroll"&&F("scroll",e):l!=null&&Zo(e,i,l,o))}switch(n){case"input":Oa(e),Mu(e,r,!1);break;case"textarea":Oa(e),Lu(e);break;case"option":r.value!=null&&e.setAttribute("value",""+wt(r.value));break;case"select":e.multiple=!!r.multiple,i=r.value,i!=null?wn(e,!!r.multiple,i,!1):r.defaultValue!=null&&wn(e,!!r.multiple,r.defaultValue,!0);break;default:typeof a.onClick=="function"&&(e.onclick=ri)}Bd(n,r)&&(t.flags|=4)}t.ref!==null&&(t.flags|=128)}return null;case 6:if(e&&t.stateNode!=null)Bp(e,t,e.memoizedProps,r);else{if(typeof r!="string"&&t.stateNode===null)throw Error(E(166));n=tn(Jr.current),tn(et.current),ki(t)?(r=t.stateNode,n=t.memoizedProps,r[_t]=t,r.nodeValue!==n&&(t.flags|=4)):(r=(n.nodeType===9?n:n.ownerDocument).createTextNode(r),r[_t]=t,t.stateNode=r)}return null;case 13:return B(J),r=t.memoizedState,t.flags&64?(t.lanes=n,t):(r=r!==null,n=!1,e===null?t.memoizedProps.fallback!==void 0&&ki(t):n=e.memoizedState!==null,r&&!n&&t.mode&2&&(e===null&&t.memoizedProps.unstable_avoidThisFallback!==!0||J.current&1?le===0&&(le=3):((le===0||le===3)&&(le=4),ke===null||!(aa&134217727)&&!(Fn&134217727)||Hn(ke,ye))),(r||n)&&(t.flags|=4),null);case 4:return Un(),$l(t),e===null&&Ld(t.stateNode.containerInfo),null;case 10:return ll(t),null;case 17:return Ce(t.type)&&si(),null;case 19:if(B(J),r=t.memoizedState,r===null)return null;if(i=(t.flags&64)!==0,o=r.rendering,o===null)if(i)ra(r,!1);else{if(le!==0||e!==null&&e.flags&64)for(e=t.child;e!==null;){if(o=vi(e),o!==null){for(t.flags|=64,ra(r,!1),i=o.updateQueue,i!==null&&(t.updateQueue=i,t.flags|=4),r.lastEffect===null&&(t.firstEffect=null),t.lastEffect=r.lastEffect,r=n,n=t.child;n!==null;)i=n,e=r,i.flags&=2,i.nextEffect=null,i.firstEffect=null,i.lastEffect=null,o=i.alternate,o===null?(i.childLanes=0,i.lanes=e,i.child=null,i.memoizedProps=null,i.memoizedState=null,i.updateQueue=null,i.dependencies=null,i.stateNode=null):(i.childLanes=o.childLanes,i.lanes=o.lanes,i.child=o.child,i.memoizedProps=o.memoizedProps,i.memoizedState=o.memoizedState,i.updateQueue=o.updateQueue,i.type=o.type,e=o.dependencies,i.dependencies=e===null?null:{lanes:e.lanes,firstContext:e.firstContext}),n=n.sibling;return K(J,J.current&1|2),t.child}e=e.sibling}r.tail!==null&&fe()>Rl&&(t.flags|=64,i=!0,ra(r,!1),t.lanes=33554432)}else{if(!i)if(e=vi(o),e!==null){if(t.flags|=64,i=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),ra(r,!0),r.tail===null&&r.tailMode==="hidden"&&!o.alternate&&!tt)return t=t.lastEffect=r.lastEffect,t!==null&&(t.nextEffect=null),null}else 2*fe()-r.renderingStartTime>Rl&&n!==1073741824&&(t.flags|=64,i=!0,ra(r,!1),t.lanes=33554432);r.isBackwards?(o.sibling=t.child,t.child=o):(n=r.last,n!==null?n.sibling=o:t.child=o,r.last=o)}return r.tail!==null?(n=r.tail,r.rendering=n,r.tail=n.sibling,r.lastEffect=t.lastEffect,r.renderingStartTime=fe(),n.sibling=null,t=J.current,K(J,i?t&1|2:t&1),n):null;case 23:case 24:return Bl(),e!==null&&e.memoizedState!==null!=(t.memoizedState!==null)&&r.mode!=="unstable-defer-without-hiding"&&(t.flags|=4),null}throw Error(E(156,t.tag))}function Fy(e){switch(e.tag){case 1:Ce(e.type)&&si();var t=e.flags;return t&4096?(e.flags=t&-4097|64,e):null;case 3:if(Un(),B(Ee),B(he),fl(),t=e.flags,t&64)throw Error(E(285));return e.flags=t&-4097|64,e;case 5:return pl(e),null;case 13:return B(J),t=e.flags,t&4096?(e.flags=t&-4097|64,e):null;case 19:return B(J),null;case 4:return Un(),null;case 10:return ll(e),null;case 23:case 24:return Bl(),null;default:return null}}function _l(e,t){try{var n="",r=t;do n+=xg(r),r=r.return;while(r);var a=n}catch(i){a=`
38
+ `+a[o].replace(" at new "," at ");while(1<=o&&0<=s);break}}}finally{cs=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?Sr(e):""}function xg(e){switch(e.tag){case 5:return Sr(e.type);case 16:return Sr("Lazy");case 13:return Sr("Suspense");case 19:return Sr("SuspenseList");case 0:case 2:case 15:return e=Ua(e.type,!1),e;case 11:return e=Ua(e.type.render,!1),e;case 22:return e=Ua(e.type._render,!1),e;case 1:return e=Ua(e.type,!0),e;default:return""}}function kn(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case kt:return"Fragment";case Gt:return"Portal";case kr:return"Profiler";case es:return"StrictMode";case wr:return"Suspense";case Ra:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case ns:return(e.displayName||"Context")+".Consumer";case ts:return(e._context.displayName||"Context")+".Provider";case za:var t=e.render;return t=t.displayName||t.name||"",e.displayName||(t!==""?"ForwardRef("+t+")":"ForwardRef");case La:return kn(e.type);case as:return kn(e._render);case rs:t=e._payload,e=e._init;try{return kn(e(t))}catch{}}return null}function wt(e){switch(typeof e){case"boolean":case"number":case"object":case"string":case"undefined":return e;default:return""}}function Tu(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function Sg(e){var t=Tu(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&typeof n<"u"&&typeof n.get=="function"&&typeof n.set=="function"){var a=n.get,i=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return a.call(this)},set:function(o){r=""+o,i.call(this,o)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(o){r=""+o},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function Oa(e){e._valueTracker||(e._valueTracker=Sg(e))}function Iu(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=Tu(e)?e.checked?"true":"false":e.value),e=r,e!==n?(t.setValue(e),!0):!1}function Fa(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}function us(e,t){var n=t.checked;return H({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??e._wrapperState.initialChecked})}function Du(e,t){var n=t.defaultValue==null?"":t.defaultValue,r=t.checked!=null?t.checked:t.defaultChecked;n=wt(t.value!=null?t.value:n),e._wrapperState={initialChecked:r,initialValue:n,controlled:t.type==="checkbox"||t.type==="radio"?t.checked!=null:t.value!=null}}function Au(e,t){t=t.checked,t!=null&&Zo(e,"checked",t,!1)}function ds(e,t){Au(e,t);var n=wt(t.value),r=t.type;if(n!=null)r==="number"?(n===0&&e.value===""||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if(r==="submit"||r==="reset"){e.removeAttribute("value");return}t.hasOwnProperty("value")?ps(e,t.type,n):t.hasOwnProperty("defaultValue")&&ps(e,t.type,wt(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function Mu(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type;if(!(r!=="submit"&&r!=="reset"||t.value!==void 0&&t.value!==null))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}n=e.name,n!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,n!==""&&(e.name=n)}function ps(e,t,n){(t!=="number"||Fa(e.ownerDocument)!==e)&&(n==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}function Eg(e){var t="";return Ma.Children.forEach(e,function(n){n!=null&&(t+=n)}),t}function ms(e,t){return e=H({children:void 0},t),(t=Eg(t.children))&&(e.children=t),e}function wn(e,t,n,r){if(e=e.options,t){t={};for(var a=0;a<n.length;a++)t["$"+n[a]]=!0;for(n=0;n<e.length;n++)a=t.hasOwnProperty("$"+e[n].value),e[n].selected!==a&&(e[n].selected=a),a&&r&&(e[n].defaultSelected=!0)}else{for(n=""+wt(n),t=null,a=0;a<e.length;a++){if(e[a].value===n){e[a].selected=!0,r&&(e[a].defaultSelected=!0);return}t!==null||e[a].disabled||(t=e[a])}t!==null&&(t.selected=!0)}}function hs(e,t){if(t.dangerouslySetInnerHTML!=null)throw Error(E(91));return H({},t,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function zu(e,t){var n=t.value;if(n==null){if(n=t.children,t=t.defaultValue,n!=null){if(t!=null)throw Error(E(92));if(Array.isArray(n)){if(!(1>=n.length))throw Error(E(93));n=n[0]}t=n}t==null&&(t=""),n=t}e._wrapperState={initialValue:wt(n)}}function Ru(e,t){var n=wt(t.value),r=wt(t.defaultValue);n!=null&&(n=""+n,n!==e.value&&(e.value=n),t.defaultValue==null&&e.defaultValue!==n&&(e.defaultValue=n)),r!=null&&(e.defaultValue=""+r)}function Lu(e){var t=e.textContent;t===e._wrapperState.initialValue&&t!==""&&t!==null&&(e.value=t)}var fs={html:"http://www.w3.org/1999/xhtml",mathml:"http://www.w3.org/1998/Math/MathML",svg:"http://www.w3.org/2000/svg"};function Uu(e){switch(e){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function gs(e,t){return e==null||e==="http://www.w3.org/1999/xhtml"?Uu(t):e==="http://www.w3.org/2000/svg"&&t==="foreignObject"?"http://www.w3.org/1999/xhtml":e}var Ya,Ou=function(e){return typeof MSApp<"u"&&MSApp.execUnsafeLocalFunction?function(t,n,r,a){MSApp.execUnsafeLocalFunction(function(){return e(t,n,r,a)})}:e}(function(e,t){if(e.namespaceURI!==fs.svg||"innerHTML"in e)e.innerHTML=t;else{for(Ya=Ya||document.createElement("div"),Ya.innerHTML="<svg>"+t.valueOf().toString()+"</svg>",t=Ya.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function Er(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var Cr={animationIterationCount:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},Cg=["Webkit","ms","Moz","O"];Object.keys(Cr).forEach(function(e){Cg.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),Cr[t]=Cr[e]})});function Fu(e,t,n){return t==null||typeof t=="boolean"||t===""?"":n||typeof t!="number"||t===0||Cr.hasOwnProperty(e)&&Cr[e]?(""+t).trim():t+"px"}function Yu(e,t){e=e.style;for(var n in t)if(t.hasOwnProperty(n)){var r=n.indexOf("--")===0,a=Fu(n,t[n],r);n==="float"&&(n="cssFloat"),r?e.setProperty(n,a):e[n]=a}}var $g=H({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function ys(e,t){if(t){if($g[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(E(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(E(60));if(!(typeof t.dangerouslySetInnerHTML=="object"&&"__html"in t.dangerouslySetInnerHTML))throw Error(E(61))}if(t.style!=null&&typeof t.style!="object")throw Error(E(62))}}function bs(e,t){if(e.indexOf("-")===-1)return typeof t.is=="string";switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}function vs(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var ks=null,xn=null,Sn=null;function Bu(e){if(e=Hr(e)){if(typeof ks!="function")throw Error(E(280));var t=e.stateNode;t&&(t=oi(t),ks(e.stateNode,e.type,t))}}function Hu(e){xn?Sn?Sn.push(e):Sn=[e]:xn=e}function qu(){if(xn){var e=xn,t=Sn;if(Sn=xn=null,Bu(e),t)for(e=0;e<t.length;e++)Bu(t[e])}}function ws(e,t){return e(t)}function Vu(e,t,n,r,a){return e(t,n,r,a)}function xs(){}var Wu=ws,Kt=!1,Ss=!1;function Es(){(xn!==null||Sn!==null)&&(xs(),qu())}function _g(e,t,n){if(Ss)return e(t,n);Ss=!0;try{return Wu(e,t,n)}finally{Ss=!1,Es()}}function $r(e,t){var n=e.stateNode;if(n===null)return null;var r=oi(n);if(r===null)return null;n=r[t];e:switch(t){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(r=!r.disabled)||(e=e.type,r=!(e==="button"||e==="input"||e==="select"||e==="textarea")),e=!r;break e;default:e=!1}if(e)return null;if(n&&typeof n!="function")throw Error(E(231,t,typeof n));return n}var Cs=!1;if(ut)try{var _r={};Object.defineProperty(_r,"passive",{get:function(){Cs=!0}}),window.addEventListener("test",_r,_r),window.removeEventListener("test",_r,_r)}catch{Cs=!1}function jg(e,t,n,r,a,i,o,s,l){var u=Array.prototype.slice.call(arguments,3);try{t.apply(n,u)}catch(p){this.onError(p)}}var jr=!1,Ba=null,Ha=!1,$s=null,Pg={onError:function(e){jr=!0,Ba=e}};function Ng(e,t,n,r,a,i,o,s,l){jr=!1,Ba=null,jg.apply(Pg,arguments)}function Tg(e,t,n,r,a,i,o,s,l){if(Ng.apply(this,arguments),jr){if(jr){var u=Ba;jr=!1,Ba=null}else throw Error(E(198));Ha||(Ha=!0,$s=u)}}function Jt(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,t.flags&1026&&(n=t.return),e=t.return;while(e)}return t.tag===3?n:null}function Gu(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function Ku(e){if(Jt(e)!==e)throw Error(E(188))}function Ig(e){var t=e.alternate;if(!t){if(t=Jt(e),t===null)throw Error(E(188));return t!==e?null:e}for(var n=e,r=t;;){var a=n.return;if(a===null)break;var i=a.alternate;if(i===null){if(r=a.return,r!==null){n=r;continue}break}if(a.child===i.child){for(i=a.child;i;){if(i===n)return Ku(a),e;if(i===r)return Ku(a),t;i=i.sibling}throw Error(E(188))}if(n.return!==r.return)n=a,r=i;else{for(var o=!1,s=a.child;s;){if(s===n){o=!0,n=a,r=i;break}if(s===r){o=!0,r=a,n=i;break}s=s.sibling}if(!o){for(s=i.child;s;){if(s===n){o=!0,n=i,r=a;break}if(s===r){o=!0,r=i,n=a;break}s=s.sibling}if(!o)throw Error(E(189))}}if(n.alternate!==r)throw Error(E(190))}if(n.tag!==3)throw Error(E(188));return n.stateNode.current===n?e:t}function Ju(e){if(e=Ig(e),!e)return null;for(var t=e;;){if(t.tag===5||t.tag===6)return t;if(t.child)t.child.return=t,t=t.child;else{if(t===e)break;for(;!t.sibling;){if(!t.return||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}}return null}function Qu(e,t){for(var n=e.alternate;t!==null;){if(t===e||t===n)return!0;t=t.return}return!1}var Xu,_s,Zu,ed,js=!1,Xe=[],xt=null,St=null,Et=null,Pr=new Map,Nr=new Map,Tr=[],td="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit".split(" ");function Ps(e,t,n,r,a){return{blockedOn:e,domEventName:t,eventSystemFlags:n|16,nativeEvent:a,targetContainers:[r]}}function nd(e,t){switch(e){case"focusin":case"focusout":xt=null;break;case"dragenter":case"dragleave":St=null;break;case"mouseover":case"mouseout":Et=null;break;case"pointerover":case"pointerout":Pr.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":Nr.delete(t.pointerId)}}function Ir(e,t,n,r,a,i){return e===null||e.nativeEvent!==i?(e=Ps(t,n,r,a,i),t!==null&&(t=Hr(t),t!==null&&_s(t)),e):(e.eventSystemFlags|=r,t=e.targetContainers,a!==null&&t.indexOf(a)===-1&&t.push(a),e)}function Dg(e,t,n,r,a){switch(t){case"focusin":return xt=Ir(xt,e,t,n,r,a),!0;case"dragenter":return St=Ir(St,e,t,n,r,a),!0;case"mouseover":return Et=Ir(Et,e,t,n,r,a),!0;case"pointerover":var i=a.pointerId;return Pr.set(i,Ir(Pr.get(i)||null,e,t,n,r,a)),!0;case"gotpointercapture":return i=a.pointerId,Nr.set(i,Ir(Nr.get(i)||null,e,t,n,r,a)),!0}return!1}function Ag(e){var t=Qt(e.target);if(t!==null){var n=Jt(t);if(n!==null){if(t=n.tag,t===13){if(t=Gu(n),t!==null){e.blockedOn=t,ed(e.lanePriority,function(){ne.unstable_runWithPriority(e.priority,function(){Zu(n)})});return}}else if(t===3&&n.stateNode.hydrate){e.blockedOn=n.tag===3?n.stateNode.containerInfo:null;return}}}e.blockedOn=null}function qa(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var n=Ms(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(n!==null)return t=Hr(n),t!==null&&_s(t),e.blockedOn=n,!1;t.shift()}return!0}function rd(e,t,n){qa(e)&&n.delete(t)}function Mg(){for(js=!1;0<Xe.length;){var e=Xe[0];if(e.blockedOn!==null){e=Hr(e.blockedOn),e!==null&&Xu(e);break}for(var t=e.targetContainers;0<t.length;){var n=Ms(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(n!==null){e.blockedOn=n;break}t.shift()}e.blockedOn===null&&Xe.shift()}xt!==null&&qa(xt)&&(xt=null),St!==null&&qa(St)&&(St=null),Et!==null&&qa(Et)&&(Et=null),Pr.forEach(rd),Nr.forEach(rd)}function Dr(e,t){e.blockedOn===t&&(e.blockedOn=null,js||(js=!0,ne.unstable_scheduleCallback(ne.unstable_NormalPriority,Mg)))}function ad(e){function t(a){return Dr(a,e)}if(0<Xe.length){Dr(Xe[0],e);for(var n=1;n<Xe.length;n++){var r=Xe[n];r.blockedOn===e&&(r.blockedOn=null)}}for(xt!==null&&Dr(xt,e),St!==null&&Dr(St,e),Et!==null&&Dr(Et,e),Pr.forEach(t),Nr.forEach(t),n=0;n<Tr.length;n++)r=Tr[n],r.blockedOn===e&&(r.blockedOn=null);for(;0<Tr.length&&(n=Tr[0],n.blockedOn===null);)Ag(n),n.blockedOn===null&&Tr.shift()}function Va(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n}var En={animationend:Va("Animation","AnimationEnd"),animationiteration:Va("Animation","AnimationIteration"),animationstart:Va("Animation","AnimationStart"),transitionend:Va("Transition","TransitionEnd")},Ns={},id={};ut&&(id=document.createElement("div").style,"AnimationEvent"in window||(delete En.animationend.animation,delete En.animationiteration.animation,delete En.animationstart.animation),"TransitionEvent"in window||delete En.transitionend.transition);function Wa(e){if(Ns[e])return Ns[e];if(!En[e])return e;var t=En[e],n;for(n in t)if(t.hasOwnProperty(n)&&n in id)return Ns[e]=t[n];return e}var od=Wa("animationend"),sd=Wa("animationiteration"),ld=Wa("animationstart"),cd=Wa("transitionend"),ud=new Map,Ts=new Map,zg=["abort","abort",od,"animationEnd",sd,"animationIteration",ld,"animationStart","canplay","canPlay","canplaythrough","canPlayThrough","durationchange","durationChange","emptied","emptied","encrypted","encrypted","ended","ended","error","error","gotpointercapture","gotPointerCapture","load","load","loadeddata","loadedData","loadedmetadata","loadedMetadata","loadstart","loadStart","lostpointercapture","lostPointerCapture","playing","playing","progress","progress","seeking","seeking","stalled","stalled","suspend","suspend","timeupdate","timeUpdate",cd,"transitionEnd","waiting","waiting"];function Is(e,t){for(var n=0;n<e.length;n+=2){var r=e[n],a=e[n+1];a="on"+(a[0].toUpperCase()+a.slice(1)),Ts.set(r,t),ud.set(r,a),Vt(a,[r])}}var Rg=ne.unstable_now;Rg();var F=8;function Cn(e){if(1&e)return F=15,1;if(2&e)return F=14,2;if(4&e)return F=13,4;var t=24&e;return t!==0?(F=12,t):e&32?(F=11,32):(t=192&e,t!==0?(F=10,t):e&256?(F=9,256):(t=3584&e,t!==0?(F=8,t):e&4096?(F=7,4096):(t=4186112&e,t!==0?(F=6,t):(t=62914560&e,t!==0?(F=5,t):e&67108864?(F=4,67108864):e&134217728?(F=3,134217728):(t=805306368&e,t!==0?(F=2,t):1073741824&e?(F=1,1073741824):(F=8,e))))))}function Lg(e){switch(e){case 99:return 15;case 98:return 10;case 97:case 96:return 8;case 95:return 2;default:return 0}}function Ug(e){switch(e){case 15:case 14:return 99;case 13:case 12:case 11:case 10:return 98;case 9:case 8:case 7:case 6:case 4:case 5:return 97;case 3:case 2:case 1:return 95;case 0:return 90;default:throw Error(E(358,e))}}function Ar(e,t){var n=e.pendingLanes;if(n===0)return F=0;var r=0,a=0,i=e.expiredLanes,o=e.suspendedLanes,s=e.pingedLanes;if(i!==0)r=i,a=F=15;else if(i=n&134217727,i!==0){var l=i&~o;l!==0?(r=Cn(l),a=F):(s&=i,s!==0&&(r=Cn(s),a=F))}else i=n&~o,i!==0?(r=Cn(i),a=F):s!==0&&(r=Cn(s),a=F);if(r===0)return 0;if(r=31-Ct(r),r=n&((0>r?0:1<<r)<<1)-1,t!==0&&t!==r&&!(t&o)){if(Cn(t),a<=F)return t;F=a}if(t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=r;0<t;)n=31-Ct(t),a=1<<n,r|=e[n],t&=~a;return r}function dd(e){return e=e.pendingLanes&-1073741825,e!==0?e:e&1073741824?1073741824:0}function Ga(e,t){switch(e){case 15:return 1;case 14:return 2;case 12:return e=$n(24&~t),e===0?Ga(10,t):e;case 10:return e=$n(192&~t),e===0?Ga(8,t):e;case 8:return e=$n(3584&~t),e===0&&(e=$n(4186112&~t),e===0&&(e=512)),e;case 2:return t=$n(805306368&~t),t===0&&(t=268435456),t}throw Error(E(358,e))}function $n(e){return e&-e}function Ds(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Ka(e,t,n){e.pendingLanes|=t;var r=t-1;e.suspendedLanes&=r,e.pingedLanes&=r,e=e.eventTimes,t=31-Ct(t),e[t]=n}var Ct=Math.clz32?Math.clz32:Yg,Og=Math.log,Fg=Math.LN2;function Yg(e){return e===0?32:31-(Og(e)/Fg|0)|0}var Bg=ne.unstable_UserBlockingPriority,Hg=ne.unstable_runWithPriority,Ja=!0;function qg(e,t,n,r){Kt||xs();var a=As,i=Kt;Kt=!0;try{Vu(a,e,t,n,r)}finally{(Kt=i)||Es()}}function Vg(e,t,n,r){Hg(Bg,As.bind(null,e,t,n,r))}function As(e,t,n,r){if(Ja){var a;if((a=(t&4)===0)&&0<Xe.length&&-1<td.indexOf(e))e=Ps(null,e,t,n,r),Xe.push(e);else{var i=Ms(e,t,n,r);if(i===null)a&&nd(e,r);else{if(a){if(-1<td.indexOf(e)){e=Ps(i,e,t,n,r),Xe.push(e);return}if(Dg(i,e,t,n,r))return;nd(e,r)}Fd(e,t,r,null,n)}}}}function Ms(e,t,n,r){var a=vs(r);if(a=Qt(a),a!==null){var i=Jt(a);if(i===null)a=null;else{var o=i.tag;if(o===13){if(a=Gu(i),a!==null)return a;a=null}else if(o===3){if(i.stateNode.hydrate)return i.tag===3?i.stateNode.containerInfo:null;a=null}else i!==a&&(a=null)}}return Fd(e,t,r,a,n),null}var $t=null,zs=null,Qa=null;function pd(){if(Qa)return Qa;var e,t=zs,n=t.length,r,a="value"in $t?$t.value:$t.textContent,i=a.length;for(e=0;e<n&&t[e]===a[e];e++);var o=n-e;for(r=1;r<=o&&t[n-r]===a[i-r];r++);return Qa=a.slice(e,1<r?1-r:void 0)}function Xa(e){var t=e.keyCode;return"charCode"in e?(e=e.charCode,e===0&&t===13&&(e=13)):e=t,e===10&&(e=13),32<=e||e===13?e:0}function Za(){return!0}function md(){return!1}function Pe(e){function t(n,r,a,i,o){this._reactName=n,this._targetInst=a,this.type=r,this.nativeEvent=i,this.target=o,this.currentTarget=null;for(var s in e)e.hasOwnProperty(s)&&(n=e[s],this[s]=n?n(i):i[s]);return this.isDefaultPrevented=(i.defaultPrevented!=null?i.defaultPrevented:i.returnValue===!1)?Za:md,this.isPropagationStopped=md,this}return H(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var n=this.nativeEvent;n&&(n.preventDefault?n.preventDefault():typeof n.returnValue!="unknown"&&(n.returnValue=!1),this.isDefaultPrevented=Za)},stopPropagation:function(){var n=this.nativeEvent;n&&(n.stopPropagation?n.stopPropagation():typeof n.cancelBubble!="unknown"&&(n.cancelBubble=!0),this.isPropagationStopped=Za)},persist:function(){},isPersistent:Za}),t}var _n={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},Rs=Pe(_n),Mr=H({},_n,{view:0,detail:0}),Wg=Pe(Mr),Ls,Us,zr,ei=H({},Mr,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Fs,button:0,buttons:0,relatedTarget:function(e){return e.relatedTarget===void 0?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return"movementX"in e?e.movementX:(e!==zr&&(zr&&e.type==="mousemove"?(Ls=e.screenX-zr.screenX,Us=e.screenY-zr.screenY):Us=Ls=0,zr=e),Ls)},movementY:function(e){return"movementY"in e?e.movementY:Us}}),hd=Pe(ei),Gg=H({},ei,{dataTransfer:0}),Kg=Pe(Gg),Jg=H({},Mr,{relatedTarget:0}),Os=Pe(Jg),Qg=H({},_n,{animationName:0,elapsedTime:0,pseudoElement:0}),Xg=Pe(Qg),Zg=H({},_n,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),ey=Pe(Zg),ty=H({},_n,{data:0}),fd=Pe(ty),ny={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},ry={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},ay={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function iy(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=ay[e])?!!t[e]:!1}function Fs(){return iy}var oy=H({},Mr,{key:function(e){if(e.key){var t=ny[e.key]||e.key;if(t!=="Unidentified")return t}return e.type==="keypress"?(e=Xa(e),e===13?"Enter":String.fromCharCode(e)):e.type==="keydown"||e.type==="keyup"?ry[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Fs,charCode:function(e){return e.type==="keypress"?Xa(e):0},keyCode:function(e){return e.type==="keydown"||e.type==="keyup"?e.keyCode:0},which:function(e){return e.type==="keypress"?Xa(e):e.type==="keydown"||e.type==="keyup"?e.keyCode:0}}),sy=Pe(oy),ly=H({},ei,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),gd=Pe(ly),cy=H({},Mr,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Fs}),uy=Pe(cy),dy=H({},_n,{propertyName:0,elapsedTime:0,pseudoElement:0}),py=Pe(dy),my=H({},ei,{deltaX:function(e){return"deltaX"in e?e.deltaX:"wheelDeltaX"in e?-e.wheelDeltaX:0},deltaY:function(e){return"deltaY"in e?e.deltaY:"wheelDeltaY"in e?-e.wheelDeltaY:"wheelDelta"in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0}),hy=Pe(my),fy=[9,13,27,32],Ys=ut&&"CompositionEvent"in window,Rr=null;ut&&"documentMode"in document&&(Rr=document.documentMode);var gy=ut&&"TextEvent"in window&&!Rr,yd=ut&&(!Ys||Rr&&8<Rr&&11>=Rr),bd=String.fromCharCode(32),vd=!1;function kd(e,t){switch(e){case"keyup":return fy.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function wd(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var jn=!1;function yy(e,t){switch(e){case"compositionend":return wd(t);case"keypress":return t.which!==32?null:(vd=!0,bd);case"textInput":return e=t.data,e===bd&&vd?null:e;default:return null}}function by(e,t){if(jn)return e==="compositionend"||!Ys&&kd(e,t)?(e=pd(),Qa=zs=$t=null,jn=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case"compositionend":return yd&&t.locale!=="ko"?null:t.data;default:return null}}var vy={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function xd(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t==="input"?!!vy[e.type]:t==="textarea"}function Sd(e,t,n,r){Hu(r),t=ni(t,"onChange"),0<t.length&&(n=new Rs("onChange","change",null,n,r),e.push({event:n,listeners:t}))}var Lr=null,Ur=null;function ky(e){zd(e,0)}function ti(e){var t=Dn(e);if(Iu(t))return e}function wy(e,t){if(e==="change")return t}var Ed=!1;if(ut){var Bs;if(ut){var Hs="oninput"in document;if(!Hs){var Cd=document.createElement("div");Cd.setAttribute("oninput","return;"),Hs=typeof Cd.oninput=="function"}Bs=Hs}else Bs=!1;Ed=Bs&&(!document.documentMode||9<document.documentMode)}function $d(){Lr&&(Lr.detachEvent("onpropertychange",_d),Ur=Lr=null)}function _d(e){if(e.propertyName==="value"&&ti(Ur)){var t=[];if(Sd(t,Ur,e,vs(e)),e=ky,Kt)e(t);else{Kt=!0;try{ws(e,t)}finally{Kt=!1,Es()}}}}function xy(e,t,n){e==="focusin"?($d(),Lr=t,Ur=n,Lr.attachEvent("onpropertychange",_d)):e==="focusout"&&$d()}function Sy(e){if(e==="selectionchange"||e==="keyup"||e==="keydown")return ti(Ur)}function Ey(e,t){if(e==="click")return ti(t)}function Cy(e,t){if(e==="input"||e==="change")return ti(t)}function $y(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var De=typeof Object.is=="function"?Object.is:$y,_y=Object.prototype.hasOwnProperty;function Or(e,t){if(De(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(r=0;r<n.length;r++)if(!_y.call(t,n[r])||!De(e[n[r]],t[n[r]]))return!1;return!0}function jd(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function Pd(e,t){var n=jd(e);e=0;for(var r;n;){if(n.nodeType===3){if(r=e+n.textContent.length,e<=t&&r>=t)return{node:n,offset:t-e};e=r}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=jd(n)}}function Nd(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Nd(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Td(){for(var e=window,t=Fa();t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=Fa(e.document)}return t}function qs(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}var jy=ut&&"documentMode"in document&&11>=document.documentMode,Pn=null,Vs=null,Fr=null,Ws=!1;function Id(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;Ws||Pn==null||Pn!==Fa(r)||(r=Pn,"selectionStart"in r&&qs(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),Fr&&Or(Fr,r)||(Fr=r,r=ni(Vs,"onSelect"),0<r.length&&(t=new Rs("onSelect","select",null,t,n),e.push({event:t,listeners:r}),t.target=Pn)))}Is("cancel cancel click click close close contextmenu contextMenu copy copy cut cut auxclick auxClick dblclick doubleClick dragend dragEnd dragstart dragStart drop drop focusin focus focusout blur input input invalid invalid keydown keyDown keypress keyPress keyup keyUp mousedown mouseDown mouseup mouseUp paste paste pause pause play play pointercancel pointerCancel pointerdown pointerDown pointerup pointerUp ratechange rateChange reset reset seeked seeked submit submit touchcancel touchCancel touchend touchEnd touchstart touchStart volumechange volumeChange".split(" "),0),Is("drag drag dragenter dragEnter dragexit dragExit dragleave dragLeave dragover dragOver mousemove mouseMove mouseout mouseOut mouseover mouseOver pointermove pointerMove pointerout pointerOut pointerover pointerOver scroll scroll toggle toggle touchmove touchMove wheel wheel".split(" "),1),Is(zg,2);for(var Dd="change selectionchange textInput compositionstart compositionend compositionupdate".split(" "),Gs=0;Gs<Dd.length;Gs++)Ts.set(Dd[Gs],0);vn("onMouseEnter",["mouseout","mouseover"]),vn("onMouseLeave",["mouseout","mouseover"]),vn("onPointerEnter",["pointerout","pointerover"]),vn("onPointerLeave",["pointerout","pointerover"]),Vt("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),Vt("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),Vt("onBeforeInput",["compositionend","keypress","textInput","paste"]),Vt("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),Vt("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),Vt("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var Yr="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),Ad=new Set("cancel close invalid load scroll toggle".split(" ").concat(Yr));function Md(e,t,n){var r=e.type||"unknown-event";e.currentTarget=n,Tg(r,t,void 0,e),e.currentTarget=null}function zd(e,t){t=(t&4)!==0;for(var n=0;n<e.length;n++){var r=e[n],a=r.event;r=r.listeners;e:{var i=void 0;if(t)for(var o=r.length-1;0<=o;o--){var s=r[o],l=s.instance,u=s.currentTarget;if(s=s.listener,l!==i&&a.isPropagationStopped())break e;Md(a,s,u),i=l}else for(o=0;o<r.length;o++){if(s=r[o],l=s.instance,u=s.currentTarget,s=s.listener,l!==i&&a.isPropagationStopped())break e;Md(a,s,u),i=l}}}if(Ha)throw e=$s,Ha=!1,$s=null,e}function Y(e,t){var n=Wd(t),r=e+"__bubble";n.has(r)||(Od(t,e,2,!1),n.add(r))}var Rd="_reactListening"+Math.random().toString(36).slice(2);function Ld(e){e[Rd]||(e[Rd]=!0,Cu.forEach(function(t){Ad.has(t)||Ud(t,!1,e,null),Ud(t,!0,e,null)}))}function Ud(e,t,n,r){var a=4<arguments.length&&arguments[4]!==void 0?arguments[4]:0,i=n;if(e==="selectionchange"&&n.nodeType!==9&&(i=n.ownerDocument),r!==null&&!t&&Ad.has(e)){if(e!=="scroll")return;a|=2,i=r}var o=Wd(i),s=e+"__"+(t?"capture":"bubble");o.has(s)||(t&&(a|=4),Od(i,e,a,t),o.add(s))}function Od(e,t,n,r){var a=Ts.get(t);switch(a===void 0?2:a){case 0:a=qg;break;case 1:a=Vg;break;default:a=As}n=a.bind(null,t,n,e),a=void 0,!Cs||t!=="touchstart"&&t!=="touchmove"&&t!=="wheel"||(a=!0),r?a!==void 0?e.addEventListener(t,n,{capture:!0,passive:a}):e.addEventListener(t,n,!0):a!==void 0?e.addEventListener(t,n,{passive:a}):e.addEventListener(t,n,!1)}function Fd(e,t,n,r,a){var i=r;if(!(t&1)&&!(t&2)&&r!==null)e:for(;;){if(r===null)return;var o=r.tag;if(o===3||o===4){var s=r.stateNode.containerInfo;if(s===a||s.nodeType===8&&s.parentNode===a)break;if(o===4)for(o=r.return;o!==null;){var l=o.tag;if((l===3||l===4)&&(l=o.stateNode.containerInfo,l===a||l.nodeType===8&&l.parentNode===a))return;o=o.return}for(;s!==null;){if(o=Qt(s),o===null)return;if(l=o.tag,l===5||l===6){r=i=o;continue e}s=s.parentNode}}r=r.return}_g(function(){var u=i,p=vs(n),m=[];e:{var d=ud.get(e);if(d!==void 0){var y=Rs,b=e;switch(e){case"keypress":if(Xa(n)===0)break e;case"keydown":case"keyup":y=sy;break;case"focusin":b="focus",y=Os;break;case"focusout":b="blur",y=Os;break;case"beforeblur":case"afterblur":y=Os;break;case"click":if(n.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":y=hd;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":y=Kg;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":y=uy;break;case od:case sd:case ld:y=Xg;break;case cd:y=py;break;case"scroll":y=Wg;break;case"wheel":y=hy;break;case"copy":case"cut":case"paste":y=ey;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":y=gd}var x=(t&4)!==0,f=!x&&e==="scroll",h=x?d!==null?d+"Capture":null:d;x=[];for(var g=u,w;g!==null;){w=g;var k=w.stateNode;if(w.tag===5&&k!==null&&(w=k,h!==null&&(k=$r(g,h),k!=null&&x.push(Br(g,k,w)))),f)break;g=g.return}0<x.length&&(d=new y(d,b,null,n,p),m.push({event:d,listeners:x}))}}if(!(t&7)){e:{if(d=e==="mouseover"||e==="pointerover",y=e==="mouseout"||e==="pointerout",d&&!(t&16)&&(b=n.relatedTarget||n.fromElement)&&(Qt(b)||b[In]))break e;if((y||d)&&(d=p.window===p?p:(d=p.ownerDocument)?d.defaultView||d.parentWindow:window,y?(b=n.relatedTarget||n.toElement,y=u,b=b?Qt(b):null,b!==null&&(f=Jt(b),b!==f||b.tag!==5&&b.tag!==6)&&(b=null)):(y=null,b=u),y!==b)){if(x=hd,k="onMouseLeave",h="onMouseEnter",g="mouse",(e==="pointerout"||e==="pointerover")&&(x=gd,k="onPointerLeave",h="onPointerEnter",g="pointer"),f=y==null?d:Dn(y),w=b==null?d:Dn(b),d=new x(k,g+"leave",y,n,p),d.target=f,d.relatedTarget=w,k=null,Qt(p)===u&&(x=new x(h,g+"enter",b,n,p),x.target=w,x.relatedTarget=f,k=x),f=k,y&&b)t:{for(x=y,h=b,g=0,w=x;w;w=Nn(w))g++;for(w=0,k=h;k;k=Nn(k))w++;for(;0<g-w;)x=Nn(x),g--;for(;0<w-g;)h=Nn(h),w--;for(;g--;){if(x===h||h!==null&&x===h.alternate)break t;x=Nn(x),h=Nn(h)}x=null}else x=null;y!==null&&Yd(m,d,y,x,!1),b!==null&&f!==null&&Yd(m,f,b,x,!0)}}e:{if(d=u?Dn(u):window,y=d.nodeName&&d.nodeName.toLowerCase(),y==="select"||y==="input"&&d.type==="file")var C=wy;else if(xd(d))if(Ed)C=Cy;else{C=Sy;var S=xy}else(y=d.nodeName)&&y.toLowerCase()==="input"&&(d.type==="checkbox"||d.type==="radio")&&(C=Ey);if(C&&(C=C(e,u))){Sd(m,C,n,p);break e}S&&S(e,d,u),e==="focusout"&&(S=d._wrapperState)&&S.controlled&&d.type==="number"&&ps(d,"number",d.value)}switch(S=u?Dn(u):window,e){case"focusin":(xd(S)||S.contentEditable==="true")&&(Pn=S,Vs=u,Fr=null);break;case"focusout":Fr=Vs=Pn=null;break;case"mousedown":Ws=!0;break;case"contextmenu":case"mouseup":case"dragend":Ws=!1,Id(m,n,p);break;case"selectionchange":if(jy)break;case"keydown":case"keyup":Id(m,n,p)}var $;if(Ys)e:{switch(e){case"compositionstart":var T="onCompositionStart";break e;case"compositionend":T="onCompositionEnd";break e;case"compositionupdate":T="onCompositionUpdate";break e}T=void 0}else jn?kd(e,n)&&(T="onCompositionEnd"):e==="keydown"&&n.keyCode===229&&(T="onCompositionStart");T&&(yd&&n.locale!=="ko"&&(jn||T!=="onCompositionStart"?T==="onCompositionEnd"&&jn&&($=pd()):($t=p,zs="value"in $t?$t.value:$t.textContent,jn=!0)),S=ni(u,T),0<S.length&&(T=new fd(T,e,null,n,p),m.push({event:T,listeners:S}),$?T.data=$:($=wd(n),$!==null&&(T.data=$)))),($=gy?yy(e,n):by(e,n))&&(u=ni(u,"onBeforeInput"),0<u.length&&(p=new fd("onBeforeInput","beforeinput",null,n,p),m.push({event:p,listeners:u}),p.data=$))}zd(m,t)})}function Br(e,t,n){return{instance:e,listener:t,currentTarget:n}}function ni(e,t){for(var n=t+"Capture",r=[];e!==null;){var a=e,i=a.stateNode;a.tag===5&&i!==null&&(a=i,i=$r(e,n),i!=null&&r.unshift(Br(e,i,a)),i=$r(e,t),i!=null&&r.push(Br(e,i,a))),e=e.return}return r}function Nn(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5);return e||null}function Yd(e,t,n,r,a){for(var i=t._reactName,o=[];n!==null&&n!==r;){var s=n,l=s.alternate,u=s.stateNode;if(l!==null&&l===r)break;s.tag===5&&u!==null&&(s=u,a?(l=$r(n,i),l!=null&&o.unshift(Br(n,l,s))):a||(l=$r(n,i),l!=null&&o.push(Br(n,l,s)))),n=n.return}o.length!==0&&e.push({event:t,listeners:o})}function ri(){}var Ks=null,Js=null;function Bd(e,t){switch(e){case"button":case"input":case"select":case"textarea":return!!t.autoFocus}return!1}function Qs(e,t){return e==="textarea"||e==="option"||e==="noscript"||typeof t.children=="string"||typeof t.children=="number"||typeof t.dangerouslySetInnerHTML=="object"&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var Hd=typeof setTimeout=="function"?setTimeout:void 0,Py=typeof clearTimeout=="function"?clearTimeout:void 0;function Xs(e){e.nodeType===1?e.textContent="":e.nodeType===9&&(e=e.body,e!=null&&(e.textContent=""))}function Tn(e){for(;e!=null;e=e.nextSibling){var t=e.nodeType;if(t===1||t===3)break}return e}function qd(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n==="$"||n==="$!"||n==="$?"){if(t===0)return e;t--}else n==="/$"&&t++}e=e.previousSibling}return null}var Zs=0;function Ny(e){return{$$typeof:is,toString:e,valueOf:e}}var ai=Math.random().toString(36).slice(2),_t="__reactFiber$"+ai,ii="__reactProps$"+ai,In="__reactContainer$"+ai,Vd="__reactEvents$"+ai;function Qt(e){var t=e[_t];if(t)return t;for(var n=e.parentNode;n;){if(t=n[In]||n[_t]){if(n=t.alternate,t.child!==null||n!==null&&n.child!==null)for(e=qd(e);e!==null;){if(n=e[_t])return n;e=qd(e)}return t}e=n,n=e.parentNode}return null}function Hr(e){return e=e[_t]||e[In],!e||e.tag!==5&&e.tag!==6&&e.tag!==13&&e.tag!==3?null:e}function Dn(e){if(e.tag===5||e.tag===6)return e.stateNode;throw Error(E(33))}function oi(e){return e[ii]||null}function Wd(e){var t=e[Vd];return t===void 0&&(t=e[Vd]=new Set),t}var el=[],An=-1;function jt(e){return{current:e}}function B(e){0>An||(e.current=el[An],el[An]=null,An--)}function K(e,t){An++,el[An]=e.current,e.current=t}var Pt={},he=jt(Pt),Ee=jt(!1),Xt=Pt;function Mn(e,t){var n=e.type.contextTypes;if(!n)return Pt;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var a={},i;for(i in n)a[i]=t[i];return r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=a),a}function Ce(e){return e=e.childContextTypes,e!=null}function si(){B(Ee),B(he)}function Gd(e,t,n){if(he.current!==Pt)throw Error(E(168));K(he,t),K(Ee,n)}function Kd(e,t,n){var r=e.stateNode;if(e=t.childContextTypes,typeof r.getChildContext!="function")return n;r=r.getChildContext();for(var a in r)if(!(a in e))throw Error(E(108,kn(t)||"Unknown",a));return H({},n,r)}function li(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||Pt,Xt=he.current,K(he,e),K(Ee,Ee.current),!0}function Jd(e,t,n){var r=e.stateNode;if(!r)throw Error(E(169));n?(e=Kd(e,t,Xt),r.__reactInternalMemoizedMergedChildContext=e,B(Ee),B(he),K(he,e)):B(Ee),K(Ee,n)}var tl=null,Zt=null,Ty=ne.unstable_runWithPriority,nl=ne.unstable_scheduleCallback,rl=ne.unstable_cancelCallback,Iy=ne.unstable_shouldYield,Qd=ne.unstable_requestPaint,al=ne.unstable_now,Dy=ne.unstable_getCurrentPriorityLevel,ci=ne.unstable_ImmediatePriority,Xd=ne.unstable_UserBlockingPriority,Zd=ne.unstable_NormalPriority,ep=ne.unstable_LowPriority,tp=ne.unstable_IdlePriority,il={},Ay=Qd!==void 0?Qd:function(){},dt=null,ui=null,ol=!1,np=al(),fe=1e4>np?al:function(){return al()-np};function zn(){switch(Dy()){case ci:return 99;case Xd:return 98;case Zd:return 97;case ep:return 96;case tp:return 95;default:throw Error(E(332))}}function rp(e){switch(e){case 99:return ci;case 98:return Xd;case 97:return Zd;case 96:return ep;case 95:return tp;default:throw Error(E(332))}}function en(e,t){return e=rp(e),Ty(e,t)}function qr(e,t,n){return e=rp(e),nl(e,t,n)}function Ze(){if(ui!==null){var e=ui;ui=null,rl(e)}ap()}function ap(){if(!ol&&dt!==null){ol=!0;var e=0;try{var t=dt;en(99,function(){for(;e<t.length;e++){var n=t[e];do n=n(!0);while(n!==null)}}),dt=null}catch(n){throw dt!==null&&(dt=dt.slice(e+1)),nl(ci,Ze),n}finally{ol=!1}}}var My=Wt.ReactCurrentBatchConfig;function He(e,t){if(e&&e.defaultProps){t=H({},t),e=e.defaultProps;for(var n in e)t[n]===void 0&&(t[n]=e[n]);return t}return t}var di=jt(null),pi=null,Rn=null,mi=null;function sl(){mi=Rn=pi=null}function ll(e){var t=di.current;B(di),e.type._context._currentValue=t}function ip(e,t){for(;e!==null;){var n=e.alternate;if((e.childLanes&t)===t){if(n===null||(n.childLanes&t)===t)break;n.childLanes|=t}else e.childLanes|=t,n!==null&&(n.childLanes|=t);e=e.return}}function Ln(e,t){pi=e,mi=Rn=null,e=e.dependencies,e!==null&&e.firstContext!==null&&(e.lanes&t&&(qe=!0),e.firstContext=null)}function Ae(e,t){if(mi!==e&&t!==!1&&t!==0)if((typeof t!="number"||t===1073741823)&&(mi=e,t=1073741823),t={context:e,observedBits:t,next:null},Rn===null){if(pi===null)throw Error(E(308));Rn=t,pi.dependencies={lanes:0,firstContext:t,responders:null}}else Rn=Rn.next=t;return e._currentValue}var Nt=!1;function cl(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null},effects:null}}function op(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function Tt(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function It(e,t){if(e=e.updateQueue,e!==null){e=e.shared;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}}function sp(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var a=null,i=null;if(n=n.firstBaseUpdate,n!==null){do{var o={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};i===null?a=i=o:i=i.next=o,n=n.next}while(n!==null);i===null?a=i=t:i=i.next=t}else a=i=t;n={baseState:r.baseState,firstBaseUpdate:a,lastBaseUpdate:i,shared:r.shared,effects:r.effects},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function Vr(e,t,n,r){var a=e.updateQueue;Nt=!1;var i=a.firstBaseUpdate,o=a.lastBaseUpdate,s=a.shared.pending;if(s!==null){a.shared.pending=null;var l=s,u=l.next;l.next=null,o===null?i=u:o.next=u,o=l;var p=e.alternate;if(p!==null){p=p.updateQueue;var m=p.lastBaseUpdate;m!==o&&(m===null?p.firstBaseUpdate=u:m.next=u,p.lastBaseUpdate=l)}}if(i!==null){m=a.baseState,o=0,p=u=l=null;do{s=i.lane;var d=i.eventTime;if((r&s)===s){p!==null&&(p=p.next={eventTime:d,lane:0,tag:i.tag,payload:i.payload,callback:i.callback,next:null});e:{var y=e,b=i;switch(s=t,d=n,b.tag){case 1:if(y=b.payload,typeof y=="function"){m=y.call(d,m,s);break e}m=y;break e;case 3:y.flags=y.flags&-4097|64;case 0:if(y=b.payload,s=typeof y=="function"?y.call(d,m,s):y,s==null)break e;m=H({},m,s);break e;case 2:Nt=!0}}i.callback!==null&&(e.flags|=32,s=a.effects,s===null?a.effects=[i]:s.push(i))}else d={eventTime:d,lane:s,tag:i.tag,payload:i.payload,callback:i.callback,next:null},p===null?(u=p=d,l=m):p=p.next=d,o|=s;if(i=i.next,i===null){if(s=a.shared.pending,s===null)break;i=s.next,s.next=null,a.lastBaseUpdate=s,a.shared.pending=null}}while(1);p===null&&(l=m),a.baseState=l,a.firstBaseUpdate=u,a.lastBaseUpdate=p,aa|=o,e.lanes=o,e.memoizedState=m}}function lp(e,t,n){if(e=t.effects,t.effects=null,e!==null)for(t=0;t<e.length;t++){var r=e[t],a=r.callback;if(a!==null){if(r.callback=null,r=n,typeof a!="function")throw Error(E(191,a));a.call(r)}}}var cp=new Ma.Component().refs;function hi(e,t,n,r){t=e.memoizedState,n=n(r,t),n=n==null?t:H({},t,n),e.memoizedState=n,e.lanes===0&&(e.updateQueue.baseState=n)}var fi={isMounted:function(e){return(e=e._reactInternals)?Jt(e)===e:!1},enqueueSetState:function(e,t,n){e=e._reactInternals;var r=Ne(),a=Mt(e),i=Tt(r,a);i.payload=t,n!=null&&(i.callback=n),It(e,i),zt(e,a,r)},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=Ne(),a=Mt(e),i=Tt(r,a);i.tag=1,i.payload=t,n!=null&&(i.callback=n),It(e,i),zt(e,a,r)},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=Ne(),r=Mt(e),a=Tt(n,r);a.tag=2,t!=null&&(a.callback=t),It(e,a),zt(e,r,n)}};function up(e,t,n,r,a,i,o){return e=e.stateNode,typeof e.shouldComponentUpdate=="function"?e.shouldComponentUpdate(r,i,o):t.prototype&&t.prototype.isPureReactComponent?!Or(n,r)||!Or(a,i):!0}function dp(e,t,n){var r=!1,a=Pt,i=t.contextType;return typeof i=="object"&&i!==null?i=Ae(i):(a=Ce(t)?Xt:he.current,r=t.contextTypes,i=(r=r!=null)?Mn(e,a):Pt),t=new t(n,i),e.memoizedState=t.state!==null&&t.state!==void 0?t.state:null,t.updater=fi,e.stateNode=t,t._reactInternals=e,r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=a,e.__reactInternalMemoizedMaskedChildContext=i),t}function pp(e,t,n,r){e=t.state,typeof t.componentWillReceiveProps=="function"&&t.componentWillReceiveProps(n,r),typeof t.UNSAFE_componentWillReceiveProps=="function"&&t.UNSAFE_componentWillReceiveProps(n,r),t.state!==e&&fi.enqueueReplaceState(t,t.state,null)}function ul(e,t,n,r){var a=e.stateNode;a.props=n,a.state=e.memoizedState,a.refs=cp,cl(e);var i=t.contextType;typeof i=="object"&&i!==null?a.context=Ae(i):(i=Ce(t)?Xt:he.current,a.context=Mn(e,i)),Vr(e,n,a,r),a.state=e.memoizedState,i=t.getDerivedStateFromProps,typeof i=="function"&&(hi(e,t,i,n),a.state=e.memoizedState),typeof t.getDerivedStateFromProps=="function"||typeof a.getSnapshotBeforeUpdate=="function"||typeof a.UNSAFE_componentWillMount!="function"&&typeof a.componentWillMount!="function"||(t=a.state,typeof a.componentWillMount=="function"&&a.componentWillMount(),typeof a.UNSAFE_componentWillMount=="function"&&a.UNSAFE_componentWillMount(),t!==a.state&&fi.enqueueReplaceState(a,a.state,null),Vr(e,n,a,r),a.state=e.memoizedState),typeof a.componentDidMount=="function"&&(e.flags|=4)}var gi=Array.isArray;function Wr(e,t,n){if(e=n.ref,e!==null&&typeof e!="function"&&typeof e!="object"){if(n._owner){if(n=n._owner,n){if(n.tag!==1)throw Error(E(309));var r=n.stateNode}if(!r)throw Error(E(147,e));var a=""+e;return t!==null&&t.ref!==null&&typeof t.ref=="function"&&t.ref._stringRef===a?t.ref:(t=function(i){var o=r.refs;o===cp&&(o=r.refs={}),i===null?delete o[a]:o[a]=i},t._stringRef=a,t)}if(typeof e!="string")throw Error(E(284));if(!n._owner)throw Error(E(290,e))}return e}function yi(e,t){if(e.type!=="textarea")throw Error(E(31,Object.prototype.toString.call(t)==="[object Object]"?"object with keys {"+Object.keys(t).join(", ")+"}":t))}function mp(e){function t(f,h){if(e){var g=f.lastEffect;g!==null?(g.nextEffect=h,f.lastEffect=h):f.firstEffect=f.lastEffect=h,h.nextEffect=null,h.flags=8}}function n(f,h){if(!e)return null;for(;h!==null;)t(f,h),h=h.sibling;return null}function r(f,h){for(f=new Map;h!==null;)h.key!==null?f.set(h.key,h):f.set(h.index,h),h=h.sibling;return f}function a(f,h){return f=Ut(f,h),f.index=0,f.sibling=null,f}function i(f,h,g){return f.index=g,e?(g=f.alternate,g!==null?(g=g.index,g<h?(f.flags=2,h):g):(f.flags=2,h)):h}function o(f){return e&&f.alternate===null&&(f.flags=2),f}function s(f,h,g,w){return h===null||h.tag!==6?(h=Vl(g,f.mode,w),h.return=f,h):(h=a(h,g),h.return=f,h)}function l(f,h,g,w){return h!==null&&h.elementType===g.type?(w=a(h,g.props),w.ref=Wr(f,h,g),w.return=f,w):(w=Mi(g.type,g.key,g.props,null,f.mode,w),w.ref=Wr(f,h,g),w.return=f,w)}function u(f,h,g,w){return h===null||h.tag!==4||h.stateNode.containerInfo!==g.containerInfo||h.stateNode.implementation!==g.implementation?(h=Wl(g,f.mode,w),h.return=f,h):(h=a(h,g.children||[]),h.return=f,h)}function p(f,h,g,w,k){return h===null||h.tag!==7?(h=Vn(g,f.mode,w,k),h.return=f,h):(h=a(h,g),h.return=f,h)}function m(f,h,g){if(typeof h=="string"||typeof h=="number")return h=Vl(""+h,f.mode,g),h.return=f,h;if(typeof h=="object"&&h!==null){switch(h.$$typeof){case vr:return g=Mi(h.type,h.key,h.props,null,f.mode,g),g.ref=Wr(f,null,h),g.return=f,g;case Gt:return h=Wl(h,f.mode,g),h.return=f,h}if(gi(h)||xr(h))return h=Vn(h,f.mode,g,null),h.return=f,h;yi(f,h)}return null}function d(f,h,g,w){var k=h!==null?h.key:null;if(typeof g=="string"||typeof g=="number")return k!==null?null:s(f,h,""+g,w);if(typeof g=="object"&&g!==null){switch(g.$$typeof){case vr:return g.key===k?g.type===kt?p(f,h,g.props.children,w,k):l(f,h,g,w):null;case Gt:return g.key===k?u(f,h,g,w):null}if(gi(g)||xr(g))return k!==null?null:p(f,h,g,w,null);yi(f,g)}return null}function y(f,h,g,w,k){if(typeof w=="string"||typeof w=="number")return f=f.get(g)||null,s(h,f,""+w,k);if(typeof w=="object"&&w!==null){switch(w.$$typeof){case vr:return f=f.get(w.key===null?g:w.key)||null,w.type===kt?p(h,f,w.props.children,k,w.key):l(h,f,w,k);case Gt:return f=f.get(w.key===null?g:w.key)||null,u(h,f,w,k)}if(gi(w)||xr(w))return f=f.get(g)||null,p(h,f,w,k,null);yi(h,w)}return null}function b(f,h,g,w){for(var k=null,C=null,S=h,$=h=0,T=null;S!==null&&$<g.length;$++){S.index>$?(T=S,S=null):T=S.sibling;var j=d(f,S,g[$],w);if(j===null){S===null&&(S=T);break}e&&S&&j.alternate===null&&t(f,S),h=i(j,h,$),C===null?k=j:C.sibling=j,C=j,S=T}if($===g.length)return n(f,S),k;if(S===null){for(;$<g.length;$++)S=m(f,g[$],w),S!==null&&(h=i(S,h,$),C===null?k=S:C.sibling=S,C=S);return k}for(S=r(f,S);$<g.length;$++)T=y(S,f,$,g[$],w),T!==null&&(e&&T.alternate!==null&&S.delete(T.key===null?$:T.key),h=i(T,h,$),C===null?k=T:C.sibling=T,C=T);return e&&S.forEach(function(O){return t(f,O)}),k}function x(f,h,g,w){var k=xr(g);if(typeof k!="function")throw Error(E(150));if(g=k.call(g),g==null)throw Error(E(151));for(var C=k=null,S=h,$=h=0,T=null,j=g.next();S!==null&&!j.done;$++,j=g.next()){S.index>$?(T=S,S=null):T=S.sibling;var O=d(f,S,j.value,w);if(O===null){S===null&&(S=T);break}e&&S&&O.alternate===null&&t(f,S),h=i(O,h,$),C===null?k=O:C.sibling=O,C=O,S=T}if(j.done)return n(f,S),k;if(S===null){for(;!j.done;$++,j=g.next())j=m(f,j.value,w),j!==null&&(h=i(j,h,$),C===null?k=j:C.sibling=j,C=j);return k}for(S=r(f,S);!j.done;$++,j=g.next())j=y(S,f,$,j.value,w),j!==null&&(e&&j.alternate!==null&&S.delete(j.key===null?$:j.key),h=i(j,h,$),C===null?k=j:C.sibling=j,C=j);return e&&S.forEach(function(ot){return t(f,ot)}),k}return function(f,h,g,w){var k=typeof g=="object"&&g!==null&&g.type===kt&&g.key===null;k&&(g=g.props.children);var C=typeof g=="object"&&g!==null;if(C)switch(g.$$typeof){case vr:e:{for(C=g.key,k=h;k!==null;){if(k.key===C){switch(k.tag){case 7:if(g.type===kt){n(f,k.sibling),h=a(k,g.props.children),h.return=f,f=h;break e}break;default:if(k.elementType===g.type){n(f,k.sibling),h=a(k,g.props),h.ref=Wr(f,k,g),h.return=f,f=h;break e}}n(f,k);break}else t(f,k);k=k.sibling}g.type===kt?(h=Vn(g.props.children,f.mode,w,g.key),h.return=f,f=h):(w=Mi(g.type,g.key,g.props,null,f.mode,w),w.ref=Wr(f,h,g),w.return=f,f=w)}return o(f);case Gt:e:{for(k=g.key;h!==null;){if(h.key===k)if(h.tag===4&&h.stateNode.containerInfo===g.containerInfo&&h.stateNode.implementation===g.implementation){n(f,h.sibling),h=a(h,g.children||[]),h.return=f,f=h;break e}else{n(f,h);break}else t(f,h);h=h.sibling}h=Wl(g,f.mode,w),h.return=f,f=h}return o(f)}if(typeof g=="string"||typeof g=="number")return g=""+g,h!==null&&h.tag===6?(n(f,h.sibling),h=a(h,g),h.return=f,f=h):(n(f,h),h=Vl(g,f.mode,w),h.return=f,f=h),o(f);if(gi(g))return b(f,h,g,w);if(xr(g))return x(f,h,g,w);if(C&&yi(f,g),typeof g>"u"&&!k)switch(f.tag){case 1:case 22:case 0:case 11:case 15:throw Error(E(152,kn(f.type)||"Component"))}return n(f,h)}}var bi=mp(!0),hp=mp(!1),Gr={},et=jt(Gr),Kr=jt(Gr),Jr=jt(Gr);function tn(e){if(e===Gr)throw Error(E(174));return e}function dl(e,t){switch(K(Jr,t),K(Kr,e),K(et,Gr),e=t.nodeType,e){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:gs(null,"");break;default:e=e===8?t.parentNode:t,t=e.namespaceURI||null,e=e.tagName,t=gs(t,e)}B(et),K(et,t)}function Un(){B(et),B(Kr),B(Jr)}function fp(e){tn(Jr.current);var t=tn(et.current),n=gs(t,e.type);t!==n&&(K(Kr,e),K(et,n))}function pl(e){Kr.current===e&&(B(et),B(Kr))}var J=jt(0);function vi(e){for(var t=e;t!==null;){if(t.tag===13){var n=t.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||n.data==="$?"||n.data==="$!"))return t}else if(t.tag===19&&t.memoizedProps.revealOrder!==void 0){if(t.flags&64)return t}else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var pt=null,Dt=null,tt=!1;function gp(e,t){var n=Re(5,null,null,0);n.elementType="DELETED",n.type="DELETED",n.stateNode=t,n.return=e,n.flags=8,e.lastEffect!==null?(e.lastEffect.nextEffect=n,e.lastEffect=n):e.firstEffect=e.lastEffect=n}function yp(e,t){switch(e.tag){case 5:var n=e.type;return t=t.nodeType!==1||n.toLowerCase()!==t.nodeName.toLowerCase()?null:t,t!==null?(e.stateNode=t,!0):!1;case 6:return t=e.pendingProps===""||t.nodeType!==3?null:t,t!==null?(e.stateNode=t,!0):!1;case 13:return!1;default:return!1}}function ml(e){if(tt){var t=Dt;if(t){var n=t;if(!yp(e,t)){if(t=Tn(n.nextSibling),!t||!yp(e,t)){e.flags=e.flags&-1025|2,tt=!1,pt=e;return}gp(pt,n)}pt=e,Dt=Tn(t.firstChild)}else e.flags=e.flags&-1025|2,tt=!1,pt=e}}function bp(e){for(e=e.return;e!==null&&e.tag!==5&&e.tag!==3&&e.tag!==13;)e=e.return;pt=e}function ki(e){if(e!==pt)return!1;if(!tt)return bp(e),tt=!0,!1;var t=e.type;if(e.tag!==5||t!=="head"&&t!=="body"&&!Qs(t,e.memoizedProps))for(t=Dt;t;)gp(e,t),t=Tn(t.nextSibling);if(bp(e),e.tag===13){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(E(317));e:{for(e=e.nextSibling,t=0;e;){if(e.nodeType===8){var n=e.data;if(n==="/$"){if(t===0){Dt=Tn(e.nextSibling);break e}t--}else n!=="$"&&n!=="$!"&&n!=="$?"||t++}e=e.nextSibling}Dt=null}}else Dt=pt?Tn(e.stateNode.nextSibling):null;return!0}function hl(){Dt=pt=null,tt=!1}var On=[];function fl(){for(var e=0;e<On.length;e++)On[e]._workInProgressVersionPrimary=null;On.length=0}var Qr=Wt.ReactCurrentDispatcher,Me=Wt.ReactCurrentBatchConfig,Xr=0,X=null,ge=null,se=null,wi=!1,Zr=!1;function $e(){throw Error(E(321))}function gl(e,t){if(t===null)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!De(e[n],t[n]))return!1;return!0}function yl(e,t,n,r,a,i){if(Xr=i,X=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,Qr.current=e===null||e.memoizedState===null?Ry:Ly,e=n(r,a),Zr){i=0;do{if(Zr=!1,!(25>i))throw Error(E(301));i+=1,se=ge=null,t.updateQueue=null,Qr.current=Uy,e=n(r,a)}while(Zr)}if(Qr.current=Ci,t=ge!==null&&ge.next!==null,Xr=0,se=ge=X=null,wi=!1,t)throw Error(E(300));return e}function nn(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return se===null?X.memoizedState=se=e:se=se.next=e,se}function rn(){if(ge===null){var e=X.alternate;e=e!==null?e.memoizedState:null}else e=ge.next;var t=se===null?X.memoizedState:se.next;if(t!==null)se=t,ge=e;else{if(e===null)throw Error(E(310));ge=e,e={memoizedState:ge.memoizedState,baseState:ge.baseState,baseQueue:ge.baseQueue,queue:ge.queue,next:null},se===null?X.memoizedState=se=e:se=se.next=e}return se}function nt(e,t){return typeof t=="function"?t(e):t}function ea(e){var t=rn(),n=t.queue;if(n===null)throw Error(E(311));n.lastRenderedReducer=e;var r=ge,a=r.baseQueue,i=n.pending;if(i!==null){if(a!==null){var o=a.next;a.next=i.next,i.next=o}r.baseQueue=a=i,n.pending=null}if(a!==null){a=a.next,r=r.baseState;var s=o=i=null,l=a;do{var u=l.lane;if((Xr&u)===u)s!==null&&(s=s.next={lane:0,action:l.action,eagerReducer:l.eagerReducer,eagerState:l.eagerState,next:null}),r=l.eagerReducer===e?l.eagerState:e(r,l.action);else{var p={lane:u,action:l.action,eagerReducer:l.eagerReducer,eagerState:l.eagerState,next:null};s===null?(o=s=p,i=r):s=s.next=p,X.lanes|=u,aa|=u}l=l.next}while(l!==null&&l!==a);s===null?i=r:s.next=o,De(r,t.memoizedState)||(qe=!0),t.memoizedState=r,t.baseState=i,t.baseQueue=s,n.lastRenderedState=r}return[t.memoizedState,n.dispatch]}function ta(e){var t=rn(),n=t.queue;if(n===null)throw Error(E(311));n.lastRenderedReducer=e;var r=n.dispatch,a=n.pending,i=t.memoizedState;if(a!==null){n.pending=null;var o=a=a.next;do i=e(i,o.action),o=o.next;while(o!==a);De(i,t.memoizedState)||(qe=!0),t.memoizedState=i,t.baseQueue===null&&(t.baseState=i),n.lastRenderedState=i}return[i,r]}function vp(e,t,n){var r=t._getVersion;r=r(t._source);var a=t._workInProgressVersionPrimary;if(a!==null?e=a===r:(e=e.mutableReadLanes,(e=(Xr&e)===e)&&(t._workInProgressVersionPrimary=r,On.push(t))),e)return n(t._source);throw On.push(t),Error(E(350))}function kp(e,t,n,r){var a=ke;if(a===null)throw Error(E(349));var i=t._getVersion,o=i(t._source),s=Qr.current,l=s.useState(function(){return vp(a,t,n)}),u=l[1],p=l[0];l=se;var m=e.memoizedState,d=m.refs,y=d.getSnapshot,b=m.source;m=m.subscribe;var x=X;return e.memoizedState={refs:d,source:t,subscribe:r},s.useEffect(function(){d.getSnapshot=n,d.setSnapshot=u;var f=i(t._source);if(!De(o,f)){f=n(t._source),De(p,f)||(u(f),f=Mt(x),a.mutableReadLanes|=f&a.pendingLanes),f=a.mutableReadLanes,a.entangledLanes|=f;for(var h=a.entanglements,g=f;0<g;){var w=31-Ct(g),k=1<<w;h[w]|=f,g&=~k}}},[n,t,r]),s.useEffect(function(){return r(t._source,function(){var f=d.getSnapshot,h=d.setSnapshot;try{h(f(t._source));var g=Mt(x);a.mutableReadLanes|=g&a.pendingLanes}catch(w){h(function(){throw w})}})},[t,r]),De(y,n)&&De(b,t)&&De(m,r)||(e={pending:null,dispatch:null,lastRenderedReducer:nt,lastRenderedState:p},e.dispatch=u=wl.bind(null,X,e),l.queue=e,l.baseQueue=null,p=vp(a,t,n),l.memoizedState=l.baseState=p),p}function wp(e,t,n){var r=rn();return kp(r,e,t,n)}function na(e){var t=nn();return typeof e=="function"&&(e=e()),t.memoizedState=t.baseState=e,e=t.queue={pending:null,dispatch:null,lastRenderedReducer:nt,lastRenderedState:e},e=e.dispatch=wl.bind(null,X,e),[t.memoizedState,e]}function xi(e,t,n,r){return e={tag:e,create:t,destroy:n,deps:r,next:null},t=X.updateQueue,t===null?(t={lastEffect:null},X.updateQueue=t,t.lastEffect=e.next=e):(n=t.lastEffect,n===null?t.lastEffect=e.next=e:(r=n.next,n.next=e,e.next=r,t.lastEffect=e)),e}function xp(e){var t=nn();return e={current:e},t.memoizedState=e}function Si(){return rn().memoizedState}function bl(e,t,n,r){var a=nn();X.flags|=e,a.memoizedState=xi(1|t,n,void 0,r===void 0?null:r)}function vl(e,t,n,r){var a=rn();r=r===void 0?null:r;var i=void 0;if(ge!==null){var o=ge.memoizedState;if(i=o.destroy,r!==null&&gl(r,o.deps)){xi(t,n,i,r);return}}X.flags|=e,a.memoizedState=xi(1|t,n,i,r)}function Sp(e,t){return bl(516,4,e,t)}function Ei(e,t){return vl(516,4,e,t)}function Ep(e,t){return vl(4,2,e,t)}function Cp(e,t){if(typeof t=="function")return e=e(),t(e),function(){t(null)};if(t!=null)return e=e(),t.current=e,function(){t.current=null}}function $p(e,t,n){return n=n!=null?n.concat([e]):null,vl(4,2,Cp.bind(null,t,e),n)}function kl(){}function _p(e,t){var n=rn();t=t===void 0?null:t;var r=n.memoizedState;return r!==null&&t!==null&&gl(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function jp(e,t){var n=rn();t=t===void 0?null:t;var r=n.memoizedState;return r!==null&&t!==null&&gl(t,r[1])?r[0]:(e=e(),n.memoizedState=[e,t],e)}function zy(e,t){var n=zn();en(98>n?98:n,function(){e(!0)}),en(97<n?97:n,function(){var r=Me.transition;Me.transition=1;try{e(!1),t()}finally{Me.transition=r}})}function wl(e,t,n){var r=Ne(),a=Mt(e),i={lane:a,action:n,eagerReducer:null,eagerState:null,next:null},o=t.pending;if(o===null?i.next=i:(i.next=o.next,o.next=i),t.pending=i,o=e.alternate,e===X||o!==null&&o===X)Zr=wi=!0;else{if(e.lanes===0&&(o===null||o.lanes===0)&&(o=t.lastRenderedReducer,o!==null))try{var s=t.lastRenderedState,l=o(s,n);if(i.eagerReducer=o,i.eagerState=l,De(l,s))return}catch{}finally{}zt(e,a,r)}}var Ci={readContext:Ae,useCallback:$e,useContext:$e,useEffect:$e,useImperativeHandle:$e,useLayoutEffect:$e,useMemo:$e,useReducer:$e,useRef:$e,useState:$e,useDebugValue:$e,useDeferredValue:$e,useTransition:$e,useMutableSource:$e,useOpaqueIdentifier:$e,unstable_isNewReconciler:!1},Ry={readContext:Ae,useCallback:function(e,t){return nn().memoizedState=[e,t===void 0?null:t],e},useContext:Ae,useEffect:Sp,useImperativeHandle:function(e,t,n){return n=n!=null?n.concat([e]):null,bl(4,2,Cp.bind(null,t,e),n)},useLayoutEffect:function(e,t){return bl(4,2,e,t)},useMemo:function(e,t){var n=nn();return t=t===void 0?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=nn();return t=n!==void 0?n(t):t,r.memoizedState=r.baseState=t,e=r.queue={pending:null,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},e=e.dispatch=wl.bind(null,X,e),[r.memoizedState,e]},useRef:xp,useState:na,useDebugValue:kl,useDeferredValue:function(e){var t=na(e),n=t[0],r=t[1];return Sp(function(){var a=Me.transition;Me.transition=1;try{r(e)}finally{Me.transition=a}},[e]),n},useTransition:function(){var e=na(!1),t=e[0];return e=zy.bind(null,e[1]),xp(e),[e,t]},useMutableSource:function(e,t,n){var r=nn();return r.memoizedState={refs:{getSnapshot:t,setSnapshot:null},source:e,subscribe:n},kp(r,e,t,n)},useOpaqueIdentifier:function(){if(tt){var e=!1,t=Ny(function(){throw e||(e=!0,n("r:"+(Zs++).toString(36))),Error(E(355))}),n=na(t)[1];return!(X.mode&2)&&(X.flags|=516,xi(5,function(){n("r:"+(Zs++).toString(36))},void 0,null)),t}return t="r:"+(Zs++).toString(36),na(t),t},unstable_isNewReconciler:!1},Ly={readContext:Ae,useCallback:_p,useContext:Ae,useEffect:Ei,useImperativeHandle:$p,useLayoutEffect:Ep,useMemo:jp,useReducer:ea,useRef:Si,useState:function(){return ea(nt)},useDebugValue:kl,useDeferredValue:function(e){var t=ea(nt),n=t[0],r=t[1];return Ei(function(){var a=Me.transition;Me.transition=1;try{r(e)}finally{Me.transition=a}},[e]),n},useTransition:function(){var e=ea(nt)[0];return[Si().current,e]},useMutableSource:wp,useOpaqueIdentifier:function(){return ea(nt)[0]},unstable_isNewReconciler:!1},Uy={readContext:Ae,useCallback:_p,useContext:Ae,useEffect:Ei,useImperativeHandle:$p,useLayoutEffect:Ep,useMemo:jp,useReducer:ta,useRef:Si,useState:function(){return ta(nt)},useDebugValue:kl,useDeferredValue:function(e){var t=ta(nt),n=t[0],r=t[1];return Ei(function(){var a=Me.transition;Me.transition=1;try{r(e)}finally{Me.transition=a}},[e]),n},useTransition:function(){var e=ta(nt)[0];return[Si().current,e]},useMutableSource:wp,useOpaqueIdentifier:function(){return ta(nt)[0]},unstable_isNewReconciler:!1},Oy=Wt.ReactCurrentOwner,qe=!1;function _e(e,t,n,r){t.child=e===null?hp(t,null,n,r):bi(t,e.child,n,r)}function Pp(e,t,n,r,a){n=n.render;var i=t.ref;return Ln(t,a),r=yl(e,t,n,r,i,a),e!==null&&!qe?(t.updateQueue=e.updateQueue,t.flags&=-517,e.lanes&=~a,mt(e,t,a)):(t.flags|=1,_e(e,t,r,a),t.child)}function Np(e,t,n,r,a,i){if(e===null){var o=n.type;return typeof o=="function"&&!Hl(o)&&o.defaultProps===void 0&&n.compare===null&&n.defaultProps===void 0?(t.tag=15,t.type=o,Tp(e,t,o,r,a,i)):(e=Mi(n.type,null,r,t,t.mode,i),e.ref=t.ref,e.return=t,t.child=e)}return o=e.child,!(a&i)&&(a=o.memoizedProps,n=n.compare,n=n!==null?n:Or,n(a,r)&&e.ref===t.ref)?mt(e,t,i):(t.flags|=1,e=Ut(o,r),e.ref=t.ref,e.return=t,t.child=e)}function Tp(e,t,n,r,a,i){if(e!==null&&Or(e.memoizedProps,r)&&e.ref===t.ref)if(qe=!1,(i&a)!==0)e.flags&16384&&(qe=!0);else return t.lanes=e.lanes,mt(e,t,i);return Sl(e,t,n,r,i)}function xl(e,t,n){var r=t.pendingProps,a=r.children,i=e!==null?e.memoizedState:null;if(r.mode==="hidden"||r.mode==="unstable-defer-without-hiding")if(!(t.mode&4))t.memoizedState={baseLanes:0},Ai(t,n);else if(n&1073741824)t.memoizedState={baseLanes:0},Ai(t,i!==null?i.baseLanes:n);else return e=i!==null?i.baseLanes|n:n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e},Ai(t,e),null;else i!==null?(r=i.baseLanes|n,t.memoizedState=null):r=n,Ai(t,r);return _e(e,t,a,n),t.child}function Ip(e,t){var n=t.ref;(e===null&&n!==null||e!==null&&e.ref!==n)&&(t.flags|=128)}function Sl(e,t,n,r,a){var i=Ce(n)?Xt:he.current;return i=Mn(t,i),Ln(t,a),n=yl(e,t,n,r,i,a),e!==null&&!qe?(t.updateQueue=e.updateQueue,t.flags&=-517,e.lanes&=~a,mt(e,t,a)):(t.flags|=1,_e(e,t,n,a),t.child)}function Dp(e,t,n,r,a){if(Ce(n)){var i=!0;li(t)}else i=!1;if(Ln(t,a),t.stateNode===null)e!==null&&(e.alternate=null,t.alternate=null,t.flags|=2),dp(t,n,r),ul(t,n,r,a),r=!0;else if(e===null){var o=t.stateNode,s=t.memoizedProps;o.props=s;var l=o.context,u=n.contextType;typeof u=="object"&&u!==null?u=Ae(u):(u=Ce(n)?Xt:he.current,u=Mn(t,u));var p=n.getDerivedStateFromProps,m=typeof p=="function"||typeof o.getSnapshotBeforeUpdate=="function";m||typeof o.UNSAFE_componentWillReceiveProps!="function"&&typeof o.componentWillReceiveProps!="function"||(s!==r||l!==u)&&pp(t,o,r,u),Nt=!1;var d=t.memoizedState;o.state=d,Vr(t,r,o,a),l=t.memoizedState,s!==r||d!==l||Ee.current||Nt?(typeof p=="function"&&(hi(t,n,p,r),l=t.memoizedState),(s=Nt||up(t,n,s,r,d,l,u))?(m||typeof o.UNSAFE_componentWillMount!="function"&&typeof o.componentWillMount!="function"||(typeof o.componentWillMount=="function"&&o.componentWillMount(),typeof o.UNSAFE_componentWillMount=="function"&&o.UNSAFE_componentWillMount()),typeof o.componentDidMount=="function"&&(t.flags|=4)):(typeof o.componentDidMount=="function"&&(t.flags|=4),t.memoizedProps=r,t.memoizedState=l),o.props=r,o.state=l,o.context=u,r=s):(typeof o.componentDidMount=="function"&&(t.flags|=4),r=!1)}else{o=t.stateNode,op(e,t),s=t.memoizedProps,u=t.type===t.elementType?s:He(t.type,s),o.props=u,m=t.pendingProps,d=o.context,l=n.contextType,typeof l=="object"&&l!==null?l=Ae(l):(l=Ce(n)?Xt:he.current,l=Mn(t,l));var y=n.getDerivedStateFromProps;(p=typeof y=="function"||typeof o.getSnapshotBeforeUpdate=="function")||typeof o.UNSAFE_componentWillReceiveProps!="function"&&typeof o.componentWillReceiveProps!="function"||(s!==m||d!==l)&&pp(t,o,r,l),Nt=!1,d=t.memoizedState,o.state=d,Vr(t,r,o,a);var b=t.memoizedState;s!==m||d!==b||Ee.current||Nt?(typeof y=="function"&&(hi(t,n,y,r),b=t.memoizedState),(u=Nt||up(t,n,u,r,d,b,l))?(p||typeof o.UNSAFE_componentWillUpdate!="function"&&typeof o.componentWillUpdate!="function"||(typeof o.componentWillUpdate=="function"&&o.componentWillUpdate(r,b,l),typeof o.UNSAFE_componentWillUpdate=="function"&&o.UNSAFE_componentWillUpdate(r,b,l)),typeof o.componentDidUpdate=="function"&&(t.flags|=4),typeof o.getSnapshotBeforeUpdate=="function"&&(t.flags|=256)):(typeof o.componentDidUpdate!="function"||s===e.memoizedProps&&d===e.memoizedState||(t.flags|=4),typeof o.getSnapshotBeforeUpdate!="function"||s===e.memoizedProps&&d===e.memoizedState||(t.flags|=256),t.memoizedProps=r,t.memoizedState=b),o.props=r,o.state=b,o.context=l,r=u):(typeof o.componentDidUpdate!="function"||s===e.memoizedProps&&d===e.memoizedState||(t.flags|=4),typeof o.getSnapshotBeforeUpdate!="function"||s===e.memoizedProps&&d===e.memoizedState||(t.flags|=256),r=!1)}return El(e,t,n,r,i,a)}function El(e,t,n,r,a,i){Ip(e,t);var o=(t.flags&64)!==0;if(!r&&!o)return a&&Jd(t,n,!1),mt(e,t,i);r=t.stateNode,Oy.current=t;var s=o&&typeof n.getDerivedStateFromError!="function"?null:r.render();return t.flags|=1,e!==null&&o?(t.child=bi(t,e.child,null,i),t.child=bi(t,null,s,i)):_e(e,t,s,i),t.memoizedState=r.state,a&&Jd(t,n,!0),t.child}function Ap(e){var t=e.stateNode;t.pendingContext?Gd(e,t.pendingContext,t.pendingContext!==t.context):t.context&&Gd(e,t.context,!1),dl(e,t.containerInfo)}var $i={dehydrated:null,retryLane:0};function Mp(e,t,n){var r=t.pendingProps,a=J.current,i=!1,o;return(o=(t.flags&64)!==0)||(o=e!==null&&e.memoizedState===null?!1:(a&2)!==0),o?(i=!0,t.flags&=-65):e!==null&&e.memoizedState===null||r.fallback===void 0||r.unstable_avoidThisFallback===!0||(a|=1),K(J,a&1),e===null?(r.fallback!==void 0&&ml(t),e=r.children,a=r.fallback,i?(e=zp(t,e,a,n),t.child.memoizedState={baseLanes:n},t.memoizedState=$i,e):typeof r.unstable_expectedLoadTime=="number"?(e=zp(t,e,a,n),t.child.memoizedState={baseLanes:n},t.memoizedState=$i,t.lanes=33554432,e):(n=ql({mode:"visible",children:e},t.mode,n,null),n.return=t,t.child=n)):e.memoizedState!==null?i?(r=Lp(e,t,r.children,r.fallback,n),i=t.child,a=e.child.memoizedState,i.memoizedState=a===null?{baseLanes:n}:{baseLanes:a.baseLanes|n},i.childLanes=e.childLanes&~n,t.memoizedState=$i,r):(n=Rp(e,t,r.children,n),t.memoizedState=null,n):i?(r=Lp(e,t,r.children,r.fallback,n),i=t.child,a=e.child.memoizedState,i.memoizedState=a===null?{baseLanes:n}:{baseLanes:a.baseLanes|n},i.childLanes=e.childLanes&~n,t.memoizedState=$i,r):(n=Rp(e,t,r.children,n),t.memoizedState=null,n)}function zp(e,t,n,r){var a=e.mode,i=e.child;return t={mode:"hidden",children:t},!(a&2)&&i!==null?(i.childLanes=0,i.pendingProps=t):i=ql(t,a,0,null),n=Vn(n,a,r,null),i.return=e,n.return=e,i.sibling=n,e.child=i,n}function Rp(e,t,n,r){var a=e.child;return e=a.sibling,n=Ut(a,{mode:"visible",children:n}),!(t.mode&2)&&(n.lanes=r),n.return=t,n.sibling=null,e!==null&&(e.nextEffect=null,e.flags=8,t.firstEffect=t.lastEffect=e),t.child=n}function Lp(e,t,n,r,a){var i=t.mode,o=e.child;e=o.sibling;var s={mode:"hidden",children:n};return!(i&2)&&t.child!==o?(n=t.child,n.childLanes=0,n.pendingProps=s,o=n.lastEffect,o!==null?(t.firstEffect=n.firstEffect,t.lastEffect=o,o.nextEffect=null):t.firstEffect=t.lastEffect=null):n=Ut(o,s),e!==null?r=Ut(e,r):(r=Vn(r,i,a,null),r.flags|=2),r.return=t,n.return=t,n.sibling=r,t.child=n,r}function Up(e,t){e.lanes|=t;var n=e.alternate;n!==null&&(n.lanes|=t),ip(e.return,t)}function Cl(e,t,n,r,a,i){var o=e.memoizedState;o===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:a,lastEffect:i}:(o.isBackwards=t,o.rendering=null,o.renderingStartTime=0,o.last=r,o.tail=n,o.tailMode=a,o.lastEffect=i)}function Op(e,t,n){var r=t.pendingProps,a=r.revealOrder,i=r.tail;if(_e(e,t,r.children,n),r=J.current,r&2)r=r&1|2,t.flags|=64;else{if(e!==null&&e.flags&64)e:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&Up(e,n);else if(e.tag===19)Up(e,n);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;e.sibling===null;){if(e.return===null||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}r&=1}if(K(J,r),!(t.mode&2))t.memoizedState=null;else switch(a){case"forwards":for(n=t.child,a=null;n!==null;)e=n.alternate,e!==null&&vi(e)===null&&(a=n),n=n.sibling;n=a,n===null?(a=t.child,t.child=null):(a=n.sibling,n.sibling=null),Cl(t,!1,a,n,i,t.lastEffect);break;case"backwards":for(n=null,a=t.child,t.child=null;a!==null;){if(e=a.alternate,e!==null&&vi(e)===null){t.child=a;break}e=a.sibling,a.sibling=n,n=a,a=e}Cl(t,!0,n,null,i,t.lastEffect);break;case"together":Cl(t,!1,null,null,void 0,t.lastEffect);break;default:t.memoizedState=null}return t.child}function mt(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),aa|=t.lanes,n&t.childLanes){if(e!==null&&t.child!==e.child)throw Error(E(153));if(t.child!==null){for(e=t.child,n=Ut(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=Ut(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}return null}var Fp,$l,Yp,Bp;Fp=function(e,t){for(var n=t.child;n!==null;){if(n.tag===5||n.tag===6)e.appendChild(n.stateNode);else if(n.tag!==4&&n.child!==null){n.child.return=n,n=n.child;continue}if(n===t)break;for(;n.sibling===null;){if(n.return===null||n.return===t)return;n=n.return}n.sibling.return=n.return,n=n.sibling}},$l=function(){},Yp=function(e,t,n,r){var a=e.memoizedProps;if(a!==r){e=t.stateNode,tn(et.current);var i=null;switch(n){case"input":a=us(e,a),r=us(e,r),i=[];break;case"option":a=ms(e,a),r=ms(e,r),i=[];break;case"select":a=H({},a,{value:void 0}),r=H({},r,{value:void 0}),i=[];break;case"textarea":a=hs(e,a),r=hs(e,r),i=[];break;default:typeof a.onClick!="function"&&typeof r.onClick=="function"&&(e.onclick=ri)}ys(n,r);var o;n=null;for(u in a)if(!r.hasOwnProperty(u)&&a.hasOwnProperty(u)&&a[u]!=null)if(u==="style"){var s=a[u];for(o in s)s.hasOwnProperty(o)&&(n||(n={}),n[o]="")}else u!=="dangerouslySetInnerHTML"&&u!=="children"&&u!=="suppressContentEditableWarning"&&u!=="suppressHydrationWarning"&&u!=="autoFocus"&&(br.hasOwnProperty(u)?i||(i=[]):(i=i||[]).push(u,null));for(u in r){var l=r[u];if(s=a!=null?a[u]:void 0,r.hasOwnProperty(u)&&l!==s&&(l!=null||s!=null))if(u==="style")if(s){for(o in s)!s.hasOwnProperty(o)||l&&l.hasOwnProperty(o)||(n||(n={}),n[o]="");for(o in l)l.hasOwnProperty(o)&&s[o]!==l[o]&&(n||(n={}),n[o]=l[o])}else n||(i||(i=[]),i.push(u,n)),n=l;else u==="dangerouslySetInnerHTML"?(l=l?l.__html:void 0,s=s?s.__html:void 0,l!=null&&s!==l&&(i=i||[]).push(u,l)):u==="children"?typeof l!="string"&&typeof l!="number"||(i=i||[]).push(u,""+l):u!=="suppressContentEditableWarning"&&u!=="suppressHydrationWarning"&&(br.hasOwnProperty(u)?(l!=null&&u==="onScroll"&&Y("scroll",e),i||s===l||(i=[])):typeof l=="object"&&l!==null&&l.$$typeof===is?l.toString():(i=i||[]).push(u,l))}n&&(i=i||[]).push("style",n);var u=i;(t.updateQueue=u)&&(t.flags|=4)}},Bp=function(e,t,n,r){n!==r&&(t.flags|=4)};function ra(e,t){if(!tt)switch(e.tailMode){case"hidden":t=e.tail;for(var n=null;t!==null;)t.alternate!==null&&(n=t),t=t.sibling;n===null?e.tail=null:n.sibling=null;break;case"collapsed":n=e.tail;for(var r=null;n!==null;)n.alternate!==null&&(r=n),n=n.sibling;r===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:r.sibling=null}}function Fy(e,t,n){var r=t.pendingProps;switch(t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return null;case 1:return Ce(t.type)&&si(),null;case 3:return Un(),B(Ee),B(he),fl(),r=t.stateNode,r.pendingContext&&(r.context=r.pendingContext,r.pendingContext=null),(e===null||e.child===null)&&(ki(t)?t.flags|=4:r.hydrate||(t.flags|=256)),$l(t),null;case 5:pl(t);var a=tn(Jr.current);if(n=t.type,e!==null&&t.stateNode!=null)Yp(e,t,n,r,a),e.ref!==t.ref&&(t.flags|=128);else{if(!r){if(t.stateNode===null)throw Error(E(166));return null}if(e=tn(et.current),ki(t)){r=t.stateNode,n=t.type;var i=t.memoizedProps;switch(r[_t]=t,r[ii]=i,n){case"dialog":Y("cancel",r),Y("close",r);break;case"iframe":case"object":case"embed":Y("load",r);break;case"video":case"audio":for(e=0;e<Yr.length;e++)Y(Yr[e],r);break;case"source":Y("error",r);break;case"img":case"image":case"link":Y("error",r),Y("load",r);break;case"details":Y("toggle",r);break;case"input":Du(r,i),Y("invalid",r);break;case"select":r._wrapperState={wasMultiple:!!i.multiple},Y("invalid",r);break;case"textarea":zu(r,i),Y("invalid",r)}ys(n,i),e=null;for(var o in i)i.hasOwnProperty(o)&&(a=i[o],o==="children"?typeof a=="string"?r.textContent!==a&&(e=["children",a]):typeof a=="number"&&r.textContent!==""+a&&(e=["children",""+a]):br.hasOwnProperty(o)&&a!=null&&o==="onScroll"&&Y("scroll",r));switch(n){case"input":Oa(r),Mu(r,i,!0);break;case"textarea":Oa(r),Lu(r);break;case"select":case"option":break;default:typeof i.onClick=="function"&&(r.onclick=ri)}r=e,t.updateQueue=r,r!==null&&(t.flags|=4)}else{switch(o=a.nodeType===9?a:a.ownerDocument,e===fs.html&&(e=Uu(n)),e===fs.html?n==="script"?(e=o.createElement("div"),e.innerHTML="<script><\/script>",e=e.removeChild(e.firstChild)):typeof r.is=="string"?e=o.createElement(n,{is:r.is}):(e=o.createElement(n),n==="select"&&(o=e,r.multiple?o.multiple=!0:r.size&&(o.size=r.size))):e=o.createElementNS(e,n),e[_t]=t,e[ii]=r,Fp(e,t,!1,!1),t.stateNode=e,o=bs(n,r),n){case"dialog":Y("cancel",e),Y("close",e),a=r;break;case"iframe":case"object":case"embed":Y("load",e),a=r;break;case"video":case"audio":for(a=0;a<Yr.length;a++)Y(Yr[a],e);a=r;break;case"source":Y("error",e),a=r;break;case"img":case"image":case"link":Y("error",e),Y("load",e),a=r;break;case"details":Y("toggle",e),a=r;break;case"input":Du(e,r),a=us(e,r),Y("invalid",e);break;case"option":a=ms(e,r);break;case"select":e._wrapperState={wasMultiple:!!r.multiple},a=H({},r,{value:void 0}),Y("invalid",e);break;case"textarea":zu(e,r),a=hs(e,r),Y("invalid",e);break;default:a=r}ys(n,a);var s=a;for(i in s)if(s.hasOwnProperty(i)){var l=s[i];i==="style"?Yu(e,l):i==="dangerouslySetInnerHTML"?(l=l?l.__html:void 0,l!=null&&Ou(e,l)):i==="children"?typeof l=="string"?(n!=="textarea"||l!=="")&&Er(e,l):typeof l=="number"&&Er(e,""+l):i!=="suppressContentEditableWarning"&&i!=="suppressHydrationWarning"&&i!=="autoFocus"&&(br.hasOwnProperty(i)?l!=null&&i==="onScroll"&&Y("scroll",e):l!=null&&Zo(e,i,l,o))}switch(n){case"input":Oa(e),Mu(e,r,!1);break;case"textarea":Oa(e),Lu(e);break;case"option":r.value!=null&&e.setAttribute("value",""+wt(r.value));break;case"select":e.multiple=!!r.multiple,i=r.value,i!=null?wn(e,!!r.multiple,i,!1):r.defaultValue!=null&&wn(e,!!r.multiple,r.defaultValue,!0);break;default:typeof a.onClick=="function"&&(e.onclick=ri)}Bd(n,r)&&(t.flags|=4)}t.ref!==null&&(t.flags|=128)}return null;case 6:if(e&&t.stateNode!=null)Bp(e,t,e.memoizedProps,r);else{if(typeof r!="string"&&t.stateNode===null)throw Error(E(166));n=tn(Jr.current),tn(et.current),ki(t)?(r=t.stateNode,n=t.memoizedProps,r[_t]=t,r.nodeValue!==n&&(t.flags|=4)):(r=(n.nodeType===9?n:n.ownerDocument).createTextNode(r),r[_t]=t,t.stateNode=r)}return null;case 13:return B(J),r=t.memoizedState,t.flags&64?(t.lanes=n,t):(r=r!==null,n=!1,e===null?t.memoizedProps.fallback!==void 0&&ki(t):n=e.memoizedState!==null,r&&!n&&t.mode&2&&(e===null&&t.memoizedProps.unstable_avoidThisFallback!==!0||J.current&1?le===0&&(le=3):((le===0||le===3)&&(le=4),ke===null||!(aa&134217727)&&!(Yn&134217727)||Hn(ke,ye))),(r||n)&&(t.flags|=4),null);case 4:return Un(),$l(t),e===null&&Ld(t.stateNode.containerInfo),null;case 10:return ll(t),null;case 17:return Ce(t.type)&&si(),null;case 19:if(B(J),r=t.memoizedState,r===null)return null;if(i=(t.flags&64)!==0,o=r.rendering,o===null)if(i)ra(r,!1);else{if(le!==0||e!==null&&e.flags&64)for(e=t.child;e!==null;){if(o=vi(e),o!==null){for(t.flags|=64,ra(r,!1),i=o.updateQueue,i!==null&&(t.updateQueue=i,t.flags|=4),r.lastEffect===null&&(t.firstEffect=null),t.lastEffect=r.lastEffect,r=n,n=t.child;n!==null;)i=n,e=r,i.flags&=2,i.nextEffect=null,i.firstEffect=null,i.lastEffect=null,o=i.alternate,o===null?(i.childLanes=0,i.lanes=e,i.child=null,i.memoizedProps=null,i.memoizedState=null,i.updateQueue=null,i.dependencies=null,i.stateNode=null):(i.childLanes=o.childLanes,i.lanes=o.lanes,i.child=o.child,i.memoizedProps=o.memoizedProps,i.memoizedState=o.memoizedState,i.updateQueue=o.updateQueue,i.type=o.type,e=o.dependencies,i.dependencies=e===null?null:{lanes:e.lanes,firstContext:e.firstContext}),n=n.sibling;return K(J,J.current&1|2),t.child}e=e.sibling}r.tail!==null&&fe()>Rl&&(t.flags|=64,i=!0,ra(r,!1),t.lanes=33554432)}else{if(!i)if(e=vi(o),e!==null){if(t.flags|=64,i=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),ra(r,!0),r.tail===null&&r.tailMode==="hidden"&&!o.alternate&&!tt)return t=t.lastEffect=r.lastEffect,t!==null&&(t.nextEffect=null),null}else 2*fe()-r.renderingStartTime>Rl&&n!==1073741824&&(t.flags|=64,i=!0,ra(r,!1),t.lanes=33554432);r.isBackwards?(o.sibling=t.child,t.child=o):(n=r.last,n!==null?n.sibling=o:t.child=o,r.last=o)}return r.tail!==null?(n=r.tail,r.rendering=n,r.tail=n.sibling,r.lastEffect=t.lastEffect,r.renderingStartTime=fe(),n.sibling=null,t=J.current,K(J,i?t&1|2:t&1),n):null;case 23:case 24:return Bl(),e!==null&&e.memoizedState!==null!=(t.memoizedState!==null)&&r.mode!=="unstable-defer-without-hiding"&&(t.flags|=4),null}throw Error(E(156,t.tag))}function Yy(e){switch(e.tag){case 1:Ce(e.type)&&si();var t=e.flags;return t&4096?(e.flags=t&-4097|64,e):null;case 3:if(Un(),B(Ee),B(he),fl(),t=e.flags,t&64)throw Error(E(285));return e.flags=t&-4097|64,e;case 5:return pl(e),null;case 13:return B(J),t=e.flags,t&4096?(e.flags=t&-4097|64,e):null;case 19:return B(J),null;case 4:return Un(),null;case 10:return ll(e),null;case 23:case 24:return Bl(),null;default:return null}}function _l(e,t){try{var n="",r=t;do n+=xg(r),r=r.return;while(r);var a=n}catch(i){a=`
39
39
  Error generating stack: `+i.message+`
40
- `+i.stack}return{value:e,source:t,stack:a}}function jl(e,t){try{console.error(t.value)}catch(n){setTimeout(function(){throw n})}}var By=typeof WeakMap=="function"?WeakMap:Map;function Hp(e,t,n){n=Tt(-1,n),n.tag=3,n.payload={element:null};var r=t.value;return n.callback=function(){Pi||(Pi=!0,Ll=r),jl(e,t)},n}function qp(e,t,n){n=Tt(-1,n),n.tag=3;var r=e.type.getDerivedStateFromError;if(typeof r=="function"){var a=t.value;n.payload=function(){return jl(e,t),r(a)}}var i=e.stateNode;return i!==null&&typeof i.componentDidCatch=="function"&&(n.callback=function(){typeof r!="function"&&(rt===null?rt=new Set([this]):rt.add(this),jl(e,t));var o=t.stack;this.componentDidCatch(t.value,{componentStack:o!==null?o:""})}),n}var Hy=typeof WeakSet=="function"?WeakSet:Set;function Vp(e){var t=e.ref;if(t!==null)if(typeof t=="function")try{t(null)}catch(n){Lt(e,n)}else t.current=null}function qy(e,t){switch(t.tag){case 0:case 11:case 15:case 22:return;case 1:if(t.flags&256&&e!==null){var n=e.memoizedProps,r=e.memoizedState;e=t.stateNode,t=e.getSnapshotBeforeUpdate(t.elementType===t.type?n:He(t.type,n),r),e.__reactInternalSnapshotBeforeUpdate=t}return;case 3:t.flags&256&&Xs(t.stateNode.containerInfo);return;case 5:case 6:case 4:case 17:return}throw Error(E(163))}function Vy(e,t,n){switch(n.tag){case 0:case 11:case 15:case 22:if(t=n.updateQueue,t=t!==null?t.lastEffect:null,t!==null){e=t=t.next;do{if((e.tag&3)===3){var r=e.create;e.destroy=r()}e=e.next}while(e!==t)}if(t=n.updateQueue,t=t!==null?t.lastEffect:null,t!==null){e=t=t.next;do{var a=e;r=a.next,a=a.tag,a&4&&a&1&&(sm(n,e),eb(n,e)),e=r}while(e!==t)}return;case 1:e=n.stateNode,n.flags&4&&(t===null?e.componentDidMount():(r=n.elementType===n.type?t.memoizedProps:He(n.type,t.memoizedProps),e.componentDidUpdate(r,t.memoizedState,e.__reactInternalSnapshotBeforeUpdate))),t=n.updateQueue,t!==null&&lp(n,t,e);return;case 3:if(t=n.updateQueue,t!==null){if(e=null,n.child!==null)switch(n.child.tag){case 5:e=n.child.stateNode;break;case 1:e=n.child.stateNode}lp(n,t,e)}return;case 5:e=n.stateNode,t===null&&n.flags&4&&Bd(n.type,n.memoizedProps)&&e.focus();return;case 6:return;case 4:return;case 12:return;case 13:n.memoizedState===null&&(n=n.alternate,n!==null&&(n=n.memoizedState,n!==null&&(n=n.dehydrated,n!==null&&ad(n))));return;case 19:case 17:case 20:case 21:case 23:case 24:return}throw Error(E(163))}function Wp(e,t){for(var n=e;;){if(n.tag===5){var r=n.stateNode;if(t)r=r.style,typeof r.setProperty=="function"?r.setProperty("display","none","important"):r.display="none";else{r=n.stateNode;var a=n.memoizedProps.style;a=a!=null&&a.hasOwnProperty("display")?a.display:null,r.style.display=Yu("display",a)}}else if(n.tag===6)n.stateNode.nodeValue=t?"":n.memoizedProps;else if((n.tag!==23&&n.tag!==24||n.memoizedState===null||n===e)&&n.child!==null){n.child.return=n,n=n.child;continue}if(n===e)break;for(;n.sibling===null;){if(n.return===null||n.return===e)return;n=n.return}n.sibling.return=n.return,n=n.sibling}}function Gp(e,t){if(Zt&&typeof Zt.onCommitFiberUnmount=="function")try{Zt.onCommitFiberUnmount(tl,t)}catch{}switch(t.tag){case 0:case 11:case 14:case 15:case 22:if(e=t.updateQueue,e!==null&&(e=e.lastEffect,e!==null)){var n=e=e.next;do{var r=n,a=r.destroy;if(r=r.tag,a!==void 0)if(r&4)sm(t,n);else{r=t;try{a()}catch(i){Lt(r,i)}}n=n.next}while(n!==e)}break;case 1:if(Vp(t),e=t.stateNode,typeof e.componentWillUnmount=="function")try{e.props=t.memoizedProps,e.state=t.memoizedState,e.componentWillUnmount()}catch(i){Lt(t,i)}break;case 5:Vp(t);break;case 4:Xp(e,t)}}function Kp(e){e.alternate=null,e.child=null,e.dependencies=null,e.firstEffect=null,e.lastEffect=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.return=null,e.updateQueue=null}function Jp(e){return e.tag===5||e.tag===3||e.tag===4}function Qp(e){e:{for(var t=e.return;t!==null;){if(Jp(t))break e;t=t.return}throw Error(E(160))}var n=t;switch(t=n.stateNode,n.tag){case 5:var r=!1;break;case 3:t=t.containerInfo,r=!0;break;case 4:t=t.containerInfo,r=!0;break;default:throw Error(E(161))}n.flags&16&&(Er(t,""),n.flags&=-17);e:t:for(n=e;;){for(;n.sibling===null;){if(n.return===null||Jp(n.return)){n=null;break e}n=n.return}for(n.sibling.return=n.return,n=n.sibling;n.tag!==5&&n.tag!==6&&n.tag!==18;){if(n.flags&2||n.child===null||n.tag===4)continue t;n.child.return=n,n=n.child}if(!(n.flags&2)){n=n.stateNode;break e}}r?Pl(e,n,t):Nl(e,n,t)}function Pl(e,t,n){var r=e.tag,a=r===5||r===6;if(a)e=a?e.stateNode:e.stateNode.instance,t?n.nodeType===8?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(n.nodeType===8?(t=n.parentNode,t.insertBefore(e,n)):(t=n,t.appendChild(e)),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=ri));else if(r!==4&&(e=e.child,e!==null))for(Pl(e,t,n),e=e.sibling;e!==null;)Pl(e,t,n),e=e.sibling}function Nl(e,t,n){var r=e.tag,a=r===5||r===6;if(a)e=a?e.stateNode:e.stateNode.instance,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(e=e.child,e!==null))for(Nl(e,t,n),e=e.sibling;e!==null;)Nl(e,t,n),e=e.sibling}function Xp(e,t){for(var n=t,r=!1,a,i;;){if(!r){r=n.return;e:for(;;){if(r===null)throw Error(E(160));switch(a=r.stateNode,r.tag){case 5:i=!1;break e;case 3:a=a.containerInfo,i=!0;break e;case 4:a=a.containerInfo,i=!0;break e}r=r.return}r=!0}if(n.tag===5||n.tag===6){e:for(var o=e,s=n,l=s;;)if(Gp(o,l),l.child!==null&&l.tag!==4)l.child.return=l,l=l.child;else{if(l===s)break e;for(;l.sibling===null;){if(l.return===null||l.return===s)break e;l=l.return}l.sibling.return=l.return,l=l.sibling}i?(o=a,s=n.stateNode,o.nodeType===8?o.parentNode.removeChild(s):o.removeChild(s)):a.removeChild(n.stateNode)}else if(n.tag===4){if(n.child!==null){a=n.stateNode.containerInfo,i=!0,n.child.return=n,n=n.child;continue}}else if(Gp(e,n),n.child!==null){n.child.return=n,n=n.child;continue}if(n===t)break;for(;n.sibling===null;){if(n.return===null||n.return===t)return;n=n.return,n.tag===4&&(r=!1)}n.sibling.return=n.return,n=n.sibling}}function Tl(e,t){switch(t.tag){case 0:case 11:case 14:case 15:case 22:var n=t.updateQueue;if(n=n!==null?n.lastEffect:null,n!==null){var r=n=n.next;do(r.tag&3)===3&&(e=r.destroy,r.destroy=void 0,e!==void 0&&e()),r=r.next;while(r!==n)}return;case 1:return;case 5:if(n=t.stateNode,n!=null){r=t.memoizedProps;var a=e!==null?e.memoizedProps:r;e=t.type;var i=t.updateQueue;if(t.updateQueue=null,i!==null){for(n[ii]=r,e==="input"&&r.type==="radio"&&r.name!=null&&Au(n,r),bs(e,a),t=bs(e,r),a=0;a<i.length;a+=2){var o=i[a],s=i[a+1];o==="style"?Fu(n,s):o==="dangerouslySetInnerHTML"?Ou(n,s):o==="children"?Er(n,s):Zo(n,o,s,t)}switch(e){case"input":ds(n,r);break;case"textarea":Ru(n,r);break;case"select":e=n._wrapperState.wasMultiple,n._wrapperState.wasMultiple=!!r.multiple,i=r.value,i!=null?wn(n,!!r.multiple,i,!1):e!==!!r.multiple&&(r.defaultValue!=null?wn(n,!!r.multiple,r.defaultValue,!0):wn(n,!!r.multiple,r.multiple?[]:"",!1))}}}return;case 6:if(t.stateNode===null)throw Error(E(162));t.stateNode.nodeValue=t.memoizedProps;return;case 3:n=t.stateNode,n.hydrate&&(n.hydrate=!1,ad(n.containerInfo));return;case 12:return;case 13:t.memoizedState!==null&&(zl=fe(),Wp(t.child,!0)),Zp(t);return;case 19:Zp(t);return;case 17:return;case 23:case 24:Wp(t,t.memoizedState!==null);return}throw Error(E(163))}function Zp(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new Hy),t.forEach(function(r){var a=rb.bind(null,e,r);n.has(r)||(n.add(r),r.then(a,a))})}}function Wy(e,t){return e!==null&&(e=e.memoizedState,e===null||e.dehydrated!==null)?(t=t.memoizedState,t!==null&&t.dehydrated===null):!1}var Gy=Math.ceil,_i=Wt.ReactCurrentDispatcher,Il=Wt.ReactCurrentOwner,D=0,ke=null,te=null,ye=0,an=0,Dl=jt(0),le=0,ji=null,Yn=0,aa=0,Fn=0,Al=0,Ml=null,zl=0,Rl=1/0;function Bn(){Rl=fe()+500}var P=null,Pi=!1,Ll=null,rt=null,At=!1,ia=null,oa=90,Ul=[],Ol=[],ht=null,sa=0,Yl=null,Ni=-1,ft=0,Ti=0,la=null,Ii=!1;function Ne(){return D&48?fe():Ni!==-1?Ni:Ni=fe()}function Mt(e){if(e=e.mode,!(e&2))return 1;if(!(e&4))return zn()===99?1:2;if(ft===0&&(ft=Yn),My.transition!==0){Ti!==0&&(Ti=Ml!==null?Ml.pendingLanes:0),e=ft;var t=4186112&~Ti;return t&=-t,t===0&&(e=4186112&~e,t=e&-e,t===0&&(t=8192)),t}return e=zn(),D&4&&e===98?e=Ga(12,ft):(e=Lg(e),e=Ga(e,ft)),e}function zt(e,t,n){if(50<sa)throw sa=0,Yl=null,Error(E(185));if(e=Di(e,t),e===null)return null;Ka(e,t,n),e===ke&&(Fn|=t,le===4&&Hn(e,ye));var r=zn();t===1?D&8&&!(D&48)?Fl(e):(ze(e,n),D===0&&(Bn(),Ze())):(!(D&4)||r!==98&&r!==99||(ht===null?ht=new Set([e]):ht.add(e)),ze(e,n)),Ml=e}function Di(e,t){e.lanes|=t;var n=e.alternate;for(n!==null&&(n.lanes|=t),n=e,e=e.return;e!==null;)e.childLanes|=t,n=e.alternate,n!==null&&(n.childLanes|=t),n=e,e=e.return;return n.tag===3?n.stateNode:null}function ze(e,t){for(var n=e.callbackNode,r=e.suspendedLanes,a=e.pingedLanes,i=e.expirationTimes,o=e.pendingLanes;0<o;){var s=31-Ct(o),l=1<<s,u=i[s];if(u===-1){if(!(l&r)||l&a){u=t,Cn(l);var p=Y;i[s]=10<=p?u+250:6<=p?u+5e3:-1}}else u<=t&&(e.expiredLanes|=l);o&=~l}if(r=Ar(e,e===ke?ye:0),t=Y,r===0)n!==null&&(n!==il&&rl(n),e.callbackNode=null,e.callbackPriority=0);else{if(n!==null){if(e.callbackPriority===t)return;n!==il&&rl(n)}t===15?(n=Fl.bind(null,e),dt===null?(dt=[n],ui=nl(ci,ap)):dt.push(n),n=il):t===14?n=qr(99,Fl.bind(null,e)):(n=Ug(t),n=qr(n,em.bind(null,e))),e.callbackPriority=t,e.callbackNode=n}}function em(e){if(Ni=-1,Ti=ft=0,D&48)throw Error(E(327));var t=e.callbackNode;if(Rt()&&e.callbackNode!==t)return null;var n=Ar(e,e===ke?ye:0);if(n===0)return null;var r=n,a=D;D|=16;var i=am();(ke!==e||ye!==r)&&(Bn(),qn(e,r));do try{Qy();break}catch(s){rm(e,s)}while(1);if(sl(),_i.current=i,D=a,te!==null?r=0:(ke=null,ye=0,r=le),Yn&Fn)qn(e,0);else if(r!==0){if(r===2&&(D|=64,e.hydrate&&(e.hydrate=!1,Xs(e.containerInfo)),n=dd(e),n!==0&&(r=ca(e,n))),r===1)throw t=ji,qn(e,0),Hn(e,n),ze(e,fe()),t;switch(e.finishedWork=e.current.alternate,e.finishedLanes=n,r){case 0:case 1:throw Error(E(345));case 2:on(e);break;case 3:if(Hn(e,n),(n&62914560)===n&&(r=zl+500-fe(),10<r)){if(Ar(e,0)!==0)break;if(a=e.suspendedLanes,(a&n)!==n){Ne(),e.pingedLanes|=e.suspendedLanes&a;break}e.timeoutHandle=Hd(on.bind(null,e),r);break}on(e);break;case 4:if(Hn(e,n),(n&4186112)===n)break;for(r=e.eventTimes,a=-1;0<n;){var o=31-Ct(n);i=1<<o,o=r[o],o>a&&(a=o),n&=~i}if(n=a,n=fe()-n,n=(120>n?120:480>n?480:1080>n?1080:1920>n?1920:3e3>n?3e3:4320>n?4320:1960*Gy(n/1960))-n,10<n){e.timeoutHandle=Hd(on.bind(null,e),n);break}on(e);break;case 5:on(e);break;default:throw Error(E(329))}}return ze(e,fe()),e.callbackNode===t?em.bind(null,e):null}function Hn(e,t){for(t&=~Al,t&=~Fn,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0<t;){var n=31-Ct(t),r=1<<n;e[n]=-1,t&=~r}}function Fl(e){if(D&48)throw Error(E(327));if(Rt(),e===ke&&e.expiredLanes&ye){var t=ye,n=ca(e,t);Yn&Fn&&(t=Ar(e,t),n=ca(e,t))}else t=Ar(e,0),n=ca(e,t);if(e.tag!==0&&n===2&&(D|=64,e.hydrate&&(e.hydrate=!1,Xs(e.containerInfo)),t=dd(e),t!==0&&(n=ca(e,t))),n===1)throw n=ji,qn(e,0),Hn(e,t),ze(e,fe()),n;return e.finishedWork=e.current.alternate,e.finishedLanes=t,on(e),ze(e,fe()),null}function Ky(){if(ht!==null){var e=ht;ht=null,e.forEach(function(t){t.expiredLanes|=24&t.pendingLanes,ze(t,fe())})}Ze()}function tm(e,t){var n=D;D|=1;try{return e(t)}finally{D=n,D===0&&(Bn(),Ze())}}function nm(e,t){var n=D;D&=-2,D|=8;try{return e(t)}finally{D=n,D===0&&(Bn(),Ze())}}function Ai(e,t){K(Dl,an),an|=t,Yn|=t}function Bl(){an=Dl.current,B(Dl)}function qn(e,t){e.finishedWork=null,e.finishedLanes=0;var n=e.timeoutHandle;if(n!==-1&&(e.timeoutHandle=-1,Py(n)),te!==null)for(n=te.return;n!==null;){var r=n;switch(r.tag){case 1:r=r.type.childContextTypes,r!=null&&si();break;case 3:Un(),B(Ee),B(he),fl();break;case 5:pl(r);break;case 4:Un();break;case 13:B(J);break;case 19:B(J);break;case 10:ll(r);break;case 23:case 24:Bl()}n=n.return}ke=e,te=Ut(e.current,null),ye=an=Yn=t,le=0,ji=null,Al=Fn=aa=0}function rm(e,t){do{var n=te;try{if(sl(),Qr.current=Ci,wi){for(var r=X.memoizedState;r!==null;){var a=r.queue;a!==null&&(a.pending=null),r=r.next}wi=!1}if(Xr=0,se=ge=X=null,Zr=!1,Il.current=null,n===null||n.return===null){le=1,ji=t,te=null;break}e:{var i=e,o=n.return,s=n,l=t;if(t=ye,s.flags|=2048,s.firstEffect=s.lastEffect=null,l!==null&&typeof l=="object"&&typeof l.then=="function"){var u=l;if(!(s.mode&2)){var p=s.alternate;p?(s.updateQueue=p.updateQueue,s.memoizedState=p.memoizedState,s.lanes=p.lanes):(s.updateQueue=null,s.memoizedState=null)}var m=(J.current&1)!==0,d=o;do{var y;if(y=d.tag===13){var b=d.memoizedState;if(b!==null)y=b.dehydrated!==null;else{var x=d.memoizedProps;y=x.fallback===void 0?!1:x.unstable_avoidThisFallback!==!0?!0:!m}}if(y){var f=d.updateQueue;if(f===null){var h=new Set;h.add(u),d.updateQueue=h}else f.add(u);if(!(d.mode&2)){if(d.flags|=64,s.flags|=16384,s.flags&=-2981,s.tag===1)if(s.alternate===null)s.tag=17;else{var g=Tt(-1,1);g.tag=2,It(s,g)}s.lanes|=1;break e}l=void 0,s=t;var w=i.pingCache;if(w===null?(w=i.pingCache=new By,l=new Set,w.set(u,l)):(l=w.get(u),l===void 0&&(l=new Set,w.set(u,l))),!l.has(s)){l.add(s);var k=nb.bind(null,i,u,s);u.then(k,k)}d.flags|=4096,d.lanes=t;break e}d=d.return}while(d!==null);l=Error((kn(s.type)||"A React component")+` suspended while rendering, but no fallback UI was specified.
40
+ `+i.stack}return{value:e,source:t,stack:a}}function jl(e,t){try{console.error(t.value)}catch(n){setTimeout(function(){throw n})}}var By=typeof WeakMap=="function"?WeakMap:Map;function Hp(e,t,n){n=Tt(-1,n),n.tag=3,n.payload={element:null};var r=t.value;return n.callback=function(){Pi||(Pi=!0,Ll=r),jl(e,t)},n}function qp(e,t,n){n=Tt(-1,n),n.tag=3;var r=e.type.getDerivedStateFromError;if(typeof r=="function"){var a=t.value;n.payload=function(){return jl(e,t),r(a)}}var i=e.stateNode;return i!==null&&typeof i.componentDidCatch=="function"&&(n.callback=function(){typeof r!="function"&&(rt===null?rt=new Set([this]):rt.add(this),jl(e,t));var o=t.stack;this.componentDidCatch(t.value,{componentStack:o!==null?o:""})}),n}var Hy=typeof WeakSet=="function"?WeakSet:Set;function Vp(e){var t=e.ref;if(t!==null)if(typeof t=="function")try{t(null)}catch(n){Lt(e,n)}else t.current=null}function qy(e,t){switch(t.tag){case 0:case 11:case 15:case 22:return;case 1:if(t.flags&256&&e!==null){var n=e.memoizedProps,r=e.memoizedState;e=t.stateNode,t=e.getSnapshotBeforeUpdate(t.elementType===t.type?n:He(t.type,n),r),e.__reactInternalSnapshotBeforeUpdate=t}return;case 3:t.flags&256&&Xs(t.stateNode.containerInfo);return;case 5:case 6:case 4:case 17:return}throw Error(E(163))}function Vy(e,t,n){switch(n.tag){case 0:case 11:case 15:case 22:if(t=n.updateQueue,t=t!==null?t.lastEffect:null,t!==null){e=t=t.next;do{if((e.tag&3)===3){var r=e.create;e.destroy=r()}e=e.next}while(e!==t)}if(t=n.updateQueue,t=t!==null?t.lastEffect:null,t!==null){e=t=t.next;do{var a=e;r=a.next,a=a.tag,a&4&&a&1&&(sm(n,e),eb(n,e)),e=r}while(e!==t)}return;case 1:e=n.stateNode,n.flags&4&&(t===null?e.componentDidMount():(r=n.elementType===n.type?t.memoizedProps:He(n.type,t.memoizedProps),e.componentDidUpdate(r,t.memoizedState,e.__reactInternalSnapshotBeforeUpdate))),t=n.updateQueue,t!==null&&lp(n,t,e);return;case 3:if(t=n.updateQueue,t!==null){if(e=null,n.child!==null)switch(n.child.tag){case 5:e=n.child.stateNode;break;case 1:e=n.child.stateNode}lp(n,t,e)}return;case 5:e=n.stateNode,t===null&&n.flags&4&&Bd(n.type,n.memoizedProps)&&e.focus();return;case 6:return;case 4:return;case 12:return;case 13:n.memoizedState===null&&(n=n.alternate,n!==null&&(n=n.memoizedState,n!==null&&(n=n.dehydrated,n!==null&&ad(n))));return;case 19:case 17:case 20:case 21:case 23:case 24:return}throw Error(E(163))}function Wp(e,t){for(var n=e;;){if(n.tag===5){var r=n.stateNode;if(t)r=r.style,typeof r.setProperty=="function"?r.setProperty("display","none","important"):r.display="none";else{r=n.stateNode;var a=n.memoizedProps.style;a=a!=null&&a.hasOwnProperty("display")?a.display:null,r.style.display=Fu("display",a)}}else if(n.tag===6)n.stateNode.nodeValue=t?"":n.memoizedProps;else if((n.tag!==23&&n.tag!==24||n.memoizedState===null||n===e)&&n.child!==null){n.child.return=n,n=n.child;continue}if(n===e)break;for(;n.sibling===null;){if(n.return===null||n.return===e)return;n=n.return}n.sibling.return=n.return,n=n.sibling}}function Gp(e,t){if(Zt&&typeof Zt.onCommitFiberUnmount=="function")try{Zt.onCommitFiberUnmount(tl,t)}catch{}switch(t.tag){case 0:case 11:case 14:case 15:case 22:if(e=t.updateQueue,e!==null&&(e=e.lastEffect,e!==null)){var n=e=e.next;do{var r=n,a=r.destroy;if(r=r.tag,a!==void 0)if(r&4)sm(t,n);else{r=t;try{a()}catch(i){Lt(r,i)}}n=n.next}while(n!==e)}break;case 1:if(Vp(t),e=t.stateNode,typeof e.componentWillUnmount=="function")try{e.props=t.memoizedProps,e.state=t.memoizedState,e.componentWillUnmount()}catch(i){Lt(t,i)}break;case 5:Vp(t);break;case 4:Xp(e,t)}}function Kp(e){e.alternate=null,e.child=null,e.dependencies=null,e.firstEffect=null,e.lastEffect=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.return=null,e.updateQueue=null}function Jp(e){return e.tag===5||e.tag===3||e.tag===4}function Qp(e){e:{for(var t=e.return;t!==null;){if(Jp(t))break e;t=t.return}throw Error(E(160))}var n=t;switch(t=n.stateNode,n.tag){case 5:var r=!1;break;case 3:t=t.containerInfo,r=!0;break;case 4:t=t.containerInfo,r=!0;break;default:throw Error(E(161))}n.flags&16&&(Er(t,""),n.flags&=-17);e:t:for(n=e;;){for(;n.sibling===null;){if(n.return===null||Jp(n.return)){n=null;break e}n=n.return}for(n.sibling.return=n.return,n=n.sibling;n.tag!==5&&n.tag!==6&&n.tag!==18;){if(n.flags&2||n.child===null||n.tag===4)continue t;n.child.return=n,n=n.child}if(!(n.flags&2)){n=n.stateNode;break e}}r?Pl(e,n,t):Nl(e,n,t)}function Pl(e,t,n){var r=e.tag,a=r===5||r===6;if(a)e=a?e.stateNode:e.stateNode.instance,t?n.nodeType===8?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(n.nodeType===8?(t=n.parentNode,t.insertBefore(e,n)):(t=n,t.appendChild(e)),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=ri));else if(r!==4&&(e=e.child,e!==null))for(Pl(e,t,n),e=e.sibling;e!==null;)Pl(e,t,n),e=e.sibling}function Nl(e,t,n){var r=e.tag,a=r===5||r===6;if(a)e=a?e.stateNode:e.stateNode.instance,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(e=e.child,e!==null))for(Nl(e,t,n),e=e.sibling;e!==null;)Nl(e,t,n),e=e.sibling}function Xp(e,t){for(var n=t,r=!1,a,i;;){if(!r){r=n.return;e:for(;;){if(r===null)throw Error(E(160));switch(a=r.stateNode,r.tag){case 5:i=!1;break e;case 3:a=a.containerInfo,i=!0;break e;case 4:a=a.containerInfo,i=!0;break e}r=r.return}r=!0}if(n.tag===5||n.tag===6){e:for(var o=e,s=n,l=s;;)if(Gp(o,l),l.child!==null&&l.tag!==4)l.child.return=l,l=l.child;else{if(l===s)break e;for(;l.sibling===null;){if(l.return===null||l.return===s)break e;l=l.return}l.sibling.return=l.return,l=l.sibling}i?(o=a,s=n.stateNode,o.nodeType===8?o.parentNode.removeChild(s):o.removeChild(s)):a.removeChild(n.stateNode)}else if(n.tag===4){if(n.child!==null){a=n.stateNode.containerInfo,i=!0,n.child.return=n,n=n.child;continue}}else if(Gp(e,n),n.child!==null){n.child.return=n,n=n.child;continue}if(n===t)break;for(;n.sibling===null;){if(n.return===null||n.return===t)return;n=n.return,n.tag===4&&(r=!1)}n.sibling.return=n.return,n=n.sibling}}function Tl(e,t){switch(t.tag){case 0:case 11:case 14:case 15:case 22:var n=t.updateQueue;if(n=n!==null?n.lastEffect:null,n!==null){var r=n=n.next;do(r.tag&3)===3&&(e=r.destroy,r.destroy=void 0,e!==void 0&&e()),r=r.next;while(r!==n)}return;case 1:return;case 5:if(n=t.stateNode,n!=null){r=t.memoizedProps;var a=e!==null?e.memoizedProps:r;e=t.type;var i=t.updateQueue;if(t.updateQueue=null,i!==null){for(n[ii]=r,e==="input"&&r.type==="radio"&&r.name!=null&&Au(n,r),bs(e,a),t=bs(e,r),a=0;a<i.length;a+=2){var o=i[a],s=i[a+1];o==="style"?Yu(n,s):o==="dangerouslySetInnerHTML"?Ou(n,s):o==="children"?Er(n,s):Zo(n,o,s,t)}switch(e){case"input":ds(n,r);break;case"textarea":Ru(n,r);break;case"select":e=n._wrapperState.wasMultiple,n._wrapperState.wasMultiple=!!r.multiple,i=r.value,i!=null?wn(n,!!r.multiple,i,!1):e!==!!r.multiple&&(r.defaultValue!=null?wn(n,!!r.multiple,r.defaultValue,!0):wn(n,!!r.multiple,r.multiple?[]:"",!1))}}}return;case 6:if(t.stateNode===null)throw Error(E(162));t.stateNode.nodeValue=t.memoizedProps;return;case 3:n=t.stateNode,n.hydrate&&(n.hydrate=!1,ad(n.containerInfo));return;case 12:return;case 13:t.memoizedState!==null&&(zl=fe(),Wp(t.child,!0)),Zp(t);return;case 19:Zp(t);return;case 17:return;case 23:case 24:Wp(t,t.memoizedState!==null);return}throw Error(E(163))}function Zp(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new Hy),t.forEach(function(r){var a=rb.bind(null,e,r);n.has(r)||(n.add(r),r.then(a,a))})}}function Wy(e,t){return e!==null&&(e=e.memoizedState,e===null||e.dehydrated!==null)?(t=t.memoizedState,t!==null&&t.dehydrated===null):!1}var Gy=Math.ceil,_i=Wt.ReactCurrentDispatcher,Il=Wt.ReactCurrentOwner,D=0,ke=null,te=null,ye=0,an=0,Dl=jt(0),le=0,ji=null,Fn=0,aa=0,Yn=0,Al=0,Ml=null,zl=0,Rl=1/0;function Bn(){Rl=fe()+500}var P=null,Pi=!1,Ll=null,rt=null,At=!1,ia=null,oa=90,Ul=[],Ol=[],ht=null,sa=0,Fl=null,Ni=-1,ft=0,Ti=0,la=null,Ii=!1;function Ne(){return D&48?fe():Ni!==-1?Ni:Ni=fe()}function Mt(e){if(e=e.mode,!(e&2))return 1;if(!(e&4))return zn()===99?1:2;if(ft===0&&(ft=Fn),My.transition!==0){Ti!==0&&(Ti=Ml!==null?Ml.pendingLanes:0),e=ft;var t=4186112&~Ti;return t&=-t,t===0&&(e=4186112&~e,t=e&-e,t===0&&(t=8192)),t}return e=zn(),D&4&&e===98?e=Ga(12,ft):(e=Lg(e),e=Ga(e,ft)),e}function zt(e,t,n){if(50<sa)throw sa=0,Fl=null,Error(E(185));if(e=Di(e,t),e===null)return null;Ka(e,t,n),e===ke&&(Yn|=t,le===4&&Hn(e,ye));var r=zn();t===1?D&8&&!(D&48)?Yl(e):(ze(e,n),D===0&&(Bn(),Ze())):(!(D&4)||r!==98&&r!==99||(ht===null?ht=new Set([e]):ht.add(e)),ze(e,n)),Ml=e}function Di(e,t){e.lanes|=t;var n=e.alternate;for(n!==null&&(n.lanes|=t),n=e,e=e.return;e!==null;)e.childLanes|=t,n=e.alternate,n!==null&&(n.childLanes|=t),n=e,e=e.return;return n.tag===3?n.stateNode:null}function ze(e,t){for(var n=e.callbackNode,r=e.suspendedLanes,a=e.pingedLanes,i=e.expirationTimes,o=e.pendingLanes;0<o;){var s=31-Ct(o),l=1<<s,u=i[s];if(u===-1){if(!(l&r)||l&a){u=t,Cn(l);var p=F;i[s]=10<=p?u+250:6<=p?u+5e3:-1}}else u<=t&&(e.expiredLanes|=l);o&=~l}if(r=Ar(e,e===ke?ye:0),t=F,r===0)n!==null&&(n!==il&&rl(n),e.callbackNode=null,e.callbackPriority=0);else{if(n!==null){if(e.callbackPriority===t)return;n!==il&&rl(n)}t===15?(n=Yl.bind(null,e),dt===null?(dt=[n],ui=nl(ci,ap)):dt.push(n),n=il):t===14?n=qr(99,Yl.bind(null,e)):(n=Ug(t),n=qr(n,em.bind(null,e))),e.callbackPriority=t,e.callbackNode=n}}function em(e){if(Ni=-1,Ti=ft=0,D&48)throw Error(E(327));var t=e.callbackNode;if(Rt()&&e.callbackNode!==t)return null;var n=Ar(e,e===ke?ye:0);if(n===0)return null;var r=n,a=D;D|=16;var i=am();(ke!==e||ye!==r)&&(Bn(),qn(e,r));do try{Qy();break}catch(s){rm(e,s)}while(1);if(sl(),_i.current=i,D=a,te!==null?r=0:(ke=null,ye=0,r=le),Fn&Yn)qn(e,0);else if(r!==0){if(r===2&&(D|=64,e.hydrate&&(e.hydrate=!1,Xs(e.containerInfo)),n=dd(e),n!==0&&(r=ca(e,n))),r===1)throw t=ji,qn(e,0),Hn(e,n),ze(e,fe()),t;switch(e.finishedWork=e.current.alternate,e.finishedLanes=n,r){case 0:case 1:throw Error(E(345));case 2:on(e);break;case 3:if(Hn(e,n),(n&62914560)===n&&(r=zl+500-fe(),10<r)){if(Ar(e,0)!==0)break;if(a=e.suspendedLanes,(a&n)!==n){Ne(),e.pingedLanes|=e.suspendedLanes&a;break}e.timeoutHandle=Hd(on.bind(null,e),r);break}on(e);break;case 4:if(Hn(e,n),(n&4186112)===n)break;for(r=e.eventTimes,a=-1;0<n;){var o=31-Ct(n);i=1<<o,o=r[o],o>a&&(a=o),n&=~i}if(n=a,n=fe()-n,n=(120>n?120:480>n?480:1080>n?1080:1920>n?1920:3e3>n?3e3:4320>n?4320:1960*Gy(n/1960))-n,10<n){e.timeoutHandle=Hd(on.bind(null,e),n);break}on(e);break;case 5:on(e);break;default:throw Error(E(329))}}return ze(e,fe()),e.callbackNode===t?em.bind(null,e):null}function Hn(e,t){for(t&=~Al,t&=~Yn,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0<t;){var n=31-Ct(t),r=1<<n;e[n]=-1,t&=~r}}function Yl(e){if(D&48)throw Error(E(327));if(Rt(),e===ke&&e.expiredLanes&ye){var t=ye,n=ca(e,t);Fn&Yn&&(t=Ar(e,t),n=ca(e,t))}else t=Ar(e,0),n=ca(e,t);if(e.tag!==0&&n===2&&(D|=64,e.hydrate&&(e.hydrate=!1,Xs(e.containerInfo)),t=dd(e),t!==0&&(n=ca(e,t))),n===1)throw n=ji,qn(e,0),Hn(e,t),ze(e,fe()),n;return e.finishedWork=e.current.alternate,e.finishedLanes=t,on(e),ze(e,fe()),null}function Ky(){if(ht!==null){var e=ht;ht=null,e.forEach(function(t){t.expiredLanes|=24&t.pendingLanes,ze(t,fe())})}Ze()}function tm(e,t){var n=D;D|=1;try{return e(t)}finally{D=n,D===0&&(Bn(),Ze())}}function nm(e,t){var n=D;D&=-2,D|=8;try{return e(t)}finally{D=n,D===0&&(Bn(),Ze())}}function Ai(e,t){K(Dl,an),an|=t,Fn|=t}function Bl(){an=Dl.current,B(Dl)}function qn(e,t){e.finishedWork=null,e.finishedLanes=0;var n=e.timeoutHandle;if(n!==-1&&(e.timeoutHandle=-1,Py(n)),te!==null)for(n=te.return;n!==null;){var r=n;switch(r.tag){case 1:r=r.type.childContextTypes,r!=null&&si();break;case 3:Un(),B(Ee),B(he),fl();break;case 5:pl(r);break;case 4:Un();break;case 13:B(J);break;case 19:B(J);break;case 10:ll(r);break;case 23:case 24:Bl()}n=n.return}ke=e,te=Ut(e.current,null),ye=an=Fn=t,le=0,ji=null,Al=Yn=aa=0}function rm(e,t){do{var n=te;try{if(sl(),Qr.current=Ci,wi){for(var r=X.memoizedState;r!==null;){var a=r.queue;a!==null&&(a.pending=null),r=r.next}wi=!1}if(Xr=0,se=ge=X=null,Zr=!1,Il.current=null,n===null||n.return===null){le=1,ji=t,te=null;break}e:{var i=e,o=n.return,s=n,l=t;if(t=ye,s.flags|=2048,s.firstEffect=s.lastEffect=null,l!==null&&typeof l=="object"&&typeof l.then=="function"){var u=l;if(!(s.mode&2)){var p=s.alternate;p?(s.updateQueue=p.updateQueue,s.memoizedState=p.memoizedState,s.lanes=p.lanes):(s.updateQueue=null,s.memoizedState=null)}var m=(J.current&1)!==0,d=o;do{var y;if(y=d.tag===13){var b=d.memoizedState;if(b!==null)y=b.dehydrated!==null;else{var x=d.memoizedProps;y=x.fallback===void 0?!1:x.unstable_avoidThisFallback!==!0?!0:!m}}if(y){var f=d.updateQueue;if(f===null){var h=new Set;h.add(u),d.updateQueue=h}else f.add(u);if(!(d.mode&2)){if(d.flags|=64,s.flags|=16384,s.flags&=-2981,s.tag===1)if(s.alternate===null)s.tag=17;else{var g=Tt(-1,1);g.tag=2,It(s,g)}s.lanes|=1;break e}l=void 0,s=t;var w=i.pingCache;if(w===null?(w=i.pingCache=new By,l=new Set,w.set(u,l)):(l=w.get(u),l===void 0&&(l=new Set,w.set(u,l))),!l.has(s)){l.add(s);var k=nb.bind(null,i,u,s);u.then(k,k)}d.flags|=4096,d.lanes=t;break e}d=d.return}while(d!==null);l=Error((kn(s.type)||"A React component")+` suspended while rendering, but no fallback UI was specified.
41
41
 
42
- Add a <Suspense fallback=...> component higher in the tree to provide a loading indicator or placeholder to display.`)}le!==5&&(le=2),l=_l(l,s),d=o;do{switch(d.tag){case 3:i=l,d.flags|=4096,t&=-t,d.lanes|=t;var C=Hp(d,i,t);sp(d,C);break e;case 1:i=l;var S=d.type,$=d.stateNode;if(!(d.flags&64)&&(typeof S.getDerivedStateFromError=="function"||$!==null&&typeof $.componentDidCatch=="function"&&(rt===null||!rt.has($)))){d.flags|=4096,t&=-t,d.lanes|=t;var T=qp(d,i,t);sp(d,T);break e}}d=d.return}while(d!==null)}om(n)}catch(j){t=j,te===n&&n!==null&&(te=n=n.return);continue}break}while(1)}function am(){var e=_i.current;return _i.current=Ci,e===null?Ci:e}function ca(e,t){var n=D;D|=16;var r=am();ke===e&&ye===t||qn(e,t);do try{Jy();break}catch(a){rm(e,a)}while(1);if(sl(),D=n,_i.current=r,te!==null)throw Error(E(261));return ke=null,ye=0,le}function Jy(){for(;te!==null;)im(te)}function Qy(){for(;te!==null&&!Iy();)im(te)}function im(e){var t=cm(e.alternate,e,an);e.memoizedProps=e.pendingProps,t===null?om(e):te=t,Il.current=null}function om(e){var t=e;do{var n=t.alternate;if(e=t.return,t.flags&2048){if(n=Fy(t),n!==null){n.flags&=2047,te=n;return}e!==null&&(e.firstEffect=e.lastEffect=null,e.flags|=2048)}else{if(n=Yy(n,t,an),n!==null){te=n;return}if(n=t,n.tag!==24&&n.tag!==23||n.memoizedState===null||an&1073741824||!(n.mode&4)){for(var r=0,a=n.child;a!==null;)r|=a.lanes|a.childLanes,a=a.sibling;n.childLanes=r}e!==null&&!(e.flags&2048)&&(e.firstEffect===null&&(e.firstEffect=t.firstEffect),t.lastEffect!==null&&(e.lastEffect!==null&&(e.lastEffect.nextEffect=t.firstEffect),e.lastEffect=t.lastEffect),1<t.flags&&(e.lastEffect!==null?e.lastEffect.nextEffect=t:e.firstEffect=t,e.lastEffect=t))}if(t=t.sibling,t!==null){te=t;return}te=t=e}while(t!==null);le===0&&(le=5)}function on(e){var t=zn();return en(99,Xy.bind(null,e,t)),null}function Xy(e,t){do Rt();while(ia!==null);if(D&48)throw Error(E(327));var n=e.finishedWork;if(n===null)return null;if(e.finishedWork=null,e.finishedLanes=0,n===e.current)throw Error(E(177));e.callbackNode=null;var r=n.lanes|n.childLanes,a=r,i=e.pendingLanes&~a;e.pendingLanes=a,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=a,e.mutableReadLanes&=a,e.entangledLanes&=a,a=e.entanglements;for(var o=e.eventTimes,s=e.expirationTimes;0<i;){var l=31-Ct(i),u=1<<l;a[l]=0,o[l]=-1,s[l]=-1,i&=~u}if(ht!==null&&!(r&24)&&ht.has(e)&&ht.delete(e),e===ke&&(te=ke=null,ye=0),1<n.flags?n.lastEffect!==null?(n.lastEffect.nextEffect=n,r=n.firstEffect):r=n:r=n.firstEffect,r!==null){if(a=D,D|=32,Il.current=null,Ks=Ja,o=Td(),qs(o)){if("selectionStart"in o)s={start:o.selectionStart,end:o.selectionEnd};else e:if(s=(s=o.ownerDocument)&&s.defaultView||window,(u=s.getSelection&&s.getSelection())&&u.rangeCount!==0){s=u.anchorNode,i=u.anchorOffset,l=u.focusNode,u=u.focusOffset;try{s.nodeType,l.nodeType}catch{s=null;break e}var p=0,m=-1,d=-1,y=0,b=0,x=o,f=null;t:for(;;){for(var h;x!==s||i!==0&&x.nodeType!==3||(m=p+i),x!==l||u!==0&&x.nodeType!==3||(d=p+u),x.nodeType===3&&(p+=x.nodeValue.length),(h=x.firstChild)!==null;)f=x,x=h;for(;;){if(x===o)break t;if(f===s&&++y===i&&(m=p),f===l&&++b===u&&(d=p),(h=x.nextSibling)!==null)break;x=f,f=x.parentNode}x=h}s=m===-1||d===-1?null:{start:m,end:d}}else s=null;s=s||{start:0,end:0}}else s=null;Js={focusedElem:o,selectionRange:s},Ja=!1,la=null,Ii=!1,P=r;do try{Zy()}catch(j){if(P===null)throw Error(E(330));Lt(P,j),P=P.nextEffect}while(P!==null);la=null,P=r;do try{for(o=e;P!==null;){var g=P.flags;if(g&16&&Er(P.stateNode,""),g&128){var w=P.alternate;if(w!==null){var k=w.ref;k!==null&&(typeof k=="function"?k(null):k.current=null)}}switch(g&1038){case 2:Qp(P),P.flags&=-3;break;case 6:Qp(P),P.flags&=-3,Tl(P.alternate,P);break;case 1024:P.flags&=-1025;break;case 1028:P.flags&=-1025,Tl(P.alternate,P);break;case 4:Tl(P.alternate,P);break;case 8:s=P,Xp(o,s);var C=s.alternate;Kp(s),C!==null&&Kp(C)}P=P.nextEffect}}catch(j){if(P===null)throw Error(E(330));Lt(P,j),P=P.nextEffect}while(P!==null);if(k=Js,w=Td(),g=k.focusedElem,o=k.selectionRange,w!==g&&g&&g.ownerDocument&&Nd(g.ownerDocument.documentElement,g)){for(o!==null&&qs(g)&&(w=o.start,k=o.end,k===void 0&&(k=w),"selectionStart"in g?(g.selectionStart=w,g.selectionEnd=Math.min(k,g.value.length)):(k=(w=g.ownerDocument||document)&&w.defaultView||window,k.getSelection&&(k=k.getSelection(),s=g.textContent.length,C=Math.min(o.start,s),o=o.end===void 0?C:Math.min(o.end,s),!k.extend&&C>o&&(s=o,o=C,C=s),s=Pd(g,C),i=Pd(g,o),s&&i&&(k.rangeCount!==1||k.anchorNode!==s.node||k.anchorOffset!==s.offset||k.focusNode!==i.node||k.focusOffset!==i.offset)&&(w=w.createRange(),w.setStart(s.node,s.offset),k.removeAllRanges(),C>o?(k.addRange(w),k.extend(i.node,i.offset)):(w.setEnd(i.node,i.offset),k.addRange(w)))))),w=[],k=g;k=k.parentNode;)k.nodeType===1&&w.push({element:k,left:k.scrollLeft,top:k.scrollTop});for(typeof g.focus=="function"&&g.focus(),g=0;g<w.length;g++)k=w[g],k.element.scrollLeft=k.left,k.element.scrollTop=k.top}Ja=!!Ks,Js=Ks=null,e.current=n,P=r;do try{for(g=e;P!==null;){var S=P.flags;if(S&36&&Vy(g,P.alternate,P),S&128){w=void 0;var $=P.ref;if($!==null){var T=P.stateNode;switch(P.tag){case 5:w=T;break;default:w=T}typeof $=="function"?$(w):$.current=w}}P=P.nextEffect}}catch(j){if(P===null)throw Error(E(330));Lt(P,j),P=P.nextEffect}while(P!==null);P=null,Ay(),D=a}else e.current=n;if(At)At=!1,ia=e,oa=t;else for(P=r;P!==null;)t=P.nextEffect,P.nextEffect=null,P.flags&8&&(S=P,S.sibling=null,S.stateNode=null),P=t;if(r=e.pendingLanes,r===0&&(rt=null),r===1?e===Yl?sa++:(sa=0,Yl=e):sa=0,n=n.stateNode,Zt&&typeof Zt.onCommitFiberRoot=="function")try{Zt.onCommitFiberRoot(tl,n,void 0,(n.current.flags&64)===64)}catch{}if(ze(e,fe()),Pi)throw Pi=!1,e=Ll,Ll=null,e;return D&8||Ze(),null}function Zy(){for(;P!==null;){var e=P.alternate;Ii||la===null||(P.flags&8?Qu(P,la)&&(Ii=!0):P.tag===13&&Wy(e,P)&&Qu(P,la)&&(Ii=!0));var t=P.flags;t&256&&qy(e,P),!(t&512)||At||(At=!0,qr(97,function(){return Rt(),null})),P=P.nextEffect}}function Rt(){if(oa!==90){var e=97<oa?97:oa;return oa=90,en(e,tb)}return!1}function eb(e,t){Ul.push(t,e),At||(At=!0,qr(97,function(){return Rt(),null}))}function sm(e,t){Ol.push(t,e),At||(At=!0,qr(97,function(){return Rt(),null}))}function tb(){if(ia===null)return!1;var e=ia;if(ia=null,D&48)throw Error(E(331));var t=D;D|=32;var n=Ol;Ol=[];for(var r=0;r<n.length;r+=2){var a=n[r],i=n[r+1],o=a.destroy;if(a.destroy=void 0,typeof o=="function")try{o()}catch(l){if(i===null)throw Error(E(330));Lt(i,l)}}for(n=Ul,Ul=[],r=0;r<n.length;r+=2){a=n[r],i=n[r+1];try{var s=a.create;a.destroy=s()}catch(l){if(i===null)throw Error(E(330));Lt(i,l)}}for(s=e.current.firstEffect;s!==null;)e=s.nextEffect,s.nextEffect=null,s.flags&8&&(s.sibling=null,s.stateNode=null),s=e;return D=t,Ze(),!0}function lm(e,t,n){t=_l(n,t),t=Hp(e,t,1),It(e,t),t=Ne(),e=Di(e,1),e!==null&&(Ka(e,1,t),ze(e,t))}function Lt(e,t){if(e.tag===3)lm(e,e,t);else for(var n=e.return;n!==null;){if(n.tag===3){lm(n,e,t);break}else if(n.tag===1){var r=n.stateNode;if(typeof n.type.getDerivedStateFromError=="function"||typeof r.componentDidCatch=="function"&&(rt===null||!rt.has(r))){e=_l(t,e);var a=qp(n,e,1);if(It(n,a),a=Ne(),n=Di(n,1),n!==null)Ka(n,1,a),ze(n,a);else if(typeof r.componentDidCatch=="function"&&(rt===null||!rt.has(r)))try{r.componentDidCatch(t,e)}catch{}break}}n=n.return}}function nb(e,t,n){var r=e.pingCache;r!==null&&r.delete(t),t=Ne(),e.pingedLanes|=e.suspendedLanes&n,ke===e&&(ye&n)===n&&(le===4||le===3&&(ye&62914560)===ye&&500>fe()-zl?qn(e,0):Al|=n),ze(e,t)}function rb(e,t){var n=e.stateNode;n!==null&&n.delete(t),t=0,t===0&&(t=e.mode,t&2?t&4?(ft===0&&(ft=Yn),t=$n(62914560&~ft),t===0&&(t=4194304)):t=zn()===99?1:2:t=1),n=Ne(),e=Di(e,t),e!==null&&(Ka(e,t,n),ze(e,n))}var cm;cm=function(e,t,n){var r=t.lanes;if(e!==null)if(e.memoizedProps!==t.pendingProps||Ee.current)qe=!0;else if(n&r)qe=!!(e.flags&16384);else{switch(qe=!1,t.tag){case 3:Ap(t),hl();break;case 5:fp(t);break;case 1:Ce(t.type)&&li(t);break;case 4:dl(t,t.stateNode.containerInfo);break;case 10:r=t.memoizedProps.value;var a=t.type._context;K(di,a._currentValue),a._currentValue=r;break;case 13:if(t.memoizedState!==null)return n&t.child.childLanes?Mp(e,t,n):(K(J,J.current&1),t=mt(e,t,n),t!==null?t.sibling:null);K(J,J.current&1);break;case 19:if(r=(n&t.childLanes)!==0,e.flags&64){if(r)return Op(e,t,n);t.flags|=64}if(a=t.memoizedState,a!==null&&(a.rendering=null,a.tail=null,a.lastEffect=null),K(J,J.current),r)break;return null;case 23:case 24:return t.lanes=0,xl(e,t,n)}return mt(e,t,n)}else qe=!1;switch(t.lanes=0,t.tag){case 2:if(r=t.type,e!==null&&(e.alternate=null,t.alternate=null,t.flags|=2),e=t.pendingProps,a=Mn(t,he.current),Ln(t,n),a=yl(null,t,r,e,a,n),t.flags|=1,typeof a=="object"&&a!==null&&typeof a.render=="function"&&a.$$typeof===void 0){if(t.tag=1,t.memoizedState=null,t.updateQueue=null,Ce(r)){var i=!0;li(t)}else i=!1;t.memoizedState=a.state!==null&&a.state!==void 0?a.state:null,cl(t);var o=r.getDerivedStateFromProps;typeof o=="function"&&hi(t,r,o,e),a.updater=fi,t.stateNode=a,a._reactInternals=t,ul(t,r,e,n),t=El(null,t,r,!0,i,n)}else t.tag=0,_e(null,t,a,n),t=t.child;return t;case 16:a=t.elementType;e:{switch(e!==null&&(e.alternate=null,t.alternate=null,t.flags|=2),e=t.pendingProps,i=a._init,a=i(a._payload),t.type=a,i=t.tag=ib(a),e=He(a,e),i){case 0:t=Sl(null,t,a,e,n);break e;case 1:t=Dp(null,t,a,e,n);break e;case 11:t=Pp(null,t,a,e,n);break e;case 14:t=Np(null,t,a,He(a.type,e),r,n);break e}throw Error(E(306,a,""))}return t;case 0:return r=t.type,a=t.pendingProps,a=t.elementType===r?a:He(r,a),Sl(e,t,r,a,n);case 1:return r=t.type,a=t.pendingProps,a=t.elementType===r?a:He(r,a),Dp(e,t,r,a,n);case 3:if(Ap(t),r=t.updateQueue,e===null||r===null)throw Error(E(282));if(r=t.pendingProps,a=t.memoizedState,a=a!==null?a.element:null,op(e,t),Vr(t,r,null,n),r=t.memoizedState.element,r===a)hl(),t=mt(e,t,n);else{if(a=t.stateNode,(i=a.hydrate)&&(Dt=Tn(t.stateNode.containerInfo.firstChild),pt=t,i=tt=!0),i){if(e=a.mutableSourceEagerHydrationData,e!=null)for(a=0;a<e.length;a+=2)i=e[a],i._workInProgressVersionPrimary=e[a+1],On.push(i);for(n=hp(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|1024,n=n.sibling}else _e(e,t,r,n),hl();t=t.child}return t;case 5:return fp(t),e===null&&ml(t),r=t.type,a=t.pendingProps,i=e!==null?e.memoizedProps:null,o=a.children,Qs(r,a)?o=null:i!==null&&Qs(r,i)&&(t.flags|=16),Ip(e,t),_e(e,t,o,n),t.child;case 6:return e===null&&ml(t),null;case 13:return Mp(e,t,n);case 4:return dl(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=bi(t,null,r,n):_e(e,t,r,n),t.child;case 11:return r=t.type,a=t.pendingProps,a=t.elementType===r?a:He(r,a),Pp(e,t,r,a,n);case 7:return _e(e,t,t.pendingProps,n),t.child;case 8:return _e(e,t,t.pendingProps.children,n),t.child;case 12:return _e(e,t,t.pendingProps.children,n),t.child;case 10:e:{r=t.type._context,a=t.pendingProps,o=t.memoizedProps,i=a.value;var s=t.type._context;if(K(di,s._currentValue),s._currentValue=i,o!==null)if(s=o.value,i=De(s,i)?0:(typeof r._calculateChangedBits=="function"?r._calculateChangedBits(s,i):1073741823)|0,i===0){if(o.children===a.children&&!Ee.current){t=mt(e,t,n);break e}}else for(s=t.child,s!==null&&(s.return=t);s!==null;){var l=s.dependencies;if(l!==null){o=s.child;for(var u=l.firstContext;u!==null;){if(u.context===r&&u.observedBits&i){s.tag===1&&(u=Tt(-1,n&-n),u.tag=2,It(s,u)),s.lanes|=n,u=s.alternate,u!==null&&(u.lanes|=n),ip(s.return,n),l.lanes|=n;break}u=u.next}}else o=s.tag===10&&s.type===t.type?null:s.child;if(o!==null)o.return=s;else for(o=s;o!==null;){if(o===t){o=null;break}if(s=o.sibling,s!==null){s.return=o.return,o=s;break}o=o.return}s=o}_e(e,t,a.children,n),t=t.child}return t;case 9:return a=t.type,i=t.pendingProps,r=i.children,Ln(t,n),a=Ae(a,i.unstable_observedBits),r=r(a),t.flags|=1,_e(e,t,r,n),t.child;case 14:return a=t.type,i=He(a,t.pendingProps),i=He(a.type,i),Np(e,t,a,i,r,n);case 15:return Tp(e,t,t.type,t.pendingProps,r,n);case 17:return r=t.type,a=t.pendingProps,a=t.elementType===r?a:He(r,a),e!==null&&(e.alternate=null,t.alternate=null,t.flags|=2),t.tag=1,Ce(r)?(e=!0,li(t)):e=!1,Ln(t,n),dp(t,r,a),ul(t,r,a,n),El(null,t,r,!0,e,n);case 19:return Op(e,t,n);case 23:return xl(e,t,n);case 24:return xl(e,t,n)}throw Error(E(156,t.tag))};function ab(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.flags=0,this.lastEffect=this.firstEffect=this.nextEffect=null,this.childLanes=this.lanes=0,this.alternate=null}function Re(e,t,n,r){return new ab(e,t,n,r)}function Hl(e){return e=e.prototype,!(!e||!e.isReactComponent)}function ib(e){if(typeof e=="function")return Hl(e)?1:0;if(e!=null){if(e=e.$$typeof,e===za)return 11;if(e===La)return 14}return 2}function Ut(e,t){var n=e.alternate;return n===null?(n=Re(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.nextEffect=null,n.firstEffect=null,n.lastEffect=null),n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function Mi(e,t,n,r,a,i){var o=2;if(r=e,typeof e=="function")Hl(e)&&(o=1);else if(typeof e=="string")o=5;else e:switch(e){case kt:return Vn(n.children,a,i,t);case Pu:o=8,a|=16;break;case es:o=8,a|=1;break;case kr:return e=Re(12,n,t,a|8),e.elementType=kr,e.type=kr,e.lanes=i,e;case wr:return e=Re(13,n,t,a),e.type=wr,e.elementType=wr,e.lanes=i,e;case Ra:return e=Re(19,n,t,a),e.elementType=Ra,e.lanes=i,e;case os:return ql(n,a,i,t);case ss:return e=Re(24,n,t,a),e.elementType=ss,e.lanes=i,e;default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case ts:o=10;break e;case ns:o=9;break e;case za:o=11;break e;case La:o=14;break e;case rs:o=16,r=null;break e;case as:o=22;break e}throw Error(E(130,e==null?e:typeof e,""))}return t=Re(o,n,t,a),t.elementType=e,t.type=r,t.lanes=i,t}function Vn(e,t,n,r){return e=Re(7,e,r,t),e.lanes=n,e}function ql(e,t,n,r){return e=Re(23,e,r,t),e.elementType=os,e.lanes=n,e}function Vl(e,t,n){return e=Re(6,e,null,t),e.lanes=n,e}function Wl(e,t,n){return t=Re(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function ob(e,t,n){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.pendingContext=this.context=null,this.hydrate=n,this.callbackNode=null,this.callbackPriority=0,this.eventTimes=Ds(0),this.expirationTimes=Ds(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Ds(0),this.mutableSourceEagerHydrationData=null}function sb(e,t,n){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:Gt,key:r==null?null:""+r,children:e,containerInfo:t,implementation:n}}function zi(e,t,n,r){var a=t.current,i=Ne(),o=Mt(a);e:if(n){n=n._reactInternals;t:{if(Jt(n)!==n||n.tag!==1)throw Error(E(170));var s=n;do{switch(s.tag){case 3:s=s.stateNode.context;break t;case 1:if(Ce(s.type)){s=s.stateNode.__reactInternalMemoizedMergedChildContext;break t}}s=s.return}while(s!==null);throw Error(E(171))}if(n.tag===1){var l=n.type;if(Ce(l)){n=Kd(n,l,s);break e}}n=s}else n=Pt;return t.context===null?t.context=n:t.pendingContext=n,t=Tt(i,o),t.payload={element:e},r=r===void 0?null:r,r!==null&&(t.callback=r),It(a,t),zt(a,o,i),o}function Gl(e){if(e=e.current,!e.child)return null;switch(e.child.tag){case 5:return e.child.stateNode;default:return e.child.stateNode}}function um(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var n=e.retryLane;e.retryLane=n!==0&&n<t?n:t}}function Kl(e,t){um(e,t),(e=e.alternate)&&um(e,t)}function lb(){return null}function Jl(e,t,n){var r=n!=null&&n.hydrationOptions!=null&&n.hydrationOptions.mutableSources||null;if(n=new ob(e,t,n!=null&&n.hydrate===!0),t=Re(3,null,null,t===2?7:t===1?3:0),n.current=t,t.stateNode=n,cl(t),e[In]=n.current,Ld(e.nodeType===8?e.parentNode:e),r)for(e=0;e<r.length;e++){t=r[e];var a=t._getVersion;a=a(t._source),n.mutableSourceEagerHydrationData==null?n.mutableSourceEagerHydrationData=[t,a]:n.mutableSourceEagerHydrationData.push(t,a)}this._internalRoot=n}Jl.prototype.render=function(e){zi(e,this._internalRoot,null,null)},Jl.prototype.unmount=function(){var e=this._internalRoot,t=e.containerInfo;zi(null,e,null,function(){t[In]=null})};function ua(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11&&(e.nodeType!==8||e.nodeValue!==" react-mount-point-unstable "))}function cb(e,t){if(t||(t=e?e.nodeType===9?e.documentElement:e.firstChild:null,t=!(!t||t.nodeType!==1||!t.hasAttribute("data-reactroot"))),!t)for(var n;n=e.lastChild;)e.removeChild(n);return new Jl(e,0,t?{hydrate:!0}:void 0)}function Ri(e,t,n,r,a){var i=n._reactRootContainer;if(i){var o=i._internalRoot;if(typeof a=="function"){var s=a;a=function(){var u=Gl(o);s.call(u)}}zi(t,o,e,a)}else{if(i=n._reactRootContainer=cb(n,r),o=i._internalRoot,typeof a=="function"){var l=a;a=function(){var u=Gl(o);l.call(u)}}nm(function(){zi(t,o,e,a)})}return Gl(o)}Xu=function(e){if(e.tag===13){var t=Ne();zt(e,4,t),Kl(e,4)}},_s=function(e){if(e.tag===13){var t=Ne();zt(e,67108864,t),Kl(e,67108864)}},Zu=function(e){if(e.tag===13){var t=Ne(),n=Mt(e);zt(e,n,t),Kl(e,n)}},ed=function(e,t){return t()},ks=function(e,t,n){switch(t){case"input":if(ds(e,n),t=n.name,n.type==="radio"&&t!=null){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll("input[name="+JSON.stringify(""+t)+'][type="radio"]'),t=0;t<n.length;t++){var r=n[t];if(r!==e&&r.form===e.form){var a=oi(r);if(!a)throw Error(E(90));Iu(r),ds(r,a)}}}break;case"textarea":Ru(e,n);break;case"select":t=n.value,t!=null&&wn(e,!!n.multiple,t,!1)}},ws=tm,Vu=function(e,t,n,r,a){var i=D;D|=4;try{return en(98,e.bind(null,t,n,r,a))}finally{D=i,D===0&&(Bn(),Ze())}},xs=function(){!(D&49)&&(Ky(),Rt())},Wu=function(e,t){var n=D;D|=2;try{return e(t)}finally{D=n,D===0&&(Bn(),Ze())}};function dm(e,t){var n=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!ua(t))throw Error(E(200));return sb(e,t,null,n)}var ub={Events:[Hr,Dn,oi,Hu,qu,Rt,{current:!1}]},da={findFiberByHostInstance:Qt,bundleType:0,version:"17.0.2",rendererPackageName:"react-dom"},db={bundleType:da.bundleType,version:da.version,rendererPackageName:da.rendererPackageName,rendererConfig:da.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:Wt.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return e=Ju(e),e===null?null:e.stateNode},findFiberByHostInstance:da.findFiberByHostInstance||lb,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var Li=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!Li.isDisabled&&Li.supportsFiber)try{tl=Li.inject(db),Zt=Li}catch{}}Ie.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=ub,Ie.createPortal=dm,Ie.findDOMNode=function(e){if(e==null)return null;if(e.nodeType===1)return e;var t=e._reactInternals;if(t===void 0)throw typeof e.render=="function"?Error(E(188)):Error(E(268,Object.keys(e)));return e=Ju(t),e=e===null?null:e.stateNode,e},Ie.flushSync=function(e,t){var n=D;if(n&48)return e(t);D|=1;try{if(e)return en(99,e.bind(null,t))}finally{D=n,Ze()}},Ie.hydrate=function(e,t,n){if(!ua(t))throw Error(E(200));return Ri(null,e,t,!0,n)},Ie.render=function(e,t,n){if(!ua(t))throw Error(E(200));return Ri(null,e,t,!1,n)},Ie.unmountComponentAtNode=function(e){if(!ua(e))throw Error(E(40));return e._reactRootContainer?(nm(function(){Ri(null,null,e,!1,function(){e._reactRootContainer=null,e[In]=null})}),!0):!1},Ie.unstable_batchedUpdates=tm,Ie.unstable_createPortal=function(e,t){return dm(e,t,2<arguments.length&&arguments[2]!==void 0?arguments[2]:null)},Ie.unstable_renderSubtreeIntoContainer=function(e,t,n,r){if(!ua(n))throw Error(E(200));if(e==null||e._reactInternals===void 0)throw Error(E(38));return Ri(e,t,n,!1,r)},Ie.version="17.0.2";function pm(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(pm)}catch(e){console.error(e)}}pm(),xu.exports=Ie;var Ql=xu.exports;const pb=je(Ql),V1="",mm=Object.prototype.toString;function Xl(e){switch(mm.call(e)){case"[object Error]":case"[object Exception]":case"[object DOMException]":return!0;default:return Kn(e,Error)}}function Wn(e,t){return mm.call(e)===`[object ${t}]`}function hm(e){return Wn(e,"ErrorEvent")}function fm(e){return Wn(e,"DOMError")}function mb(e){return Wn(e,"DOMException")}function sn(e){return Wn(e,"String")}function gm(e){return e===null||typeof e!="object"&&typeof e!="function"}function Gn(e){return Wn(e,"Object")}function Zl(e){return typeof Event<"u"&&Kn(e,Event)}function hb(e){return typeof Element<"u"&&Kn(e,Element)}function fb(e){return Wn(e,"RegExp")}function ec(e){return!!(e&&e.then&&typeof e.then=="function")}function gb(e){return Gn(e)&&"nativeEvent"in e&&"preventDefault"in e&&"stopPropagation"in e}function yb(e){return typeof e=="number"&&e!==e}function Kn(e,t){try{return e instanceof t}catch{return!1}}function Ui(e){return e&&e.Math==Math?e:void 0}const Le=typeof globalThis=="object"&&Ui(globalThis)||typeof window=="object"&&Ui(window)||typeof self=="object"&&Ui(self)||typeof global=="object"&&Ui(global)||function(){return this}()||{};function pa(){return Le}function tc(e,t,n){const r=n||Le,a=r.__SENTRY__=r.__SENTRY__||{};return a[e]||(a[e]=t())}const bb=pa(),vb=80;function nc(e,t={}){try{let n=e;const r=5,a=[];let i=0,o=0;const s=" > ",l=s.length;let u;const p=Array.isArray(t)?t:t.keyAttrs,m=!Array.isArray(t)&&t.maxStringLength||vb;for(;n&&i++<r&&(u=kb(n,p),!(u==="html"||i>1&&o+a.length*l+u.length>=m));)a.push(u),o+=u.length,n=n.parentNode;return a.reverse().join(s)}catch{return"<unknown>"}}function kb(e,t){const n=e,r=[];let a,i,o,s,l;if(!n||!n.tagName)return"";r.push(n.tagName.toLowerCase());const u=t&&t.length?t.filter(m=>n.getAttribute(m)).map(m=>[m,n.getAttribute(m)]):null;if(u&&u.length)u.forEach(m=>{r.push(`[${m[0]}="${m[1]}"]`)});else if(n.id&&r.push(`#${n.id}`),a=n.className,a&&sn(a))for(i=a.split(/\s+/),l=0;l<i.length;l++)r.push(`.${i[l]}`);const p=["aria-label","type","name","title","alt"];for(l=0;l<p.length;l++)o=p[l],s=n.getAttribute(o),s&&r.push(`[${o}="${s}"]`);return r.join("")}function wb(){try{return bb.document.location.href}catch{return""}}const xb="Sentry Logger ",Oi=["debug","info","warn","error","log","assert","trace"];function ym(e){if(!("console"in Le))return e();const t=Le.console,n={};Oi.forEach(r=>{const a=t[r]&&t[r].__sentry_original__;r in t&&a&&(n[r]=t[r],t[r]=a)});try{return e()}finally{Object.keys(n).forEach(r=>{t[r]=n[r]})}}function bm(){let e=!1;const t={enable:()=>{e=!0},disable:()=>{e=!1}};return typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__?Oi.forEach(n=>{t[n]=(...r)=>{e&&ym(()=>{Le.console[n](`${xb}[${n}]:`,...r)})}}):Oi.forEach(n=>{t[n]=()=>{}}),t}let I;typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__?I=tc("logger",bm):I=bm();const Sb=/^(?:(\w+):)\/\/(?:(\w+)(?::(\w+)?)?@)([\w.-]+)(?::(\d+))?\/(.+)/;function Eb(e){return e==="http"||e==="https"}function ma(e,t=!1){const{host:n,path:r,pass:a,port:i,projectId:o,protocol:s,publicKey:l}=e;return`${s}://${l}${t&&a?`:${a}`:""}@${n}${i?`:${i}`:""}/${r&&`${r}/`}${o}`}function Cb(e){const t=Sb.exec(e);if(!t){console.error(`Invalid Sentry Dsn: ${e}`);return}const[n,r,a="",i,o="",s]=t.slice(1);let l="",u=s;const p=u.split("/");if(p.length>1&&(l=p.slice(0,-1).join("/"),u=p.pop()),u){const m=u.match(/^\d+/);m&&(u=m[0])}return vm({host:i,pass:a,path:l,projectId:u,port:o,protocol:n,publicKey:r})}function vm(e){return{protocol:e.protocol,publicKey:e.publicKey||"",pass:e.pass||"",host:e.host,port:e.port||"",path:e.path||"",projectId:e.projectId}}function $b(e){if(!(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__))return!0;const{port:t,projectId:n,protocol:r}=e;return["protocol","publicKey","host","projectId"].find(o=>e[o]?!1:(I.error(`Invalid Sentry Dsn: ${o} missing`),!0))?!1:n.match(/^\d+$/)?Eb(r)?t&&isNaN(parseInt(t,10))?(I.error(`Invalid Sentry Dsn: Invalid port ${t}`),!1):!0:(I.error(`Invalid Sentry Dsn: Invalid protocol ${r}`),!1):(I.error(`Invalid Sentry Dsn: Invalid projectId ${n}`),!1)}function km(e){const t=typeof e=="string"?Cb(e):vm(e);if(!(!t||!$b(t)))return t}class Ve extends Error{constructor(t,n="warn"){super(t),this.message=t,this.name=new.target.prototype.constructor.name,Object.setPrototypeOf(this,new.target.prototype),this.logLevel=n}}function ha(e,t=0){return typeof e!="string"||t===0||e.length<=t?e:`${e.slice(0,t)}...`}function wm(e,t){if(!Array.isArray(e))return"";const n=[];for(let r=0;r<e.length;r++){const a=e[r];try{n.push(String(a))}catch{n.push("[value cannot be serialized]")}}return n.join(t)}function _b(e,t,n=!1){return sn(e)?fb(t)?t.test(e):sn(t)?n?e===t:e.includes(t):!1:!1}function Yi(e,t=[],n=!1){return t.some(r=>_b(e,r,n))}function ce(e,t,n){if(!(t in e))return;const r=e[t],a=n(r);if(typeof a=="function")try{xm(a,r)}catch{}e[t]=a}function rc(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,configurable:!0})}function xm(e,t){const n=t.prototype||{};e.prototype=t.prototype=n,rc(e,"__sentry_original__",t)}function ac(e){return e.__sentry_original__}function jb(e){return Object.keys(e).map(t=>`${encodeURIComponent(t)}=${encodeURIComponent(e[t])}`).join("&")}function Sm(e){if(Xl(e))return{message:e.message,name:e.name,stack:e.stack,...Cm(e)};if(Zl(e)){const t={type:e.type,target:Em(e.target),currentTarget:Em(e.currentTarget),...Cm(e)};return typeof CustomEvent<"u"&&Kn(e,CustomEvent)&&(t.detail=e.detail),t}else return e}function Em(e){try{return hb(e)?nc(e):Object.prototype.toString.call(e)}catch{return"<unknown>"}}function Cm(e){if(typeof e=="object"&&e!==null){const t={};for(const n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t}else return{}}function Pb(e,t=40){const n=Object.keys(Sm(e));if(n.sort(),!n.length)return"[object has no keys]";if(n[0].length>=t)return ha(n[0],t);for(let r=n.length;r>0;r--){const a=n.slice(0,r).join(", ");if(!(a.length>t))return r===n.length?a:ha(a,t)}return""}function ic(e){return oc(e,new Map)}function oc(e,t){if(Gn(e)){const n=t.get(e);if(n!==void 0)return n;const r={};t.set(e,r);for(const a of Object.keys(e))typeof e[a]<"u"&&(r[a]=oc(e[a],t));return r}if(Array.isArray(e)){const n=t.get(e);if(n!==void 0)return n;const r=[];return t.set(e,r),e.forEach(a=>{r.push(oc(a,t))}),r}return e}const $m=50,_m=/\(error: (.*)\)/;function jm(...e){const t=e.sort((n,r)=>n[0]-r[0]).map(n=>n[1]);return(n,r=0)=>{const a=[],i=n.split(`
43
- `);for(let o=r;o<i.length;o++){const s=i[o];if(s.length>1024)continue;const l=_m.test(s)?s.replace(_m,"$1"):s;if(!l.match(/\S*Error: /)){for(const u of t){const p=u(l);if(p){a.push(p);break}}if(a.length>=$m)break}}return Tb(a)}}function Nb(e){return Array.isArray(e)?jm(...e):e}function Tb(e){if(!e.length)return[];const t=e.slice(0,$m),n=t[t.length-1].function;n&&/sentryWrapped/.test(n)&&t.pop(),t.reverse();const r=t[t.length-1].function;return r&&/captureMessage|captureException/.test(r)&&t.pop(),t.map(a=>({...a,filename:a.filename||t[t.length-1].filename,function:a.function||"?"}))}const sc="<anonymous>";function Ot(e){try{return!e||typeof e!="function"?sc:e.name||sc}catch{return sc}}const lc=pa();function Pm(){if(!("fetch"in lc))return!1;try{return new Headers,new Request("http://www.example.com"),new Response,!0}catch{return!1}}function cc(e){return e&&/^function fetch\(\)\s+\{\s+\[native code\]\s+\}$/.test(e.toString())}function Ib(){if(!Pm())return!1;if(cc(lc.fetch))return!0;let e=!1;const t=lc.document;if(t&&typeof t.createElement=="function")try{const n=t.createElement("iframe");n.hidden=!0,t.head.appendChild(n),n.contentWindow&&n.contentWindow.fetch&&(e=cc(n.contentWindow.fetch)),t.head.removeChild(n)}catch(n){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.warn("Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ",n)}return e}const Fi=pa();function Db(){const e=Fi.chrome,t=e&&e.app&&e.app.runtime,n="history"in Fi&&!!Fi.history.pushState&&!!Fi.history.replaceState;return!t&&n}const q=pa(),fa="__sentry_xhr_v2__",ga={},Nm={};function Ab(e){if(!Nm[e])switch(Nm[e]=!0,e){case"console":Mb();break;case"dom":Bb();break;case"xhr":Lb();break;case"fetch":zb();break;case"history":Ub();break;case"error":Hb();break;case"unhandledrejection":qb();break;default:(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.warn("unknown instrumentation type:",e);return}}function Yt(e,t){ga[e]=ga[e]||[],ga[e].push(t),Ab(e)}function We(e,t){if(!(!e||!ga[e]))for(const n of ga[e]||[])try{n(t)}catch(r){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.error(`Error while triggering instrumentation handler.
42
+ Add a <Suspense fallback=...> component higher in the tree to provide a loading indicator or placeholder to display.`)}le!==5&&(le=2),l=_l(l,s),d=o;do{switch(d.tag){case 3:i=l,d.flags|=4096,t&=-t,d.lanes|=t;var C=Hp(d,i,t);sp(d,C);break e;case 1:i=l;var S=d.type,$=d.stateNode;if(!(d.flags&64)&&(typeof S.getDerivedStateFromError=="function"||$!==null&&typeof $.componentDidCatch=="function"&&(rt===null||!rt.has($)))){d.flags|=4096,t&=-t,d.lanes|=t;var T=qp(d,i,t);sp(d,T);break e}}d=d.return}while(d!==null)}om(n)}catch(j){t=j,te===n&&n!==null&&(te=n=n.return);continue}break}while(1)}function am(){var e=_i.current;return _i.current=Ci,e===null?Ci:e}function ca(e,t){var n=D;D|=16;var r=am();ke===e&&ye===t||qn(e,t);do try{Jy();break}catch(a){rm(e,a)}while(1);if(sl(),D=n,_i.current=r,te!==null)throw Error(E(261));return ke=null,ye=0,le}function Jy(){for(;te!==null;)im(te)}function Qy(){for(;te!==null&&!Iy();)im(te)}function im(e){var t=cm(e.alternate,e,an);e.memoizedProps=e.pendingProps,t===null?om(e):te=t,Il.current=null}function om(e){var t=e;do{var n=t.alternate;if(e=t.return,t.flags&2048){if(n=Yy(t),n!==null){n.flags&=2047,te=n;return}e!==null&&(e.firstEffect=e.lastEffect=null,e.flags|=2048)}else{if(n=Fy(n,t,an),n!==null){te=n;return}if(n=t,n.tag!==24&&n.tag!==23||n.memoizedState===null||an&1073741824||!(n.mode&4)){for(var r=0,a=n.child;a!==null;)r|=a.lanes|a.childLanes,a=a.sibling;n.childLanes=r}e!==null&&!(e.flags&2048)&&(e.firstEffect===null&&(e.firstEffect=t.firstEffect),t.lastEffect!==null&&(e.lastEffect!==null&&(e.lastEffect.nextEffect=t.firstEffect),e.lastEffect=t.lastEffect),1<t.flags&&(e.lastEffect!==null?e.lastEffect.nextEffect=t:e.firstEffect=t,e.lastEffect=t))}if(t=t.sibling,t!==null){te=t;return}te=t=e}while(t!==null);le===0&&(le=5)}function on(e){var t=zn();return en(99,Xy.bind(null,e,t)),null}function Xy(e,t){do Rt();while(ia!==null);if(D&48)throw Error(E(327));var n=e.finishedWork;if(n===null)return null;if(e.finishedWork=null,e.finishedLanes=0,n===e.current)throw Error(E(177));e.callbackNode=null;var r=n.lanes|n.childLanes,a=r,i=e.pendingLanes&~a;e.pendingLanes=a,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=a,e.mutableReadLanes&=a,e.entangledLanes&=a,a=e.entanglements;for(var o=e.eventTimes,s=e.expirationTimes;0<i;){var l=31-Ct(i),u=1<<l;a[l]=0,o[l]=-1,s[l]=-1,i&=~u}if(ht!==null&&!(r&24)&&ht.has(e)&&ht.delete(e),e===ke&&(te=ke=null,ye=0),1<n.flags?n.lastEffect!==null?(n.lastEffect.nextEffect=n,r=n.firstEffect):r=n:r=n.firstEffect,r!==null){if(a=D,D|=32,Il.current=null,Ks=Ja,o=Td(),qs(o)){if("selectionStart"in o)s={start:o.selectionStart,end:o.selectionEnd};else e:if(s=(s=o.ownerDocument)&&s.defaultView||window,(u=s.getSelection&&s.getSelection())&&u.rangeCount!==0){s=u.anchorNode,i=u.anchorOffset,l=u.focusNode,u=u.focusOffset;try{s.nodeType,l.nodeType}catch{s=null;break e}var p=0,m=-1,d=-1,y=0,b=0,x=o,f=null;t:for(;;){for(var h;x!==s||i!==0&&x.nodeType!==3||(m=p+i),x!==l||u!==0&&x.nodeType!==3||(d=p+u),x.nodeType===3&&(p+=x.nodeValue.length),(h=x.firstChild)!==null;)f=x,x=h;for(;;){if(x===o)break t;if(f===s&&++y===i&&(m=p),f===l&&++b===u&&(d=p),(h=x.nextSibling)!==null)break;x=f,f=x.parentNode}x=h}s=m===-1||d===-1?null:{start:m,end:d}}else s=null;s=s||{start:0,end:0}}else s=null;Js={focusedElem:o,selectionRange:s},Ja=!1,la=null,Ii=!1,P=r;do try{Zy()}catch(j){if(P===null)throw Error(E(330));Lt(P,j),P=P.nextEffect}while(P!==null);la=null,P=r;do try{for(o=e;P!==null;){var g=P.flags;if(g&16&&Er(P.stateNode,""),g&128){var w=P.alternate;if(w!==null){var k=w.ref;k!==null&&(typeof k=="function"?k(null):k.current=null)}}switch(g&1038){case 2:Qp(P),P.flags&=-3;break;case 6:Qp(P),P.flags&=-3,Tl(P.alternate,P);break;case 1024:P.flags&=-1025;break;case 1028:P.flags&=-1025,Tl(P.alternate,P);break;case 4:Tl(P.alternate,P);break;case 8:s=P,Xp(o,s);var C=s.alternate;Kp(s),C!==null&&Kp(C)}P=P.nextEffect}}catch(j){if(P===null)throw Error(E(330));Lt(P,j),P=P.nextEffect}while(P!==null);if(k=Js,w=Td(),g=k.focusedElem,o=k.selectionRange,w!==g&&g&&g.ownerDocument&&Nd(g.ownerDocument.documentElement,g)){for(o!==null&&qs(g)&&(w=o.start,k=o.end,k===void 0&&(k=w),"selectionStart"in g?(g.selectionStart=w,g.selectionEnd=Math.min(k,g.value.length)):(k=(w=g.ownerDocument||document)&&w.defaultView||window,k.getSelection&&(k=k.getSelection(),s=g.textContent.length,C=Math.min(o.start,s),o=o.end===void 0?C:Math.min(o.end,s),!k.extend&&C>o&&(s=o,o=C,C=s),s=Pd(g,C),i=Pd(g,o),s&&i&&(k.rangeCount!==1||k.anchorNode!==s.node||k.anchorOffset!==s.offset||k.focusNode!==i.node||k.focusOffset!==i.offset)&&(w=w.createRange(),w.setStart(s.node,s.offset),k.removeAllRanges(),C>o?(k.addRange(w),k.extend(i.node,i.offset)):(w.setEnd(i.node,i.offset),k.addRange(w)))))),w=[],k=g;k=k.parentNode;)k.nodeType===1&&w.push({element:k,left:k.scrollLeft,top:k.scrollTop});for(typeof g.focus=="function"&&g.focus(),g=0;g<w.length;g++)k=w[g],k.element.scrollLeft=k.left,k.element.scrollTop=k.top}Ja=!!Ks,Js=Ks=null,e.current=n,P=r;do try{for(g=e;P!==null;){var S=P.flags;if(S&36&&Vy(g,P.alternate,P),S&128){w=void 0;var $=P.ref;if($!==null){var T=P.stateNode;switch(P.tag){case 5:w=T;break;default:w=T}typeof $=="function"?$(w):$.current=w}}P=P.nextEffect}}catch(j){if(P===null)throw Error(E(330));Lt(P,j),P=P.nextEffect}while(P!==null);P=null,Ay(),D=a}else e.current=n;if(At)At=!1,ia=e,oa=t;else for(P=r;P!==null;)t=P.nextEffect,P.nextEffect=null,P.flags&8&&(S=P,S.sibling=null,S.stateNode=null),P=t;if(r=e.pendingLanes,r===0&&(rt=null),r===1?e===Fl?sa++:(sa=0,Fl=e):sa=0,n=n.stateNode,Zt&&typeof Zt.onCommitFiberRoot=="function")try{Zt.onCommitFiberRoot(tl,n,void 0,(n.current.flags&64)===64)}catch{}if(ze(e,fe()),Pi)throw Pi=!1,e=Ll,Ll=null,e;return D&8||Ze(),null}function Zy(){for(;P!==null;){var e=P.alternate;Ii||la===null||(P.flags&8?Qu(P,la)&&(Ii=!0):P.tag===13&&Wy(e,P)&&Qu(P,la)&&(Ii=!0));var t=P.flags;t&256&&qy(e,P),!(t&512)||At||(At=!0,qr(97,function(){return Rt(),null})),P=P.nextEffect}}function Rt(){if(oa!==90){var e=97<oa?97:oa;return oa=90,en(e,tb)}return!1}function eb(e,t){Ul.push(t,e),At||(At=!0,qr(97,function(){return Rt(),null}))}function sm(e,t){Ol.push(t,e),At||(At=!0,qr(97,function(){return Rt(),null}))}function tb(){if(ia===null)return!1;var e=ia;if(ia=null,D&48)throw Error(E(331));var t=D;D|=32;var n=Ol;Ol=[];for(var r=0;r<n.length;r+=2){var a=n[r],i=n[r+1],o=a.destroy;if(a.destroy=void 0,typeof o=="function")try{o()}catch(l){if(i===null)throw Error(E(330));Lt(i,l)}}for(n=Ul,Ul=[],r=0;r<n.length;r+=2){a=n[r],i=n[r+1];try{var s=a.create;a.destroy=s()}catch(l){if(i===null)throw Error(E(330));Lt(i,l)}}for(s=e.current.firstEffect;s!==null;)e=s.nextEffect,s.nextEffect=null,s.flags&8&&(s.sibling=null,s.stateNode=null),s=e;return D=t,Ze(),!0}function lm(e,t,n){t=_l(n,t),t=Hp(e,t,1),It(e,t),t=Ne(),e=Di(e,1),e!==null&&(Ka(e,1,t),ze(e,t))}function Lt(e,t){if(e.tag===3)lm(e,e,t);else for(var n=e.return;n!==null;){if(n.tag===3){lm(n,e,t);break}else if(n.tag===1){var r=n.stateNode;if(typeof n.type.getDerivedStateFromError=="function"||typeof r.componentDidCatch=="function"&&(rt===null||!rt.has(r))){e=_l(t,e);var a=qp(n,e,1);if(It(n,a),a=Ne(),n=Di(n,1),n!==null)Ka(n,1,a),ze(n,a);else if(typeof r.componentDidCatch=="function"&&(rt===null||!rt.has(r)))try{r.componentDidCatch(t,e)}catch{}break}}n=n.return}}function nb(e,t,n){var r=e.pingCache;r!==null&&r.delete(t),t=Ne(),e.pingedLanes|=e.suspendedLanes&n,ke===e&&(ye&n)===n&&(le===4||le===3&&(ye&62914560)===ye&&500>fe()-zl?qn(e,0):Al|=n),ze(e,t)}function rb(e,t){var n=e.stateNode;n!==null&&n.delete(t),t=0,t===0&&(t=e.mode,t&2?t&4?(ft===0&&(ft=Fn),t=$n(62914560&~ft),t===0&&(t=4194304)):t=zn()===99?1:2:t=1),n=Ne(),e=Di(e,t),e!==null&&(Ka(e,t,n),ze(e,n))}var cm;cm=function(e,t,n){var r=t.lanes;if(e!==null)if(e.memoizedProps!==t.pendingProps||Ee.current)qe=!0;else if(n&r)qe=!!(e.flags&16384);else{switch(qe=!1,t.tag){case 3:Ap(t),hl();break;case 5:fp(t);break;case 1:Ce(t.type)&&li(t);break;case 4:dl(t,t.stateNode.containerInfo);break;case 10:r=t.memoizedProps.value;var a=t.type._context;K(di,a._currentValue),a._currentValue=r;break;case 13:if(t.memoizedState!==null)return n&t.child.childLanes?Mp(e,t,n):(K(J,J.current&1),t=mt(e,t,n),t!==null?t.sibling:null);K(J,J.current&1);break;case 19:if(r=(n&t.childLanes)!==0,e.flags&64){if(r)return Op(e,t,n);t.flags|=64}if(a=t.memoizedState,a!==null&&(a.rendering=null,a.tail=null,a.lastEffect=null),K(J,J.current),r)break;return null;case 23:case 24:return t.lanes=0,xl(e,t,n)}return mt(e,t,n)}else qe=!1;switch(t.lanes=0,t.tag){case 2:if(r=t.type,e!==null&&(e.alternate=null,t.alternate=null,t.flags|=2),e=t.pendingProps,a=Mn(t,he.current),Ln(t,n),a=yl(null,t,r,e,a,n),t.flags|=1,typeof a=="object"&&a!==null&&typeof a.render=="function"&&a.$$typeof===void 0){if(t.tag=1,t.memoizedState=null,t.updateQueue=null,Ce(r)){var i=!0;li(t)}else i=!1;t.memoizedState=a.state!==null&&a.state!==void 0?a.state:null,cl(t);var o=r.getDerivedStateFromProps;typeof o=="function"&&hi(t,r,o,e),a.updater=fi,t.stateNode=a,a._reactInternals=t,ul(t,r,e,n),t=El(null,t,r,!0,i,n)}else t.tag=0,_e(null,t,a,n),t=t.child;return t;case 16:a=t.elementType;e:{switch(e!==null&&(e.alternate=null,t.alternate=null,t.flags|=2),e=t.pendingProps,i=a._init,a=i(a._payload),t.type=a,i=t.tag=ib(a),e=He(a,e),i){case 0:t=Sl(null,t,a,e,n);break e;case 1:t=Dp(null,t,a,e,n);break e;case 11:t=Pp(null,t,a,e,n);break e;case 14:t=Np(null,t,a,He(a.type,e),r,n);break e}throw Error(E(306,a,""))}return t;case 0:return r=t.type,a=t.pendingProps,a=t.elementType===r?a:He(r,a),Sl(e,t,r,a,n);case 1:return r=t.type,a=t.pendingProps,a=t.elementType===r?a:He(r,a),Dp(e,t,r,a,n);case 3:if(Ap(t),r=t.updateQueue,e===null||r===null)throw Error(E(282));if(r=t.pendingProps,a=t.memoizedState,a=a!==null?a.element:null,op(e,t),Vr(t,r,null,n),r=t.memoizedState.element,r===a)hl(),t=mt(e,t,n);else{if(a=t.stateNode,(i=a.hydrate)&&(Dt=Tn(t.stateNode.containerInfo.firstChild),pt=t,i=tt=!0),i){if(e=a.mutableSourceEagerHydrationData,e!=null)for(a=0;a<e.length;a+=2)i=e[a],i._workInProgressVersionPrimary=e[a+1],On.push(i);for(n=hp(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|1024,n=n.sibling}else _e(e,t,r,n),hl();t=t.child}return t;case 5:return fp(t),e===null&&ml(t),r=t.type,a=t.pendingProps,i=e!==null?e.memoizedProps:null,o=a.children,Qs(r,a)?o=null:i!==null&&Qs(r,i)&&(t.flags|=16),Ip(e,t),_e(e,t,o,n),t.child;case 6:return e===null&&ml(t),null;case 13:return Mp(e,t,n);case 4:return dl(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=bi(t,null,r,n):_e(e,t,r,n),t.child;case 11:return r=t.type,a=t.pendingProps,a=t.elementType===r?a:He(r,a),Pp(e,t,r,a,n);case 7:return _e(e,t,t.pendingProps,n),t.child;case 8:return _e(e,t,t.pendingProps.children,n),t.child;case 12:return _e(e,t,t.pendingProps.children,n),t.child;case 10:e:{r=t.type._context,a=t.pendingProps,o=t.memoizedProps,i=a.value;var s=t.type._context;if(K(di,s._currentValue),s._currentValue=i,o!==null)if(s=o.value,i=De(s,i)?0:(typeof r._calculateChangedBits=="function"?r._calculateChangedBits(s,i):1073741823)|0,i===0){if(o.children===a.children&&!Ee.current){t=mt(e,t,n);break e}}else for(s=t.child,s!==null&&(s.return=t);s!==null;){var l=s.dependencies;if(l!==null){o=s.child;for(var u=l.firstContext;u!==null;){if(u.context===r&&u.observedBits&i){s.tag===1&&(u=Tt(-1,n&-n),u.tag=2,It(s,u)),s.lanes|=n,u=s.alternate,u!==null&&(u.lanes|=n),ip(s.return,n),l.lanes|=n;break}u=u.next}}else o=s.tag===10&&s.type===t.type?null:s.child;if(o!==null)o.return=s;else for(o=s;o!==null;){if(o===t){o=null;break}if(s=o.sibling,s!==null){s.return=o.return,o=s;break}o=o.return}s=o}_e(e,t,a.children,n),t=t.child}return t;case 9:return a=t.type,i=t.pendingProps,r=i.children,Ln(t,n),a=Ae(a,i.unstable_observedBits),r=r(a),t.flags|=1,_e(e,t,r,n),t.child;case 14:return a=t.type,i=He(a,t.pendingProps),i=He(a.type,i),Np(e,t,a,i,r,n);case 15:return Tp(e,t,t.type,t.pendingProps,r,n);case 17:return r=t.type,a=t.pendingProps,a=t.elementType===r?a:He(r,a),e!==null&&(e.alternate=null,t.alternate=null,t.flags|=2),t.tag=1,Ce(r)?(e=!0,li(t)):e=!1,Ln(t,n),dp(t,r,a),ul(t,r,a,n),El(null,t,r,!0,e,n);case 19:return Op(e,t,n);case 23:return xl(e,t,n);case 24:return xl(e,t,n)}throw Error(E(156,t.tag))};function ab(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.flags=0,this.lastEffect=this.firstEffect=this.nextEffect=null,this.childLanes=this.lanes=0,this.alternate=null}function Re(e,t,n,r){return new ab(e,t,n,r)}function Hl(e){return e=e.prototype,!(!e||!e.isReactComponent)}function ib(e){if(typeof e=="function")return Hl(e)?1:0;if(e!=null){if(e=e.$$typeof,e===za)return 11;if(e===La)return 14}return 2}function Ut(e,t){var n=e.alternate;return n===null?(n=Re(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.nextEffect=null,n.firstEffect=null,n.lastEffect=null),n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function Mi(e,t,n,r,a,i){var o=2;if(r=e,typeof e=="function")Hl(e)&&(o=1);else if(typeof e=="string")o=5;else e:switch(e){case kt:return Vn(n.children,a,i,t);case Pu:o=8,a|=16;break;case es:o=8,a|=1;break;case kr:return e=Re(12,n,t,a|8),e.elementType=kr,e.type=kr,e.lanes=i,e;case wr:return e=Re(13,n,t,a),e.type=wr,e.elementType=wr,e.lanes=i,e;case Ra:return e=Re(19,n,t,a),e.elementType=Ra,e.lanes=i,e;case os:return ql(n,a,i,t);case ss:return e=Re(24,n,t,a),e.elementType=ss,e.lanes=i,e;default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case ts:o=10;break e;case ns:o=9;break e;case za:o=11;break e;case La:o=14;break e;case rs:o=16,r=null;break e;case as:o=22;break e}throw Error(E(130,e==null?e:typeof e,""))}return t=Re(o,n,t,a),t.elementType=e,t.type=r,t.lanes=i,t}function Vn(e,t,n,r){return e=Re(7,e,r,t),e.lanes=n,e}function ql(e,t,n,r){return e=Re(23,e,r,t),e.elementType=os,e.lanes=n,e}function Vl(e,t,n){return e=Re(6,e,null,t),e.lanes=n,e}function Wl(e,t,n){return t=Re(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function ob(e,t,n){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.pendingContext=this.context=null,this.hydrate=n,this.callbackNode=null,this.callbackPriority=0,this.eventTimes=Ds(0),this.expirationTimes=Ds(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Ds(0),this.mutableSourceEagerHydrationData=null}function sb(e,t,n){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:Gt,key:r==null?null:""+r,children:e,containerInfo:t,implementation:n}}function zi(e,t,n,r){var a=t.current,i=Ne(),o=Mt(a);e:if(n){n=n._reactInternals;t:{if(Jt(n)!==n||n.tag!==1)throw Error(E(170));var s=n;do{switch(s.tag){case 3:s=s.stateNode.context;break t;case 1:if(Ce(s.type)){s=s.stateNode.__reactInternalMemoizedMergedChildContext;break t}}s=s.return}while(s!==null);throw Error(E(171))}if(n.tag===1){var l=n.type;if(Ce(l)){n=Kd(n,l,s);break e}}n=s}else n=Pt;return t.context===null?t.context=n:t.pendingContext=n,t=Tt(i,o),t.payload={element:e},r=r===void 0?null:r,r!==null&&(t.callback=r),It(a,t),zt(a,o,i),o}function Gl(e){if(e=e.current,!e.child)return null;switch(e.child.tag){case 5:return e.child.stateNode;default:return e.child.stateNode}}function um(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var n=e.retryLane;e.retryLane=n!==0&&n<t?n:t}}function Kl(e,t){um(e,t),(e=e.alternate)&&um(e,t)}function lb(){return null}function Jl(e,t,n){var r=n!=null&&n.hydrationOptions!=null&&n.hydrationOptions.mutableSources||null;if(n=new ob(e,t,n!=null&&n.hydrate===!0),t=Re(3,null,null,t===2?7:t===1?3:0),n.current=t,t.stateNode=n,cl(t),e[In]=n.current,Ld(e.nodeType===8?e.parentNode:e),r)for(e=0;e<r.length;e++){t=r[e];var a=t._getVersion;a=a(t._source),n.mutableSourceEagerHydrationData==null?n.mutableSourceEagerHydrationData=[t,a]:n.mutableSourceEagerHydrationData.push(t,a)}this._internalRoot=n}Jl.prototype.render=function(e){zi(e,this._internalRoot,null,null)},Jl.prototype.unmount=function(){var e=this._internalRoot,t=e.containerInfo;zi(null,e,null,function(){t[In]=null})};function ua(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11&&(e.nodeType!==8||e.nodeValue!==" react-mount-point-unstable "))}function cb(e,t){if(t||(t=e?e.nodeType===9?e.documentElement:e.firstChild:null,t=!(!t||t.nodeType!==1||!t.hasAttribute("data-reactroot"))),!t)for(var n;n=e.lastChild;)e.removeChild(n);return new Jl(e,0,t?{hydrate:!0}:void 0)}function Ri(e,t,n,r,a){var i=n._reactRootContainer;if(i){var o=i._internalRoot;if(typeof a=="function"){var s=a;a=function(){var u=Gl(o);s.call(u)}}zi(t,o,e,a)}else{if(i=n._reactRootContainer=cb(n,r),o=i._internalRoot,typeof a=="function"){var l=a;a=function(){var u=Gl(o);l.call(u)}}nm(function(){zi(t,o,e,a)})}return Gl(o)}Xu=function(e){if(e.tag===13){var t=Ne();zt(e,4,t),Kl(e,4)}},_s=function(e){if(e.tag===13){var t=Ne();zt(e,67108864,t),Kl(e,67108864)}},Zu=function(e){if(e.tag===13){var t=Ne(),n=Mt(e);zt(e,n,t),Kl(e,n)}},ed=function(e,t){return t()},ks=function(e,t,n){switch(t){case"input":if(ds(e,n),t=n.name,n.type==="radio"&&t!=null){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll("input[name="+JSON.stringify(""+t)+'][type="radio"]'),t=0;t<n.length;t++){var r=n[t];if(r!==e&&r.form===e.form){var a=oi(r);if(!a)throw Error(E(90));Iu(r),ds(r,a)}}}break;case"textarea":Ru(e,n);break;case"select":t=n.value,t!=null&&wn(e,!!n.multiple,t,!1)}},ws=tm,Vu=function(e,t,n,r,a){var i=D;D|=4;try{return en(98,e.bind(null,t,n,r,a))}finally{D=i,D===0&&(Bn(),Ze())}},xs=function(){!(D&49)&&(Ky(),Rt())},Wu=function(e,t){var n=D;D|=2;try{return e(t)}finally{D=n,D===0&&(Bn(),Ze())}};function dm(e,t){var n=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!ua(t))throw Error(E(200));return sb(e,t,null,n)}var ub={Events:[Hr,Dn,oi,Hu,qu,Rt,{current:!1}]},da={findFiberByHostInstance:Qt,bundleType:0,version:"17.0.2",rendererPackageName:"react-dom"},db={bundleType:da.bundleType,version:da.version,rendererPackageName:da.rendererPackageName,rendererConfig:da.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:Wt.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return e=Ju(e),e===null?null:e.stateNode},findFiberByHostInstance:da.findFiberByHostInstance||lb,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var Li=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!Li.isDisabled&&Li.supportsFiber)try{tl=Li.inject(db),Zt=Li}catch{}}Ie.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=ub,Ie.createPortal=dm,Ie.findDOMNode=function(e){if(e==null)return null;if(e.nodeType===1)return e;var t=e._reactInternals;if(t===void 0)throw typeof e.render=="function"?Error(E(188)):Error(E(268,Object.keys(e)));return e=Ju(t),e=e===null?null:e.stateNode,e},Ie.flushSync=function(e,t){var n=D;if(n&48)return e(t);D|=1;try{if(e)return en(99,e.bind(null,t))}finally{D=n,Ze()}},Ie.hydrate=function(e,t,n){if(!ua(t))throw Error(E(200));return Ri(null,e,t,!0,n)},Ie.render=function(e,t,n){if(!ua(t))throw Error(E(200));return Ri(null,e,t,!1,n)},Ie.unmountComponentAtNode=function(e){if(!ua(e))throw Error(E(40));return e._reactRootContainer?(nm(function(){Ri(null,null,e,!1,function(){e._reactRootContainer=null,e[In]=null})}),!0):!1},Ie.unstable_batchedUpdates=tm,Ie.unstable_createPortal=function(e,t){return dm(e,t,2<arguments.length&&arguments[2]!==void 0?arguments[2]:null)},Ie.unstable_renderSubtreeIntoContainer=function(e,t,n,r){if(!ua(n))throw Error(E(200));if(e==null||e._reactInternals===void 0)throw Error(E(38));return Ri(e,t,n,!1,r)},Ie.version="17.0.2";function pm(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(pm)}catch(e){console.error(e)}}pm(),xu.exports=Ie;var Ql=xu.exports;const pb=je(Ql),V1="",mm=Object.prototype.toString;function Xl(e){switch(mm.call(e)){case"[object Error]":case"[object Exception]":case"[object DOMException]":return!0;default:return Kn(e,Error)}}function Wn(e,t){return mm.call(e)===`[object ${t}]`}function hm(e){return Wn(e,"ErrorEvent")}function fm(e){return Wn(e,"DOMError")}function mb(e){return Wn(e,"DOMException")}function sn(e){return Wn(e,"String")}function gm(e){return e===null||typeof e!="object"&&typeof e!="function"}function Gn(e){return Wn(e,"Object")}function Zl(e){return typeof Event<"u"&&Kn(e,Event)}function hb(e){return typeof Element<"u"&&Kn(e,Element)}function fb(e){return Wn(e,"RegExp")}function ec(e){return!!(e&&e.then&&typeof e.then=="function")}function gb(e){return Gn(e)&&"nativeEvent"in e&&"preventDefault"in e&&"stopPropagation"in e}function yb(e){return typeof e=="number"&&e!==e}function Kn(e,t){try{return e instanceof t}catch{return!1}}function Ui(e){return e&&e.Math==Math?e:void 0}const Le=typeof globalThis=="object"&&Ui(globalThis)||typeof window=="object"&&Ui(window)||typeof self=="object"&&Ui(self)||typeof global=="object"&&Ui(global)||function(){return this}()||{};function pa(){return Le}function tc(e,t,n){const r=n||Le,a=r.__SENTRY__=r.__SENTRY__||{};return a[e]||(a[e]=t())}const bb=pa(),vb=80;function nc(e,t={}){try{let n=e;const r=5,a=[];let i=0,o=0;const s=" > ",l=s.length;let u;const p=Array.isArray(t)?t:t.keyAttrs,m=!Array.isArray(t)&&t.maxStringLength||vb;for(;n&&i++<r&&(u=kb(n,p),!(u==="html"||i>1&&o+a.length*l+u.length>=m));)a.push(u),o+=u.length,n=n.parentNode;return a.reverse().join(s)}catch{return"<unknown>"}}function kb(e,t){const n=e,r=[];let a,i,o,s,l;if(!n||!n.tagName)return"";r.push(n.tagName.toLowerCase());const u=t&&t.length?t.filter(m=>n.getAttribute(m)).map(m=>[m,n.getAttribute(m)]):null;if(u&&u.length)u.forEach(m=>{r.push(`[${m[0]}="${m[1]}"]`)});else if(n.id&&r.push(`#${n.id}`),a=n.className,a&&sn(a))for(i=a.split(/\s+/),l=0;l<i.length;l++)r.push(`.${i[l]}`);const p=["aria-label","type","name","title","alt"];for(l=0;l<p.length;l++)o=p[l],s=n.getAttribute(o),s&&r.push(`[${o}="${s}"]`);return r.join("")}function wb(){try{return bb.document.location.href}catch{return""}}const xb="Sentry Logger ",Oi=["debug","info","warn","error","log","assert","trace"];function ym(e){if(!("console"in Le))return e();const t=Le.console,n={};Oi.forEach(r=>{const a=t[r]&&t[r].__sentry_original__;r in t&&a&&(n[r]=t[r],t[r]=a)});try{return e()}finally{Object.keys(n).forEach(r=>{t[r]=n[r]})}}function bm(){let e=!1;const t={enable:()=>{e=!0},disable:()=>{e=!1}};return typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__?Oi.forEach(n=>{t[n]=(...r)=>{e&&ym(()=>{Le.console[n](`${xb}[${n}]:`,...r)})}}):Oi.forEach(n=>{t[n]=()=>{}}),t}let I;typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__?I=tc("logger",bm):I=bm();const Sb=/^(?:(\w+):)\/\/(?:(\w+)(?::(\w+)?)?@)([\w.-]+)(?::(\d+))?\/(.+)/;function Eb(e){return e==="http"||e==="https"}function ma(e,t=!1){const{host:n,path:r,pass:a,port:i,projectId:o,protocol:s,publicKey:l}=e;return`${s}://${l}${t&&a?`:${a}`:""}@${n}${i?`:${i}`:""}/${r&&`${r}/`}${o}`}function Cb(e){const t=Sb.exec(e);if(!t){console.error(`Invalid Sentry Dsn: ${e}`);return}const[n,r,a="",i,o="",s]=t.slice(1);let l="",u=s;const p=u.split("/");if(p.length>1&&(l=p.slice(0,-1).join("/"),u=p.pop()),u){const m=u.match(/^\d+/);m&&(u=m[0])}return vm({host:i,pass:a,path:l,projectId:u,port:o,protocol:n,publicKey:r})}function vm(e){return{protocol:e.protocol,publicKey:e.publicKey||"",pass:e.pass||"",host:e.host,port:e.port||"",path:e.path||"",projectId:e.projectId}}function $b(e){if(!(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__))return!0;const{port:t,projectId:n,protocol:r}=e;return["protocol","publicKey","host","projectId"].find(o=>e[o]?!1:(I.error(`Invalid Sentry Dsn: ${o} missing`),!0))?!1:n.match(/^\d+$/)?Eb(r)?t&&isNaN(parseInt(t,10))?(I.error(`Invalid Sentry Dsn: Invalid port ${t}`),!1):!0:(I.error(`Invalid Sentry Dsn: Invalid protocol ${r}`),!1):(I.error(`Invalid Sentry Dsn: Invalid projectId ${n}`),!1)}function km(e){const t=typeof e=="string"?Cb(e):vm(e);if(!(!t||!$b(t)))return t}class Ve extends Error{constructor(t,n="warn"){super(t),this.message=t,this.name=new.target.prototype.constructor.name,Object.setPrototypeOf(this,new.target.prototype),this.logLevel=n}}function ha(e,t=0){return typeof e!="string"||t===0||e.length<=t?e:`${e.slice(0,t)}...`}function wm(e,t){if(!Array.isArray(e))return"";const n=[];for(let r=0;r<e.length;r++){const a=e[r];try{n.push(String(a))}catch{n.push("[value cannot be serialized]")}}return n.join(t)}function _b(e,t,n=!1){return sn(e)?fb(t)?t.test(e):sn(t)?n?e===t:e.includes(t):!1:!1}function Fi(e,t=[],n=!1){return t.some(r=>_b(e,r,n))}function ce(e,t,n){if(!(t in e))return;const r=e[t],a=n(r);if(typeof a=="function")try{xm(a,r)}catch{}e[t]=a}function rc(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,configurable:!0})}function xm(e,t){const n=t.prototype||{};e.prototype=t.prototype=n,rc(e,"__sentry_original__",t)}function ac(e){return e.__sentry_original__}function jb(e){return Object.keys(e).map(t=>`${encodeURIComponent(t)}=${encodeURIComponent(e[t])}`).join("&")}function Sm(e){if(Xl(e))return{message:e.message,name:e.name,stack:e.stack,...Cm(e)};if(Zl(e)){const t={type:e.type,target:Em(e.target),currentTarget:Em(e.currentTarget),...Cm(e)};return typeof CustomEvent<"u"&&Kn(e,CustomEvent)&&(t.detail=e.detail),t}else return e}function Em(e){try{return hb(e)?nc(e):Object.prototype.toString.call(e)}catch{return"<unknown>"}}function Cm(e){if(typeof e=="object"&&e!==null){const t={};for(const n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t}else return{}}function Pb(e,t=40){const n=Object.keys(Sm(e));if(n.sort(),!n.length)return"[object has no keys]";if(n[0].length>=t)return ha(n[0],t);for(let r=n.length;r>0;r--){const a=n.slice(0,r).join(", ");if(!(a.length>t))return r===n.length?a:ha(a,t)}return""}function ic(e){return oc(e,new Map)}function oc(e,t){if(Gn(e)){const n=t.get(e);if(n!==void 0)return n;const r={};t.set(e,r);for(const a of Object.keys(e))typeof e[a]<"u"&&(r[a]=oc(e[a],t));return r}if(Array.isArray(e)){const n=t.get(e);if(n!==void 0)return n;const r=[];return t.set(e,r),e.forEach(a=>{r.push(oc(a,t))}),r}return e}const $m=50,_m=/\(error: (.*)\)/;function jm(...e){const t=e.sort((n,r)=>n[0]-r[0]).map(n=>n[1]);return(n,r=0)=>{const a=[],i=n.split(`
43
+ `);for(let o=r;o<i.length;o++){const s=i[o];if(s.length>1024)continue;const l=_m.test(s)?s.replace(_m,"$1"):s;if(!l.match(/\S*Error: /)){for(const u of t){const p=u(l);if(p){a.push(p);break}}if(a.length>=$m)break}}return Tb(a)}}function Nb(e){return Array.isArray(e)?jm(...e):e}function Tb(e){if(!e.length)return[];const t=e.slice(0,$m),n=t[t.length-1].function;n&&/sentryWrapped/.test(n)&&t.pop(),t.reverse();const r=t[t.length-1].function;return r&&/captureMessage|captureException/.test(r)&&t.pop(),t.map(a=>({...a,filename:a.filename||t[t.length-1].filename,function:a.function||"?"}))}const sc="<anonymous>";function Ot(e){try{return!e||typeof e!="function"?sc:e.name||sc}catch{return sc}}const lc=pa();function Pm(){if(!("fetch"in lc))return!1;try{return new Headers,new Request("http://www.example.com"),new Response,!0}catch{return!1}}function cc(e){return e&&/^function fetch\(\)\s+\{\s+\[native code\]\s+\}$/.test(e.toString())}function Ib(){if(!Pm())return!1;if(cc(lc.fetch))return!0;let e=!1;const t=lc.document;if(t&&typeof t.createElement=="function")try{const n=t.createElement("iframe");n.hidden=!0,t.head.appendChild(n),n.contentWindow&&n.contentWindow.fetch&&(e=cc(n.contentWindow.fetch)),t.head.removeChild(n)}catch(n){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.warn("Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ",n)}return e}const Yi=pa();function Db(){const e=Yi.chrome,t=e&&e.app&&e.app.runtime,n="history"in Yi&&!!Yi.history.pushState&&!!Yi.history.replaceState;return!t&&n}const q=pa(),fa="__sentry_xhr_v2__",ga={},Nm={};function Ab(e){if(!Nm[e])switch(Nm[e]=!0,e){case"console":Mb();break;case"dom":Bb();break;case"xhr":Lb();break;case"fetch":zb();break;case"history":Ub();break;case"error":Hb();break;case"unhandledrejection":qb();break;default:(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.warn("unknown instrumentation type:",e);return}}function Ft(e,t){ga[e]=ga[e]||[],ga[e].push(t),Ab(e)}function We(e,t){if(!(!e||!ga[e]))for(const n of ga[e]||[])try{n(t)}catch(r){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.error(`Error while triggering instrumentation handler.
44
44
  Type: ${e}
45
45
  Name: ${Ot(n)}
46
- Error:`,r)}}function Mb(){"console"in q&&Oi.forEach(function(e){e in q.console&&ce(q.console,e,function(t){return function(...n){We("console",{args:n,level:e}),t&&t.apply(q.console,n)}})})}function zb(){Ib()&&ce(q,"fetch",function(e){return function(...t){const{method:n,url:r}=Rb(t),a={args:t,fetchData:{method:n,url:r},startTimestamp:Date.now()};return We("fetch",{...a}),e.apply(q,t).then(i=>(We("fetch",{...a,endTimestamp:Date.now(),response:i}),i),i=>{throw We("fetch",{...a,endTimestamp:Date.now(),error:i}),i})}})}function uc(e,t){return!!e&&typeof e=="object"&&!!e[t]}function Tm(e){return typeof e=="string"?e:e?uc(e,"url")?e.url:e.toString?e.toString():"":""}function Rb(e){if(e.length===0)return{method:"GET",url:""};if(e.length===2){const[n,r]=e;return{url:Tm(n),method:uc(r,"method")?String(r.method).toUpperCase():"GET"}}const t=e[0];return{url:Tm(t),method:uc(t,"method")?String(t.method).toUpperCase():"GET"}}function Lb(){if(!("XMLHttpRequest"in q))return;const e=XMLHttpRequest.prototype;ce(e,"open",function(t){return function(...n){const r=n[1],a=this[fa]={method:sn(n[0])?n[0].toUpperCase():n[0],url:n[1],request_headers:{}};sn(r)&&a.method==="POST"&&r.match(/sentry_key/)&&(this.__sentry_own_request__=!0);const i=()=>{const o=this[fa];if(o&&this.readyState===4){try{o.status_code=this.status}catch{}We("xhr",{args:n,endTimestamp:Date.now(),startTimestamp:Date.now(),xhr:this})}};return"onreadystatechange"in this&&typeof this.onreadystatechange=="function"?ce(this,"onreadystatechange",function(o){return function(...s){return i(),o.apply(this,s)}}):this.addEventListener("readystatechange",i),ce(this,"setRequestHeader",function(o){return function(...s){const[l,u]=s,p=this[fa];return p&&(p.request_headers[l.toLowerCase()]=u),o.apply(this,s)}}),t.apply(this,n)}}),ce(e,"send",function(t){return function(...n){const r=this[fa];return r&&n[0]!==void 0&&(r.body=n[0]),We("xhr",{args:n,startTimestamp:Date.now(),xhr:this}),t.apply(this,n)}})}let Bi;function Ub(){if(!Db())return;const e=q.onpopstate;q.onpopstate=function(...n){const r=q.location.href,a=Bi;if(Bi=r,We("history",{from:a,to:r}),e)try{return e.apply(this,n)}catch{}};function t(n){return function(...r){const a=r.length>2?r[2]:void 0;if(a){const i=Bi,o=String(a);Bi=o,We("history",{from:i,to:o})}return n.apply(this,r)}}ce(q.history,"pushState",t),ce(q.history,"replaceState",t)}const Ob=1e3;let Hi,qi;function Yb(e,t){if(!e||e.type!==t.type)return!0;try{if(e.target!==t.target)return!0}catch{}return!1}function Fb(e){if(e.type!=="keypress")return!1;try{const t=e.target;if(!t||!t.tagName)return!0;if(t.tagName==="INPUT"||t.tagName==="TEXTAREA"||t.isContentEditable)return!1}catch{}return!0}function Im(e,t=!1){return n=>{if(!n||qi===n||Fb(n))return;const r=n.type==="keypress"?"input":n.type;Hi===void 0?(e({event:n,name:r,global:t}),qi=n):Yb(qi,n)&&(e({event:n,name:r,global:t}),qi=n),clearTimeout(Hi),Hi=q.setTimeout(()=>{Hi=void 0},Ob)}}function Bb(){if(!("document"in q))return;const e=We.bind(null,"dom"),t=Im(e,!0);q.document.addEventListener("click",t,!1),q.document.addEventListener("keypress",t,!1),["EventTarget","Node"].forEach(n=>{const r=q[n]&&q[n].prototype;!r||!r.hasOwnProperty||!r.hasOwnProperty("addEventListener")||(ce(r,"addEventListener",function(a){return function(i,o,s){if(i==="click"||i=="keypress")try{const l=this,u=l.__sentry_instrumentation_handlers__=l.__sentry_instrumentation_handlers__||{},p=u[i]=u[i]||{refCount:0};if(!p.handler){const m=Im(e);p.handler=m,a.call(this,i,m,s)}p.refCount++}catch{}return a.call(this,i,o,s)}}),ce(r,"removeEventListener",function(a){return function(i,o,s){if(i==="click"||i=="keypress")try{const l=this,u=l.__sentry_instrumentation_handlers__||{},p=u[i];p&&(p.refCount--,p.refCount<=0&&(a.call(this,i,p.handler,s),p.handler=void 0,delete u[i]),Object.keys(u).length===0&&delete l.__sentry_instrumentation_handlers__)}catch{}return a.call(this,i,o,s)}}))})}let Vi=null;function Hb(){Vi=q.onerror,q.onerror=function(e,t,n,r,a){return We("error",{column:r,error:a,line:n,msg:e,url:t}),Vi&&!Vi.__SENTRY_LOADER__?Vi.apply(this,arguments):!1},q.onerror.__SENTRY_INSTRUMENTED__=!0}let Wi=null;function qb(){Wi=q.onunhandledrejection,q.onunhandledrejection=function(e){return We("unhandledrejection",e),Wi&&!Wi.__SENTRY_LOADER__?Wi.apply(this,arguments):!0},q.onunhandledrejection.__SENTRY_INSTRUMENTED__=!0}function Vb(){const e=typeof WeakSet=="function",t=e?new WeakSet:[];function n(a){if(e)return t.has(a)?!0:(t.add(a),!1);for(let i=0;i<t.length;i++)if(t[i]===a)return!0;return t.push(a),!1}function r(a){if(e)t.delete(a);else for(let i=0;i<t.length;i++)if(t[i]===a){t.splice(i,1);break}}return[n,r]}function Jn(){const e=Le,t=e.crypto||e.msCrypto;if(t&&t.randomUUID)return t.randomUUID().replace(/-/g,"");const n=t&&t.getRandomValues?()=>t.getRandomValues(new Uint8Array(1))[0]:()=>Math.random()*16;return([1e7]+1e3+4e3+8e3+1e11).replace(/[018]/g,r=>(r^(n()&15)>>r/4).toString(16))}function Dm(e){return e.exception&&e.exception.values?e.exception.values[0]:void 0}function Ft(e){const{message:t,event_id:n}=e;if(t)return t;const r=Dm(e);return r?r.type&&r.value?`${r.type}: ${r.value}`:r.type||r.value||n||"<unknown>":n||"<unknown>"}function dc(e,t,n){const r=e.exception=e.exception||{},a=r.values=r.values||[],i=a[0]=a[0]||{};i.value||(i.value=t||""),i.type||(i.type=n||"Error")}function ya(e,t){const n=Dm(e);if(!n)return;const r={type:"generic",handled:!0},a=n.mechanism;if(n.mechanism={...r,...a,...t},t&&"data"in t){const i={...a&&a.data,...t.data};n.mechanism.data=i}}function Am(e){if(e&&e.__sentry_captured__)return!0;try{rc(e,"__sentry_captured__",!0)}catch{}return!1}function Mm(e){return Array.isArray(e)?e:[e]}function Wb(){return typeof __SENTRY_BROWSER_BUNDLE__<"u"&&!!__SENTRY_BROWSER_BUNDLE__}function Gb(){return"npm"}function Kb(){return!Wb()&&Object.prototype.toString.call(typeof process<"u"?process:0)==="[object process]"}function Jb(e,t){return e.require(t)}function Bt(e,t=100,n=1/0){try{return pc("",e,t,n)}catch(r){return{ERROR:`**non-serializable** (${r})`}}}function zm(e,t=3,n=100*1024){const r=Bt(e,t);return ev(r)>n?zm(e,t-1,n):r}function pc(e,t,n=1/0,r=1/0,a=Vb()){const[i,o]=a;if(t==null||["number","boolean","string"].includes(typeof t)&&!yb(t))return t;const s=Qb(e,t);if(!s.startsWith("[object "))return s;if(t.__sentry_skip_normalization__)return t;const l=typeof t.__sentry_override_normalization_depth__=="number"?t.__sentry_override_normalization_depth__:n;if(l===0)return s.replace("object ","");if(i(t))return"[Circular ~]";const u=t;if(u&&typeof u.toJSON=="function")try{const y=u.toJSON();return pc("",y,l-1,r,a)}catch{}const p=Array.isArray(t)?[]:{};let m=0;const d=Sm(t);for(const y in d){if(!Object.prototype.hasOwnProperty.call(d,y))continue;if(m>=r){p[y]="[MaxProperties ~]";break}const b=d[y];p[y]=pc(y,b,l-1,r,a),m++}return o(t),p}function Qb(e,t){try{if(e==="domain"&&t&&typeof t=="object"&&t._events)return"[Domain]";if(e==="domainEmitter")return"[DomainEmitter]";if(typeof global<"u"&&t===global)return"[Global]";if(typeof window<"u"&&t===window)return"[Window]";if(typeof document<"u"&&t===document)return"[Document]";if(gb(t))return"[SyntheticEvent]";if(typeof t=="number"&&t!==t)return"[NaN]";if(typeof t=="function")return`[Function: ${Ot(t)}]`;if(typeof t=="symbol")return`[${String(t)}]`;if(typeof t=="bigint")return`[BigInt: ${String(t)}]`;const n=Xb(t);return/^HTML(\w*)Element$/.test(n)?`[HTMLElement: ${n}]`:`[object ${n}]`}catch(n){return`**non-serializable** (${n})`}}function Xb(e){const t=Object.getPrototypeOf(e);return t?t.constructor.name:"null prototype"}function Zb(e){return~-encodeURI(e).split(/%..|./).length}function ev(e){return Zb(JSON.stringify(e))}var gt;(function(e){e[e.PENDING=0]="PENDING";const n=1;e[e.RESOLVED=n]="RESOLVED";const r=2;e[e.REJECTED=r]="REJECTED"})(gt||(gt={}));function ln(e){return new we(t=>{t(e)})}function Gi(e){return new we((t,n)=>{n(e)})}class we{__init(){this._state=gt.PENDING}__init2(){this._handlers=[]}constructor(t){we.prototype.__init.call(this),we.prototype.__init2.call(this),we.prototype.__init3.call(this),we.prototype.__init4.call(this),we.prototype.__init5.call(this),we.prototype.__init6.call(this);try{t(this._resolve,this._reject)}catch(n){this._reject(n)}}then(t,n){return new we((r,a)=>{this._handlers.push([!1,i=>{if(!t)r(i);else try{r(t(i))}catch(o){a(o)}},i=>{if(!n)a(i);else try{r(n(i))}catch(o){a(o)}}]),this._executeHandlers()})}catch(t){return this.then(n=>n,t)}finally(t){return new we((n,r)=>{let a,i;return this.then(o=>{i=!1,a=o,t&&t()},o=>{i=!0,a=o,t&&t()}).then(()=>{if(i){r(a);return}n(a)})})}__init3(){this._resolve=t=>{this._setResult(gt.RESOLVED,t)}}__init4(){this._reject=t=>{this._setResult(gt.REJECTED,t)}}__init5(){this._setResult=(t,n)=>{if(this._state===gt.PENDING){if(ec(n)){n.then(this._resolve,this._reject);return}this._state=t,this._value=n,this._executeHandlers()}}}__init6(){this._executeHandlers=()=>{if(this._state===gt.PENDING)return;const t=this._handlers.slice();this._handlers=[],t.forEach(n=>{n[0]||(this._state===gt.RESOLVED&&n[1](this._value),this._state===gt.REJECTED&&n[2](this._value),n[0]=!0)})}}}function tv(e){const t=[];function n(){return e===void 0||t.length<e}function r(o){return t.splice(t.indexOf(o),1)[0]}function a(o){if(!n())return Gi(new Ve("Not adding Promise because buffer limit was reached."));const s=o();return t.indexOf(s)===-1&&t.push(s),s.then(()=>r(s)).then(null,()=>r(s).then(null,()=>{})),s}function i(o){return new we((s,l)=>{let u=t.length;if(!u)return s(!0);const p=setTimeout(()=>{o&&o>0&&s(!1)},o);t.forEach(m=>{ln(m).then(()=>{--u||(clearTimeout(p),s(!0))},l)})})}return{$:t,add:a,drain:i}}function mc(e){if(!e)return{};const t=e.match(/^(([^:/?#]+):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?$/);if(!t)return{};const n=t[6]||"",r=t[8]||"";return{host:t[4],path:t[5],protocol:t[2],search:n,hash:r,relative:t[5]+n+r}}const nv=["fatal","error","warning","log","info","debug"];function rv(e){return e==="warn"?"warning":nv.includes(e)?e:"log"}const Rm=pa(),hc={nowSeconds:()=>Date.now()/1e3};function av(){const{performance:e}=Rm;if(!e||!e.now)return;const t=Date.now()-e.now();return{now:()=>e.now(),timeOrigin:t}}function iv(){try{return Jb(module,"perf_hooks").performance}catch{return}}const fc=Kb()?iv():av(),Lm=fc===void 0?hc:{nowSeconds:()=>(fc.timeOrigin+fc.now())/1e3},Ki=hc.nowSeconds.bind(hc),Um=Lm.nowSeconds.bind(Lm);(()=>{const{performance:e}=Rm;if(!e||!e.now)return;const t=3600*1e3,n=e.now(),r=Date.now(),a=e.timeOrigin?Math.abs(e.timeOrigin+n-r):t,i=a<t,o=e.timing&&e.timing.navigationStart,l=typeof o=="number"?Math.abs(o+n-r):t,u=l<t;return i||u?a<=l?e.timeOrigin:o:r})();function ba(e,t=[]){return[e,t]}function ov(e,t){const[n,r]=e;return[n,[...r,t]]}function Om(e,t){const n=e[1];for(const r of n){const a=r[0].type;if(t(r,a))return!0}return!1}function gc(e,t){return(t||new TextEncoder).encode(e)}function sv(e,t){const[n,r]=e;let a=JSON.stringify(n);function i(o){typeof a=="string"?a=typeof o=="string"?a+o:[gc(a,t),o]:a.push(typeof o=="string"?gc(o,t):o)}for(const o of r){const[s,l]=o;if(i(`
46
+ Error:`,r)}}function Mb(){"console"in q&&Oi.forEach(function(e){e in q.console&&ce(q.console,e,function(t){return function(...n){We("console",{args:n,level:e}),t&&t.apply(q.console,n)}})})}function zb(){Ib()&&ce(q,"fetch",function(e){return function(...t){const{method:n,url:r}=Rb(t),a={args:t,fetchData:{method:n,url:r},startTimestamp:Date.now()};return We("fetch",{...a}),e.apply(q,t).then(i=>(We("fetch",{...a,endTimestamp:Date.now(),response:i}),i),i=>{throw We("fetch",{...a,endTimestamp:Date.now(),error:i}),i})}})}function uc(e,t){return!!e&&typeof e=="object"&&!!e[t]}function Tm(e){return typeof e=="string"?e:e?uc(e,"url")?e.url:e.toString?e.toString():"":""}function Rb(e){if(e.length===0)return{method:"GET",url:""};if(e.length===2){const[n,r]=e;return{url:Tm(n),method:uc(r,"method")?String(r.method).toUpperCase():"GET"}}const t=e[0];return{url:Tm(t),method:uc(t,"method")?String(t.method).toUpperCase():"GET"}}function Lb(){if(!("XMLHttpRequest"in q))return;const e=XMLHttpRequest.prototype;ce(e,"open",function(t){return function(...n){const r=n[1],a=this[fa]={method:sn(n[0])?n[0].toUpperCase():n[0],url:n[1],request_headers:{}};sn(r)&&a.method==="POST"&&r.match(/sentry_key/)&&(this.__sentry_own_request__=!0);const i=()=>{const o=this[fa];if(o&&this.readyState===4){try{o.status_code=this.status}catch{}We("xhr",{args:n,endTimestamp:Date.now(),startTimestamp:Date.now(),xhr:this})}};return"onreadystatechange"in this&&typeof this.onreadystatechange=="function"?ce(this,"onreadystatechange",function(o){return function(...s){return i(),o.apply(this,s)}}):this.addEventListener("readystatechange",i),ce(this,"setRequestHeader",function(o){return function(...s){const[l,u]=s,p=this[fa];return p&&(p.request_headers[l.toLowerCase()]=u),o.apply(this,s)}}),t.apply(this,n)}}),ce(e,"send",function(t){return function(...n){const r=this[fa];return r&&n[0]!==void 0&&(r.body=n[0]),We("xhr",{args:n,startTimestamp:Date.now(),xhr:this}),t.apply(this,n)}})}let Bi;function Ub(){if(!Db())return;const e=q.onpopstate;q.onpopstate=function(...n){const r=q.location.href,a=Bi;if(Bi=r,We("history",{from:a,to:r}),e)try{return e.apply(this,n)}catch{}};function t(n){return function(...r){const a=r.length>2?r[2]:void 0;if(a){const i=Bi,o=String(a);Bi=o,We("history",{from:i,to:o})}return n.apply(this,r)}}ce(q.history,"pushState",t),ce(q.history,"replaceState",t)}const Ob=1e3;let Hi,qi;function Fb(e,t){if(!e||e.type!==t.type)return!0;try{if(e.target!==t.target)return!0}catch{}return!1}function Yb(e){if(e.type!=="keypress")return!1;try{const t=e.target;if(!t||!t.tagName)return!0;if(t.tagName==="INPUT"||t.tagName==="TEXTAREA"||t.isContentEditable)return!1}catch{}return!0}function Im(e,t=!1){return n=>{if(!n||qi===n||Yb(n))return;const r=n.type==="keypress"?"input":n.type;Hi===void 0?(e({event:n,name:r,global:t}),qi=n):Fb(qi,n)&&(e({event:n,name:r,global:t}),qi=n),clearTimeout(Hi),Hi=q.setTimeout(()=>{Hi=void 0},Ob)}}function Bb(){if(!("document"in q))return;const e=We.bind(null,"dom"),t=Im(e,!0);q.document.addEventListener("click",t,!1),q.document.addEventListener("keypress",t,!1),["EventTarget","Node"].forEach(n=>{const r=q[n]&&q[n].prototype;!r||!r.hasOwnProperty||!r.hasOwnProperty("addEventListener")||(ce(r,"addEventListener",function(a){return function(i,o,s){if(i==="click"||i=="keypress")try{const l=this,u=l.__sentry_instrumentation_handlers__=l.__sentry_instrumentation_handlers__||{},p=u[i]=u[i]||{refCount:0};if(!p.handler){const m=Im(e);p.handler=m,a.call(this,i,m,s)}p.refCount++}catch{}return a.call(this,i,o,s)}}),ce(r,"removeEventListener",function(a){return function(i,o,s){if(i==="click"||i=="keypress")try{const l=this,u=l.__sentry_instrumentation_handlers__||{},p=u[i];p&&(p.refCount--,p.refCount<=0&&(a.call(this,i,p.handler,s),p.handler=void 0,delete u[i]),Object.keys(u).length===0&&delete l.__sentry_instrumentation_handlers__)}catch{}return a.call(this,i,o,s)}}))})}let Vi=null;function Hb(){Vi=q.onerror,q.onerror=function(e,t,n,r,a){return We("error",{column:r,error:a,line:n,msg:e,url:t}),Vi&&!Vi.__SENTRY_LOADER__?Vi.apply(this,arguments):!1},q.onerror.__SENTRY_INSTRUMENTED__=!0}let Wi=null;function qb(){Wi=q.onunhandledrejection,q.onunhandledrejection=function(e){return We("unhandledrejection",e),Wi&&!Wi.__SENTRY_LOADER__?Wi.apply(this,arguments):!0},q.onunhandledrejection.__SENTRY_INSTRUMENTED__=!0}function Vb(){const e=typeof WeakSet=="function",t=e?new WeakSet:[];function n(a){if(e)return t.has(a)?!0:(t.add(a),!1);for(let i=0;i<t.length;i++)if(t[i]===a)return!0;return t.push(a),!1}function r(a){if(e)t.delete(a);else for(let i=0;i<t.length;i++)if(t[i]===a){t.splice(i,1);break}}return[n,r]}function Jn(){const e=Le,t=e.crypto||e.msCrypto;if(t&&t.randomUUID)return t.randomUUID().replace(/-/g,"");const n=t&&t.getRandomValues?()=>t.getRandomValues(new Uint8Array(1))[0]:()=>Math.random()*16;return([1e7]+1e3+4e3+8e3+1e11).replace(/[018]/g,r=>(r^(n()&15)>>r/4).toString(16))}function Dm(e){return e.exception&&e.exception.values?e.exception.values[0]:void 0}function Yt(e){const{message:t,event_id:n}=e;if(t)return t;const r=Dm(e);return r?r.type&&r.value?`${r.type}: ${r.value}`:r.type||r.value||n||"<unknown>":n||"<unknown>"}function dc(e,t,n){const r=e.exception=e.exception||{},a=r.values=r.values||[],i=a[0]=a[0]||{};i.value||(i.value=t||""),i.type||(i.type=n||"Error")}function ya(e,t){const n=Dm(e);if(!n)return;const r={type:"generic",handled:!0},a=n.mechanism;if(n.mechanism={...r,...a,...t},t&&"data"in t){const i={...a&&a.data,...t.data};n.mechanism.data=i}}function Am(e){if(e&&e.__sentry_captured__)return!0;try{rc(e,"__sentry_captured__",!0)}catch{}return!1}function Mm(e){return Array.isArray(e)?e:[e]}function Wb(){return typeof __SENTRY_BROWSER_BUNDLE__<"u"&&!!__SENTRY_BROWSER_BUNDLE__}function Gb(){return"npm"}function Kb(){return!Wb()&&Object.prototype.toString.call(typeof process<"u"?process:0)==="[object process]"}function Jb(e,t){return e.require(t)}function Bt(e,t=100,n=1/0){try{return pc("",e,t,n)}catch(r){return{ERROR:`**non-serializable** (${r})`}}}function zm(e,t=3,n=100*1024){const r=Bt(e,t);return ev(r)>n?zm(e,t-1,n):r}function pc(e,t,n=1/0,r=1/0,a=Vb()){const[i,o]=a;if(t==null||["number","boolean","string"].includes(typeof t)&&!yb(t))return t;const s=Qb(e,t);if(!s.startsWith("[object "))return s;if(t.__sentry_skip_normalization__)return t;const l=typeof t.__sentry_override_normalization_depth__=="number"?t.__sentry_override_normalization_depth__:n;if(l===0)return s.replace("object ","");if(i(t))return"[Circular ~]";const u=t;if(u&&typeof u.toJSON=="function")try{const y=u.toJSON();return pc("",y,l-1,r,a)}catch{}const p=Array.isArray(t)?[]:{};let m=0;const d=Sm(t);for(const y in d){if(!Object.prototype.hasOwnProperty.call(d,y))continue;if(m>=r){p[y]="[MaxProperties ~]";break}const b=d[y];p[y]=pc(y,b,l-1,r,a),m++}return o(t),p}function Qb(e,t){try{if(e==="domain"&&t&&typeof t=="object"&&t._events)return"[Domain]";if(e==="domainEmitter")return"[DomainEmitter]";if(typeof global<"u"&&t===global)return"[Global]";if(typeof window<"u"&&t===window)return"[Window]";if(typeof document<"u"&&t===document)return"[Document]";if(gb(t))return"[SyntheticEvent]";if(typeof t=="number"&&t!==t)return"[NaN]";if(typeof t=="function")return`[Function: ${Ot(t)}]`;if(typeof t=="symbol")return`[${String(t)}]`;if(typeof t=="bigint")return`[BigInt: ${String(t)}]`;const n=Xb(t);return/^HTML(\w*)Element$/.test(n)?`[HTMLElement: ${n}]`:`[object ${n}]`}catch(n){return`**non-serializable** (${n})`}}function Xb(e){const t=Object.getPrototypeOf(e);return t?t.constructor.name:"null prototype"}function Zb(e){return~-encodeURI(e).split(/%..|./).length}function ev(e){return Zb(JSON.stringify(e))}var gt;(function(e){e[e.PENDING=0]="PENDING";const n=1;e[e.RESOLVED=n]="RESOLVED";const r=2;e[e.REJECTED=r]="REJECTED"})(gt||(gt={}));function ln(e){return new we(t=>{t(e)})}function Gi(e){return new we((t,n)=>{n(e)})}class we{__init(){this._state=gt.PENDING}__init2(){this._handlers=[]}constructor(t){we.prototype.__init.call(this),we.prototype.__init2.call(this),we.prototype.__init3.call(this),we.prototype.__init4.call(this),we.prototype.__init5.call(this),we.prototype.__init6.call(this);try{t(this._resolve,this._reject)}catch(n){this._reject(n)}}then(t,n){return new we((r,a)=>{this._handlers.push([!1,i=>{if(!t)r(i);else try{r(t(i))}catch(o){a(o)}},i=>{if(!n)a(i);else try{r(n(i))}catch(o){a(o)}}]),this._executeHandlers()})}catch(t){return this.then(n=>n,t)}finally(t){return new we((n,r)=>{let a,i;return this.then(o=>{i=!1,a=o,t&&t()},o=>{i=!0,a=o,t&&t()}).then(()=>{if(i){r(a);return}n(a)})})}__init3(){this._resolve=t=>{this._setResult(gt.RESOLVED,t)}}__init4(){this._reject=t=>{this._setResult(gt.REJECTED,t)}}__init5(){this._setResult=(t,n)=>{if(this._state===gt.PENDING){if(ec(n)){n.then(this._resolve,this._reject);return}this._state=t,this._value=n,this._executeHandlers()}}}__init6(){this._executeHandlers=()=>{if(this._state===gt.PENDING)return;const t=this._handlers.slice();this._handlers=[],t.forEach(n=>{n[0]||(this._state===gt.RESOLVED&&n[1](this._value),this._state===gt.REJECTED&&n[2](this._value),n[0]=!0)})}}}function tv(e){const t=[];function n(){return e===void 0||t.length<e}function r(o){return t.splice(t.indexOf(o),1)[0]}function a(o){if(!n())return Gi(new Ve("Not adding Promise because buffer limit was reached."));const s=o();return t.indexOf(s)===-1&&t.push(s),s.then(()=>r(s)).then(null,()=>r(s).then(null,()=>{})),s}function i(o){return new we((s,l)=>{let u=t.length;if(!u)return s(!0);const p=setTimeout(()=>{o&&o>0&&s(!1)},o);t.forEach(m=>{ln(m).then(()=>{--u||(clearTimeout(p),s(!0))},l)})})}return{$:t,add:a,drain:i}}function mc(e){if(!e)return{};const t=e.match(/^(([^:/?#]+):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?$/);if(!t)return{};const n=t[6]||"",r=t[8]||"";return{host:t[4],path:t[5],protocol:t[2],search:n,hash:r,relative:t[5]+n+r}}const nv=["fatal","error","warning","log","info","debug"];function rv(e){return e==="warn"?"warning":nv.includes(e)?e:"log"}const Rm=pa(),hc={nowSeconds:()=>Date.now()/1e3};function av(){const{performance:e}=Rm;if(!e||!e.now)return;const t=Date.now()-e.now();return{now:()=>e.now(),timeOrigin:t}}function iv(){try{return Jb(module,"perf_hooks").performance}catch{return}}const fc=Kb()?iv():av(),Lm=fc===void 0?hc:{nowSeconds:()=>(fc.timeOrigin+fc.now())/1e3},Ki=hc.nowSeconds.bind(hc),Um=Lm.nowSeconds.bind(Lm);(()=>{const{performance:e}=Rm;if(!e||!e.now)return;const t=3600*1e3,n=e.now(),r=Date.now(),a=e.timeOrigin?Math.abs(e.timeOrigin+n-r):t,i=a<t,o=e.timing&&e.timing.navigationStart,l=typeof o=="number"?Math.abs(o+n-r):t,u=l<t;return i||u?a<=l?e.timeOrigin:o:r})();function ba(e,t=[]){return[e,t]}function ov(e,t){const[n,r]=e;return[n,[...r,t]]}function Om(e,t){const n=e[1];for(const r of n){const a=r[0].type;if(t(r,a))return!0}return!1}function gc(e,t){return(t||new TextEncoder).encode(e)}function sv(e,t){const[n,r]=e;let a=JSON.stringify(n);function i(o){typeof a=="string"?a=typeof o=="string"?a+o:[gc(a,t),o]:a.push(typeof o=="string"?gc(o,t):o)}for(const o of r){const[s,l]=o;if(i(`
47
47
  ${JSON.stringify(s)}
48
- `),typeof l=="string"||l instanceof Uint8Array)i(l);else{let u;try{u=JSON.stringify(l)}catch{u=JSON.stringify(Bt(l))}i(u)}}return typeof a=="string"?a:lv(a)}function lv(e){const t=e.reduce((a,i)=>a+i.length,0),n=new Uint8Array(t);let r=0;for(const a of e)n.set(a,r),r+=a.length;return n}function cv(e,t){const n=typeof e.data=="string"?gc(e.data,t):e.data;return[ic({type:"attachment",length:n.length,filename:e.filename,content_type:e.contentType,attachment_type:e.attachmentType}),n]}const uv={session:"session",sessions:"session",attachment:"attachment",transaction:"transaction",event:"error",client_report:"internal",user_report:"default",profile:"profile",replay_event:"replay",replay_recording:"replay",check_in:"monitor"};function Ym(e){return uv[e]}function Fm(e){if(!e||!e.sdk)return;const{name:t,version:n}=e.sdk;return{name:t,version:n}}function dv(e,t,n,r){const a=e.sdkProcessingMetadata&&e.sdkProcessingMetadata.dynamicSamplingContext;return{event_id:e.event_id,sent_at:new Date().toISOString(),...t&&{sdk:t},...!!n&&{dsn:ma(r)},...a&&{trace:ic({...a})}}}function pv(e,t,n){const r=[{type:"client_report"},{timestamp:n||Ki(),discarded_events:e}];return ba(t?{dsn:t}:{},[r])}const mv=60*1e3;function hv(e,t=Date.now()){const n=parseInt(`${e}`,10);if(!isNaN(n))return n*1e3;const r=Date.parse(`${e}`);return isNaN(r)?mv:r-t}function fv(e,t){return e[t]||e.all||0}function gv(e,t,n=Date.now()){return fv(e,t)>n}function yv(e,{statusCode:t,headers:n},r=Date.now()){const a={...e},i=n&&n["x-sentry-rate-limits"],o=n&&n["retry-after"];if(i)for(const s of i.trim().split(",")){const[l,u]=s.split(":",2),p=parseInt(l,10),m=(isNaN(p)?60:p)*1e3;if(!u)a.all=r+m;else for(const d of u.split(";"))a[d]=r+m}else o?a.all=r+hv(o,r):t===429&&(a.all=r+60*1e3);return a}const Bm="production";function bv(e){const t=Um(),n={sid:Jn(),init:!0,timestamp:t,started:t,duration:0,status:"ok",errors:0,ignoreDuration:!1,toJSON:()=>kv(n)};return e&&Qn(n,e),n}function Qn(e,t={}){if(t.user&&(!e.ipAddress&&t.user.ip_address&&(e.ipAddress=t.user.ip_address),!e.did&&!t.did&&(e.did=t.user.id||t.user.email||t.user.username)),e.timestamp=t.timestamp||Um(),t.ignoreDuration&&(e.ignoreDuration=t.ignoreDuration),t.sid&&(e.sid=t.sid.length===32?t.sid:Jn()),t.init!==void 0&&(e.init=t.init),!e.did&&t.did&&(e.did=`${t.did}`),typeof t.started=="number"&&(e.started=t.started),e.ignoreDuration)e.duration=void 0;else if(typeof t.duration=="number")e.duration=t.duration;else{const n=e.timestamp-e.started;e.duration=n>=0?n:0}t.release&&(e.release=t.release),t.environment&&(e.environment=t.environment),!e.ipAddress&&t.ipAddress&&(e.ipAddress=t.ipAddress),!e.userAgent&&t.userAgent&&(e.userAgent=t.userAgent),typeof t.errors=="number"&&(e.errors=t.errors),t.status&&(e.status=t.status)}function vv(e,t){let n={};t?n={status:t}:e.status==="ok"&&(n={status:"exited"}),Qn(e,n)}function kv(e){return ic({sid:`${e.sid}`,init:e.init,started:new Date(e.started*1e3).toISOString(),timestamp:new Date(e.timestamp*1e3).toISOString(),status:e.status,errors:e.errors,did:typeof e.did=="number"||typeof e.did=="string"?`${e.did}`:void 0,duration:e.duration,attrs:{release:e.release,environment:e.environment,ip_address:e.ipAddress,user_agent:e.userAgent}})}const wv=100;class cn{constructor(){this._notifyingListeners=!1,this._scopeListeners=[],this._eventProcessors=[],this._breadcrumbs=[],this._attachments=[],this._user={},this._tags={},this._extra={},this._contexts={},this._sdkProcessingMetadata={}}static clone(t){const n=new cn;return t&&(n._breadcrumbs=[...t._breadcrumbs],n._tags={...t._tags},n._extra={...t._extra},n._contexts={...t._contexts},n._user=t._user,n._level=t._level,n._span=t._span,n._session=t._session,n._transactionName=t._transactionName,n._fingerprint=t._fingerprint,n._eventProcessors=[...t._eventProcessors],n._requestSession=t._requestSession,n._attachments=[...t._attachments],n._sdkProcessingMetadata={...t._sdkProcessingMetadata}),n}addScopeListener(t){this._scopeListeners.push(t)}addEventProcessor(t){return this._eventProcessors.push(t),this}setUser(t){return this._user=t||{},this._session&&Qn(this._session,{user:t}),this._notifyScopeListeners(),this}getUser(){return this._user}getRequestSession(){return this._requestSession}setRequestSession(t){return this._requestSession=t,this}setTags(t){return this._tags={...this._tags,...t},this._notifyScopeListeners(),this}setTag(t,n){return this._tags={...this._tags,[t]:n},this._notifyScopeListeners(),this}setExtras(t){return this._extra={...this._extra,...t},this._notifyScopeListeners(),this}setExtra(t,n){return this._extra={...this._extra,[t]:n},this._notifyScopeListeners(),this}setFingerprint(t){return this._fingerprint=t,this._notifyScopeListeners(),this}setLevel(t){return this._level=t,this._notifyScopeListeners(),this}setTransactionName(t){return this._transactionName=t,this._notifyScopeListeners(),this}setContext(t,n){return n===null?delete this._contexts[t]:this._contexts[t]=n,this._notifyScopeListeners(),this}setSpan(t){return this._span=t,this._notifyScopeListeners(),this}getSpan(){return this._span}getTransaction(){const t=this.getSpan();return t&&t.transaction}setSession(t){return t?this._session=t:delete this._session,this._notifyScopeListeners(),this}getSession(){return this._session}update(t){if(!t)return this;if(typeof t=="function"){const n=t(this);return n instanceof cn?n:this}return t instanceof cn?(this._tags={...this._tags,...t._tags},this._extra={...this._extra,...t._extra},this._contexts={...this._contexts,...t._contexts},t._user&&Object.keys(t._user).length&&(this._user=t._user),t._level&&(this._level=t._level),t._fingerprint&&(this._fingerprint=t._fingerprint),t._requestSession&&(this._requestSession=t._requestSession)):Gn(t)&&(t=t,this._tags={...this._tags,...t.tags},this._extra={...this._extra,...t.extra},this._contexts={...this._contexts,...t.contexts},t.user&&(this._user=t.user),t.level&&(this._level=t.level),t.fingerprint&&(this._fingerprint=t.fingerprint),t.requestSession&&(this._requestSession=t.requestSession)),this}clear(){return this._breadcrumbs=[],this._tags={},this._extra={},this._user={},this._contexts={},this._level=void 0,this._transactionName=void 0,this._fingerprint=void 0,this._requestSession=void 0,this._span=void 0,this._session=void 0,this._notifyScopeListeners(),this._attachments=[],this}addBreadcrumb(t,n){const r=typeof n=="number"?n:wv;if(r<=0)return this;const a={timestamp:Ki(),...t};return this._breadcrumbs=[...this._breadcrumbs,a].slice(-r),this._notifyScopeListeners(),this}getLastBreadcrumb(){return this._breadcrumbs[this._breadcrumbs.length-1]}clearBreadcrumbs(){return this._breadcrumbs=[],this._notifyScopeListeners(),this}addAttachment(t){return this._attachments.push(t),this}getAttachments(){return this._attachments}clearAttachments(){return this._attachments=[],this}applyToEvent(t,n={}){if(this._extra&&Object.keys(this._extra).length&&(t.extra={...this._extra,...t.extra}),this._tags&&Object.keys(this._tags).length&&(t.tags={...this._tags,...t.tags}),this._user&&Object.keys(this._user).length&&(t.user={...this._user,...t.user}),this._contexts&&Object.keys(this._contexts).length&&(t.contexts={...this._contexts,...t.contexts}),this._level&&(t.level=this._level),this._transactionName&&(t.transaction=this._transactionName),this._span){t.contexts={trace:this._span.getTraceContext(),...t.contexts};const r=this._span.transaction;if(r){t.sdkProcessingMetadata={dynamicSamplingContext:r.getDynamicSamplingContext(),...t.sdkProcessingMetadata};const a=r.name;a&&(t.tags={transaction:a,...t.tags})}}return this._applyFingerprint(t),t.breadcrumbs=[...t.breadcrumbs||[],...this._breadcrumbs],t.breadcrumbs=t.breadcrumbs.length>0?t.breadcrumbs:void 0,t.sdkProcessingMetadata={...t.sdkProcessingMetadata,...this._sdkProcessingMetadata},this._notifyEventProcessors([...Hm(),...this._eventProcessors],t,n)}setSDKProcessingMetadata(t){return this._sdkProcessingMetadata={...this._sdkProcessingMetadata,...t},this}_notifyEventProcessors(t,n,r,a=0){return new we((i,o)=>{const s=t[a];if(n===null||typeof s!="function")i(n);else{const l=s({...n},r);(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&s.id&&l===null&&I.log(`Event processor "${s.id}" dropped event`),ec(l)?l.then(u=>this._notifyEventProcessors(t,u,r,a+1).then(i)).then(null,o):this._notifyEventProcessors(t,l,r,a+1).then(i).then(null,o)}})}_notifyScopeListeners(){this._notifyingListeners||(this._notifyingListeners=!0,this._scopeListeners.forEach(t=>{t(this)}),this._notifyingListeners=!1)}_applyFingerprint(t){t.fingerprint=t.fingerprint?Mm(t.fingerprint):[],this._fingerprint&&(t.fingerprint=t.fingerprint.concat(this._fingerprint)),t.fingerprint&&!t.fingerprint.length&&delete t.fingerprint}}function Hm(){return tc("globalEventProcessors",()=>[])}function yc(e){Hm().push(e)}const qm=4,xv=100;class Vm{constructor(t,n=new cn,r=qm){this._version=r,this._stack=[{scope:n}],t&&this.bindClient(t)}isOlderThan(t){return this._version<t}bindClient(t){const n=this.getStackTop();n.client=t,t&&t.setupIntegrations&&t.setupIntegrations()}pushScope(){const t=cn.clone(this.getScope());return this.getStack().push({client:this.getClient(),scope:t}),t}popScope(){return this.getStack().length<=1?!1:!!this.getStack().pop()}withScope(t){const n=this.pushScope();try{t(n)}finally{this.popScope()}}getClient(){return this.getStackTop().client}getScope(){return this.getStackTop().scope}getStack(){return this._stack}getStackTop(){return this._stack[this._stack.length-1]}captureException(t,n){const r=this._lastEventId=n&&n.event_id?n.event_id:Jn(),a=new Error("Sentry syntheticException");return this._withClient((i,o)=>{i.captureException(t,{originalException:t,syntheticException:a,...n,event_id:r},o)}),r}captureMessage(t,n,r){const a=this._lastEventId=r&&r.event_id?r.event_id:Jn(),i=new Error(t);return this._withClient((o,s)=>{o.captureMessage(t,n,{originalException:t,syntheticException:i,...r,event_id:a},s)}),a}captureEvent(t,n){const r=n&&n.event_id?n.event_id:Jn();return t.type||(this._lastEventId=r),this._withClient((a,i)=>{a.captureEvent(t,{...n,event_id:r},i)}),r}lastEventId(){return this._lastEventId}addBreadcrumb(t,n){const{scope:r,client:a}=this.getStackTop();if(!a)return;const{beforeBreadcrumb:i=null,maxBreadcrumbs:o=xv}=a.getOptions&&a.getOptions()||{};if(o<=0)return;const l={timestamp:Ki(),...t},u=i?ym(()=>i(l,n)):l;u!==null&&(a.emit&&a.emit("beforeAddBreadcrumb",u,n),r.addBreadcrumb(u,o))}setUser(t){this.getScope().setUser(t)}setTags(t){this.getScope().setTags(t)}setExtras(t){this.getScope().setExtras(t)}setTag(t,n){this.getScope().setTag(t,n)}setExtra(t,n){this.getScope().setExtra(t,n)}setContext(t,n){this.getScope().setContext(t,n)}configureScope(t){const{scope:n,client:r}=this.getStackTop();r&&t(n)}run(t){const n=Wm(this);try{t(this)}finally{Wm(n)}}getIntegration(t){const n=this.getClient();if(!n)return null;try{return n.getIntegration(t)}catch{return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.warn(`Cannot retrieve integration ${t.id} from the current Hub`),null}}startTransaction(t,n){const r=this._callExtensionMethod("startTransaction",t,n);return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&!r&&console.warn(`Tracing extension 'startTransaction' has not been added. Call 'addTracingExtensions' before calling 'init':
48
+ `),typeof l=="string"||l instanceof Uint8Array)i(l);else{let u;try{u=JSON.stringify(l)}catch{u=JSON.stringify(Bt(l))}i(u)}}return typeof a=="string"?a:lv(a)}function lv(e){const t=e.reduce((a,i)=>a+i.length,0),n=new Uint8Array(t);let r=0;for(const a of e)n.set(a,r),r+=a.length;return n}function cv(e,t){const n=typeof e.data=="string"?gc(e.data,t):e.data;return[ic({type:"attachment",length:n.length,filename:e.filename,content_type:e.contentType,attachment_type:e.attachmentType}),n]}const uv={session:"session",sessions:"session",attachment:"attachment",transaction:"transaction",event:"error",client_report:"internal",user_report:"default",profile:"profile",replay_event:"replay",replay_recording:"replay",check_in:"monitor"};function Fm(e){return uv[e]}function Ym(e){if(!e||!e.sdk)return;const{name:t,version:n}=e.sdk;return{name:t,version:n}}function dv(e,t,n,r){const a=e.sdkProcessingMetadata&&e.sdkProcessingMetadata.dynamicSamplingContext;return{event_id:e.event_id,sent_at:new Date().toISOString(),...t&&{sdk:t},...!!n&&{dsn:ma(r)},...a&&{trace:ic({...a})}}}function pv(e,t,n){const r=[{type:"client_report"},{timestamp:n||Ki(),discarded_events:e}];return ba(t?{dsn:t}:{},[r])}const mv=60*1e3;function hv(e,t=Date.now()){const n=parseInt(`${e}`,10);if(!isNaN(n))return n*1e3;const r=Date.parse(`${e}`);return isNaN(r)?mv:r-t}function fv(e,t){return e[t]||e.all||0}function gv(e,t,n=Date.now()){return fv(e,t)>n}function yv(e,{statusCode:t,headers:n},r=Date.now()){const a={...e},i=n&&n["x-sentry-rate-limits"],o=n&&n["retry-after"];if(i)for(const s of i.trim().split(",")){const[l,u]=s.split(":",2),p=parseInt(l,10),m=(isNaN(p)?60:p)*1e3;if(!u)a.all=r+m;else for(const d of u.split(";"))a[d]=r+m}else o?a.all=r+hv(o,r):t===429&&(a.all=r+60*1e3);return a}const Bm="production";function bv(e){const t=Um(),n={sid:Jn(),init:!0,timestamp:t,started:t,duration:0,status:"ok",errors:0,ignoreDuration:!1,toJSON:()=>kv(n)};return e&&Qn(n,e),n}function Qn(e,t={}){if(t.user&&(!e.ipAddress&&t.user.ip_address&&(e.ipAddress=t.user.ip_address),!e.did&&!t.did&&(e.did=t.user.id||t.user.email||t.user.username)),e.timestamp=t.timestamp||Um(),t.ignoreDuration&&(e.ignoreDuration=t.ignoreDuration),t.sid&&(e.sid=t.sid.length===32?t.sid:Jn()),t.init!==void 0&&(e.init=t.init),!e.did&&t.did&&(e.did=`${t.did}`),typeof t.started=="number"&&(e.started=t.started),e.ignoreDuration)e.duration=void 0;else if(typeof t.duration=="number")e.duration=t.duration;else{const n=e.timestamp-e.started;e.duration=n>=0?n:0}t.release&&(e.release=t.release),t.environment&&(e.environment=t.environment),!e.ipAddress&&t.ipAddress&&(e.ipAddress=t.ipAddress),!e.userAgent&&t.userAgent&&(e.userAgent=t.userAgent),typeof t.errors=="number"&&(e.errors=t.errors),t.status&&(e.status=t.status)}function vv(e,t){let n={};t?n={status:t}:e.status==="ok"&&(n={status:"exited"}),Qn(e,n)}function kv(e){return ic({sid:`${e.sid}`,init:e.init,started:new Date(e.started*1e3).toISOString(),timestamp:new Date(e.timestamp*1e3).toISOString(),status:e.status,errors:e.errors,did:typeof e.did=="number"||typeof e.did=="string"?`${e.did}`:void 0,duration:e.duration,attrs:{release:e.release,environment:e.environment,ip_address:e.ipAddress,user_agent:e.userAgent}})}const wv=100;class cn{constructor(){this._notifyingListeners=!1,this._scopeListeners=[],this._eventProcessors=[],this._breadcrumbs=[],this._attachments=[],this._user={},this._tags={},this._extra={},this._contexts={},this._sdkProcessingMetadata={}}static clone(t){const n=new cn;return t&&(n._breadcrumbs=[...t._breadcrumbs],n._tags={...t._tags},n._extra={...t._extra},n._contexts={...t._contexts},n._user=t._user,n._level=t._level,n._span=t._span,n._session=t._session,n._transactionName=t._transactionName,n._fingerprint=t._fingerprint,n._eventProcessors=[...t._eventProcessors],n._requestSession=t._requestSession,n._attachments=[...t._attachments],n._sdkProcessingMetadata={...t._sdkProcessingMetadata}),n}addScopeListener(t){this._scopeListeners.push(t)}addEventProcessor(t){return this._eventProcessors.push(t),this}setUser(t){return this._user=t||{},this._session&&Qn(this._session,{user:t}),this._notifyScopeListeners(),this}getUser(){return this._user}getRequestSession(){return this._requestSession}setRequestSession(t){return this._requestSession=t,this}setTags(t){return this._tags={...this._tags,...t},this._notifyScopeListeners(),this}setTag(t,n){return this._tags={...this._tags,[t]:n},this._notifyScopeListeners(),this}setExtras(t){return this._extra={...this._extra,...t},this._notifyScopeListeners(),this}setExtra(t,n){return this._extra={...this._extra,[t]:n},this._notifyScopeListeners(),this}setFingerprint(t){return this._fingerprint=t,this._notifyScopeListeners(),this}setLevel(t){return this._level=t,this._notifyScopeListeners(),this}setTransactionName(t){return this._transactionName=t,this._notifyScopeListeners(),this}setContext(t,n){return n===null?delete this._contexts[t]:this._contexts[t]=n,this._notifyScopeListeners(),this}setSpan(t){return this._span=t,this._notifyScopeListeners(),this}getSpan(){return this._span}getTransaction(){const t=this.getSpan();return t&&t.transaction}setSession(t){return t?this._session=t:delete this._session,this._notifyScopeListeners(),this}getSession(){return this._session}update(t){if(!t)return this;if(typeof t=="function"){const n=t(this);return n instanceof cn?n:this}return t instanceof cn?(this._tags={...this._tags,...t._tags},this._extra={...this._extra,...t._extra},this._contexts={...this._contexts,...t._contexts},t._user&&Object.keys(t._user).length&&(this._user=t._user),t._level&&(this._level=t._level),t._fingerprint&&(this._fingerprint=t._fingerprint),t._requestSession&&(this._requestSession=t._requestSession)):Gn(t)&&(t=t,this._tags={...this._tags,...t.tags},this._extra={...this._extra,...t.extra},this._contexts={...this._contexts,...t.contexts},t.user&&(this._user=t.user),t.level&&(this._level=t.level),t.fingerprint&&(this._fingerprint=t.fingerprint),t.requestSession&&(this._requestSession=t.requestSession)),this}clear(){return this._breadcrumbs=[],this._tags={},this._extra={},this._user={},this._contexts={},this._level=void 0,this._transactionName=void 0,this._fingerprint=void 0,this._requestSession=void 0,this._span=void 0,this._session=void 0,this._notifyScopeListeners(),this._attachments=[],this}addBreadcrumb(t,n){const r=typeof n=="number"?n:wv;if(r<=0)return this;const a={timestamp:Ki(),...t};return this._breadcrumbs=[...this._breadcrumbs,a].slice(-r),this._notifyScopeListeners(),this}getLastBreadcrumb(){return this._breadcrumbs[this._breadcrumbs.length-1]}clearBreadcrumbs(){return this._breadcrumbs=[],this._notifyScopeListeners(),this}addAttachment(t){return this._attachments.push(t),this}getAttachments(){return this._attachments}clearAttachments(){return this._attachments=[],this}applyToEvent(t,n={}){if(this._extra&&Object.keys(this._extra).length&&(t.extra={...this._extra,...t.extra}),this._tags&&Object.keys(this._tags).length&&(t.tags={...this._tags,...t.tags}),this._user&&Object.keys(this._user).length&&(t.user={...this._user,...t.user}),this._contexts&&Object.keys(this._contexts).length&&(t.contexts={...this._contexts,...t.contexts}),this._level&&(t.level=this._level),this._transactionName&&(t.transaction=this._transactionName),this._span){t.contexts={trace:this._span.getTraceContext(),...t.contexts};const r=this._span.transaction;if(r){t.sdkProcessingMetadata={dynamicSamplingContext:r.getDynamicSamplingContext(),...t.sdkProcessingMetadata};const a=r.name;a&&(t.tags={transaction:a,...t.tags})}}return this._applyFingerprint(t),t.breadcrumbs=[...t.breadcrumbs||[],...this._breadcrumbs],t.breadcrumbs=t.breadcrumbs.length>0?t.breadcrumbs:void 0,t.sdkProcessingMetadata={...t.sdkProcessingMetadata,...this._sdkProcessingMetadata},this._notifyEventProcessors([...Hm(),...this._eventProcessors],t,n)}setSDKProcessingMetadata(t){return this._sdkProcessingMetadata={...this._sdkProcessingMetadata,...t},this}_notifyEventProcessors(t,n,r,a=0){return new we((i,o)=>{const s=t[a];if(n===null||typeof s!="function")i(n);else{const l=s({...n},r);(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&s.id&&l===null&&I.log(`Event processor "${s.id}" dropped event`),ec(l)?l.then(u=>this._notifyEventProcessors(t,u,r,a+1).then(i)).then(null,o):this._notifyEventProcessors(t,l,r,a+1).then(i).then(null,o)}})}_notifyScopeListeners(){this._notifyingListeners||(this._notifyingListeners=!0,this._scopeListeners.forEach(t=>{t(this)}),this._notifyingListeners=!1)}_applyFingerprint(t){t.fingerprint=t.fingerprint?Mm(t.fingerprint):[],this._fingerprint&&(t.fingerprint=t.fingerprint.concat(this._fingerprint)),t.fingerprint&&!t.fingerprint.length&&delete t.fingerprint}}function Hm(){return tc("globalEventProcessors",()=>[])}function yc(e){Hm().push(e)}const qm=4,xv=100;class Vm{constructor(t,n=new cn,r=qm){this._version=r,this._stack=[{scope:n}],t&&this.bindClient(t)}isOlderThan(t){return this._version<t}bindClient(t){const n=this.getStackTop();n.client=t,t&&t.setupIntegrations&&t.setupIntegrations()}pushScope(){const t=cn.clone(this.getScope());return this.getStack().push({client:this.getClient(),scope:t}),t}popScope(){return this.getStack().length<=1?!1:!!this.getStack().pop()}withScope(t){const n=this.pushScope();try{t(n)}finally{this.popScope()}}getClient(){return this.getStackTop().client}getScope(){return this.getStackTop().scope}getStack(){return this._stack}getStackTop(){return this._stack[this._stack.length-1]}captureException(t,n){const r=this._lastEventId=n&&n.event_id?n.event_id:Jn(),a=new Error("Sentry syntheticException");return this._withClient((i,o)=>{i.captureException(t,{originalException:t,syntheticException:a,...n,event_id:r},o)}),r}captureMessage(t,n,r){const a=this._lastEventId=r&&r.event_id?r.event_id:Jn(),i=new Error(t);return this._withClient((o,s)=>{o.captureMessage(t,n,{originalException:t,syntheticException:i,...r,event_id:a},s)}),a}captureEvent(t,n){const r=n&&n.event_id?n.event_id:Jn();return t.type||(this._lastEventId=r),this._withClient((a,i)=>{a.captureEvent(t,{...n,event_id:r},i)}),r}lastEventId(){return this._lastEventId}addBreadcrumb(t,n){const{scope:r,client:a}=this.getStackTop();if(!a)return;const{beforeBreadcrumb:i=null,maxBreadcrumbs:o=xv}=a.getOptions&&a.getOptions()||{};if(o<=0)return;const l={timestamp:Ki(),...t},u=i?ym(()=>i(l,n)):l;u!==null&&(a.emit&&a.emit("beforeAddBreadcrumb",u,n),r.addBreadcrumb(u,o))}setUser(t){this.getScope().setUser(t)}setTags(t){this.getScope().setTags(t)}setExtras(t){this.getScope().setExtras(t)}setTag(t,n){this.getScope().setTag(t,n)}setExtra(t,n){this.getScope().setExtra(t,n)}setContext(t,n){this.getScope().setContext(t,n)}configureScope(t){const{scope:n,client:r}=this.getStackTop();r&&t(n)}run(t){const n=Wm(this);try{t(this)}finally{Wm(n)}}getIntegration(t){const n=this.getClient();if(!n)return null;try{return n.getIntegration(t)}catch{return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.warn(`Cannot retrieve integration ${t.id} from the current Hub`),null}}startTransaction(t,n){const r=this._callExtensionMethod("startTransaction",t,n);return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&!r&&console.warn(`Tracing extension 'startTransaction' has not been added. Call 'addTracingExtensions' before calling 'init':
49
49
  Sentry.addTracingExtensions();
50
50
  Sentry.init({...});
51
- `),r}traceHeaders(){return this._callExtensionMethod("traceHeaders")}captureSession(t=!1){if(t)return this.endSession();this._sendSessionUpdate()}endSession(){const n=this.getStackTop().scope,r=n.getSession();r&&vv(r),this._sendSessionUpdate(),n.setSession()}startSession(t){const{scope:n,client:r}=this.getStackTop(),{release:a,environment:i=Bm}=r&&r.getOptions()||{},{userAgent:o}=Le.navigator||{},s=bv({release:a,environment:i,user:n.getUser(),...o&&{userAgent:o},...t}),l=n.getSession&&n.getSession();return l&&l.status==="ok"&&Qn(l,{status:"exited"}),this.endSession(),n.setSession(s),s}shouldSendDefaultPii(){const t=this.getClient(),n=t&&t.getOptions();return!!(n&&n.sendDefaultPii)}_sendSessionUpdate(){const{scope:t,client:n}=this.getStackTop(),r=t.getSession();r&&n&&n.captureSession&&n.captureSession(r)}_withClient(t){const{scope:n,client:r}=this.getStackTop();r&&t(r,n)}_callExtensionMethod(t,...n){const a=Ji().__SENTRY__;if(a&&a.extensions&&typeof a.extensions[t]=="function")return a.extensions[t].apply(this,n);(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.warn(`Extension method ${t} couldn't be found, doing nothing.`)}}function Ji(){return Le.__SENTRY__=Le.__SENTRY__||{extensions:{},hub:void 0},Le}function Wm(e){const t=Ji(),n=bc(t);return Gm(t,e),n}function ee(){const e=Ji();if(e.__SENTRY__&&e.__SENTRY__.acs){const t=e.__SENTRY__.acs.getCurrentHub();if(t)return t}return Sv(e)}function Sv(e=Ji()){return(!Ev(e)||bc(e).isOlderThan(qm))&&Gm(e,new Vm),bc(e)}function Ev(e){return!!(e&&e.__SENTRY__&&e.__SENTRY__.hub)}function bc(e){return tc("hub",()=>new Vm,e)}function Gm(e,t){if(!e)return!1;const n=e.__SENTRY__=e.__SENTRY__||{};return n.hub=t,!0}function Km(e,t){return ee().captureException(e,{captureContext:t})}function Jm(e){ee().withScope(e)}const Cv="7";function Qm(e){const t=e.protocol?`${e.protocol}:`:"",n=e.port?`:${e.port}`:"";return`${t}//${e.host}${n}${e.path?`/${e.path}`:""}/api/`}function $v(e){return`${Qm(e)}${e.projectId}/envelope/`}function _v(e,t){return jb({sentry_key:e.publicKey,sentry_version:Cv,...t&&{sentry_client:`${t.name}/${t.version}`}})}function jv(e,t={}){const n=typeof t=="string"?t:t.tunnel,r=typeof t=="string"||!t._metadata?void 0:t._metadata.sdk;return n||`${$v(e)}?${_v(e,r)}`}function Pv(e,t){const n=km(e);if(!n)return"";const r=`${Qm(n)}embed/error-page/`;let a=`dsn=${ma(n)}`;for(const i in t)if(i!=="dsn")if(i==="user"){const o=t.user;if(!o)continue;o.name&&(a+=`&name=${encodeURIComponent(o.name)}`),o.email&&(a+=`&email=${encodeURIComponent(o.email)}`)}else a+=`&${encodeURIComponent(i)}=${encodeURIComponent(t[i])}`;return`${r}?${a}`}function Nv(e,t){return t&&(e.sdk=e.sdk||{},e.sdk.name=e.sdk.name||t.name,e.sdk.version=e.sdk.version||t.version,e.sdk.integrations=[...e.sdk.integrations||[],...t.integrations||[]],e.sdk.packages=[...e.sdk.packages||[],...t.packages||[]]),e}function Tv(e,t,n,r){const a=Fm(n),i={sent_at:new Date().toISOString(),...a&&{sdk:a},...!!r&&{dsn:ma(t)}},o="aggregates"in e?[{type:"sessions"},e]:[{type:"session"},e.toJSON()];return ba(i,[o])}function Iv(e,t,n,r){const a=Fm(n),i=e.type&&e.type!=="replay_event"?e.type:"event";Nv(e,n&&n.sdk);const o=dv(e,a,r,t);return delete e.sdkProcessingMetadata,ba(o,[[{type:i},e]])}const Xm=[];function Dv(e){const t={};return e.forEach(n=>{const{name:r}=n,a=t[r];a&&!a.isDefaultInstance&&n.isDefaultInstance||(t[r]=n)}),Object.keys(t).map(n=>t[n])}function Av(e){const t=e.defaultIntegrations||[],n=e.integrations;t.forEach(o=>{o.isDefaultInstance=!0});let r;Array.isArray(n)?r=[...t,...n]:typeof n=="function"?r=Mm(n(t)):r=t;const a=Dv(r),i=zv(a,o=>o.name==="Debug");if(i!==-1){const[o]=a.splice(i,1);a.push(o)}return a}function Mv(e){const t={};return e.forEach(n=>{n&&Zm(n,t)}),t}function Zm(e,t){t[e.name]=e,Xm.indexOf(e.name)===-1&&(e.setupOnce(yc,ee),Xm.push(e.name),(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.log(`Integration installed: ${e.name}`))}function zv(e,t){for(let n=0;n<e.length;n++)if(t(e[n])===!0)return n;return-1}function Rv(e,t,n,r){const{normalizeDepth:a=3,normalizeMaxBreadth:i=1e3}=e,o={...t,event_id:t.event_id||n.event_id||Jn(),timestamp:t.timestamp||Ki()},s=n.integrations||e.integrations.map(p=>p.name);Lv(o,e),Ov(o,s),t.type===void 0&&Uv(o,e.stackParser);let l=r;n.captureContext&&(l=cn.clone(l).update(n.captureContext));let u=ln(o);if(l){if(l.getAttachments){const p=[...n.attachments||[],...l.getAttachments()];p.length&&(n.attachments=p)}u=l.applyToEvent(o,n)}return u.then(p=>typeof a=="number"&&a>0?Yv(p,a,i):p)}function Lv(e,t){const{environment:n,release:r,dist:a,maxValueLength:i=250}=t;"environment"in e||(e.environment="environment"in t?n:Bm),e.release===void 0&&r!==void 0&&(e.release=r),e.dist===void 0&&a!==void 0&&(e.dist=a),e.message&&(e.message=ha(e.message,i));const o=e.exception&&e.exception.values&&e.exception.values[0];o&&o.value&&(o.value=ha(o.value,i));const s=e.request;s&&s.url&&(s.url=ha(s.url,i))}const eh=new WeakMap;function Uv(e,t){const n=Le._sentryDebugIds;if(!n)return;let r;const a=eh.get(t);a?r=a:(r=new Map,eh.set(t,r));const i=Object.keys(n).reduce((l,u)=>{let p;const m=r.get(u);m?p=m:(p=t(u),r.set(u,p));for(let d=p.length-1;d>=0;d--){const y=p[d];if(y.filename){l[y.filename]=n[u];break}}return l},{}),o=new Set;try{e.exception.values.forEach(l=>{l.stacktrace.frames.forEach(u=>{u.filename&&o.add(u.filename)})})}catch{}e.debug_meta=e.debug_meta||{},e.debug_meta.images=e.debug_meta.images||[];const s=e.debug_meta.images;o.forEach(l=>{i[l]&&s.push({type:"sourcemap",code_file:l,debug_id:i[l]})})}function Ov(e,t){t.length>0&&(e.sdk=e.sdk||{},e.sdk.integrations=[...e.sdk.integrations||[],...t])}function Yv(e,t,n){if(!e)return null;const r={...e,...e.breadcrumbs&&{breadcrumbs:e.breadcrumbs.map(a=>({...a,...a.data&&{data:Bt(a.data,t,n)}}))},...e.user&&{user:Bt(e.user,t,n)},...e.contexts&&{contexts:Bt(e.contexts,t,n)},...e.extra&&{extra:Bt(e.extra,t,n)}};return e.contexts&&e.contexts.trace&&r.contexts&&(r.contexts.trace=e.contexts.trace,e.contexts.trace.data&&(r.contexts.trace.data=Bt(e.contexts.trace.data,t,n))),e.spans&&(r.spans=e.spans.map(a=>(a.data&&(a.data=Bt(a.data,t,n)),a))),r}const th="Not capturing exception because it's already been captured.";class un{__init(){this._integrations={}}__init2(){this._integrationsInitialized=!1}__init3(){this._numProcessing=0}__init4(){this._outcomes={}}__init5(){this._hooks={}}constructor(t){if(un.prototype.__init.call(this),un.prototype.__init2.call(this),un.prototype.__init3.call(this),un.prototype.__init4.call(this),un.prototype.__init5.call(this),this._options=t,t.dsn?this._dsn=km(t.dsn):(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.warn("No DSN provided, client will not do anything."),this._dsn){const n=jv(this._dsn,t);this._transport=t.transport({recordDroppedEvent:this.recordDroppedEvent.bind(this),...t.transportOptions,url:n})}}captureException(t,n,r){if(Am(t)){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.log(th);return}let a=n&&n.event_id;return this._process(this.eventFromException(t,n).then(i=>this._captureEvent(i,n,r)).then(i=>{a=i})),a}captureMessage(t,n,r,a){let i=r&&r.event_id;const o=gm(t)?this.eventFromMessage(String(t),n,r):this.eventFromException(t,r);return this._process(o.then(s=>this._captureEvent(s,r,a)).then(s=>{i=s})),i}captureEvent(t,n,r){if(n&&n.originalException&&Am(n.originalException)){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.log(th);return}let a=n&&n.event_id;return this._process(this._captureEvent(t,n,r).then(i=>{a=i})),a}captureSession(t){if(!this._isEnabled()){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.warn("SDK not enabled, will not capture session.");return}typeof t.release!="string"?(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.warn("Discarded session because of missing or non-string release"):(this.sendSession(t),Qn(t,{init:!1}))}getDsn(){return this._dsn}getOptions(){return this._options}getSdkMetadata(){return this._options._metadata}getTransport(){return this._transport}flush(t){const n=this._transport;return n?this._isClientDoneProcessing(t).then(r=>n.flush(t).then(a=>r&&a)):ln(!0)}close(t){return this.flush(t).then(n=>(this.getOptions().enabled=!1,n))}setupIntegrations(){this._isEnabled()&&!this._integrationsInitialized&&(this._integrations=Mv(this._options.integrations),this._integrationsInitialized=!0)}getIntegrationById(t){return this._integrations[t]}getIntegration(t){try{return this._integrations[t.id]||null}catch{return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.warn(`Cannot retrieve integration ${t.id} from the current Client`),null}}addIntegration(t){Zm(t,this._integrations)}sendEvent(t,n={}){if(this._dsn){let r=Iv(t,this._dsn,this._options._metadata,this._options.tunnel);for(const i of n.attachments||[])r=ov(r,cv(i,this._options.transportOptions&&this._options.transportOptions.textEncoder));const a=this._sendEnvelope(r);a&&a.then(i=>this.emit("afterSendEvent",t,i),null)}}sendSession(t){if(this._dsn){const n=Tv(t,this._dsn,this._options._metadata,this._options.tunnel);this._sendEnvelope(n)}}recordDroppedEvent(t,n,r){if(this._options.sendClientReports){const a=`${t}:${n}`;(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.log(`Adding outcome: "${a}"`),this._outcomes[a]=this._outcomes[a]+1||1}}on(t,n){this._hooks[t]||(this._hooks[t]=[]),this._hooks[t].push(n)}emit(t,...n){this._hooks[t]&&this._hooks[t].forEach(r=>r(...n))}_updateSessionFromEvent(t,n){let r=!1,a=!1;const i=n.exception&&n.exception.values;if(i){a=!0;for(const l of i){const u=l.mechanism;if(u&&u.handled===!1){r=!0;break}}}const o=t.status==="ok";(o&&t.errors===0||o&&r)&&(Qn(t,{...r&&{status:"crashed"},errors:t.errors||Number(a||r)}),this.captureSession(t))}_isClientDoneProcessing(t){return new we(n=>{let r=0;const a=1,i=setInterval(()=>{this._numProcessing==0?(clearInterval(i),n(!0)):(r+=a,t&&r>=t&&(clearInterval(i),n(!1)))},a)})}_isEnabled(){return this.getOptions().enabled!==!1&&this._dsn!==void 0}_prepareEvent(t,n,r){const a=this.getOptions(),i=Object.keys(this._integrations);return!n.integrations&&i.length>0&&(n.integrations=i),Rv(a,t,n,r)}_captureEvent(t,n={},r){return this._processEvent(t,n,r).then(a=>a.event_id,a=>{if(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__){const i=a;i.logLevel==="log"?I.log(i.message):I.warn(i)}})}_processEvent(t,n,r){const a=this.getOptions(),{sampleRate:i}=a;if(!this._isEnabled())return Gi(new Ve("SDK not enabled, will not capture event.","log"));const o=rh(t),s=nh(t),l=t.type||"error",u=`before send for type \`${l}\``;if(s&&typeof i=="number"&&Math.random()>i)return this.recordDroppedEvent("sample_rate","error",t),Gi(new Ve(`Discarding event because it's not included in the random sample (sampling rate = ${i})`,"log"));const p=l==="replay_event"?"replay":l;return this._prepareEvent(t,n,r).then(m=>{if(m===null)throw this.recordDroppedEvent("event_processor",p,t),new Ve("An event processor returned `null`, will not send event.","log");if(n.data&&n.data.__sentry__===!0)return m;const y=Bv(a,m,n);return Fv(y,u)}).then(m=>{if(m===null)throw this.recordDroppedEvent("before_send",p,t),new Ve(`${u} returned \`null\`, will not send event.`,"log");const d=r&&r.getSession();!o&&d&&this._updateSessionFromEvent(d,m);const y=m.transaction_info;if(o&&y&&m.transaction!==t.transaction){const b="custom";m.transaction_info={...y,source:b}}return this.sendEvent(m,n),m}).then(null,m=>{throw m instanceof Ve?m:(this.captureException(m,{data:{__sentry__:!0},originalException:m}),new Ve(`Event processing pipeline threw an error, original event will not be sent. Details have been sent as a new event.
52
- Reason: ${m}`))})}_process(t){this._numProcessing++,t.then(n=>(this._numProcessing--,n),n=>(this._numProcessing--,n))}_sendEnvelope(t){if(this._transport&&this._dsn)return this.emit("beforeEnvelope",t),this._transport.send(t).then(null,n=>{(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.error("Error while sending event:",n)});(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.error("Transport disabled")}_clearOutcomes(){const t=this._outcomes;return this._outcomes={},Object.keys(t).map(n=>{const[r,a]=n.split(":");return{reason:r,category:a,quantity:t[n]}})}}function Fv(e,t){const n=`${t} must return \`null\` or a valid event.`;if(ec(e))return e.then(r=>{if(!Gn(r)&&r!==null)throw new Ve(n);return r},r=>{throw new Ve(`${t} rejected with ${r}`)});if(!Gn(e)&&e!==null)throw new Ve(n);return e}function Bv(e,t,n){const{beforeSend:r,beforeSendTransaction:a}=e;return nh(t)&&r?r(t,n):rh(t)&&a?a(t,n):t}function nh(e){return e.type===void 0}function rh(e){return e.type==="transaction"}function Hv(e,t){t.debug===!0&&(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__?I.enable():console.warn("[Sentry] Cannot initialize SDK with `debug` option using a non-debug bundle."));const n=ee();n.getScope().update(t.initialScope);const a=new e(t);n.bindClient(a)}const qv=30;function ah(e,t,n=tv(e.bufferSize||qv)){let r={};const a=o=>n.drain(o);function i(o){const s=[];if(Om(o,(m,d)=>{const y=Ym(d);if(gv(r,y)){const b=ih(m,d);e.recordDroppedEvent("ratelimit_backoff",y,b)}else s.push(m)}),s.length===0)return ln();const l=ba(o[0],s),u=m=>{Om(l,(d,y)=>{const b=ih(d,y);e.recordDroppedEvent(m,Ym(y),b)})},p=()=>t({body:sv(l,e.textEncoder)}).then(m=>(m.statusCode!==void 0&&(m.statusCode<200||m.statusCode>=300)&&(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.warn(`Sentry responded with status code ${m.statusCode} to sent event.`),r=yv(r,m),m),m=>{throw u("network_error"),m});return n.add(p).then(m=>m,m=>{if(m instanceof Ve)return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.error("Skipped sending event because buffer is full."),u("queue_overflow"),ln();throw m})}return i.__sentry__baseTransport__=!0,{send:i,flush:a}}function ih(e,t){if(!(t!=="event"&&t!=="transaction"))return Array.isArray(e)?e[1]:void 0}const Qi="7.54.0";let oh;class va{constructor(){va.prototype.__init.call(this)}static __initStatic(){this.id="FunctionToString"}__init(){this.name=va.id}setupOnce(){oh=Function.prototype.toString;try{Function.prototype.toString=function(...t){const n=ac(this)||this;return oh.apply(n,t)}}catch{}}}va.__initStatic();const Vv=[/^Script error\.?$/,/^Javascript error: Script error\.? on line 0$/],Wv=[/^.*healthcheck.*$/,/^.*healthy.*$/,/^.*live.*$/,/^.*ready.*$/,/^.*heartbeat.*$/,/^.*\/health$/,/^.*\/healthz$/];class Xn{static __initStatic(){this.id="InboundFilters"}__init(){this.name=Xn.id}constructor(t={}){this._options=t,Xn.prototype.__init.call(this)}setupOnce(t,n){const r=a=>{const i=n();if(i){const o=i.getIntegration(Xn);if(o){const s=i.getClient(),l=s?s.getOptions():{},u=Gv(o._options,l);return Kv(a,u)?null:a}}return a};r.id=this.name,t(r)}}Xn.__initStatic();function Gv(e={},t={}){return{allowUrls:[...e.allowUrls||[],...t.allowUrls||[]],denyUrls:[...e.denyUrls||[],...t.denyUrls||[]],ignoreErrors:[...e.ignoreErrors||[],...t.ignoreErrors||[],...e.disableErrorDefaults?[]:Vv],ignoreTransactions:[...e.ignoreTransactions||[],...t.ignoreTransactions||[],...e.disableTransactionDefaults?[]:Wv],ignoreInternal:e.ignoreInternal!==void 0?e.ignoreInternal:!0}}function Kv(e,t){return t.ignoreInternal&&tk(e)?((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.warn(`Event dropped due to being internal Sentry Error.
53
- Event: ${Ft(e)}`),!0):Jv(e,t.ignoreErrors)?((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.warn(`Event dropped due to being matched by \`ignoreErrors\` option.
54
- Event: ${Ft(e)}`),!0):Qv(e,t.ignoreTransactions)?((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.warn(`Event dropped due to being matched by \`ignoreTransactions\` option.
55
- Event: ${Ft(e)}`),!0):Xv(e,t.denyUrls)?((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.warn(`Event dropped due to being matched by \`denyUrls\` option.
56
- Event: ${Ft(e)}.
51
+ `),r}traceHeaders(){return this._callExtensionMethod("traceHeaders")}captureSession(t=!1){if(t)return this.endSession();this._sendSessionUpdate()}endSession(){const n=this.getStackTop().scope,r=n.getSession();r&&vv(r),this._sendSessionUpdate(),n.setSession()}startSession(t){const{scope:n,client:r}=this.getStackTop(),{release:a,environment:i=Bm}=r&&r.getOptions()||{},{userAgent:o}=Le.navigator||{},s=bv({release:a,environment:i,user:n.getUser(),...o&&{userAgent:o},...t}),l=n.getSession&&n.getSession();return l&&l.status==="ok"&&Qn(l,{status:"exited"}),this.endSession(),n.setSession(s),s}shouldSendDefaultPii(){const t=this.getClient(),n=t&&t.getOptions();return!!(n&&n.sendDefaultPii)}_sendSessionUpdate(){const{scope:t,client:n}=this.getStackTop(),r=t.getSession();r&&n&&n.captureSession&&n.captureSession(r)}_withClient(t){const{scope:n,client:r}=this.getStackTop();r&&t(r,n)}_callExtensionMethod(t,...n){const a=Ji().__SENTRY__;if(a&&a.extensions&&typeof a.extensions[t]=="function")return a.extensions[t].apply(this,n);(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.warn(`Extension method ${t} couldn't be found, doing nothing.`)}}function Ji(){return Le.__SENTRY__=Le.__SENTRY__||{extensions:{},hub:void 0},Le}function Wm(e){const t=Ji(),n=bc(t);return Gm(t,e),n}function ee(){const e=Ji();if(e.__SENTRY__&&e.__SENTRY__.acs){const t=e.__SENTRY__.acs.getCurrentHub();if(t)return t}return Sv(e)}function Sv(e=Ji()){return(!Ev(e)||bc(e).isOlderThan(qm))&&Gm(e,new Vm),bc(e)}function Ev(e){return!!(e&&e.__SENTRY__&&e.__SENTRY__.hub)}function bc(e){return tc("hub",()=>new Vm,e)}function Gm(e,t){if(!e)return!1;const n=e.__SENTRY__=e.__SENTRY__||{};return n.hub=t,!0}function Km(e,t){return ee().captureException(e,{captureContext:t})}function Jm(e){ee().withScope(e)}const Cv="7";function Qm(e){const t=e.protocol?`${e.protocol}:`:"",n=e.port?`:${e.port}`:"";return`${t}//${e.host}${n}${e.path?`/${e.path}`:""}/api/`}function $v(e){return`${Qm(e)}${e.projectId}/envelope/`}function _v(e,t){return jb({sentry_key:e.publicKey,sentry_version:Cv,...t&&{sentry_client:`${t.name}/${t.version}`}})}function jv(e,t={}){const n=typeof t=="string"?t:t.tunnel,r=typeof t=="string"||!t._metadata?void 0:t._metadata.sdk;return n||`${$v(e)}?${_v(e,r)}`}function Pv(e,t){const n=km(e);if(!n)return"";const r=`${Qm(n)}embed/error-page/`;let a=`dsn=${ma(n)}`;for(const i in t)if(i!=="dsn")if(i==="user"){const o=t.user;if(!o)continue;o.name&&(a+=`&name=${encodeURIComponent(o.name)}`),o.email&&(a+=`&email=${encodeURIComponent(o.email)}`)}else a+=`&${encodeURIComponent(i)}=${encodeURIComponent(t[i])}`;return`${r}?${a}`}function Nv(e,t){return t&&(e.sdk=e.sdk||{},e.sdk.name=e.sdk.name||t.name,e.sdk.version=e.sdk.version||t.version,e.sdk.integrations=[...e.sdk.integrations||[],...t.integrations||[]],e.sdk.packages=[...e.sdk.packages||[],...t.packages||[]]),e}function Tv(e,t,n,r){const a=Ym(n),i={sent_at:new Date().toISOString(),...a&&{sdk:a},...!!r&&{dsn:ma(t)}},o="aggregates"in e?[{type:"sessions"},e]:[{type:"session"},e.toJSON()];return ba(i,[o])}function Iv(e,t,n,r){const a=Ym(n),i=e.type&&e.type!=="replay_event"?e.type:"event";Nv(e,n&&n.sdk);const o=dv(e,a,r,t);return delete e.sdkProcessingMetadata,ba(o,[[{type:i},e]])}const Xm=[];function Dv(e){const t={};return e.forEach(n=>{const{name:r}=n,a=t[r];a&&!a.isDefaultInstance&&n.isDefaultInstance||(t[r]=n)}),Object.keys(t).map(n=>t[n])}function Av(e){const t=e.defaultIntegrations||[],n=e.integrations;t.forEach(o=>{o.isDefaultInstance=!0});let r;Array.isArray(n)?r=[...t,...n]:typeof n=="function"?r=Mm(n(t)):r=t;const a=Dv(r),i=zv(a,o=>o.name==="Debug");if(i!==-1){const[o]=a.splice(i,1);a.push(o)}return a}function Mv(e){const t={};return e.forEach(n=>{n&&Zm(n,t)}),t}function Zm(e,t){t[e.name]=e,Xm.indexOf(e.name)===-1&&(e.setupOnce(yc,ee),Xm.push(e.name),(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.log(`Integration installed: ${e.name}`))}function zv(e,t){for(let n=0;n<e.length;n++)if(t(e[n])===!0)return n;return-1}function Rv(e,t,n,r){const{normalizeDepth:a=3,normalizeMaxBreadth:i=1e3}=e,o={...t,event_id:t.event_id||n.event_id||Jn(),timestamp:t.timestamp||Ki()},s=n.integrations||e.integrations.map(p=>p.name);Lv(o,e),Ov(o,s),t.type===void 0&&Uv(o,e.stackParser);let l=r;n.captureContext&&(l=cn.clone(l).update(n.captureContext));let u=ln(o);if(l){if(l.getAttachments){const p=[...n.attachments||[],...l.getAttachments()];p.length&&(n.attachments=p)}u=l.applyToEvent(o,n)}return u.then(p=>typeof a=="number"&&a>0?Fv(p,a,i):p)}function Lv(e,t){const{environment:n,release:r,dist:a,maxValueLength:i=250}=t;"environment"in e||(e.environment="environment"in t?n:Bm),e.release===void 0&&r!==void 0&&(e.release=r),e.dist===void 0&&a!==void 0&&(e.dist=a),e.message&&(e.message=ha(e.message,i));const o=e.exception&&e.exception.values&&e.exception.values[0];o&&o.value&&(o.value=ha(o.value,i));const s=e.request;s&&s.url&&(s.url=ha(s.url,i))}const eh=new WeakMap;function Uv(e,t){const n=Le._sentryDebugIds;if(!n)return;let r;const a=eh.get(t);a?r=a:(r=new Map,eh.set(t,r));const i=Object.keys(n).reduce((l,u)=>{let p;const m=r.get(u);m?p=m:(p=t(u),r.set(u,p));for(let d=p.length-1;d>=0;d--){const y=p[d];if(y.filename){l[y.filename]=n[u];break}}return l},{}),o=new Set;try{e.exception.values.forEach(l=>{l.stacktrace.frames.forEach(u=>{u.filename&&o.add(u.filename)})})}catch{}e.debug_meta=e.debug_meta||{},e.debug_meta.images=e.debug_meta.images||[];const s=e.debug_meta.images;o.forEach(l=>{i[l]&&s.push({type:"sourcemap",code_file:l,debug_id:i[l]})})}function Ov(e,t){t.length>0&&(e.sdk=e.sdk||{},e.sdk.integrations=[...e.sdk.integrations||[],...t])}function Fv(e,t,n){if(!e)return null;const r={...e,...e.breadcrumbs&&{breadcrumbs:e.breadcrumbs.map(a=>({...a,...a.data&&{data:Bt(a.data,t,n)}}))},...e.user&&{user:Bt(e.user,t,n)},...e.contexts&&{contexts:Bt(e.contexts,t,n)},...e.extra&&{extra:Bt(e.extra,t,n)}};return e.contexts&&e.contexts.trace&&r.contexts&&(r.contexts.trace=e.contexts.trace,e.contexts.trace.data&&(r.contexts.trace.data=Bt(e.contexts.trace.data,t,n))),e.spans&&(r.spans=e.spans.map(a=>(a.data&&(a.data=Bt(a.data,t,n)),a))),r}const th="Not capturing exception because it's already been captured.";class un{__init(){this._integrations={}}__init2(){this._integrationsInitialized=!1}__init3(){this._numProcessing=0}__init4(){this._outcomes={}}__init5(){this._hooks={}}constructor(t){if(un.prototype.__init.call(this),un.prototype.__init2.call(this),un.prototype.__init3.call(this),un.prototype.__init4.call(this),un.prototype.__init5.call(this),this._options=t,t.dsn?this._dsn=km(t.dsn):(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.warn("No DSN provided, client will not do anything."),this._dsn){const n=jv(this._dsn,t);this._transport=t.transport({recordDroppedEvent:this.recordDroppedEvent.bind(this),...t.transportOptions,url:n})}}captureException(t,n,r){if(Am(t)){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.log(th);return}let a=n&&n.event_id;return this._process(this.eventFromException(t,n).then(i=>this._captureEvent(i,n,r)).then(i=>{a=i})),a}captureMessage(t,n,r,a){let i=r&&r.event_id;const o=gm(t)?this.eventFromMessage(String(t),n,r):this.eventFromException(t,r);return this._process(o.then(s=>this._captureEvent(s,r,a)).then(s=>{i=s})),i}captureEvent(t,n,r){if(n&&n.originalException&&Am(n.originalException)){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.log(th);return}let a=n&&n.event_id;return this._process(this._captureEvent(t,n,r).then(i=>{a=i})),a}captureSession(t){if(!this._isEnabled()){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.warn("SDK not enabled, will not capture session.");return}typeof t.release!="string"?(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.warn("Discarded session because of missing or non-string release"):(this.sendSession(t),Qn(t,{init:!1}))}getDsn(){return this._dsn}getOptions(){return this._options}getSdkMetadata(){return this._options._metadata}getTransport(){return this._transport}flush(t){const n=this._transport;return n?this._isClientDoneProcessing(t).then(r=>n.flush(t).then(a=>r&&a)):ln(!0)}close(t){return this.flush(t).then(n=>(this.getOptions().enabled=!1,n))}setupIntegrations(){this._isEnabled()&&!this._integrationsInitialized&&(this._integrations=Mv(this._options.integrations),this._integrationsInitialized=!0)}getIntegrationById(t){return this._integrations[t]}getIntegration(t){try{return this._integrations[t.id]||null}catch{return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.warn(`Cannot retrieve integration ${t.id} from the current Client`),null}}addIntegration(t){Zm(t,this._integrations)}sendEvent(t,n={}){if(this._dsn){let r=Iv(t,this._dsn,this._options._metadata,this._options.tunnel);for(const i of n.attachments||[])r=ov(r,cv(i,this._options.transportOptions&&this._options.transportOptions.textEncoder));const a=this._sendEnvelope(r);a&&a.then(i=>this.emit("afterSendEvent",t,i),null)}}sendSession(t){if(this._dsn){const n=Tv(t,this._dsn,this._options._metadata,this._options.tunnel);this._sendEnvelope(n)}}recordDroppedEvent(t,n,r){if(this._options.sendClientReports){const a=`${t}:${n}`;(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.log(`Adding outcome: "${a}"`),this._outcomes[a]=this._outcomes[a]+1||1}}on(t,n){this._hooks[t]||(this._hooks[t]=[]),this._hooks[t].push(n)}emit(t,...n){this._hooks[t]&&this._hooks[t].forEach(r=>r(...n))}_updateSessionFromEvent(t,n){let r=!1,a=!1;const i=n.exception&&n.exception.values;if(i){a=!0;for(const l of i){const u=l.mechanism;if(u&&u.handled===!1){r=!0;break}}}const o=t.status==="ok";(o&&t.errors===0||o&&r)&&(Qn(t,{...r&&{status:"crashed"},errors:t.errors||Number(a||r)}),this.captureSession(t))}_isClientDoneProcessing(t){return new we(n=>{let r=0;const a=1,i=setInterval(()=>{this._numProcessing==0?(clearInterval(i),n(!0)):(r+=a,t&&r>=t&&(clearInterval(i),n(!1)))},a)})}_isEnabled(){return this.getOptions().enabled!==!1&&this._dsn!==void 0}_prepareEvent(t,n,r){const a=this.getOptions(),i=Object.keys(this._integrations);return!n.integrations&&i.length>0&&(n.integrations=i),Rv(a,t,n,r)}_captureEvent(t,n={},r){return this._processEvent(t,n,r).then(a=>a.event_id,a=>{if(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__){const i=a;i.logLevel==="log"?I.log(i.message):I.warn(i)}})}_processEvent(t,n,r){const a=this.getOptions(),{sampleRate:i}=a;if(!this._isEnabled())return Gi(new Ve("SDK not enabled, will not capture event.","log"));const o=rh(t),s=nh(t),l=t.type||"error",u=`before send for type \`${l}\``;if(s&&typeof i=="number"&&Math.random()>i)return this.recordDroppedEvent("sample_rate","error",t),Gi(new Ve(`Discarding event because it's not included in the random sample (sampling rate = ${i})`,"log"));const p=l==="replay_event"?"replay":l;return this._prepareEvent(t,n,r).then(m=>{if(m===null)throw this.recordDroppedEvent("event_processor",p,t),new Ve("An event processor returned `null`, will not send event.","log");if(n.data&&n.data.__sentry__===!0)return m;const y=Bv(a,m,n);return Yv(y,u)}).then(m=>{if(m===null)throw this.recordDroppedEvent("before_send",p,t),new Ve(`${u} returned \`null\`, will not send event.`,"log");const d=r&&r.getSession();!o&&d&&this._updateSessionFromEvent(d,m);const y=m.transaction_info;if(o&&y&&m.transaction!==t.transaction){const b="custom";m.transaction_info={...y,source:b}}return this.sendEvent(m,n),m}).then(null,m=>{throw m instanceof Ve?m:(this.captureException(m,{data:{__sentry__:!0},originalException:m}),new Ve(`Event processing pipeline threw an error, original event will not be sent. Details have been sent as a new event.
52
+ Reason: ${m}`))})}_process(t){this._numProcessing++,t.then(n=>(this._numProcessing--,n),n=>(this._numProcessing--,n))}_sendEnvelope(t){if(this._transport&&this._dsn)return this.emit("beforeEnvelope",t),this._transport.send(t).then(null,n=>{(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.error("Error while sending event:",n)});(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.error("Transport disabled")}_clearOutcomes(){const t=this._outcomes;return this._outcomes={},Object.keys(t).map(n=>{const[r,a]=n.split(":");return{reason:r,category:a,quantity:t[n]}})}}function Yv(e,t){const n=`${t} must return \`null\` or a valid event.`;if(ec(e))return e.then(r=>{if(!Gn(r)&&r!==null)throw new Ve(n);return r},r=>{throw new Ve(`${t} rejected with ${r}`)});if(!Gn(e)&&e!==null)throw new Ve(n);return e}function Bv(e,t,n){const{beforeSend:r,beforeSendTransaction:a}=e;return nh(t)&&r?r(t,n):rh(t)&&a?a(t,n):t}function nh(e){return e.type===void 0}function rh(e){return e.type==="transaction"}function Hv(e,t){t.debug===!0&&(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__?I.enable():console.warn("[Sentry] Cannot initialize SDK with `debug` option using a non-debug bundle."));const n=ee();n.getScope().update(t.initialScope);const a=new e(t);n.bindClient(a)}const qv=30;function ah(e,t,n=tv(e.bufferSize||qv)){let r={};const a=o=>n.drain(o);function i(o){const s=[];if(Om(o,(m,d)=>{const y=Fm(d);if(gv(r,y)){const b=ih(m,d);e.recordDroppedEvent("ratelimit_backoff",y,b)}else s.push(m)}),s.length===0)return ln();const l=ba(o[0],s),u=m=>{Om(l,(d,y)=>{const b=ih(d,y);e.recordDroppedEvent(m,Fm(y),b)})},p=()=>t({body:sv(l,e.textEncoder)}).then(m=>(m.statusCode!==void 0&&(m.statusCode<200||m.statusCode>=300)&&(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.warn(`Sentry responded with status code ${m.statusCode} to sent event.`),r=yv(r,m),m),m=>{throw u("network_error"),m});return n.add(p).then(m=>m,m=>{if(m instanceof Ve)return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.error("Skipped sending event because buffer is full."),u("queue_overflow"),ln();throw m})}return i.__sentry__baseTransport__=!0,{send:i,flush:a}}function ih(e,t){if(!(t!=="event"&&t!=="transaction"))return Array.isArray(e)?e[1]:void 0}const Qi="7.54.0";let oh;class va{constructor(){va.prototype.__init.call(this)}static __initStatic(){this.id="FunctionToString"}__init(){this.name=va.id}setupOnce(){oh=Function.prototype.toString;try{Function.prototype.toString=function(...t){const n=ac(this)||this;return oh.apply(n,t)}}catch{}}}va.__initStatic();const Vv=[/^Script error\.?$/,/^Javascript error: Script error\.? on line 0$/],Wv=[/^.*healthcheck.*$/,/^.*healthy.*$/,/^.*live.*$/,/^.*ready.*$/,/^.*heartbeat.*$/,/^.*\/health$/,/^.*\/healthz$/];class Xn{static __initStatic(){this.id="InboundFilters"}__init(){this.name=Xn.id}constructor(t={}){this._options=t,Xn.prototype.__init.call(this)}setupOnce(t,n){const r=a=>{const i=n();if(i){const o=i.getIntegration(Xn);if(o){const s=i.getClient(),l=s?s.getOptions():{},u=Gv(o._options,l);return Kv(a,u)?null:a}}return a};r.id=this.name,t(r)}}Xn.__initStatic();function Gv(e={},t={}){return{allowUrls:[...e.allowUrls||[],...t.allowUrls||[]],denyUrls:[...e.denyUrls||[],...t.denyUrls||[]],ignoreErrors:[...e.ignoreErrors||[],...t.ignoreErrors||[],...e.disableErrorDefaults?[]:Vv],ignoreTransactions:[...e.ignoreTransactions||[],...t.ignoreTransactions||[],...e.disableTransactionDefaults?[]:Wv],ignoreInternal:e.ignoreInternal!==void 0?e.ignoreInternal:!0}}function Kv(e,t){return t.ignoreInternal&&tk(e)?((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.warn(`Event dropped due to being internal Sentry Error.
53
+ Event: ${Yt(e)}`),!0):Jv(e,t.ignoreErrors)?((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.warn(`Event dropped due to being matched by \`ignoreErrors\` option.
54
+ Event: ${Yt(e)}`),!0):Qv(e,t.ignoreTransactions)?((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.warn(`Event dropped due to being matched by \`ignoreTransactions\` option.
55
+ Event: ${Yt(e)}`),!0):Xv(e,t.denyUrls)?((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.warn(`Event dropped due to being matched by \`denyUrls\` option.
56
+ Event: ${Yt(e)}.
57
57
  Url: ${Xi(e)}`),!0):Zv(e,t.allowUrls)?!1:((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.warn(`Event dropped due to not being matched by \`allowUrls\` option.
58
- Event: ${Ft(e)}.
59
- Url: ${Xi(e)}`),!0)}function Jv(e,t){return e.type||!t||!t.length?!1:ek(e).some(n=>Yi(n,t))}function Qv(e,t){if(e.type!=="transaction"||!t||!t.length)return!1;const n=e.transaction;return n?Yi(n,t):!1}function Xv(e,t){if(!t||!t.length)return!1;const n=Xi(e);return n?Yi(n,t):!1}function Zv(e,t){if(!t||!t.length)return!0;const n=Xi(e);return n?Yi(n,t):!0}function ek(e){if(e.message)return[e.message];if(e.exception){const{values:t}=e.exception;try{const{type:n="",value:r=""}=t&&t[t.length-1]||{};return[`${r}`,`${n}: ${r}`]}catch{return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.error(`Cannot extract message for event ${Ft(e)}`),[]}}return[]}function tk(e){try{return e.exception.values[0].type==="SentryError"}catch{}return!1}function nk(e=[]){for(let t=e.length-1;t>=0;t--){const n=e[t];if(n&&n.filename!=="<anonymous>"&&n.filename!=="[native code]")return n.filename||null}return null}function Xi(e){try{let t;try{t=e.exception.values[0].stacktrace.frames}catch{}return t?nk(t):null}catch{return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.error(`Cannot extract url for event ${Ft(e)}`),null}}const L=Le;let vc=0;function sh(){return vc>0}function rk(){vc++,setTimeout(()=>{vc--})}function Zn(e,t={},n){if(typeof e!="function")return e;try{const a=e.__sentry_wrapped__;if(a)return a;if(ac(e))return e}catch{return e}const r=function(){const a=Array.prototype.slice.call(arguments);try{n&&typeof n=="function"&&n.apply(this,arguments);const i=a.map(o=>Zn(o,t));return e.apply(this,i)}catch(i){throw rk(),Jm(o=>{o.addEventProcessor(s=>(t.mechanism&&(dc(s,void 0,void 0),ya(s,t.mechanism)),s.extra={...s.extra,arguments:a},s)),Km(i)}),i}};try{for(const a in e)Object.prototype.hasOwnProperty.call(e,a)&&(r[a]=e[a])}catch{}xm(r,e),rc(e,"__sentry_wrapped__",r);try{Object.getOwnPropertyDescriptor(r,"name").configurable&&Object.defineProperty(r,"name",{get(){return e.name}})}catch{}return r}function lh(e,t){const n=wc(e,t),r={type:t&&t.name,value:sk(t)};return n.length&&(r.stacktrace={frames:n}),r.type===void 0&&r.value===""&&(r.value="Unrecoverable error caught"),r}function ak(e,t,n,r){const i=ee().getClient(),o=i&&i.getOptions().normalizeDepth,s={exception:{values:[{type:Zl(t)?t.constructor.name:r?"UnhandledRejection":"Error",value:`Non-Error ${r?"promise rejection":"exception"} captured with keys: ${Pb(t)}`}]},extra:{__serialized__:zm(t,o)}};if(n){const l=wc(e,n);l.length&&(s.exception.values[0].stacktrace={frames:l})}return s}function kc(e,t){return{exception:{values:[lh(e,t)]}}}function wc(e,t){const n=t.stacktrace||t.stack||"",r=ok(t);try{return e(n,r)}catch{}return[]}const ik=/Minified React error #\d+;/i;function ok(e){if(e){if(typeof e.framesToPop=="number")return e.framesToPop;if(ik.test(e.message))return 1}return 0}function sk(e){const t=e&&e.message;return t?t.error&&typeof t.error.message=="string"?t.error.message:t:"No error message"}function lk(e,t,n,r){const a=n&&n.syntheticException||void 0,i=xc(e,t,a,r);return ya(i),i.level="error",n&&n.event_id&&(i.event_id=n.event_id),ln(i)}function ck(e,t,n="info",r,a){const i=r&&r.syntheticException||void 0,o=Sc(e,t,i,a);return o.level=n,r&&r.event_id&&(o.event_id=r.event_id),ln(o)}function xc(e,t,n,r,a){let i;if(hm(t)&&t.error)return kc(e,t.error);if(fm(t)||mb(t)){const o=t;if("stack"in t)i=kc(e,t);else{const s=o.name||(fm(o)?"DOMError":"DOMException"),l=o.message?`${s}: ${o.message}`:s;i=Sc(e,l,n,r),dc(i,l)}return"code"in o&&(i.tags={...i.tags,"DOMException.code":`${o.code}`}),i}return Xl(t)?kc(e,t):Gn(t)||Zl(t)?(i=ak(e,t,n,a),ya(i,{synthetic:!0}),i):(i=Sc(e,t,n,r),dc(i,`${t}`,void 0),ya(i,{synthetic:!0}),i)}function Sc(e,t,n,r){const a={message:t};if(r&&n){const i=wc(e,n);i.length&&(a.exception={values:[{value:t,stacktrace:{frames:i}}]})}return a}const Zi=1024,ch="Breadcrumbs";class ka{static __initStatic(){this.id=ch}__init(){this.name=ka.id}constructor(t){ka.prototype.__init.call(this),this.options={console:!0,dom:!0,fetch:!0,history:!0,sentry:!0,xhr:!0,...t}}setupOnce(){this.options.console&&Yt("console",dk),this.options.dom&&Yt("dom",uk(this.options.dom)),this.options.xhr&&Yt("xhr",pk),this.options.fetch&&Yt("fetch",mk),this.options.history&&Yt("history",hk)}addSentryBreadcrumb(t){this.options.sentry&&ee().addBreadcrumb({category:`sentry.${t.type==="transaction"?"transaction":"event"}`,event_id:t.event_id,level:t.level,message:Ft(t)},{event:t})}}ka.__initStatic();function uk(e){function t(n){let r,a=typeof e=="object"?e.serializeAttribute:void 0,i=typeof e=="object"&&typeof e.maxStringLength=="number"?e.maxStringLength:void 0;i&&i>Zi&&((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.warn(`\`dom.maxStringLength\` cannot exceed ${Zi}, but a value of ${i} was configured. Sentry will use ${Zi} instead.`),i=Zi),typeof a=="string"&&(a=[a]);try{const o=n.event;r=fk(o)?nc(o.target,{keyAttrs:a,maxStringLength:i}):nc(o,{keyAttrs:a,maxStringLength:i})}catch{r="<unknown>"}r.length!==0&&ee().addBreadcrumb({category:`ui.${n.name}`,message:r},{event:n.event,name:n.name,global:n.global})}return t}function dk(e){for(let n=0;n<e.args.length;n++)if(e.args[n]==="ref=Ref<"){e.args[n+1]="viewRef";break}const t={category:"console",data:{arguments:e.args,logger:"console"},level:rv(e.level),message:wm(e.args," ")};if(e.level==="assert")if(e.args[0]===!1)t.message=`Assertion failed: ${wm(e.args.slice(1)," ")||"console.assert"}`,t.data.arguments=e.args.slice(1);else return;ee().addBreadcrumb(t,{input:e.args,level:e.level})}function pk(e){const{startTimestamp:t,endTimestamp:n}=e,r=e.xhr[fa];if(!t||!n||!r)return;const{method:a,url:i,status_code:o,body:s}=r,l={method:a,url:i,status_code:o},u={xhr:e.xhr,input:s,startTimestamp:t,endTimestamp:n};ee().addBreadcrumb({category:"xhr",data:l,type:"http"},u)}function mk(e){const{startTimestamp:t,endTimestamp:n}=e;if(n&&!(e.fetchData.url.match(/sentry_key/)&&e.fetchData.method==="POST"))if(e.error){const r=e.fetchData,a={data:e.error,input:e.args,startTimestamp:t,endTimestamp:n};ee().addBreadcrumb({category:"fetch",data:r,level:"error",type:"http"},a)}else{const r={...e.fetchData,status_code:e.response&&e.response.status},a={input:e.args,response:e.response,startTimestamp:t,endTimestamp:n};ee().addBreadcrumb({category:"fetch",data:r,type:"http"},a)}}function hk(e){let t=e.from,n=e.to;const r=mc(L.location.href);let a=mc(t);const i=mc(n);a.path||(a=r),r.protocol===i.protocol&&r.host===i.host&&(n=i.relative),r.protocol===a.protocol&&r.host===a.host&&(t=a.relative),ee().addBreadcrumb({category:"navigation",data:{from:t,to:n}})}function fk(e){return e&&!!e.target}function gk(e,{metadata:t,tunnel:n,dsn:r}){const a={event_id:e.event_id,sent_at:new Date().toISOString(),...t&&t.sdk&&{sdk:{name:t.sdk.name,version:t.sdk.version}},...!!n&&!!r&&{dsn:ma(r)}},i=yk(e);return ba(a,[i])}function yk(e){return[{type:"user_report"},e]}class bk extends un{constructor(t){const n=L.SENTRY_SDK_SOURCE||Gb();t._metadata=t._metadata||{},t._metadata.sdk=t._metadata.sdk||{name:"sentry.javascript.browser",packages:[{name:`${n}:@sentry/browser`,version:Qi}],version:Qi},super(t),t.sendClientReports&&L.document&&L.document.addEventListener("visibilitychange",()=>{L.document.visibilityState==="hidden"&&this._flushOutcomes()})}eventFromException(t,n){return lk(this._options.stackParser,t,n,this._options.attachStacktrace)}eventFromMessage(t,n="info",r){return ck(this._options.stackParser,t,n,r,this._options.attachStacktrace)}sendEvent(t,n){const r=this.getIntegrationById(ch);r&&r.addSentryBreadcrumb&&r.addSentryBreadcrumb(t),super.sendEvent(t,n)}captureUserFeedback(t){if(!this._isEnabled()){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.warn("SDK not enabled, will not capture user feedback.");return}const n=gk(t,{metadata:this.getSdkMetadata(),dsn:this.getDsn(),tunnel:this.getOptions().tunnel});this._sendEnvelope(n)}_prepareEvent(t,n,r){return t.platform=t.platform||"javascript",super._prepareEvent(t,n,r)}_flushOutcomes(){const t=this._clearOutcomes();if(t.length===0){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.log("No outcomes to send");return}if(!this._dsn){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.log("No dsn provided, will not send outcomes");return}(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.log("Sending outcomes:",t);const n=pv(t,this._options.tunnel&&ma(this._dsn));this._sendEnvelope(n)}}let wa;function vk(){if(wa)return wa;if(cc(L.fetch))return wa=L.fetch.bind(L);const e=L.document;let t=L.fetch;if(e&&typeof e.createElement=="function")try{const n=e.createElement("iframe");n.hidden=!0,e.head.appendChild(n);const r=n.contentWindow;r&&r.fetch&&(t=r.fetch),e.head.removeChild(n)}catch(n){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.warn("Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ",n)}return wa=t.bind(L)}function kk(){wa=void 0}function wk(e,t=vk()){let n=0,r=0;function a(i){const o=i.body.length;n+=o,r++;const s={body:i.body,method:"POST",referrerPolicy:"origin",headers:e.headers,keepalive:n<=6e4&&r<15,...e.fetchOptions};try{return t(e.url,s).then(l=>(n-=o,r--,{statusCode:l.status,headers:{"x-sentry-rate-limits":l.headers.get("X-Sentry-Rate-Limits"),"retry-after":l.headers.get("Retry-After")}}))}catch(l){return kk(),n-=o,r--,Gi(l)}}return ah(e,a)}const xk=4;function Sk(e){function t(n){return new we((r,a)=>{const i=new XMLHttpRequest;i.onerror=a,i.onreadystatechange=()=>{i.readyState===xk&&r({statusCode:i.status,headers:{"x-sentry-rate-limits":i.getResponseHeader("X-Sentry-Rate-Limits"),"retry-after":i.getResponseHeader("Retry-After")}})},i.open("POST",e.url);for(const o in e.headers)Object.prototype.hasOwnProperty.call(e.headers,o)&&i.setRequestHeader(o,e.headers[o]);i.send(n.body)})}return ah(e,t)}const eo="?",Ek=30,Ck=40,$k=50;function Ec(e,t,n,r){const a={filename:e,function:t,in_app:!0};return n!==void 0&&(a.lineno=n),r!==void 0&&(a.colno=r),a}const _k=/^\s*at (?:(.+?\)(?: \[.+\])?|.*?) ?\((?:address at )?)?(?:async )?((?:<anonymous>|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,jk=/\((\S*)(?::(\d+))(?::(\d+))\)/,Pk=[Ek,e=>{const t=_k.exec(e);if(t){if(t[2]&&t[2].indexOf("eval")===0){const i=jk.exec(t[2]);i&&(t[2]=i[1],t[3]=i[2],t[4]=i[3])}const[r,a]=uh(t[1]||eo,t[2]);return Ec(a,r,t[3]?+t[3]:void 0,t[4]?+t[4]:void 0)}}],Nk=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i,Tk=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i,Ik=[$k,e=>{const t=Nk.exec(e);if(t){if(t[3]&&t[3].indexOf(" > eval")>-1){const i=Tk.exec(t[3]);i&&(t[1]=t[1]||"eval",t[3]=i[1],t[4]=i[2],t[5]="")}let r=t[3],a=t[1]||eo;return[a,r]=uh(a,r),Ec(r,a,t[4]?+t[4]:void 0,t[5]?+t[5]:void 0)}}],Dk=/^\s*at (?:((?:\[object object\])?.+) )?\(?((?:[-a-z]+):.*?):(\d+)(?::(\d+))?\)?\s*$/i,Ak=jm(...[Pk,Ik,[Ck,e=>{const t=Dk.exec(e);return t?Ec(t[2],t[1]||eo,+t[3],t[4]?+t[4]:void 0):void 0}]]),uh=(e,t)=>{const n=e.indexOf("safari-extension")!==-1,r=e.indexOf("safari-web-extension")!==-1;return n||r?[e.indexOf("@")!==-1?e.split("@")[0]:eo,n?`safari-extension:${t}`:`safari-web-extension:${t}`]:[e,t]};class Ht{static __initStatic(){this.id="GlobalHandlers"}__init(){this.name=Ht.id}__init2(){this._installFunc={onerror:Mk,onunhandledrejection:zk}}constructor(t){Ht.prototype.__init.call(this),Ht.prototype.__init2.call(this),this._options={onerror:!0,onunhandledrejection:!0,...t}}setupOnce(){Error.stackTraceLimit=50;const t=this._options;for(const n in t){const r=this._installFunc[n];r&&t[n]&&(Uk(n),r(),this._installFunc[n]=void 0)}}}Ht.__initStatic();function Mk(){Yt("error",e=>{const[t,n,r]=mh();if(!t.getIntegration(Ht))return;const{msg:a,url:i,line:o,column:s,error:l}=e;if(sh()||l&&l.__sentry_own_request__)return;const u=l===void 0&&sn(a)?Lk(a,i,o,s):dh(xc(n,l||a,void 0,r,!1),i,o,s);u.level="error",ph(t,l,u,"onerror")})}function zk(){Yt("unhandledrejection",e=>{const[t,n,r]=mh();if(!t.getIntegration(Ht))return;let a=e;try{"reason"in e?a=e.reason:"detail"in e&&"reason"in e.detail&&(a=e.detail.reason)}catch{}if(sh()||a&&a.__sentry_own_request__)return!0;const i=gm(a)?Rk(a):xc(n,a,void 0,r,!0);i.level="error",ph(t,a,i,"onunhandledrejection")})}function Rk(e){return{exception:{values:[{type:"UnhandledRejection",value:`Non-Error promise rejection captured with value: ${String(e)}`}]}}}function Lk(e,t,n,r){const a=/^(?:[Uu]ncaught (?:exception: )?)?(?:((?:Eval|Internal|Range|Reference|Syntax|Type|URI|)Error): )?(.*)$/i;let i=hm(e)?e.message:e,o="Error";const s=i.match(a);return s&&(o=s[1],i=s[2]),dh({exception:{values:[{type:o,value:i}]}},t,n,r)}function dh(e,t,n,r){const a=e.exception=e.exception||{},i=a.values=a.values||[],o=i[0]=i[0]||{},s=o.stacktrace=o.stacktrace||{},l=s.frames=s.frames||[],u=isNaN(parseInt(r,10))?void 0:r,p=isNaN(parseInt(n,10))?void 0:n,m=sn(t)&&t.length>0?t:wb();return l.length===0&&l.push({colno:u,filename:m,function:"?",in_app:!0,lineno:p}),e}function Uk(e){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.log(`Global Handler attached: ${e}`)}function ph(e,t,n,r){ya(n,{handled:!1,type:r}),e.captureEvent(n,{originalException:t})}function mh(){const e=ee(),t=e.getClient(),n=t&&t.getOptions()||{stackParser:()=>[],attachStacktrace:!1};return[e,n.stackParser,n.attachStacktrace]}const Ok=["EventTarget","Window","Node","ApplicationCache","AudioTrackList","ChannelMergerNode","CryptoOperation","EventSource","FileReader","HTMLUnknownElement","IDBDatabase","IDBRequest","IDBTransaction","KeyOperation","MediaController","MessagePort","ModalWindow","Notification","SVGElementInstance","Screen","TextTrack","TextTrackCue","TextTrackList","WebSocket","WebSocketWorker","Worker","XMLHttpRequest","XMLHttpRequestEventTarget","XMLHttpRequestUpload"];class xa{static __initStatic(){this.id="TryCatch"}__init(){this.name=xa.id}constructor(t){xa.prototype.__init.call(this),this._options={XMLHttpRequest:!0,eventTarget:!0,requestAnimationFrame:!0,setInterval:!0,setTimeout:!0,...t}}setupOnce(){this._options.setTimeout&&ce(L,"setTimeout",hh),this._options.setInterval&&ce(L,"setInterval",hh),this._options.requestAnimationFrame&&ce(L,"requestAnimationFrame",Yk),this._options.XMLHttpRequest&&"XMLHttpRequest"in L&&ce(XMLHttpRequest.prototype,"send",Fk);const t=this._options.eventTarget;t&&(Array.isArray(t)?t:Ok).forEach(Bk)}}xa.__initStatic();function hh(e){return function(...t){const n=t[0];return t[0]=Zn(n,{mechanism:{data:{function:Ot(e)},handled:!0,type:"instrument"}}),e.apply(this,t)}}function Yk(e){return function(t){return e.apply(this,[Zn(t,{mechanism:{data:{function:"requestAnimationFrame",handler:Ot(e)},handled:!0,type:"instrument"}})])}}function Fk(e){return function(...t){const n=this;return["onload","onerror","onprogress","onreadystatechange"].forEach(a=>{a in n&&typeof n[a]=="function"&&ce(n,a,function(i){const o={mechanism:{data:{function:a,handler:Ot(i)},handled:!0,type:"instrument"}},s=ac(i);return s&&(o.mechanism.data.handler=Ot(s)),Zn(i,o)})}),e.apply(this,t)}}function Bk(e){const t=L,n=t[e]&&t[e].prototype;!n||!n.hasOwnProperty||!n.hasOwnProperty("addEventListener")||(ce(n,"addEventListener",function(r){return function(a,i,o){try{typeof i.handleEvent=="function"&&(i.handleEvent=Zn(i.handleEvent,{mechanism:{data:{function:"handleEvent",handler:Ot(i),target:e},handled:!0,type:"instrument"}}))}catch{}return r.apply(this,[a,Zn(i,{mechanism:{data:{function:"addEventListener",handler:Ot(i),target:e},handled:!0,type:"instrument"}}),o])}}),ce(n,"removeEventListener",function(r){return function(a,i,o){const s=i;try{const l=s&&s.__sentry_wrapped__;l&&r.call(this,a,l,o)}catch{}return r.call(this,a,s,o)}}))}const Hk="cause",qk=5;class er{static __initStatic(){this.id="LinkedErrors"}__init(){this.name=er.id}constructor(t={}){er.prototype.__init.call(this),this._key=t.key||Hk,this._limit=t.limit||qk}setupOnce(){const t=ee().getClient();t&&yc((n,r)=>{const a=ee().getIntegration(er);return a?Vk(t.getOptions().stackParser,a._key,a._limit,n,r):n})}}er.__initStatic();function Vk(e,t,n,r,a){if(!r.exception||!r.exception.values||!a||!Kn(a.originalException,Error))return r;const i=fh(e,n,a.originalException,t);return r.exception.values=[...i,...r.exception.values],r}function fh(e,t,n,r,a=[]){if(!Kn(n[r],Error)||a.length+1>=t)return a;const i=lh(e,n[r]);return fh(e,t,n[r],r,[i,...a])}class tr{constructor(){tr.prototype.__init.call(this)}static __initStatic(){this.id="HttpContext"}__init(){this.name=tr.id}setupOnce(){yc(t=>{if(ee().getIntegration(tr)){if(!L.navigator&&!L.location&&!L.document)return t;const n=t.request&&t.request.url||L.location&&L.location.href,{referrer:r}=L.document||{},{userAgent:a}=L.navigator||{},i={...t.request&&t.request.headers,...r&&{Referer:r},...a&&{"User-Agent":a}},o={...t.request,...n&&{url:n},headers:i};return{...t,request:o}}return t})}}tr.__initStatic();class nr{constructor(){nr.prototype.__init.call(this)}static __initStatic(){this.id="Dedupe"}__init(){this.name=nr.id}setupOnce(t,n){const r=a=>{if(a.type)return a;const i=n().getIntegration(nr);if(i){try{if(Wk(a,i._previousEvent))return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.warn("Event dropped due to being a duplicate of previously captured event."),null}catch{return i._previousEvent=a}return i._previousEvent=a}return a};r.id=this.name,t(r)}}nr.__initStatic();function Wk(e,t){return t?!!(Gk(e,t)||Kk(e,t)):!1}function Gk(e,t){const n=e.message,r=t.message;return!(!n&&!r||n&&!r||!n&&r||n!==r||!yh(e,t)||!gh(e,t))}function Kk(e,t){const n=bh(t),r=bh(e);return!(!n||!r||n.type!==r.type||n.value!==r.value||!yh(e,t)||!gh(e,t))}function gh(e,t){let n=vh(e),r=vh(t);if(!n&&!r)return!0;if(n&&!r||!n&&r||(n=n,r=r,r.length!==n.length))return!1;for(let a=0;a<r.length;a++){const i=r[a],o=n[a];if(i.filename!==o.filename||i.lineno!==o.lineno||i.colno!==o.colno||i.function!==o.function)return!1}return!0}function yh(e,t){let n=e.fingerprint,r=t.fingerprint;if(!n&&!r)return!0;if(n&&!r||!n&&r)return!1;n=n,r=r;try{return n.join("")===r.join("")}catch{return!1}}function bh(e){return e.exception&&e.exception.values&&e.exception.values[0]}function vh(e){const t=e.exception;if(t)try{return t.values[0].stacktrace.frames}catch{return}}const Jk=[new Xn,new va,new xa,new ka,new Ht,new er,new nr,new tr];function Qk(e={}){e.defaultIntegrations===void 0&&(e.defaultIntegrations=Jk),e.release===void 0&&(typeof __SENTRY_RELEASE__=="string"&&(e.release=__SENTRY_RELEASE__),L.SENTRY_RELEASE&&L.SENTRY_RELEASE.id&&(e.release=L.SENTRY_RELEASE.id)),e.autoSessionTracking===void 0&&(e.autoSessionTracking=!0),e.sendClientReports===void 0&&(e.sendClientReports=!0);const t={...e,stackParser:Nb(e.stackParser||Ak),integrations:Av(e),transport:e.transport||(Pm()?wk:Sk)};Hv(bk,t),e.autoSessionTracking&&Xk()}function kh(e={},t=ee()){if(!L.document){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.error("Global document not defined in showReportDialog call");return}const{client:n,scope:r}=t.getStackTop(),a=e.dsn||n&&n.getDsn();if(!a){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.error("DSN not configured for showReportDialog call");return}r&&(e.user={...r.getUser(),...e.user}),e.eventId||(e.eventId=t.lastEventId());const i=L.document.createElement("script");i.async=!0,i.src=Pv(a,e),e.onLoad&&(i.onload=e.onLoad);const o=L.document.head||L.document.body;o?o.appendChild(i):(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.error("Not injecting report dialog. No injection point found in HTML")}function wh(e){e.startSession({ignoreDuration:!0}),e.captureSession()}function Xk(){if(typeof L.document>"u"){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.warn("Session tracking in non-browser environment with @sentry/browser is not supported.");return}const e=ee();e.captureSession&&(wh(e),Yt("history",({from:t,to:n})=>{t===void 0||t===n||wh(ee())}))}function Zk(e){e._metadata=e._metadata||{},e._metadata.sdk=e._metadata.sdk||{name:"sentry.javascript.react",packages:[{name:"npm:@sentry/react",version:Qi}],version:Qi},Qk(e)}var xh={exports:{}},U={};/** @license React v16.13.1
58
+ Event: ${Yt(e)}.
59
+ Url: ${Xi(e)}`),!0)}function Jv(e,t){return e.type||!t||!t.length?!1:ek(e).some(n=>Fi(n,t))}function Qv(e,t){if(e.type!=="transaction"||!t||!t.length)return!1;const n=e.transaction;return n?Fi(n,t):!1}function Xv(e,t){if(!t||!t.length)return!1;const n=Xi(e);return n?Fi(n,t):!1}function Zv(e,t){if(!t||!t.length)return!0;const n=Xi(e);return n?Fi(n,t):!0}function ek(e){if(e.message)return[e.message];if(e.exception){const{values:t}=e.exception;try{const{type:n="",value:r=""}=t&&t[t.length-1]||{};return[`${r}`,`${n}: ${r}`]}catch{return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.error(`Cannot extract message for event ${Yt(e)}`),[]}}return[]}function tk(e){try{return e.exception.values[0].type==="SentryError"}catch{}return!1}function nk(e=[]){for(let t=e.length-1;t>=0;t--){const n=e[t];if(n&&n.filename!=="<anonymous>"&&n.filename!=="[native code]")return n.filename||null}return null}function Xi(e){try{let t;try{t=e.exception.values[0].stacktrace.frames}catch{}return t?nk(t):null}catch{return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.error(`Cannot extract url for event ${Yt(e)}`),null}}const L=Le;let vc=0;function sh(){return vc>0}function rk(){vc++,setTimeout(()=>{vc--})}function Zn(e,t={},n){if(typeof e!="function")return e;try{const a=e.__sentry_wrapped__;if(a)return a;if(ac(e))return e}catch{return e}const r=function(){const a=Array.prototype.slice.call(arguments);try{n&&typeof n=="function"&&n.apply(this,arguments);const i=a.map(o=>Zn(o,t));return e.apply(this,i)}catch(i){throw rk(),Jm(o=>{o.addEventProcessor(s=>(t.mechanism&&(dc(s,void 0,void 0),ya(s,t.mechanism)),s.extra={...s.extra,arguments:a},s)),Km(i)}),i}};try{for(const a in e)Object.prototype.hasOwnProperty.call(e,a)&&(r[a]=e[a])}catch{}xm(r,e),rc(e,"__sentry_wrapped__",r);try{Object.getOwnPropertyDescriptor(r,"name").configurable&&Object.defineProperty(r,"name",{get(){return e.name}})}catch{}return r}function lh(e,t){const n=wc(e,t),r={type:t&&t.name,value:sk(t)};return n.length&&(r.stacktrace={frames:n}),r.type===void 0&&r.value===""&&(r.value="Unrecoverable error caught"),r}function ak(e,t,n,r){const i=ee().getClient(),o=i&&i.getOptions().normalizeDepth,s={exception:{values:[{type:Zl(t)?t.constructor.name:r?"UnhandledRejection":"Error",value:`Non-Error ${r?"promise rejection":"exception"} captured with keys: ${Pb(t)}`}]},extra:{__serialized__:zm(t,o)}};if(n){const l=wc(e,n);l.length&&(s.exception.values[0].stacktrace={frames:l})}return s}function kc(e,t){return{exception:{values:[lh(e,t)]}}}function wc(e,t){const n=t.stacktrace||t.stack||"",r=ok(t);try{return e(n,r)}catch{}return[]}const ik=/Minified React error #\d+;/i;function ok(e){if(e){if(typeof e.framesToPop=="number")return e.framesToPop;if(ik.test(e.message))return 1}return 0}function sk(e){const t=e&&e.message;return t?t.error&&typeof t.error.message=="string"?t.error.message:t:"No error message"}function lk(e,t,n,r){const a=n&&n.syntheticException||void 0,i=xc(e,t,a,r);return ya(i),i.level="error",n&&n.event_id&&(i.event_id=n.event_id),ln(i)}function ck(e,t,n="info",r,a){const i=r&&r.syntheticException||void 0,o=Sc(e,t,i,a);return o.level=n,r&&r.event_id&&(o.event_id=r.event_id),ln(o)}function xc(e,t,n,r,a){let i;if(hm(t)&&t.error)return kc(e,t.error);if(fm(t)||mb(t)){const o=t;if("stack"in t)i=kc(e,t);else{const s=o.name||(fm(o)?"DOMError":"DOMException"),l=o.message?`${s}: ${o.message}`:s;i=Sc(e,l,n,r),dc(i,l)}return"code"in o&&(i.tags={...i.tags,"DOMException.code":`${o.code}`}),i}return Xl(t)?kc(e,t):Gn(t)||Zl(t)?(i=ak(e,t,n,a),ya(i,{synthetic:!0}),i):(i=Sc(e,t,n,r),dc(i,`${t}`,void 0),ya(i,{synthetic:!0}),i)}function Sc(e,t,n,r){const a={message:t};if(r&&n){const i=wc(e,n);i.length&&(a.exception={values:[{value:t,stacktrace:{frames:i}}]})}return a}const Zi=1024,ch="Breadcrumbs";class ka{static __initStatic(){this.id=ch}__init(){this.name=ka.id}constructor(t){ka.prototype.__init.call(this),this.options={console:!0,dom:!0,fetch:!0,history:!0,sentry:!0,xhr:!0,...t}}setupOnce(){this.options.console&&Ft("console",dk),this.options.dom&&Ft("dom",uk(this.options.dom)),this.options.xhr&&Ft("xhr",pk),this.options.fetch&&Ft("fetch",mk),this.options.history&&Ft("history",hk)}addSentryBreadcrumb(t){this.options.sentry&&ee().addBreadcrumb({category:`sentry.${t.type==="transaction"?"transaction":"event"}`,event_id:t.event_id,level:t.level,message:Yt(t)},{event:t})}}ka.__initStatic();function uk(e){function t(n){let r,a=typeof e=="object"?e.serializeAttribute:void 0,i=typeof e=="object"&&typeof e.maxStringLength=="number"?e.maxStringLength:void 0;i&&i>Zi&&((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.warn(`\`dom.maxStringLength\` cannot exceed ${Zi}, but a value of ${i} was configured. Sentry will use ${Zi} instead.`),i=Zi),typeof a=="string"&&(a=[a]);try{const o=n.event;r=fk(o)?nc(o.target,{keyAttrs:a,maxStringLength:i}):nc(o,{keyAttrs:a,maxStringLength:i})}catch{r="<unknown>"}r.length!==0&&ee().addBreadcrumb({category:`ui.${n.name}`,message:r},{event:n.event,name:n.name,global:n.global})}return t}function dk(e){for(let n=0;n<e.args.length;n++)if(e.args[n]==="ref=Ref<"){e.args[n+1]="viewRef";break}const t={category:"console",data:{arguments:e.args,logger:"console"},level:rv(e.level),message:wm(e.args," ")};if(e.level==="assert")if(e.args[0]===!1)t.message=`Assertion failed: ${wm(e.args.slice(1)," ")||"console.assert"}`,t.data.arguments=e.args.slice(1);else return;ee().addBreadcrumb(t,{input:e.args,level:e.level})}function pk(e){const{startTimestamp:t,endTimestamp:n}=e,r=e.xhr[fa];if(!t||!n||!r)return;const{method:a,url:i,status_code:o,body:s}=r,l={method:a,url:i,status_code:o},u={xhr:e.xhr,input:s,startTimestamp:t,endTimestamp:n};ee().addBreadcrumb({category:"xhr",data:l,type:"http"},u)}function mk(e){const{startTimestamp:t,endTimestamp:n}=e;if(n&&!(e.fetchData.url.match(/sentry_key/)&&e.fetchData.method==="POST"))if(e.error){const r=e.fetchData,a={data:e.error,input:e.args,startTimestamp:t,endTimestamp:n};ee().addBreadcrumb({category:"fetch",data:r,level:"error",type:"http"},a)}else{const r={...e.fetchData,status_code:e.response&&e.response.status},a={input:e.args,response:e.response,startTimestamp:t,endTimestamp:n};ee().addBreadcrumb({category:"fetch",data:r,type:"http"},a)}}function hk(e){let t=e.from,n=e.to;const r=mc(L.location.href);let a=mc(t);const i=mc(n);a.path||(a=r),r.protocol===i.protocol&&r.host===i.host&&(n=i.relative),r.protocol===a.protocol&&r.host===a.host&&(t=a.relative),ee().addBreadcrumb({category:"navigation",data:{from:t,to:n}})}function fk(e){return e&&!!e.target}function gk(e,{metadata:t,tunnel:n,dsn:r}){const a={event_id:e.event_id,sent_at:new Date().toISOString(),...t&&t.sdk&&{sdk:{name:t.sdk.name,version:t.sdk.version}},...!!n&&!!r&&{dsn:ma(r)}},i=yk(e);return ba(a,[i])}function yk(e){return[{type:"user_report"},e]}class bk extends un{constructor(t){const n=L.SENTRY_SDK_SOURCE||Gb();t._metadata=t._metadata||{},t._metadata.sdk=t._metadata.sdk||{name:"sentry.javascript.browser",packages:[{name:`${n}:@sentry/browser`,version:Qi}],version:Qi},super(t),t.sendClientReports&&L.document&&L.document.addEventListener("visibilitychange",()=>{L.document.visibilityState==="hidden"&&this._flushOutcomes()})}eventFromException(t,n){return lk(this._options.stackParser,t,n,this._options.attachStacktrace)}eventFromMessage(t,n="info",r){return ck(this._options.stackParser,t,n,r,this._options.attachStacktrace)}sendEvent(t,n){const r=this.getIntegrationById(ch);r&&r.addSentryBreadcrumb&&r.addSentryBreadcrumb(t),super.sendEvent(t,n)}captureUserFeedback(t){if(!this._isEnabled()){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.warn("SDK not enabled, will not capture user feedback.");return}const n=gk(t,{metadata:this.getSdkMetadata(),dsn:this.getDsn(),tunnel:this.getOptions().tunnel});this._sendEnvelope(n)}_prepareEvent(t,n,r){return t.platform=t.platform||"javascript",super._prepareEvent(t,n,r)}_flushOutcomes(){const t=this._clearOutcomes();if(t.length===0){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.log("No outcomes to send");return}if(!this._dsn){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.log("No dsn provided, will not send outcomes");return}(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.log("Sending outcomes:",t);const n=pv(t,this._options.tunnel&&ma(this._dsn));this._sendEnvelope(n)}}let wa;function vk(){if(wa)return wa;if(cc(L.fetch))return wa=L.fetch.bind(L);const e=L.document;let t=L.fetch;if(e&&typeof e.createElement=="function")try{const n=e.createElement("iframe");n.hidden=!0,e.head.appendChild(n);const r=n.contentWindow;r&&r.fetch&&(t=r.fetch),e.head.removeChild(n)}catch(n){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.warn("Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ",n)}return wa=t.bind(L)}function kk(){wa=void 0}function wk(e,t=vk()){let n=0,r=0;function a(i){const o=i.body.length;n+=o,r++;const s={body:i.body,method:"POST",referrerPolicy:"origin",headers:e.headers,keepalive:n<=6e4&&r<15,...e.fetchOptions};try{return t(e.url,s).then(l=>(n-=o,r--,{statusCode:l.status,headers:{"x-sentry-rate-limits":l.headers.get("X-Sentry-Rate-Limits"),"retry-after":l.headers.get("Retry-After")}}))}catch(l){return kk(),n-=o,r--,Gi(l)}}return ah(e,a)}const xk=4;function Sk(e){function t(n){return new we((r,a)=>{const i=new XMLHttpRequest;i.onerror=a,i.onreadystatechange=()=>{i.readyState===xk&&r({statusCode:i.status,headers:{"x-sentry-rate-limits":i.getResponseHeader("X-Sentry-Rate-Limits"),"retry-after":i.getResponseHeader("Retry-After")}})},i.open("POST",e.url);for(const o in e.headers)Object.prototype.hasOwnProperty.call(e.headers,o)&&i.setRequestHeader(o,e.headers[o]);i.send(n.body)})}return ah(e,t)}const eo="?",Ek=30,Ck=40,$k=50;function Ec(e,t,n,r){const a={filename:e,function:t,in_app:!0};return n!==void 0&&(a.lineno=n),r!==void 0&&(a.colno=r),a}const _k=/^\s*at (?:(.+?\)(?: \[.+\])?|.*?) ?\((?:address at )?)?(?:async )?((?:<anonymous>|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,jk=/\((\S*)(?::(\d+))(?::(\d+))\)/,Pk=[Ek,e=>{const t=_k.exec(e);if(t){if(t[2]&&t[2].indexOf("eval")===0){const i=jk.exec(t[2]);i&&(t[2]=i[1],t[3]=i[2],t[4]=i[3])}const[r,a]=uh(t[1]||eo,t[2]);return Ec(a,r,t[3]?+t[3]:void 0,t[4]?+t[4]:void 0)}}],Nk=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i,Tk=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i,Ik=[$k,e=>{const t=Nk.exec(e);if(t){if(t[3]&&t[3].indexOf(" > eval")>-1){const i=Tk.exec(t[3]);i&&(t[1]=t[1]||"eval",t[3]=i[1],t[4]=i[2],t[5]="")}let r=t[3],a=t[1]||eo;return[a,r]=uh(a,r),Ec(r,a,t[4]?+t[4]:void 0,t[5]?+t[5]:void 0)}}],Dk=/^\s*at (?:((?:\[object object\])?.+) )?\(?((?:[-a-z]+):.*?):(\d+)(?::(\d+))?\)?\s*$/i,Ak=jm(...[Pk,Ik,[Ck,e=>{const t=Dk.exec(e);return t?Ec(t[2],t[1]||eo,+t[3],t[4]?+t[4]:void 0):void 0}]]),uh=(e,t)=>{const n=e.indexOf("safari-extension")!==-1,r=e.indexOf("safari-web-extension")!==-1;return n||r?[e.indexOf("@")!==-1?e.split("@")[0]:eo,n?`safari-extension:${t}`:`safari-web-extension:${t}`]:[e,t]};class Ht{static __initStatic(){this.id="GlobalHandlers"}__init(){this.name=Ht.id}__init2(){this._installFunc={onerror:Mk,onunhandledrejection:zk}}constructor(t){Ht.prototype.__init.call(this),Ht.prototype.__init2.call(this),this._options={onerror:!0,onunhandledrejection:!0,...t}}setupOnce(){Error.stackTraceLimit=50;const t=this._options;for(const n in t){const r=this._installFunc[n];r&&t[n]&&(Uk(n),r(),this._installFunc[n]=void 0)}}}Ht.__initStatic();function Mk(){Ft("error",e=>{const[t,n,r]=mh();if(!t.getIntegration(Ht))return;const{msg:a,url:i,line:o,column:s,error:l}=e;if(sh()||l&&l.__sentry_own_request__)return;const u=l===void 0&&sn(a)?Lk(a,i,o,s):dh(xc(n,l||a,void 0,r,!1),i,o,s);u.level="error",ph(t,l,u,"onerror")})}function zk(){Ft("unhandledrejection",e=>{const[t,n,r]=mh();if(!t.getIntegration(Ht))return;let a=e;try{"reason"in e?a=e.reason:"detail"in e&&"reason"in e.detail&&(a=e.detail.reason)}catch{}if(sh()||a&&a.__sentry_own_request__)return!0;const i=gm(a)?Rk(a):xc(n,a,void 0,r,!0);i.level="error",ph(t,a,i,"onunhandledrejection")})}function Rk(e){return{exception:{values:[{type:"UnhandledRejection",value:`Non-Error promise rejection captured with value: ${String(e)}`}]}}}function Lk(e,t,n,r){const a=/^(?:[Uu]ncaught (?:exception: )?)?(?:((?:Eval|Internal|Range|Reference|Syntax|Type|URI|)Error): )?(.*)$/i;let i=hm(e)?e.message:e,o="Error";const s=i.match(a);return s&&(o=s[1],i=s[2]),dh({exception:{values:[{type:o,value:i}]}},t,n,r)}function dh(e,t,n,r){const a=e.exception=e.exception||{},i=a.values=a.values||[],o=i[0]=i[0]||{},s=o.stacktrace=o.stacktrace||{},l=s.frames=s.frames||[],u=isNaN(parseInt(r,10))?void 0:r,p=isNaN(parseInt(n,10))?void 0:n,m=sn(t)&&t.length>0?t:wb();return l.length===0&&l.push({colno:u,filename:m,function:"?",in_app:!0,lineno:p}),e}function Uk(e){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.log(`Global Handler attached: ${e}`)}function ph(e,t,n,r){ya(n,{handled:!1,type:r}),e.captureEvent(n,{originalException:t})}function mh(){const e=ee(),t=e.getClient(),n=t&&t.getOptions()||{stackParser:()=>[],attachStacktrace:!1};return[e,n.stackParser,n.attachStacktrace]}const Ok=["EventTarget","Window","Node","ApplicationCache","AudioTrackList","ChannelMergerNode","CryptoOperation","EventSource","FileReader","HTMLUnknownElement","IDBDatabase","IDBRequest","IDBTransaction","KeyOperation","MediaController","MessagePort","ModalWindow","Notification","SVGElementInstance","Screen","TextTrack","TextTrackCue","TextTrackList","WebSocket","WebSocketWorker","Worker","XMLHttpRequest","XMLHttpRequestEventTarget","XMLHttpRequestUpload"];class xa{static __initStatic(){this.id="TryCatch"}__init(){this.name=xa.id}constructor(t){xa.prototype.__init.call(this),this._options={XMLHttpRequest:!0,eventTarget:!0,requestAnimationFrame:!0,setInterval:!0,setTimeout:!0,...t}}setupOnce(){this._options.setTimeout&&ce(L,"setTimeout",hh),this._options.setInterval&&ce(L,"setInterval",hh),this._options.requestAnimationFrame&&ce(L,"requestAnimationFrame",Fk),this._options.XMLHttpRequest&&"XMLHttpRequest"in L&&ce(XMLHttpRequest.prototype,"send",Yk);const t=this._options.eventTarget;t&&(Array.isArray(t)?t:Ok).forEach(Bk)}}xa.__initStatic();function hh(e){return function(...t){const n=t[0];return t[0]=Zn(n,{mechanism:{data:{function:Ot(e)},handled:!0,type:"instrument"}}),e.apply(this,t)}}function Fk(e){return function(t){return e.apply(this,[Zn(t,{mechanism:{data:{function:"requestAnimationFrame",handler:Ot(e)},handled:!0,type:"instrument"}})])}}function Yk(e){return function(...t){const n=this;return["onload","onerror","onprogress","onreadystatechange"].forEach(a=>{a in n&&typeof n[a]=="function"&&ce(n,a,function(i){const o={mechanism:{data:{function:a,handler:Ot(i)},handled:!0,type:"instrument"}},s=ac(i);return s&&(o.mechanism.data.handler=Ot(s)),Zn(i,o)})}),e.apply(this,t)}}function Bk(e){const t=L,n=t[e]&&t[e].prototype;!n||!n.hasOwnProperty||!n.hasOwnProperty("addEventListener")||(ce(n,"addEventListener",function(r){return function(a,i,o){try{typeof i.handleEvent=="function"&&(i.handleEvent=Zn(i.handleEvent,{mechanism:{data:{function:"handleEvent",handler:Ot(i),target:e},handled:!0,type:"instrument"}}))}catch{}return r.apply(this,[a,Zn(i,{mechanism:{data:{function:"addEventListener",handler:Ot(i),target:e},handled:!0,type:"instrument"}}),o])}}),ce(n,"removeEventListener",function(r){return function(a,i,o){const s=i;try{const l=s&&s.__sentry_wrapped__;l&&r.call(this,a,l,o)}catch{}return r.call(this,a,s,o)}}))}const Hk="cause",qk=5;class er{static __initStatic(){this.id="LinkedErrors"}__init(){this.name=er.id}constructor(t={}){er.prototype.__init.call(this),this._key=t.key||Hk,this._limit=t.limit||qk}setupOnce(){const t=ee().getClient();t&&yc((n,r)=>{const a=ee().getIntegration(er);return a?Vk(t.getOptions().stackParser,a._key,a._limit,n,r):n})}}er.__initStatic();function Vk(e,t,n,r,a){if(!r.exception||!r.exception.values||!a||!Kn(a.originalException,Error))return r;const i=fh(e,n,a.originalException,t);return r.exception.values=[...i,...r.exception.values],r}function fh(e,t,n,r,a=[]){if(!Kn(n[r],Error)||a.length+1>=t)return a;const i=lh(e,n[r]);return fh(e,t,n[r],r,[i,...a])}class tr{constructor(){tr.prototype.__init.call(this)}static __initStatic(){this.id="HttpContext"}__init(){this.name=tr.id}setupOnce(){yc(t=>{if(ee().getIntegration(tr)){if(!L.navigator&&!L.location&&!L.document)return t;const n=t.request&&t.request.url||L.location&&L.location.href,{referrer:r}=L.document||{},{userAgent:a}=L.navigator||{},i={...t.request&&t.request.headers,...r&&{Referer:r},...a&&{"User-Agent":a}},o={...t.request,...n&&{url:n},headers:i};return{...t,request:o}}return t})}}tr.__initStatic();class nr{constructor(){nr.prototype.__init.call(this)}static __initStatic(){this.id="Dedupe"}__init(){this.name=nr.id}setupOnce(t,n){const r=a=>{if(a.type)return a;const i=n().getIntegration(nr);if(i){try{if(Wk(a,i._previousEvent))return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.warn("Event dropped due to being a duplicate of previously captured event."),null}catch{return i._previousEvent=a}return i._previousEvent=a}return a};r.id=this.name,t(r)}}nr.__initStatic();function Wk(e,t){return t?!!(Gk(e,t)||Kk(e,t)):!1}function Gk(e,t){const n=e.message,r=t.message;return!(!n&&!r||n&&!r||!n&&r||n!==r||!yh(e,t)||!gh(e,t))}function Kk(e,t){const n=bh(t),r=bh(e);return!(!n||!r||n.type!==r.type||n.value!==r.value||!yh(e,t)||!gh(e,t))}function gh(e,t){let n=vh(e),r=vh(t);if(!n&&!r)return!0;if(n&&!r||!n&&r||(n=n,r=r,r.length!==n.length))return!1;for(let a=0;a<r.length;a++){const i=r[a],o=n[a];if(i.filename!==o.filename||i.lineno!==o.lineno||i.colno!==o.colno||i.function!==o.function)return!1}return!0}function yh(e,t){let n=e.fingerprint,r=t.fingerprint;if(!n&&!r)return!0;if(n&&!r||!n&&r)return!1;n=n,r=r;try{return n.join("")===r.join("")}catch{return!1}}function bh(e){return e.exception&&e.exception.values&&e.exception.values[0]}function vh(e){const t=e.exception;if(t)try{return t.values[0].stacktrace.frames}catch{return}}const Jk=[new Xn,new va,new xa,new ka,new Ht,new er,new nr,new tr];function Qk(e={}){e.defaultIntegrations===void 0&&(e.defaultIntegrations=Jk),e.release===void 0&&(typeof __SENTRY_RELEASE__=="string"&&(e.release=__SENTRY_RELEASE__),L.SENTRY_RELEASE&&L.SENTRY_RELEASE.id&&(e.release=L.SENTRY_RELEASE.id)),e.autoSessionTracking===void 0&&(e.autoSessionTracking=!0),e.sendClientReports===void 0&&(e.sendClientReports=!0);const t={...e,stackParser:Nb(e.stackParser||Ak),integrations:Av(e),transport:e.transport||(Pm()?wk:Sk)};Hv(bk,t),e.autoSessionTracking&&Xk()}function kh(e={},t=ee()){if(!L.document){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.error("Global document not defined in showReportDialog call");return}const{client:n,scope:r}=t.getStackTop(),a=e.dsn||n&&n.getDsn();if(!a){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.error("DSN not configured for showReportDialog call");return}r&&(e.user={...r.getUser(),...e.user}),e.eventId||(e.eventId=t.lastEventId());const i=L.document.createElement("script");i.async=!0,i.src=Pv(a,e),e.onLoad&&(i.onload=e.onLoad);const o=L.document.head||L.document.body;o?o.appendChild(i):(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.error("Not injecting report dialog. No injection point found in HTML")}function wh(e){e.startSession({ignoreDuration:!0}),e.captureSession()}function Xk(){if(typeof L.document>"u"){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&I.warn("Session tracking in non-browser environment with @sentry/browser is not supported.");return}const e=ee();e.captureSession&&(wh(e),Ft("history",({from:t,to:n})=>{t===void 0||t===n||wh(ee())}))}function Zk(e){e._metadata=e._metadata||{},e._metadata.sdk=e._metadata.sdk||{name:"sentry.javascript.react",packages:[{name:"npm:@sentry/react",version:Qi}],version:Qi},Qk(e)}var xh={exports:{}},U={};/** @license React v16.13.1
60
60
  * react-is.production.min.js
61
61
  *
62
62
  * Copyright (c) Facebook, Inc. and its affiliates.
@@ -391,11 +391,11 @@ Url: ${Xi(e)}`),!0)}function Jv(e,t){return e.type||!t||!t.length?!1:ek(e).some(
391
391
  width: 60px;
392
392
  height: 60px;
393
393
  }
394
- `+_h,yt=e=>{if(!e)return"";const t=new Date(e),n={year:"numeric",month:"short",day:"numeric"};return t.toLocaleDateString("en-GB",n)};function Ic(){const[e]=window.location.hash.substr(1).split("?");e&&/^\/portal\/?(?:\/(\w+(?:\/\w+)*))?\/?$/.test(e)&&window.history.pushState("",document.title,window.location.pathname+window.location.search)}function yw({page:e}){const t={signin:"#/portal/signin",signup:"#/portal/signup"};return Object.keys(t).includes(e)?t[e]:t.default}function jh({page:e,siteUrl:t}){const n=t||`${window.location.protocol}//${window.location.host}${window.location.pathname}`,r=yw({page:e});return`${n}${r}`}function rr(){return!(navigator&&navigator.cookieEnabled)}function bw({event:e}){var a,i,o,s;const n=(((s=(o=(i=(a=e==null?void 0:e.exception)==null?void 0:a.values)==null?void 0:i[0])==null?void 0:o.stacktrace)==null?void 0:s.frames)||[]).map(l=>l.filename).filter(l=>!!l);return(n[n.length-1]||"").includes("@tryghost/portal")}function Ge({member:e={}}){if(bt({member:e})){const n=(e.subscriptions||[]).find(r=>["active","trialing","unpaid","past_due"].includes(r.status));return!(n!=null&&n.price)&&(n!=null&&n.plan)&&(n.price=n.plan),n}return null}function ar({member:e={}}){if(!e)return!1;const t=Ge({member:e});if(t){const{price:n}=t;return n&&n.amount===0}else if(!t&&e.paid)return!0;return!1}function bt({member:e={}}){return e&&e.paid}function vw({product:e}){return e!=null&&e.monthlyPrice?e.monthlyPrice.currency:null}function Ea({member:e}){var t,n,r;return((r=(n=(t=e==null?void 0:e.subscriptions)==null?void 0:t[0])==null?void 0:n.tier)==null?void 0:r.expiry_at)!==void 0}function Dc({member:e}){var t,n,r;return(r=(n=(t=e==null?void 0:e.subscriptions)==null?void 0:t[0])==null?void 0:n.tier)!=null&&r.expiry_at?yt(e.subscriptions[0].tier.expiry_at):""}function kw({site:e,member:t}){const n=dn({member:t}),r=n==null?void 0:n.currency,a=mo({site:e});return n!=null&&n.id?a.filter(i=>wo(vw({product:i}),r)):a}function ww({prices:e,currency:t}){return e.filter(n=>wo(n.currency||"",t||""))}function Ph({subscription:e}){var t,n;return e&&e.price?{...e.price,stripe_price_id:e.price.id,id:e.price.price_id,price:e.price.amount/100,name:e.price.nickname,tierId:(t=e.tier)==null?void 0:t.id,cadence:((n=e.price)==null?void 0:n.interval)==="month"?"month":"year",currency:e.price.currency.toLowerCase(),currency_symbol:ue(e.price.currency)}:null}function dn({member:e}){const t=Ge({member:e});return Ph({subscription:t})}function xw({priceId:e,site:t,member:n}){const r=dn({member:n}),{tierId:a,cadence:i}=mn({site:t,priceId:e});return(r==null?void 0:r.tierId)===a&&(r==null?void 0:r.cadence)===i}function Sw({member:e,subscriptionId:t}){return bt({member:e})?(e.subscriptions||[]).find(r=>r.id===t):null}function Nh({member:e}){var n;const t=Ge({member:e});return((n=t==null?void 0:t.tier)==null?void 0:n.name)||""}function Ca({plans:e,site:t={}}){return e=e||vo({site:t}),!e||e.length===0||e.length===1&&e[0].type==="free"}function Ew(e,t){const r=mo({site:e}).find(a=>a.type==="paid");return t==="monthly"?{cadence:"month",tierId:r.id}:t==="yearly"?{cadence:"year",tierId:r.id}:{priceId:t}}function Cw({site:e={},priceId:t}){const n=bo({site:e});if(t==="free")return!n||n.length===0||n.find(r=>r.type==="free");if(n&&n.length>0&&t==="monthly"){const r=n.find(i=>i.name==="Monthly"),a=n.find(i=>i.interval==="month");return r||a}else if(n&&n.length>0&&t==="yearly"){const r=n.find(i=>i.name==="Yearly"),a=n.find(i=>i.interval==="year");return r||a}else if(n&&n.length>0&&t)return n.find(r=>r.id===t);return null}function at({site:e={},pageQuery:t=""}){return vo({site:e,pageQuery:t}).length===0||e&&e.members_signup_access==="invite"}function po({site:e}){const{portal_products:t}=e||{};return!!t}function Th({site:e}){return(e==null?void 0:e.comments_enabled)&&(e==null?void 0:e.comments_enabled)!=="off"}function $w({site:e}){var t,n,r,a,i,o;try{if(!e)return null;if(e.tiers&&(e.products=e.tiers),e.products=(t=e.products)==null?void 0:t.map(s=>({...s,monthlyPrice:s.monthly_price,yearlyPrice:s.yearly_price})),e.is_stripe_configured=!!e.paid_members_enabled,e.members_signup_access="all",e.members_enabled||(e.members_signup_access="none"),e.members_invite_only&&(e.members_signup_access="invite"),e.allow_self_signup=!1,e.members_signup_access!=="all"&&(e.allow_self_signup=!1),e.paid_members_enabled&&(e.allow_self_signup=!0),(n=e.portal_plans)!=null&&n.includes("free")&&(e.allow_self_signup=!0),(a=(r=e.products)==null?void 0:r[0])!=null&&a.visibility){e.portal_products=e.products.filter(l=>l.visibility!=="none"&&l.type==="paid").map(l=>l.id);const s=e.products.find(l=>l.type==="free");s&&(e.portal_plans=(i=e.portal_plans)==null?void 0:i.filter(l=>l!=="free"),(s==null?void 0:s.visibility)==="public"&&((o=e.portal_plans)==null||o.push("free")))}return e}catch(s){console.warn("[Portal] Failed to read site data:",s)}}function mo({site:e}){const{portal_products:t,products:n=[],portal_plans:r=[]}=e||{};return!r.includes("monthly")&&!r.includes("yearly")?[]:n.filter(a=>!!a).filter(a=>e.is_stripe_configured?!0:a.type!=="paid").filter(a=>!!(a.monthlyPrice&&a.yearlyPrice)).filter(a=>Object.keys(a.monthlyPrice).length>0&&Object.keys(a.yearlyPrice).length>0).filter(a=>t&&n.length>1?t.includes(a.id):!0).sort((a,i)=>{var o,s;return((o=a==null?void 0:a.monthlyPrice)==null?void 0:o.amount)-((s=i==null?void 0:i.monthlyPrice)==null?void 0:s.amount)}).map(a=>(a.monthlyPrice={...a.monthlyPrice,currency_symbol:ue(a.monthlyPrice.currency)},a.yearlyPrice={...a.yearlyPrice,currency_symbol:ue(a.yearlyPrice.currency)},a))}function ir({site:e}){const{products:t=[]}=e||{};return t.find(n=>n.type==="free")}function Ac({site:e}){const{products:t=[],portal_plans:n=[]}=e||{};return!n.includes("monthly")&&!n.includes("yearly")?[]:t.filter(r=>!!r).filter(r=>!!(r.monthlyPrice&&r.yearlyPrice)).filter(r=>Object.keys(r.monthlyPrice).length>0&&Object.keys(r.yearlyPrice).length>0).sort((r,a)=>{var i,o;return((i=r==null?void 0:r.monthlyPrice)==null?void 0:i.amount)-((o=a==null?void 0:a.monthlyPrice)==null?void 0:o.amount)}).map(r=>(r.monthlyPrice={...r.monthlyPrice,currency_symbol:ue(r.monthlyPrice.currency)},r.yearlyPrice={...r.yearlyPrice,currency_symbol:ue(r.yearlyPrice.currency)},r))}function ho({site:e,pageQuery:t}){const n=mo({site:e});return t==="free"&&pn({site:e})?[]:(pn({site:e})&&n.unshift({id:"free"}),n)}function fo({site:e}){return ho({site:e}).some(n=>!!(n!=null&&n.trial_days))}function Ih({site:e}){const t=ir({site:e});return(t==null?void 0:t.benefits)||[]}function Dh({site:e}){return yo({site:e})?"Free membership":"Free"}function Ah({site:e}){const t=ir({site:e});return t==null?void 0:t.description}function _w({site:e}){var n;const t=ir({site:e});return!!(t!=null&&t.description||(n=t==null?void 0:t.benefits)!=null&&n.length)}function or({site:e,productId:t}){return Ac({site:e}).find(r=>r.id===t)}function jw({site:e=null,products:t=null}){return!e&&!t?[]:(t||mo({site:e})).reduce((a,i)=>(i.monthlyPrice&&i.yearlyPrice&&(a.push(i.monthlyPrice),a.push(i.yearlyPrice)),a),[])}function pn({site:e}){const{allow_self_signup:t,portal_plans:n}=e||{};return t&&n.includes("free")}function sr({site:e}){const{newsletters:t=[]}=e||{};return t==null||t.sort((n,r)=>n.sort_order-r.sort_order),t}function go({site:e}){const{newsletters:t}=e||{};return(t==null?void 0:t.length)>1}function Mh({member:e}){var t;return(t=e==null?void 0:e.email_suppression)==null?void 0:t.suppressed}function yo({site:e}){return ho({site:e}).length===1&&pn({site:e})}function Mc({sub:e}={}){return!!(e!=null&&e.trial_end_at&&!zh(new Date(e==null?void 0:e.trial_end_at)))}function zh(e){const t=new Date;return t.setHours(0,0,0,0),e<t}function Rh({site:e,priceId:t}){return t==="free"?ir({site:e}):Ac({site:e}).find(r=>{var a,i;return((a=r==null?void 0:r.monthlyPrice)==null?void 0:a.id)===t||((i=r==null?void 0:r.yearlyPrice)==null?void 0:i.id)===t})}function mn({site:e,priceId:t}){var i;if(t==="free")return ir({site:e});const r=Ac({site:e}).find(o=>{var s,l;return((s=o==null?void 0:o.monthlyPrice)==null?void 0:s.id)===t||((l=o==null?void 0:o.yearlyPrice)==null?void 0:l.id)===t});let a="month";return((i=r==null?void 0:r.yearlyPrice)==null?void 0:i.id)===t&&(a="year"),{tierId:r==null?void 0:r.id,cadence:a}}function bo({site:e,products:t=null}){const{portal_plans:n=[],is_stripe_configured:r}=e||{};return r?jw({site:e,products:t}).filter(i=>!!(i&&i.id)).map(i=>({...i,price_id:i.id,price:i.amount/100,name:i.nickname,currency_symbol:ue(i.currency)})).filter(i=>i.amount!==0&&i.type==="recurring").filter(i=>i.interval==="month"?n.includes("monthly"):i.interval==="year"?n.includes("yearly"):!1).sort((i,o)=>i.amount-o.amount).sort((i,o)=>!i.currency||!o.currency?0:i.currency.localeCompare(o.currency,void 0,{ignorePunctuation:!0})):[]}function Pw({site:e}){const t=bo({site:e});let n={currency:"usd",currency_symbol:"$"};return(t==null?void 0:t.length)>0&&(n.currency=t[0].currency,n.currency_symbol=t[0].currency_symbol),n}function vo({site:e={},pageQuery:t=""}={}){const{allow_self_signup:n,portal_plans:r}=e||{},a=[];if(n&&r.includes("free")){const o=Pw({site:e});a.push({id:"free",type:"free",price:0,amount:0,name:Dh({site:e}),...o})}return t==="free"&&pn({site:e})||bo({site:e}).forEach(s=>{a.push(s)}),a}const Nw=({member:e})=>e?e.email:"",zc=({member:e})=>e?e.email_suppression:"",Tw=({site:e})=>e&&e.firstpromoter_account,Iw=({member:e})=>e?e.name:"",ko=({site:e})=>{var n;const{members_support_address:t}=e||{};if((t==null?void 0:t.indexOf("@"))<0){const r=Rc({site:e}),a=(r==null?void 0:r.replace(/^(www)\.(?=[^/]*\..{2,5})/,""))||"";return`${t}@${a}`}if(((n=t==null?void 0:t.split("@"))==null?void 0:n.length)>1){const[r,a]=t.split("@"),i=(a==null?void 0:a.replace(/^(www)\.(?=[^/]*\..{2,5})/,""))||"";return`${r}@${i}`}return t||""},Dw=({site:e})=>{const t=sr({site:e}),n=t==null?void 0:t[0];if(n)return n.sender_email||`noreply@${Rc({site:e})}`},Rc=({site:e})=>{try{return new URL(e.url).origin.replace(/^http(s?):\/\//,"").replace(/\/$/,"")}catch{return e.url.replace(/^http(s?):\/\//,"").replace(/\/$/,"")}},ue=e=>Intl.NumberFormat("en",{currency:e,style:"currency"}).format(0).replace(/[\d\s.]/g,""),Lc=e=>isNaN(e)?0:e/100,Aw=(e={})=>{const t=ue(e.currency),n=Lc(e.amount);return`${t}${n}/${e.interval}`},lr=e=>e==null?"":e.toLocaleString(),Q=({type:e,status:t,autoHide:n,duration:r=2600,closeable:a,state:i,message:o,meta:s={}})=>{let l=0;return i&&i.popupNotification&&(l=(i.popupNotification.count||0)+1),{type:e,status:t,autoHide:n,closeable:a,duration:r,meta:s,message:o,count:l}};function wo(e,t){return(e==null?void 0:e.toLowerCase())===(t==null?void 0:t.toLowerCase())}function Lh({site:e,pageQuery:t}){var a,i;const n=/^(?:(\S+?))?\/monthly$/,r=/^(?:(\S+?))?\/yearly$/;if(n.test(t||"")){const[,o]=t.match(n),s=or({site:e,productId:o});return(a=s==null?void 0:s.monthlyPrice)==null?void 0:a.id}else if(r.test(t||"")){const[,o]=t.match(r),s=or({site:e,productId:o});return(i=s==null?void 0:s.yearlyPrice)==null?void 0:i.id}return null}const Mw=({offer:e,price:t,useFormatted:n=!1})=>{const r=t.amount;let a;return e.type==="fixed"&&wo(e.currency,t.currency)?(a=(r-e.amount)/100,a=a>0?a:0):e.type==="percent"?a=(r-r*e.amount/100)/100:a=r/100,n?Intl.NumberFormat("en",{currency:t==null?void 0:t.currency,style:"currency"}).format(a):a},zw=({site:e,offer:t})=>(t==null?void 0:t.status)!=="active"?!1:!!or({site:e,productId:t.tier.id});function Rw({tier:e,priceId:t}){return e!=null&&e.monthly_price?{id:`price-${t}`,active:!0,type:"recurring",nickname:"Monthly",currency:e.currency,amount:e.monthly_price,interval:"month"}:null}function Lw({tier:e,priceId:t}){return e!=null&&e.yearly_price?{id:`price-${t}`,active:!0,type:"recurring",nickname:"Yearly",currency:e.currency,amount:e.yearly_price,interval:"year"}:null}function Uw({tier:e}){var t;return(t=e==null?void 0:e.benefits)==null?void 0:t.map(n=>({name:n}))}const Ow=({tiers:e})=>{let t=0;return e.map(n=>{let r=Rw({tier:n,priceId:t});t+=1;let a=Lw({tier:n,priceId:t});t+=1;let i=Uw({tier:n});return{...n,benefits:i,monthly_price:r,yearly_price:a}})};function xo(){const e="ghost-history";try{const t=localStorage.getItem(e);if(t){const n=JSON.parse(t);if(Array.isArray(n))return n}}catch(t){console.warn("[Portal] Failed to load member URL history:",t)}}function Yw({member:e}){if(!(e!=null&&e.created_at))return!1;const t=new Date,n=new Date(e.created_at),r=t.getTime()-n.getTime();return Math.round(r/(1e3*60*60))<24}const Fw=function(){return Bw()||Uh()},Bw=function(){const[e]=window.location.hash.substr(1).split("?");return e==="/portal/preview"},Uh=function(){const[e]=window.location.hash.substr(1).split("?");return e==="/portal/preview/offer"},Hw={preview:Fw,offerPreview:Uh,dev:function({customSiteUrl:e=""}={}){return!1},test:function(){return!1}},V=(e=[],t={})=>e.some(n=>{const r=Hw[n];return!!(r&&r(t))}),Oh={"icon-1":dw,"icon-2":pw,"icon-3":mw,"icon-4":hw,"icon-5":fw},Yh=({brandColor:e,hasText:t})=>({frame:{zIndex:"3999998",position:"fixed",bottom:"0",right:"0",width:"500px",maxWidth:"500px",height:"98px",animation:"250ms ease 0s 1 normal none running animation-bhegco",transition:"opacity 0.3s ease 0s",overflow:"hidden",...{...t?{}:{width:"105px"},...V(["preview"])?{opacity:1}:{}}},userIcon:{width:"34px",height:"34px",color:"#fff"},buttonIcon:{width:"24px",height:"24px",color:"#fff"},closeIcon:{width:"20px",height:"20px",color:"#fff"}});class Fh extends R.Component{constructor(t){super(t),this.state={},this.container=R.createRef(),this.height=null,this.width=null}updateHeight(t){this.props.updateHeight&&this.props.updateHeight(t)}updateWidth(t){this.props.updateWidth&&this.props.updateWidth(t)}componentDidMount(){this.container&&(this.height=this.container.current&&this.container.current.offsetHeight,this.width=this.container.current&&this.container.current.offsetWidth,this.updateHeight(this.height),this.updateWidth(this.width))}componentDidUpdate(){if(this.container){const t=this.container.current&&this.container.current.offsetHeight;let n=this.container.current&&this.container.current.offsetWidth;t!==this.height&&(this.height=t,this.updateHeight(this.height)),n!==this.width&&(this.width=n,this.updateWidth(this.width))}}renderTriggerIcon(){const{portal_button_icon:t="",portal_button_style:n=""}=this.context.site||{},r=Yh({brandColor:this.context.brandColor}),a=this.context.member&&this.context.member.avatar_image;if(!n.includes("icon")&&!this.context.member)return null;if(a)return c.jsx(Nc,{gravatar:a});if(this.context.member)return c.jsx(Pc,{style:r.userIcon});if(Object.keys(Oh).includes(t)){const i=Oh[t];return c.jsx(i,{style:r.buttonIcon})}else return t?c.jsx("img",{style:{width:"26px",height:"26px"},src:t,alt:""}):(this.hasText()&&(r.userIcon.width="26px",r.userIcon.height="26px"),c.jsx(Pc,{style:r.userIcon}))}hasText(){const{portal_button_signup_text:t,portal_button_style:n}=this.context.site;return["icon-and-text","text-only"].includes(n)&&!this.context.member&&t}renderText(){const{portal_button_signup_text:t}=this.context.site;return this.hasText()?c.jsxs("span",{className:"gh-portal-triggerbtn-label",children:[" ",t," "]}):null}onToggle(){const{showPopup:t,member:n,site:r}=this.context;if(t)this.context.onAction("closePopup");else{const a=at({site:r})?"signin":"signup",i=n?"accountHome":a;this.context.onAction("openPopup",{page:i})}}render(){const t=this.hasText(),{member:n}=this.context,r=n?"halo":"";return t?c.jsx("div",{className:"gh-portal-triggerbtn-wrapper",ref:this.container,children:c.jsxs("div",{className:"gh-portal-triggerbtn-container with-label",onClick:a=>this.onToggle(a),"data-testid":"portal-trigger-button",children:[this.renderTriggerIcon(),t?this.renderText():""]})}):c.jsx("div",{className:"gh-portal-triggerbtn-wrapper",children:c.jsx("div",{className:"gh-portal-triggerbtn-container "+r,onClick:a=>this.onToggle(a),"data-testid":"portal-trigger-button",children:this.renderTriggerIcon()})})}}G(Fh,"contextType",N);class Bh extends R.Component{constructor(t){super(t),this.state={width:null}}onWidthChange(t){this.setState({width:t})}hasText(){const{portal_button_signup_text:t,portal_button_style:n}=this.context.site;return["icon-and-text","text-only"].includes(n)&&!this.context.member&&t}renderFrameStyles(){const t=`
394
+ `+_h,yt=e=>{if(!e)return"";const t=new Date(e),n={year:"numeric",month:"short",day:"numeric"};return t.toLocaleDateString("en-GB",n)};function Ic(){const[e]=window.location.hash.substr(1).split("?");e&&/^\/portal\/?(?:\/(\w+(?:\/\w+)*))?\/?$/.test(e)&&window.history.pushState("",document.title,window.location.pathname+window.location.search)}function yw({page:e}){const t={signin:"#/portal/signin",signup:"#/portal/signup"};return Object.keys(t).includes(e)?t[e]:t.default}function jh({page:e,siteUrl:t}){const n=t||`${window.location.protocol}//${window.location.host}${window.location.pathname}`,r=yw({page:e});return`${n}${r}`}function rr(){return!(navigator&&navigator.cookieEnabled)}function bw({event:e}){var a,i,o,s;const n=(((s=(o=(i=(a=e==null?void 0:e.exception)==null?void 0:a.values)==null?void 0:i[0])==null?void 0:o.stacktrace)==null?void 0:s.frames)||[]).map(l=>l.filename).filter(l=>!!l);return(n[n.length-1]||"").includes("@tryghost/portal")}function Ge({member:e={}}){if(bt({member:e})){const n=(e.subscriptions||[]).find(r=>["active","trialing","unpaid","past_due"].includes(r.status));return!(n!=null&&n.price)&&(n!=null&&n.plan)&&(n.price=n.plan),n}return null}function ar({member:e={}}){if(!e)return!1;const t=Ge({member:e});if(t){const{price:n}=t;return n&&n.amount===0}else if(!t&&e.paid)return!0;return!1}function bt({member:e={}}){return e&&e.paid}function vw({product:e}){return e!=null&&e.monthlyPrice?e.monthlyPrice.currency:null}function Ea({member:e}){var t,n,r;return((r=(n=(t=e==null?void 0:e.subscriptions)==null?void 0:t[0])==null?void 0:n.tier)==null?void 0:r.expiry_at)!==void 0}function Dc({member:e}){var t,n,r;return(r=(n=(t=e==null?void 0:e.subscriptions)==null?void 0:t[0])==null?void 0:n.tier)!=null&&r.expiry_at?yt(e.subscriptions[0].tier.expiry_at):""}function kw({site:e,member:t}){const n=dn({member:t}),r=n==null?void 0:n.currency,a=mo({site:e});return n!=null&&n.id?a.filter(i=>wo(vw({product:i}),r)):a}function ww({prices:e,currency:t}){return e.filter(n=>wo(n.currency||"",t||""))}function Ph({subscription:e}){var t,n;return e&&e.price?{...e.price,stripe_price_id:e.price.id,id:e.price.price_id,price:e.price.amount/100,name:e.price.nickname,tierId:(t=e.tier)==null?void 0:t.id,cadence:((n=e.price)==null?void 0:n.interval)==="month"?"month":"year",currency:e.price.currency.toLowerCase(),currency_symbol:ue(e.price.currency)}:null}function dn({member:e}){const t=Ge({member:e});return Ph({subscription:t})}function xw({priceId:e,site:t,member:n}){const r=dn({member:n}),{tierId:a,cadence:i}=mn({site:t,priceId:e});return(r==null?void 0:r.tierId)===a&&(r==null?void 0:r.cadence)===i}function Sw({member:e,subscriptionId:t}){return bt({member:e})?(e.subscriptions||[]).find(r=>r.id===t):null}function Nh({member:e}){var n;const t=Ge({member:e});return((n=t==null?void 0:t.tier)==null?void 0:n.name)||""}function Ca({plans:e,site:t={}}){return e=e||vo({site:t}),!e||e.length===0||e.length===1&&e[0].type==="free"}function Ew(e,t){const r=mo({site:e}).find(a=>a.type==="paid");return t==="monthly"?{cadence:"month",tierId:r.id}:t==="yearly"?{cadence:"year",tierId:r.id}:{priceId:t}}function Cw({site:e={},priceId:t}){const n=bo({site:e});if(t==="free")return!n||n.length===0||n.find(r=>r.type==="free");if(n&&n.length>0&&t==="monthly"){const r=n.find(i=>i.name==="Monthly"),a=n.find(i=>i.interval==="month");return r||a}else if(n&&n.length>0&&t==="yearly"){const r=n.find(i=>i.name==="Yearly"),a=n.find(i=>i.interval==="year");return r||a}else if(n&&n.length>0&&t)return n.find(r=>r.id===t);return null}function at({site:e={},pageQuery:t=""}){return vo({site:e,pageQuery:t}).length===0||e&&e.members_signup_access==="invite"}function po({site:e}){const{portal_products:t}=e||{};return!!t}function Th({site:e}){return(e==null?void 0:e.comments_enabled)&&(e==null?void 0:e.comments_enabled)!=="off"}function $w({site:e}){var t,n,r,a,i,o;try{if(!e)return null;if(e.tiers&&(e.products=e.tiers),e.products=(t=e.products)==null?void 0:t.map(s=>({...s,monthlyPrice:s.monthly_price,yearlyPrice:s.yearly_price})),e.is_stripe_configured=!!e.paid_members_enabled,e.members_signup_access="all",e.members_enabled||(e.members_signup_access="none"),e.members_invite_only&&(e.members_signup_access="invite"),e.allow_self_signup=!1,e.members_signup_access!=="all"&&(e.allow_self_signup=!1),e.paid_members_enabled&&(e.allow_self_signup=!0),(n=e.portal_plans)!=null&&n.includes("free")&&(e.allow_self_signup=!0),(a=(r=e.products)==null?void 0:r[0])!=null&&a.visibility){e.portal_products=e.products.filter(l=>l.visibility!=="none"&&l.type==="paid").map(l=>l.id);const s=e.products.find(l=>l.type==="free");s&&(e.portal_plans=(i=e.portal_plans)==null?void 0:i.filter(l=>l!=="free"),(s==null?void 0:s.visibility)==="public"&&((o=e.portal_plans)==null||o.push("free")))}return e}catch(s){console.warn("[Portal] Failed to read site data:",s)}}function mo({site:e}){const{portal_products:t,products:n=[],portal_plans:r=[]}=e||{};return!r.includes("monthly")&&!r.includes("yearly")?[]:n.filter(a=>!!a).filter(a=>e.is_stripe_configured?!0:a.type!=="paid").filter(a=>!!(a.monthlyPrice&&a.yearlyPrice)).filter(a=>Object.keys(a.monthlyPrice).length>0&&Object.keys(a.yearlyPrice).length>0).filter(a=>t&&n.length>1?t.includes(a.id):!0).sort((a,i)=>{var o,s;return((o=a==null?void 0:a.monthlyPrice)==null?void 0:o.amount)-((s=i==null?void 0:i.monthlyPrice)==null?void 0:s.amount)}).map(a=>(a.monthlyPrice={...a.monthlyPrice,currency_symbol:ue(a.monthlyPrice.currency)},a.yearlyPrice={...a.yearlyPrice,currency_symbol:ue(a.yearlyPrice.currency)},a))}function ir({site:e}){const{products:t=[]}=e||{};return t.find(n=>n.type==="free")}function Ac({site:e}){const{products:t=[],portal_plans:n=[]}=e||{};return!n.includes("monthly")&&!n.includes("yearly")?[]:t.filter(r=>!!r).filter(r=>!!(r.monthlyPrice&&r.yearlyPrice)).filter(r=>Object.keys(r.monthlyPrice).length>0&&Object.keys(r.yearlyPrice).length>0).sort((r,a)=>{var i,o;return((i=r==null?void 0:r.monthlyPrice)==null?void 0:i.amount)-((o=a==null?void 0:a.monthlyPrice)==null?void 0:o.amount)}).map(r=>(r.monthlyPrice={...r.monthlyPrice,currency_symbol:ue(r.monthlyPrice.currency)},r.yearlyPrice={...r.yearlyPrice,currency_symbol:ue(r.yearlyPrice.currency)},r))}function ho({site:e,pageQuery:t}){const n=mo({site:e});return t==="free"&&pn({site:e})?[]:(pn({site:e})&&n.unshift({id:"free"}),n)}function fo({site:e,pageQuery:t}){return ho({site:e,pageQuery:t}).some(r=>!!(r!=null&&r.trial_days))}function Ih({site:e}){const t=ir({site:e});return(t==null?void 0:t.benefits)||[]}function Dh({site:e}){return yo({site:e})?"Free membership":"Free"}function Ah({site:e}){const t=ir({site:e});return t==null?void 0:t.description}function _w({site:e}){var n;const t=ir({site:e});return!!(t!=null&&t.description||(n=t==null?void 0:t.benefits)!=null&&n.length)}function or({site:e,productId:t}){return Ac({site:e}).find(r=>r.id===t)}function jw({site:e=null,products:t=null}){return!e&&!t?[]:(t||mo({site:e})).reduce((a,i)=>(i.monthlyPrice&&i.yearlyPrice&&(a.push(i.monthlyPrice),a.push(i.yearlyPrice)),a),[])}function pn({site:e}){const{allow_self_signup:t,portal_plans:n}=e||{};return t&&n.includes("free")}function sr({site:e}){const{newsletters:t=[]}=e||{};return t==null||t.sort((n,r)=>n.sort_order-r.sort_order),t}function go({site:e}){const{newsletters:t}=e||{};return(t==null?void 0:t.length)>1}function Mh({member:e}){var t;return(t=e==null?void 0:e.email_suppression)==null?void 0:t.suppressed}function yo({site:e}){return ho({site:e}).length===1&&pn({site:e})}function Mc({sub:e}={}){return!!(e!=null&&e.trial_end_at&&!zh(new Date(e==null?void 0:e.trial_end_at)))}function zh(e){const t=new Date;return t.setHours(0,0,0,0),e<t}function Rh({site:e,priceId:t}){return t==="free"?ir({site:e}):Ac({site:e}).find(r=>{var a,i;return((a=r==null?void 0:r.monthlyPrice)==null?void 0:a.id)===t||((i=r==null?void 0:r.yearlyPrice)==null?void 0:i.id)===t})}function mn({site:e,priceId:t}){var i;if(t==="free")return ir({site:e});const r=Ac({site:e}).find(o=>{var s,l;return((s=o==null?void 0:o.monthlyPrice)==null?void 0:s.id)===t||((l=o==null?void 0:o.yearlyPrice)==null?void 0:l.id)===t});let a="month";return((i=r==null?void 0:r.yearlyPrice)==null?void 0:i.id)===t&&(a="year"),{tierId:r==null?void 0:r.id,cadence:a}}function bo({site:e,products:t=null}){const{portal_plans:n=[],is_stripe_configured:r}=e||{};return r?jw({site:e,products:t}).filter(i=>!!(i&&i.id)).map(i=>({...i,price_id:i.id,price:i.amount/100,name:i.nickname,currency_symbol:ue(i.currency)})).filter(i=>i.amount!==0&&i.type==="recurring").filter(i=>i.interval==="month"?n.includes("monthly"):i.interval==="year"?n.includes("yearly"):!1).sort((i,o)=>i.amount-o.amount).sort((i,o)=>!i.currency||!o.currency?0:i.currency.localeCompare(o.currency,void 0,{ignorePunctuation:!0})):[]}function Pw({site:e}){const t=bo({site:e});let n={currency:"usd",currency_symbol:"$"};return(t==null?void 0:t.length)>0&&(n.currency=t[0].currency,n.currency_symbol=t[0].currency_symbol),n}function vo({site:e={},pageQuery:t=""}={}){const{allow_self_signup:n,portal_plans:r}=e||{},a=[];if(n&&r.includes("free")){const o=Pw({site:e});a.push({id:"free",type:"free",price:0,amount:0,name:Dh({site:e}),...o})}return t==="free"&&pn({site:e})||bo({site:e}).forEach(s=>{a.push(s)}),a}const Nw=({member:e})=>e?e.email:"",zc=({member:e})=>e?e.email_suppression:"",Tw=({site:e})=>e&&e.firstpromoter_account,Iw=({member:e})=>e?e.name:"",ko=({site:e})=>{var n;const{members_support_address:t}=e||{};if((t==null?void 0:t.indexOf("@"))<0){const r=Rc({site:e}),a=(r==null?void 0:r.replace(/^(www)\.(?=[^/]*\..{2,5})/,""))||"";return`${t}@${a}`}if(((n=t==null?void 0:t.split("@"))==null?void 0:n.length)>1){const[r,a]=t.split("@"),i=(a==null?void 0:a.replace(/^(www)\.(?=[^/]*\..{2,5})/,""))||"";return`${r}@${i}`}return t||""},Dw=({site:e})=>{const t=sr({site:e}),n=t==null?void 0:t[0];if(n)return n.sender_email||`noreply@${Rc({site:e})}`},Rc=({site:e})=>{try{return new URL(e.url).origin.replace(/^http(s?):\/\//,"").replace(/\/$/,"")}catch{return e.url.replace(/^http(s?):\/\//,"").replace(/\/$/,"")}},ue=e=>Intl.NumberFormat("en",{currency:e,style:"currency"}).format(0).replace(/[\d\s.]/g,""),Lc=e=>isNaN(e)?0:e/100,Aw=(e={})=>{const t=ue(e.currency),n=Lc(e.amount);return`${t}${n}/${e.interval}`},lr=e=>e==null?"":e.toLocaleString(),Q=({type:e,status:t,autoHide:n,duration:r=2600,closeable:a,state:i,message:o,meta:s={}})=>{let l=0;return i&&i.popupNotification&&(l=(i.popupNotification.count||0)+1),{type:e,status:t,autoHide:n,closeable:a,duration:r,meta:s,message:o,count:l}};function wo(e,t){return(e==null?void 0:e.toLowerCase())===(t==null?void 0:t.toLowerCase())}function Lh({site:e,pageQuery:t}){var a,i;const n=/^(?:(\S+?))?\/monthly$/,r=/^(?:(\S+?))?\/yearly$/;if(n.test(t||"")){const[,o]=t.match(n),s=or({site:e,productId:o});return(a=s==null?void 0:s.monthlyPrice)==null?void 0:a.id}else if(r.test(t||"")){const[,o]=t.match(r),s=or({site:e,productId:o});return(i=s==null?void 0:s.yearlyPrice)==null?void 0:i.id}return null}const Mw=({offer:e,price:t,useFormatted:n=!1})=>{const r=t.amount;let a;return e.type==="fixed"&&wo(e.currency,t.currency)?(a=(r-e.amount)/100,a=a>0?a:0):e.type==="percent"?a=(r-r*e.amount/100)/100:a=r/100,n?Intl.NumberFormat("en",{currency:t==null?void 0:t.currency,style:"currency"}).format(a):a},zw=({site:e,offer:t})=>(t==null?void 0:t.status)!=="active"?!1:!!or({site:e,productId:t.tier.id});function Rw({tier:e,priceId:t}){return e!=null&&e.monthly_price?{id:`price-${t}`,active:!0,type:"recurring",nickname:"Monthly",currency:e.currency,amount:e.monthly_price,interval:"month"}:null}function Lw({tier:e,priceId:t}){return e!=null&&e.yearly_price?{id:`price-${t}`,active:!0,type:"recurring",nickname:"Yearly",currency:e.currency,amount:e.yearly_price,interval:"year"}:null}function Uw({tier:e}){var t;return(t=e==null?void 0:e.benefits)==null?void 0:t.map(n=>({name:n}))}const Ow=({tiers:e})=>{let t=0;return e.map(n=>{let r=Rw({tier:n,priceId:t});t+=1;let a=Lw({tier:n,priceId:t});t+=1;let i=Uw({tier:n});return{...n,benefits:i,monthly_price:r,yearly_price:a}})};function xo(){const e="ghost-history";try{const t=localStorage.getItem(e);if(t){const n=JSON.parse(t);if(Array.isArray(n))return n}}catch(t){console.warn("[Portal] Failed to load member URL history:",t)}}function Fw({member:e}){if(!(e!=null&&e.created_at))return!1;const t=new Date,n=new Date(e.created_at),r=t.getTime()-n.getTime();return Math.round(r/(1e3*60*60))<24}const Yw=function(){return Bw()||Uh()},Bw=function(){const[e]=window.location.hash.substr(1).split("?");return e==="/portal/preview"},Uh=function(){const[e]=window.location.hash.substr(1).split("?");return e==="/portal/preview/offer"},Hw={preview:Yw,offerPreview:Uh,dev:function({customSiteUrl:e=""}={}){return!1},test:function(){return!1}},V=(e=[],t={})=>e.some(n=>{const r=Hw[n];return!!(r&&r(t))}),Oh={"icon-1":dw,"icon-2":pw,"icon-3":mw,"icon-4":hw,"icon-5":fw},Fh=({brandColor:e,hasText:t})=>({frame:{zIndex:"3999998",position:"fixed",bottom:"0",right:"0",width:"500px",maxWidth:"500px",height:"98px",animation:"250ms ease 0s 1 normal none running animation-bhegco",transition:"opacity 0.3s ease 0s",overflow:"hidden",...{...t?{}:{width:"105px"},...V(["preview"])?{opacity:1}:{}}},userIcon:{width:"34px",height:"34px",color:"#fff"},buttonIcon:{width:"24px",height:"24px",color:"#fff"},closeIcon:{width:"20px",height:"20px",color:"#fff"}});class Yh extends R.Component{constructor(t){super(t),this.state={},this.container=R.createRef(),this.height=null,this.width=null}updateHeight(t){this.props.updateHeight&&this.props.updateHeight(t)}updateWidth(t){this.props.updateWidth&&this.props.updateWidth(t)}componentDidMount(){this.container&&(this.height=this.container.current&&this.container.current.offsetHeight,this.width=this.container.current&&this.container.current.offsetWidth,this.updateHeight(this.height),this.updateWidth(this.width))}componentDidUpdate(){if(this.container){const t=this.container.current&&this.container.current.offsetHeight;let n=this.container.current&&this.container.current.offsetWidth;t!==this.height&&(this.height=t,this.updateHeight(this.height)),n!==this.width&&(this.width=n,this.updateWidth(this.width))}}renderTriggerIcon(){const{portal_button_icon:t="",portal_button_style:n=""}=this.context.site||{},r=Fh({brandColor:this.context.brandColor}),a=this.context.member&&this.context.member.avatar_image;if(!n.includes("icon")&&!this.context.member)return null;if(a)return c.jsx(Nc,{gravatar:a});if(this.context.member)return c.jsx(Pc,{style:r.userIcon});if(Object.keys(Oh).includes(t)){const i=Oh[t];return c.jsx(i,{style:r.buttonIcon})}else return t?c.jsx("img",{style:{width:"26px",height:"26px"},src:t,alt:""}):(this.hasText()&&(r.userIcon.width="26px",r.userIcon.height="26px"),c.jsx(Pc,{style:r.userIcon}))}hasText(){const{portal_button_signup_text:t,portal_button_style:n}=this.context.site;return["icon-and-text","text-only"].includes(n)&&!this.context.member&&t}renderText(){const{portal_button_signup_text:t}=this.context.site;return this.hasText()?c.jsxs("span",{className:"gh-portal-triggerbtn-label",children:[" ",t," "]}):null}onToggle(){const{showPopup:t,member:n,site:r}=this.context;if(t)this.context.onAction("closePopup");else{const a=at({site:r})?"signin":"signup",i=n?"accountHome":a;this.context.onAction("openPopup",{page:i})}}render(){const t=this.hasText(),{member:n}=this.context,r=n?"halo":"";return t?c.jsx("div",{className:"gh-portal-triggerbtn-wrapper",ref:this.container,children:c.jsxs("div",{className:"gh-portal-triggerbtn-container with-label",onClick:a=>this.onToggle(a),"data-testid":"portal-trigger-button",children:[this.renderTriggerIcon(),t?this.renderText():""]})}):c.jsx("div",{className:"gh-portal-triggerbtn-wrapper",children:c.jsx("div",{className:"gh-portal-triggerbtn-container "+r,onClick:a=>this.onToggle(a),"data-testid":"portal-trigger-button",children:this.renderTriggerIcon()})})}}G(Yh,"contextType",N);class Bh extends R.Component{constructor(t){super(t),this.state={width:null}}onWidthChange(t){this.setState({width:t})}hasText(){const{portal_button_signup_text:t,portal_button_style:n}=this.context.site;return["icon-and-text","text-only"].includes(n)&&!this.context.member&&t}renderFrameStyles(){const t=`
395
395
  :root {
396
396
  --brandcolor: ${this.context.brandColor}
397
397
  }
398
- `+gw;return c.jsx("style",{dangerouslySetInnerHTML:{__html:t}})}render(){const{portal_button:t}=this.context.site,{showPopup:n}=this.context;if(!t||V(["offerPreview"]))return null;const r=this.hasText(),i={...Yh({brandColor:this.context.brandColor,hasText:r}).frame};if(this.state.width){const o=this.state.width+2;i.width=`${o}px`}return c.jsx(jc,{dataTestId:"portal-trigger-frame",className:"gh-portal-triggerbtn-iframe",style:i,title:"portal-trigger",head:this.renderFrameStyles(),children:c.jsx(Fh,{isPopupOpen:n,updateWidth:o=>this.onWidthChange(o)})})}}G(Bh,"contextType",N);const qw=Tc+`
398
+ `+gw;return c.jsx("style",{dangerouslySetInnerHTML:{__html:t}})}render(){const{portal_button:t}=this.context.site,{showPopup:n}=this.context;if(!t||V(["offerPreview"]))return null;const r=this.hasText(),i={...Fh({brandColor:this.context.brandColor,hasText:r}).frame};if(this.state.width){const o=this.state.width+2;i.width=`${o}px`}return c.jsx(jc,{dataTestId:"portal-trigger-frame",className:"gh-portal-triggerbtn-iframe",style:i,title:"portal-trigger",head:this.renderFrameStyles(),children:c.jsx(Yh,{isPopupOpen:n,updateWidth:o=>this.onWidthChange(o)})})}}G(Bh,"contextType",N);const qw=Tc+`
399
399
  .gh-portal-notification-wrapper {
400
400
  position: relative;
401
401
  overflow: hidden;
@@ -1191,7 +1191,7 @@ Url: ${Xi(e)}`),!0)}function Jv(e,t){return e.type||!t||!t.length?!1:ek(e).some(
1191
1191
  min-height: unset;
1192
1192
  }
1193
1193
  }
1194
- `,ur=R.createContext({selectedInterval:"month",selectedProduct:"free",selectedPlan:null,setSelectedProduct:null});function ax({product:e}){return!e.benefits||!e.benefits.length?null:e.benefits.map((t,n)=>{const r=(t==null?void 0:t.id)||`benefit-${n}`;return c.jsxs("div",{className:"gh-portal-product-benefit",children:[c.jsx(Kh,{className:"gh-portal-benefit-checkmark",alt:""}),c.jsx("div",{className:"gh-portal-benefit-title",children:t.name})]},r)})}function Yc({product:e,hide:t=!1}){if(!e.benefits||!e.benefits.length||t)return null;let n="gh-portal-product-benefits";return c.jsx("div",{className:n,children:c.jsx(ax,{product:e})})}function Jh({price:e}){const{site:t}=v.useContext(N),{portal_plans:n}=t;return!n.includes("monthly")||!n.includes("yearly")?c.jsx("div",{className:"gh-portal-product-alternative-price"}):c.jsx("div",{className:"gh-portal-product-alternative-price",children:Aw(e)})}function ix({trialDays:e,discount:t,selectedInterval:n}){const{site:r,t:a}=v.useContext(N);return fo({site:r})?e?c.jsx("span",{className:"gh-portal-discount-label",children:a("{{trialDays}} days free",{trialDays:e})}):null:n==="year"?c.jsx("span",{className:"gh-portal-discount-label",children:a("{{discount}}% discount",{discount:t})}):null}function Qh({product:e}){const{selectedInterval:t}=v.useContext(ur),{site:n}=v.useContext(N),r=e.monthlyPrice,a=e.yearlyPrice,i=e.trial_days,o=t==="month"?r:a,s=t==="month"?a:r;if(!r||!a)return null;const l=nx(e.monthlyPrice.amount,e.yearlyPrice.amount),u=ue(o.currency);return fo({site:n})?c.jsx(c.Fragment,{children:c.jsxs("div",{className:"gh-portal-product-card-pricecontainer",children:[c.jsxs("div",{className:"gh-portal-product-card-price-trial",children:[c.jsxs("div",{className:"gh-portal-product-price",children:[c.jsx("span",{className:"currency-sign"+(u.length>1?" long":""),children:u}),c.jsx("span",{className:"amount","data-testid":"product-amount",children:lr(Lc(o.amount))}),c.jsxs("span",{className:"billing-period",children:["/",o.interval]})]}),c.jsx(ix,{trialDays:i,discount:l,selectedInterval:t})]}),t==="year"?c.jsx(Xh,{discount:l,trialDays:i}):"",c.jsx(Jh,{price:s})]})}):c.jsxs("div",{className:"gh-portal-product-card-pricecontainer",children:[c.jsxs("div",{className:"gh-portal-product-card-price-trial",children:[c.jsxs("div",{className:"gh-portal-product-price",children:[c.jsx("span",{className:"currency-sign"+(u.length>1?" long":""),children:u}),c.jsx("span",{className:"amount","data-testid":"product-amount",children:lr(Lc(o.amount))}),c.jsxs("span",{className:"billing-period",children:["/",o.interval]})]}),t==="year"?c.jsx(Xh,{discount:l}):""]}),c.jsx(Jh,{price:s})]})}function ox({products:e,handleChooseSignup:t,error:n}){const{site:r,action:a}=v.useContext(N),{selectedProduct:i,setSelectedProduct:o}=v.useContext(ur);let s=i==="free"?"gh-portal-product-card free checked":"gh-portal-product-card free";const l=ir({site:r});let u=Ah({site:r}),p=a==="signup:running";rr()&&(p=!0);let m="$";e&&e[1]?m=ue(e[1].monthlyPrice.currency):m="$";const d=yo({site:r}),y=Ih({site:r});if(d){if(!u&&!y.length)return null;s+=" only-free"}return!u&&!y.length&&(u="Free preview"),c.jsx(c.Fragment,{children:c.jsxs("div",{className:s,onClick:b=>{b.stopPropagation(),o("free")},"data-test-tier":"free",children:[c.jsxs("div",{className:"gh-portal-product-card-header",children:[c.jsx("h4",{className:"gh-portal-product-name",children:Dh({site:r})}),d?"":c.jsx("div",{className:"gh-portal-product-card-pricecontainer free-trial-disabled",children:c.jsxs("div",{className:"gh-portal-product-price",children:[c.jsx("span",{className:"currency-sign"+(m.length>1?" long":""),children:m}),c.jsx("span",{className:"amount","data-testid":"product-amount",children:"0"})]})})]}),c.jsxs("div",{className:"gh-portal-product-card-details",children:[c.jsxs("div",{className:"gh-portal-product-card-detaildata",children:[u?c.jsx("div",{className:"gh-portal-product-description","data-testid":"product-description",children:u}):"",c.jsx(Yc,{product:l})]}),d?"":c.jsxs("div",{className:"gh-portal-btn-product",children:[c.jsx("button",{"data-test-button":"select-tier",className:"gh-portal-btn",disabled:p,onClick:b=>{t(b,"free")},children:i==="free"&&p?c.jsx($a,{className:"gh-portal-loadingicon"}):"Choose"}),n&&c.jsx("div",{className:"gh-portal-error-message",children:n})]})]})]})})}function sx({selectedProduct:e,product:t,disabled:n,noOfProducts:r,trialDays:a}){return e===t.id&&n?c.jsx($a,{className:"gh-portal-loadingicon"}):a>0?"Start "+a+"-day free trial":r>1?"Choose":"Continue"}function lx({product:e,products:t,selectedInterval:n,handleChooseSignup:r,error:a}){var y;const{selectedProduct:i,setSelectedProduct:o}=v.useContext(ur),{action:s}=v.useContext(N),l=e.trial_days,u=i===e.id?"gh-portal-product-card checked":"gh-portal-product-card",p=(y=t==null?void 0:t.filter(b=>b.type==="paid"))==null?void 0:y.length;let m=!!["signup:running","checkoutPlan:running"].includes(s);rr()&&(m=!0);let d=e.description;return(!e.benefits||!e.benefits.length)&&!d&&(d="Full access"),c.jsx(c.Fragment,{children:c.jsxs("div",{className:u,onClick:b=>{b.stopPropagation(),o(e.id)},"data-test-tier":"paid",children:[c.jsxs("div",{className:"gh-portal-product-card-header",children:[c.jsx("h4",{className:"gh-portal-product-name",children:e.name}),c.jsx(Qh,{product:e})]}),c.jsxs("div",{className:"gh-portal-product-card-details",children:[c.jsxs("div",{className:"gh-portal-product-card-detaildata",children:[c.jsx("div",{className:"gh-portal-product-description","data-testid":"product-description",children:d}),c.jsx(Yc,{product:e})]}),c.jsxs("div",{className:"gh-portal-btn-product",children:[c.jsx("button",{"data-test-button":"select-tier",disabled:m,className:"gh-portal-btn",onClick:b=>{const x=Fc({products:t,selectedInterval:n,selectedProduct:e.id});r(b,x.id)},children:c.jsx(sx,{selectedProduct:i,product:e,disabled:m,noOfProducts:p,trialDays:l})}),a&&c.jsx("div",{className:"gh-portal-error-message",children:a})]})]})]},e.id)})}function cx({product:e,products:t,selectedInterval:n,errors:r}){const a=Fc({products:t,selectedInterval:n,selectedProduct:e.id});return a&&a.id&&r&&r[a.id]?r[a.id]:null}function ux({products:e,selectedInterval:t,handleChooseSignup:n,errors:r}){return e.map(a=>{const i=cx({product:a,products:e,selectedInterval:t,errors:r});return a.id==="free"?c.jsx(ox,{products:e,handleChooseSignup:n,error:i},a.id):c.jsx(lx,{products:e,product:a,selectedInterval:t,handleChooseSignup:n,error:i},a.id)})}function Xh({discount:e,trialDays:t}){const{site:n,t:r}=v.useContext(N),{portal_plans:a}=n;return e===0||!a.includes("monthly")?null:fo({site:n})?c.jsx(c.Fragment,{children:c.jsx("span",{className:"gh-portal-discount-label-trial",children:r("{{discount}}% discount",{discount:e})})}):c.jsx(c.Fragment,{children:c.jsx("span",{className:"gh-portal-discount-label",children:r("{{discount}}% discount",{discount:e})})})}function Zh({products:e,selectedInterval:t,setSelectedInterval:n}){const{site:r,t:a}=v.useContext(N),{portal_plans:i}=r;return!i.includes("monthly")||!i.includes("yearly")?null:c.jsx("div",{className:"gh-portal-logged-out-form-container",children:c.jsxs("div",{className:"gh-portal-products-pricetoggle"+(t==="month"?" left":""),children:[c.jsx("button",{"data-test-button":"switch-monthly",className:"gh-portal-btn"+(t==="month"?" active":""),onClick:o=>{n("month")},children:a("Monthly")}),c.jsx("button",{"data-test-button":"switch-yearly",className:"gh-portal-btn"+(t==="year"?" active":""),onClick:o=>{n("year")},children:a("Yearly")})]})})}function Fc({products:e,selectedProduct:t,selectedInterval:n}){let r=null;if(t==="free")r={id:"free"};else{let a=e.find(i=>i.id===t);a||(a=e.find(i=>i.type==="paid")),r=n==="month"?a==null?void 0:a.monthlyPrice:a==null?void 0:a.yearlyPrice}return r}function Eo({portalPlans:e,selectedInterval:t="year"}){if(t==="month"&&e.includes("monthly"))return"month";if(t==="year"&&e.includes("yearly"))return"year";if(e.includes("monthly"))return"month";if(e.includes("yearly"))return"year"}function ef({onPlanSelect:e,products:t,type:n=null,handleChooseSignup:r,errors:a}){var h,g;const{site:i}=v.useContext(N),{portal_plans:o}=i,s=Eo({portalPlans:o}),l=t.length>0?t[0].id:"free",[u,p]=v.useState(s),[m,d]=v.useState(l),y=Fc({products:t,selectedInterval:u,selectedProduct:m}),b=Eo({portalPlans:o,selectedInterval:u});if(v.useEffect(()=>{d(l)},[l]),v.useEffect(()=>{e(null,y.id)},[y.id,e]),!o.includes("monthly")&&!o.includes("yearly")||t.length===0)return null;let x="gh-portal-products";n==="upgrade"&&(x+=" gh-portal-upgrade-product");let f=((h=t.find(w=>w.id===m))==null?void 0:h.id)||((g=t.find(w=>w.type==="paid"))==null?void 0:g.id);return c.jsx(ur.Provider,{value:{selectedInterval:b,selectedProduct:f,setSelectedProduct:d},children:c.jsxs("section",{className:x,children:[yo({site:i})?"":c.jsx(Zh,{products:t,selectedInterval:b,setSelectedInterval:p}),c.jsx("div",{className:"gh-portal-products-grid",children:c.jsx(ux,{products:t,selectedInterval:b,handleChooseSignup:r,errors:a})})]})})}function dx({onPlanSelect:e,selectedPlan:t,products:n,type:r=null}){var h;const{site:a,member:i}=v.useContext(N),{portal_plans:o}=a,s=dn({member:i}),l=Rh({site:a,priceId:s.id}),u=Eo({portalPlans:o,selectedInterval:s.interval}),p=(l==null?void 0:l.id)||((h=n==null?void 0:n[0])==null?void 0:h.id),[m,d]=v.useState(u),[y,b]=v.useState(p),x=Eo({portalPlans:o,selectedInterval:m});if(v.useEffect(()=>{b(p)},[p]),!o.includes("monthly")&&!o.includes("yearly")||n.length===0)return null;let f="gh-portal-products";return r==="upgrade"&&(f+=" gh-portal-upgrade-product"),r==="changePlan"&&(f+=" gh-portal-upgrade-product gh-portal-change-plan"),c.jsx(ur.Provider,{value:{selectedInterval:x,selectedProduct:y,selectedPlan:t,setSelectedProduct:b},children:c.jsxs("section",{className:f,children:[c.jsx(Zh,{selectedInterval:x,setSelectedInterval:d}),c.jsx("div",{className:"gh-portal-products-grid",children:c.jsx(hx,{products:n,onPlanSelect:e})})]})})}function px({product:e,selectedPrice:t,activePrice:n}){return e!=null&&e.description?c.jsx("div",{className:"gh-portal-product-description","data-testid":"product-description",children:e.description}):null}function mx({product:e,onPlanSelect:t}){const{member:n,site:r,t:a}=v.useContext(N),{selectedProduct:i,setSelectedProduct:o,selectedInterval:s}=v.useContext(ur),l=i===e.id?"gh-portal-product-card checked":"gh-portal-product-card",u=e.monthlyPrice,p=e.yearlyPrice,m=dn({member:n}),d=s==="month"?u:p,y=xw({member:n,site:r,priceId:d.id});return c.jsxs("div",{className:l+(y?" disabled":""),onClick:b=>{b.stopPropagation(),o(e.id)},"data-test-tier":"paid",children:[c.jsxs("div",{className:"gh-portal-product-card-header",children:[c.jsx("h4",{className:"gh-portal-product-name",children:e.name}),c.jsx(Qh,{product:e})]}),c.jsxs("div",{className:"gh-portal-product-card-details",children:[c.jsxs("div",{className:"gh-portal-product-card-detaildata",children:[e.description?c.jsx(px,{product:e,selectedPrice:d,activePrice:m}):"",c.jsx(Yc,{product:e})]}),y?c.jsx("div",{className:"gh-portal-btn-product",children:c.jsx("span",{className:"gh-portal-current-plan",children:c.jsx("span",{children:a("Current plan")})})}):c.jsx("div",{className:"gh-portal-btn-product",children:c.jsx("button",{"data-test-button":"select-tier",className:"gh-portal-btn",onClick:()=>{t(null,d==null?void 0:d.id)},children:a("Choose")})})]})]},e.id)}function hx({products:e,onPlanSelect:t}){return e.map(n=>n.id==="free"?null:c.jsx(mx,{product:n,onPlanSelect:t},n.id))}function fx({products:e,selectedPlan:t,onPlanSelect:n,onPlanCheckout:r,changePlan:a=!1}){return rr()&&(n=()=>{}),a?c.jsx("section",{className:"gh-portal-plans",children:c.jsx("div",{children:c.jsx(dx,{type:"changePlan",products:e,selectedPlan:t,onPlanSelect:n})})}):c.jsx("section",{className:"gh-portal-plans",children:c.jsx("div",{children:c.jsx(ef,{type:"upgrade",products:e,onPlanSelect:n,handleChooseSignup:(...o)=>{r(...o)}})})})}var tf={exports:{}},gx="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED",yx=gx,bx=yx;function nf(){}function rf(){}rf.resetWarningCache=nf;var vx=function(){function e(r,a,i,o,s,l){if(l!==bx){var u=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw u.name="Invariant Violation",u}}e.isRequired=e;function t(){return e}var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:rf,resetWarningCache:nf};return n.PropTypes=n,n};tf.exports=vx();var kx=tf.exports;const Bc=je(kx);function af(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _a(e){return _a=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},_a(e)}function wx(e,t){if(_a(e)!=="object"||e===null)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||"default");if(_a(r)!=="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function xx(e){var t=wx(e,"string");return _a(t)==="symbol"?t:String(t)}function of(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,xx(r.key),r)}}function sf(e,t,n){return t&&of(e.prototype,t),n&&of(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function Sx(e,t){if(e==null)return{};var n={},r=Object.keys(e),a,i;for(i=0;i<r.length;i++)a=r[i],!(t.indexOf(a)>=0)&&(n[a]=e[a]);return n}function Ex(e,t){if(e==null)return{};var n=Sx(e,t),r,a;if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(a=0;a<i.length;a++)r=i[a],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var Co="TOKEN_PLACEHOLDER",ja="TOKEN_OPEN_TAG",$o="TOKEN_CLOSE_TAG",_o="TOKEN_SELF_TAG",jo="TOKEN_TEXT",lf="NODE_FRAGMENT",cf="NODE_TAG_ELEMENT",uf="NODE_VOID_ELEMENT",df="NODE_PLACEHOLDER",pf="NODE_TEXT",Cx=["type","children"],xe=function(){function e(t){var n=t.type,r=t.children,a=Ex(t,Cx);af(this,e),this.type=n,this.children=r||[];for(var i in a)this[i]=a[i];a.token&&(this.string=a.token.string)}return sf(e,[{key:"appendChild",value:function(n){this.children.push(n)}},{key:"isLeaf",get:function(){return this.children.length===0}}]),e}();xe.createTagNode=function(e,t){return new xe({type:cf,children:t,name:e.name,token:e})},xe.createFragmentNode=function(e){return new xe({type:lf,children:e})},xe.createVoidNode=function(e){return new xe({type:uf,name:e.name,token:e})},xe.createTextNode=function(e){return new xe({type:pf,text:e.string,token:e})},xe.createPlaceholderNode=function(e){return new xe({type:df,name:e.name,token:e})};var $x=[{type:Co,regex:/{\s*(\w+)\s*}/g},{type:ja,regex:/<(\w+)>/g},{type:$o,regex:/<\/(\w+)>/g},{type:_o,regex:/<(\w+)\s*\/>/g}],Ke=[{type:Co,regex:/{{\s*(\w+)\s*}}/g},{type:ja,regex:/<(\w+)>/g},{type:$o,regex:/<\/(\w+)>/g},{type:_o,regex:/<(\w+)\s*\/>/g}];function _x(e,t){var n=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=jx(e))||t&&e&&typeof e.length=="number"){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(u){throw u},f:a}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
1194
+ `,ur=R.createContext({selectedInterval:"month",selectedProduct:"free",selectedPlan:null,setSelectedProduct:null});function ax({product:e}){return!e.benefits||!e.benefits.length?null:e.benefits.map((t,n)=>{const r=(t==null?void 0:t.id)||`benefit-${n}`;return c.jsxs("div",{className:"gh-portal-product-benefit",children:[c.jsx(Kh,{className:"gh-portal-benefit-checkmark",alt:""}),c.jsx("div",{className:"gh-portal-benefit-title",children:t.name})]},r)})}function Fc({product:e,hide:t=!1}){if(!e.benefits||!e.benefits.length||t)return null;let n="gh-portal-product-benefits";return c.jsx("div",{className:n,children:c.jsx(ax,{product:e})})}function Jh({price:e}){const{site:t}=v.useContext(N),{portal_plans:n}=t;return!n.includes("monthly")||!n.includes("yearly")?c.jsx("div",{className:"gh-portal-product-alternative-price"}):c.jsx("div",{className:"gh-portal-product-alternative-price",children:Aw(e)})}function ix({trialDays:e,discount:t,selectedInterval:n}){const{site:r,t:a}=v.useContext(N);return fo({site:r})?e?c.jsx("span",{className:"gh-portal-discount-label",children:a("{{trialDays}} days free",{trialDays:e})}):null:n==="year"?c.jsx("span",{className:"gh-portal-discount-label",children:a("{{discount}}% discount",{discount:t})}):null}function Qh({product:e}){const{selectedInterval:t}=v.useContext(ur),{site:n}=v.useContext(N),r=e.monthlyPrice,a=e.yearlyPrice,i=e.trial_days,o=t==="month"?r:a,s=t==="month"?a:r;if(!r||!a)return null;const l=nx(e.monthlyPrice.amount,e.yearlyPrice.amount),u=ue(o.currency);return fo({site:n})?c.jsx(c.Fragment,{children:c.jsxs("div",{className:"gh-portal-product-card-pricecontainer",children:[c.jsxs("div",{className:"gh-portal-product-card-price-trial",children:[c.jsxs("div",{className:"gh-portal-product-price",children:[c.jsx("span",{className:"currency-sign"+(u.length>1?" long":""),children:u}),c.jsx("span",{className:"amount","data-testid":"product-amount",children:lr(Lc(o.amount))}),c.jsxs("span",{className:"billing-period",children:["/",o.interval]})]}),c.jsx(ix,{trialDays:i,discount:l,selectedInterval:t})]}),t==="year"?c.jsx(Xh,{discount:l,trialDays:i}):"",c.jsx(Jh,{price:s})]})}):c.jsxs("div",{className:"gh-portal-product-card-pricecontainer",children:[c.jsxs("div",{className:"gh-portal-product-card-price-trial",children:[c.jsxs("div",{className:"gh-portal-product-price",children:[c.jsx("span",{className:"currency-sign"+(u.length>1?" long":""),children:u}),c.jsx("span",{className:"amount","data-testid":"product-amount",children:lr(Lc(o.amount))}),c.jsxs("span",{className:"billing-period",children:["/",o.interval]})]}),t==="year"?c.jsx(Xh,{discount:l}):""]}),c.jsx(Jh,{price:s})]})}function ox({products:e,handleChooseSignup:t,error:n}){const{site:r,action:a}=v.useContext(N),{selectedProduct:i,setSelectedProduct:o}=v.useContext(ur);let s=i==="free"?"gh-portal-product-card free checked":"gh-portal-product-card free";const l=ir({site:r});let u=Ah({site:r}),p=a==="signup:running";rr()&&(p=!0);let m="$";e&&e[1]?m=ue(e[1].monthlyPrice.currency):m="$";const d=yo({site:r}),y=Ih({site:r});if(d){if(!u&&!y.length)return null;s+=" only-free"}return!u&&!y.length&&(u="Free preview"),c.jsx(c.Fragment,{children:c.jsxs("div",{className:s,onClick:b=>{b.stopPropagation(),o("free")},"data-test-tier":"free",children:[c.jsxs("div",{className:"gh-portal-product-card-header",children:[c.jsx("h4",{className:"gh-portal-product-name",children:Dh({site:r})}),d?"":c.jsx("div",{className:"gh-portal-product-card-pricecontainer free-trial-disabled",children:c.jsxs("div",{className:"gh-portal-product-price",children:[c.jsx("span",{className:"currency-sign"+(m.length>1?" long":""),children:m}),c.jsx("span",{className:"amount","data-testid":"product-amount",children:"0"})]})})]}),c.jsxs("div",{className:"gh-portal-product-card-details",children:[c.jsxs("div",{className:"gh-portal-product-card-detaildata",children:[u?c.jsx("div",{className:"gh-portal-product-description","data-testid":"product-description",children:u}):"",c.jsx(Fc,{product:l})]}),d?"":c.jsxs("div",{className:"gh-portal-btn-product",children:[c.jsx("button",{"data-test-button":"select-tier",className:"gh-portal-btn",disabled:p,onClick:b=>{t(b,"free")},children:i==="free"&&p?c.jsx($a,{className:"gh-portal-loadingicon"}):"Choose"}),n&&c.jsx("div",{className:"gh-portal-error-message",children:n})]})]})]})})}function sx({selectedProduct:e,product:t,disabled:n,noOfProducts:r,trialDays:a}){return e===t.id&&n?c.jsx($a,{className:"gh-portal-loadingicon"}):a>0?"Start "+a+"-day free trial":r>1?"Choose":"Continue"}function lx({product:e,products:t,selectedInterval:n,handleChooseSignup:r,error:a}){var y;const{selectedProduct:i,setSelectedProduct:o}=v.useContext(ur),{action:s}=v.useContext(N),l=e.trial_days,u=i===e.id?"gh-portal-product-card checked":"gh-portal-product-card",p=(y=t==null?void 0:t.filter(b=>b.type==="paid"))==null?void 0:y.length;let m=!!["signup:running","checkoutPlan:running"].includes(s);rr()&&(m=!0);let d=e.description;return(!e.benefits||!e.benefits.length)&&!d&&(d="Full access"),c.jsx(c.Fragment,{children:c.jsxs("div",{className:u,onClick:b=>{b.stopPropagation(),o(e.id)},"data-test-tier":"paid",children:[c.jsxs("div",{className:"gh-portal-product-card-header",children:[c.jsx("h4",{className:"gh-portal-product-name",children:e.name}),c.jsx(Qh,{product:e})]}),c.jsxs("div",{className:"gh-portal-product-card-details",children:[c.jsxs("div",{className:"gh-portal-product-card-detaildata",children:[c.jsx("div",{className:"gh-portal-product-description","data-testid":"product-description",children:d}),c.jsx(Fc,{product:e})]}),c.jsxs("div",{className:"gh-portal-btn-product",children:[c.jsx("button",{"data-test-button":"select-tier",disabled:m,className:"gh-portal-btn",onClick:b=>{const x=Yc({products:t,selectedInterval:n,selectedProduct:e.id});r(b,x.id)},children:c.jsx(sx,{selectedProduct:i,product:e,disabled:m,noOfProducts:p,trialDays:l})}),a&&c.jsx("div",{className:"gh-portal-error-message",children:a})]})]})]},e.id)})}function cx({product:e,products:t,selectedInterval:n,errors:r}){const a=Yc({products:t,selectedInterval:n,selectedProduct:e.id});return a&&a.id&&r&&r[a.id]?r[a.id]:null}function ux({products:e,selectedInterval:t,handleChooseSignup:n,errors:r}){return e.map(a=>{const i=cx({product:a,products:e,selectedInterval:t,errors:r});return a.id==="free"?c.jsx(ox,{products:e,handleChooseSignup:n,error:i},a.id):c.jsx(lx,{products:e,product:a,selectedInterval:t,handleChooseSignup:n,error:i},a.id)})}function Xh({discount:e,trialDays:t}){const{site:n,t:r}=v.useContext(N),{portal_plans:a}=n;return e===0||!a.includes("monthly")?null:fo({site:n})?c.jsx(c.Fragment,{children:c.jsx("span",{className:"gh-portal-discount-label-trial",children:r("{{discount}}% discount",{discount:e})})}):c.jsx(c.Fragment,{children:c.jsx("span",{className:"gh-portal-discount-label",children:r("{{discount}}% discount",{discount:e})})})}function Zh({products:e,selectedInterval:t,setSelectedInterval:n}){const{site:r,t:a}=v.useContext(N),{portal_plans:i}=r;return!i.includes("monthly")||!i.includes("yearly")?null:c.jsx("div",{className:"gh-portal-logged-out-form-container",children:c.jsxs("div",{className:"gh-portal-products-pricetoggle"+(t==="month"?" left":""),children:[c.jsx("button",{"data-test-button":"switch-monthly",className:"gh-portal-btn"+(t==="month"?" active":""),onClick:o=>{n("month")},children:a("Monthly")}),c.jsx("button",{"data-test-button":"switch-yearly",className:"gh-portal-btn"+(t==="year"?" active":""),onClick:o=>{n("year")},children:a("Yearly")})]})})}function Yc({products:e,selectedProduct:t,selectedInterval:n}){let r=null;if(t==="free")r={id:"free"};else{let a=e.find(i=>i.id===t);a||(a=e.find(i=>i.type==="paid")),r=n==="month"?a==null?void 0:a.monthlyPrice:a==null?void 0:a.yearlyPrice}return r}function Eo({portalPlans:e,selectedInterval:t="year"}){if(t==="month"&&e.includes("monthly"))return"month";if(t==="year"&&e.includes("yearly"))return"year";if(e.includes("monthly"))return"month";if(e.includes("yearly"))return"year"}function ef({onPlanSelect:e,products:t,type:n=null,handleChooseSignup:r,errors:a}){var h,g;const{site:i}=v.useContext(N),{portal_plans:o}=i,s=Eo({portalPlans:o}),l=t.length>0?t[0].id:"free",[u,p]=v.useState(s),[m,d]=v.useState(l),y=Yc({products:t,selectedInterval:u,selectedProduct:m}),b=Eo({portalPlans:o,selectedInterval:u});if(v.useEffect(()=>{d(l)},[l]),v.useEffect(()=>{e(null,y.id)},[y.id,e]),!o.includes("monthly")&&!o.includes("yearly")||t.length===0)return null;let x="gh-portal-products";n==="upgrade"&&(x+=" gh-portal-upgrade-product");let f=((h=t.find(w=>w.id===m))==null?void 0:h.id)||((g=t.find(w=>w.type==="paid"))==null?void 0:g.id);return c.jsx(ur.Provider,{value:{selectedInterval:b,selectedProduct:f,setSelectedProduct:d},children:c.jsxs("section",{className:x,children:[yo({site:i})?"":c.jsx(Zh,{products:t,selectedInterval:b,setSelectedInterval:p}),c.jsx("div",{className:"gh-portal-products-grid",children:c.jsx(ux,{products:t,selectedInterval:b,handleChooseSignup:r,errors:a})})]})})}function dx({onPlanSelect:e,selectedPlan:t,products:n,type:r=null}){var h;const{site:a,member:i}=v.useContext(N),{portal_plans:o}=a,s=dn({member:i}),l=Rh({site:a,priceId:s.id}),u=Eo({portalPlans:o,selectedInterval:s.interval}),p=(l==null?void 0:l.id)||((h=n==null?void 0:n[0])==null?void 0:h.id),[m,d]=v.useState(u),[y,b]=v.useState(p),x=Eo({portalPlans:o,selectedInterval:m});if(v.useEffect(()=>{b(p)},[p]),!o.includes("monthly")&&!o.includes("yearly")||n.length===0)return null;let f="gh-portal-products";return r==="upgrade"&&(f+=" gh-portal-upgrade-product"),r==="changePlan"&&(f+=" gh-portal-upgrade-product gh-portal-change-plan"),c.jsx(ur.Provider,{value:{selectedInterval:x,selectedProduct:y,selectedPlan:t,setSelectedProduct:b},children:c.jsxs("section",{className:f,children:[c.jsx(Zh,{selectedInterval:x,setSelectedInterval:d}),c.jsx("div",{className:"gh-portal-products-grid",children:c.jsx(hx,{products:n,onPlanSelect:e})})]})})}function px({product:e,selectedPrice:t,activePrice:n}){return e!=null&&e.description?c.jsx("div",{className:"gh-portal-product-description","data-testid":"product-description",children:e.description}):null}function mx({product:e,onPlanSelect:t}){const{member:n,site:r,t:a}=v.useContext(N),{selectedProduct:i,setSelectedProduct:o,selectedInterval:s}=v.useContext(ur),l=i===e.id?"gh-portal-product-card checked":"gh-portal-product-card",u=e.monthlyPrice,p=e.yearlyPrice,m=dn({member:n}),d=s==="month"?u:p,y=xw({member:n,site:r,priceId:d.id});return c.jsxs("div",{className:l+(y?" disabled":""),onClick:b=>{b.stopPropagation(),o(e.id)},"data-test-tier":"paid",children:[c.jsxs("div",{className:"gh-portal-product-card-header",children:[c.jsx("h4",{className:"gh-portal-product-name",children:e.name}),c.jsx(Qh,{product:e})]}),c.jsxs("div",{className:"gh-portal-product-card-details",children:[c.jsxs("div",{className:"gh-portal-product-card-detaildata",children:[e.description?c.jsx(px,{product:e,selectedPrice:d,activePrice:m}):"",c.jsx(Fc,{product:e})]}),y?c.jsx("div",{className:"gh-portal-btn-product",children:c.jsx("span",{className:"gh-portal-current-plan",children:c.jsx("span",{children:a("Current plan")})})}):c.jsx("div",{className:"gh-portal-btn-product",children:c.jsx("button",{"data-test-button":"select-tier",className:"gh-portal-btn",onClick:()=>{t(null,d==null?void 0:d.id)},children:a("Choose")})})]})]},e.id)}function hx({products:e,onPlanSelect:t}){return e.map(n=>n.id==="free"?null:c.jsx(mx,{product:n,onPlanSelect:t},n.id))}function fx({products:e,selectedPlan:t,onPlanSelect:n,onPlanCheckout:r,changePlan:a=!1}){return rr()&&(n=()=>{}),a?c.jsx("section",{className:"gh-portal-plans",children:c.jsx("div",{children:c.jsx(dx,{type:"changePlan",products:e,selectedPlan:t,onPlanSelect:n})})}):c.jsx("section",{className:"gh-portal-plans",children:c.jsx("div",{children:c.jsx(ef,{type:"upgrade",products:e,onPlanSelect:n,handleChooseSignup:(...o)=>{r(...o)}})})})}var tf={exports:{}},gx="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED",yx=gx,bx=yx;function nf(){}function rf(){}rf.resetWarningCache=nf;var vx=function(){function e(r,a,i,o,s,l){if(l!==bx){var u=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw u.name="Invariant Violation",u}}e.isRequired=e;function t(){return e}var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:rf,resetWarningCache:nf};return n.PropTypes=n,n};tf.exports=vx();var kx=tf.exports;const Bc=je(kx);function af(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _a(e){return _a=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},_a(e)}function wx(e,t){if(_a(e)!=="object"||e===null)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||"default");if(_a(r)!=="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function xx(e){var t=wx(e,"string");return _a(t)==="symbol"?t:String(t)}function of(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,xx(r.key),r)}}function sf(e,t,n){return t&&of(e.prototype,t),n&&of(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function Sx(e,t){if(e==null)return{};var n={},r=Object.keys(e),a,i;for(i=0;i<r.length;i++)a=r[i],!(t.indexOf(a)>=0)&&(n[a]=e[a]);return n}function Ex(e,t){if(e==null)return{};var n=Sx(e,t),r,a;if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(a=0;a<i.length;a++)r=i[a],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var Co="TOKEN_PLACEHOLDER",ja="TOKEN_OPEN_TAG",$o="TOKEN_CLOSE_TAG",_o="TOKEN_SELF_TAG",jo="TOKEN_TEXT",lf="NODE_FRAGMENT",cf="NODE_TAG_ELEMENT",uf="NODE_VOID_ELEMENT",df="NODE_PLACEHOLDER",pf="NODE_TEXT",Cx=["type","children"],xe=function(){function e(t){var n=t.type,r=t.children,a=Ex(t,Cx);af(this,e),this.type=n,this.children=r||[];for(var i in a)this[i]=a[i];a.token&&(this.string=a.token.string)}return sf(e,[{key:"appendChild",value:function(n){this.children.push(n)}},{key:"isLeaf",get:function(){return this.children.length===0}}]),e}();xe.createTagNode=function(e,t){return new xe({type:cf,children:t,name:e.name,token:e})},xe.createFragmentNode=function(e){return new xe({type:lf,children:e})},xe.createVoidNode=function(e){return new xe({type:uf,name:e.name,token:e})},xe.createTextNode=function(e){return new xe({type:pf,text:e.string,token:e})},xe.createPlaceholderNode=function(e){return new xe({type:df,name:e.name,token:e})};var $x=[{type:Co,regex:/{\s*(\w+)\s*}/g},{type:ja,regex:/<(\w+)>/g},{type:$o,regex:/<\/(\w+)>/g},{type:_o,regex:/<(\w+)\s*\/>/g}],Ke=[{type:Co,regex:/{{\s*(\w+)\s*}}/g},{type:ja,regex:/<(\w+)>/g},{type:$o,regex:/<\/(\w+)>/g},{type:_o,regex:/<(\w+)\s*\/>/g}];function _x(e,t){var n=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=jx(e))||t&&e&&typeof e.length=="number"){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(u){throw u},f:a}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
1195
1195
  In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var i=!0,o=!1,s;return{s:function(){n=n.call(e)},n:function(){var u=n.next();return i=u.done,u},e:function(u){o=!0,s=u},f:function(){try{!i&&n.return!=null&&n.return()}finally{if(o)throw s}}}}function jx(e,t){if(e){if(typeof e=="string")return mf(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return mf(e,t)}}function mf(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Px(e,t){var n=[],r=_x(t),a;try{for(r.s();!(a=r.n()).done;)for(var i=a.value,o=i.type,s=i.regex,l;(l=s.exec(e))!==null;)n.push({type:o,string:l[0],name:l[1],start:l.index,end:l.index+l[0].length})}catch(y){r.e(y)}finally{r.f()}n.sort(function(y,b){return y.start-b.start});var u=[],p=0;n.forEach(function(y){if(y.start===p){p=y.end;return}var b=y.start,x=e.substring(p,b);u.push({type:jo,string:x,text:x,start:p,end:b}),p=y.end});var m=e.substring(p);m!==""&&u.push({type:jo,string:m,start:p,end:e.length});var d=[].concat(u,n).sort(function(y,b){return y.start-b.start});return d}function Nx(e,t){t||(t=$x);var n=Px(e,t),r=new Tx(n);return r.parse()}var Pa="Syntax error. Please check if each open tag is closed correctly",hf={type:"EPSILON"},Tx=function(){function e(t){af(this,e),this.tokens=[].concat(t),this.tags=[]}return sf(e,[{key:"parse",value:function(){var n=this.document();if(!this.predict(hf.type))throw new Error(Pa);return n}},{key:"document",value:function(){var n=this.elementOrData();return xe.createFragmentNode(n)}},{key:"element",value:function(){var n=this.openTag(),r=this.elementOrData();return this.endTag(),xe.createTagNode(n,r)}},{key:"openTag",value:function(){if(!this.predict(ja))throw new Error(Pa);return this.pushTag(this.lookahead),this.match(ja)}},{key:"elementOrData",value:function(){var n=[];if(this.predict(ja)&&(n.push(this.element()),n=n.concat(this.elementOrData())),this.predict(_o,jo,Co)){var r=this.match(this.lookahead.type),a;switch(r.type){case _o:a=xe.createVoidNode(r);break;case jo:a=xe.createTextNode(r);break;case Co:a=xe.createPlaceholderNode(r);break}n.push(a),n=n.concat(this.elementOrData())}return n}},{key:"endTag",value:function(){if(!this.predict($o))throw new Error(Pa);var n=this.tags.pop();if(n.name!==this.lookahead.name)throw new Error(Pa);this.match($o)}},{key:"lookahead",get:function(){return this.tokens.length===0?hf:this.tokens[0]}},{key:"predict",value:function(){for(var n=arguments.length,r=new Array(n),a=0;a<n;a++)r[a]=arguments[a];return r.includes(this.lookahead.type)}},{key:"match",value:function(n){if(!this.predict(n))throw new Error(Pa);var r=this.tokens.shift();return r}},{key:"pushTag",value:function(n){this.tags.push(n)}}]),e}(),Ix=function e(t,n,r){var a=t.children.map(function(l,u){return R.createElement(R.Fragment,{key:r+u},e(l,n,r))});switch(t.type){case pf:return t.text;case lf:return R.createElement(R.Fragment,null,a);case uf:{var i=n[t.name];return typeof i=="function"?i():i||R.createElement(t.name,null)}case cf:{var o=n[t.name];if(o===void 0)return R.createElement(t.name,null,a);if(typeof o=="function")return o(a);if(R.isValidElement(o)){if(R.Children.count(o.props.children)!==0)throw new Error("when passing an element as value, the element should not contains children");return R.cloneElement(o,{children:a})}throw new Error('Invalid mapping value for "'.concat(t.name,'". Only element or render function are accepted'))}case df:{var s=n[t.name];return s===void 0?(console.warn('missing "'.concat(t.name,'" in mapping')),t.string):typeof s=="function"?s():s}default:return}};function Ue(e){var t=e.string,n=e.syntax,r=e.mapping,a=r===void 0?{}:r,i=e.graceful,o=i===void 0?!0:i;try{var s=Nx(t,n);return Ix(s,a,t)}catch(l){if(o)return console.error(l),t;throw l}}Ue.propTypes={string:Bc.string.isRequired,mapping:Bc.object,graceful:Bc.bool};const Dx=`
1196
1196
  .account-plan.full-size .gh-portal-main-title {
1197
1197
  font-size: 3.2rem;
@@ -1221,7 +1221,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
1221
1221
  height: 62px;
1222
1222
  padding: 6px 12px;
1223
1223
  }
1224
- `;function Ax({confirmationType:e,t}){if(e==="changePlan")return t("Confirm subscription");if(e==="cancel")return t("Cancel subscription");if(e==="subscribe")return t("Subscribe")}const Mx=({onBack:e,showConfirmation:t,confirmationType:n})=>{const{member:r,t:a}=v.useContext(N);let i=bt({member:r})?"Change plan":"Choose a plan";return t&&(i=Ax({confirmationType:n,t:a})),c.jsx("header",{className:"gh-portal-detail-header",children:c.jsx("h3",{className:"gh-portal-main-title",children:i})})},zx=({member:e,onCancelSubscription:t,action:n,brandColor:r})=>{const{site:a,t:i}=v.useContext(N);if(!e.paid)return null;const o=Ge({member:e});if(!o||o.cancel_at_period_end)return null;const s=i("Cancel subscription"),l=["cancelSubscription:running"].includes(n),u=!!l,p=!!o.cancel_at_period_end,m=!o.cancelAtPeriodEnd;return c.jsx("div",{className:"gh-portal-expire-container",children:c.jsx(de,{dataTestId:"cancel-subscription",onClick:d=>{t({subscriptionId:o.id,cancelAtPeriodEnd:!0})},isRunning:l,disabled:u,isPrimary:p,isDestructive:m,classes:po({site:a})?"gh-portal-btn-text mt2 mb4":"",brandColor:r,label:s,style:{width:"100%"}})})},Rx=({plan:e,type:t,onConfirm:n})=>{const{site:r,action:a,member:i,brandColor:o,t:s}=v.useContext(N),[l,u]=v.useState(""),p=Ge({member:i}),m=["updateSubscription:running","checkoutPlan:running","cancelSubscription:running"].includes(a),d=s("Confirm"),y=yt(p.current_period_end),b=dn({member:i});let x=s("Starting {{startDate}}",{startDate:y});b.id!==e.id&&(x=s("Starting today"));const f=lr(e.price),h=`${e.currency_symbol}${f}/${e.interval} – ${x}`,g=Rh({site:r,priceId:e==null?void 0:e.id}),w=po({site:r})?g==null?void 0:g.name:s("Price");return t==="changePlan"?c.jsxs("div",{className:"gh-portal-logged-out-form-container",children:[c.jsxs("div",{className:"gh-portal-list mb6",children:[c.jsx("section",{children:c.jsxs("div",{className:"gh-portal-list-detail",children:[c.jsx("h3",{children:s("Account")}),c.jsx("p",{children:i.email})]})}),c.jsx("section",{children:c.jsxs("div",{className:"gh-portal-list-detail",children:[c.jsx("h3",{children:w}),c.jsx("p",{children:h})]})})]}),c.jsx(de,{dataTestId:"confirm-action",onClick:k=>n(k,e),isRunning:m,isPrimary:!0,brandColor:o,label:d,style:{width:"100%",height:"40px"}})]}):c.jsxs("div",{className:"gh-portal-logged-out-form-container gh-portal-cancellation-form",children:[c.jsx("p",{children:c.jsx(Ue,{syntax:Ke,string:s("If you cancel your subscription now, you will continue to have access until {{periodEnd}}."),mapping:{periodEnd:c.jsx("strong",{children:yt(p.current_period_end)})}})}),c.jsxs("section",{className:"gh-portal-input-section",children:[c.jsx("div",{className:"gh-portal-input-labelcontainer",children:c.jsx("label",{className:"gh-portal-input-label",children:s("Cancellation reason")})}),c.jsx("textarea",{"data-test-input":"cancellation-reason",className:"gh-portal-input",label:"Cancellation reason",type:"text",name:"cancellation_reason",placeholder:"",value:l,onChange:k=>u(k.target.value),rows:"2",maxLength:"500"},"cancellation_reason")]}),c.jsx(de,{dataTestId:"confirm-cancel-subscription",onClick:k=>n(k,l),isRunning:m,isPrimary:!0,brandColor:o,label:s("Confirm cancellation"),style:{width:"100%",height:"40px"}})]})},Lx=({plans:e,selectedPlan:t,onPlanSelect:n,onCancelSubscription:r})=>{const{member:a,action:i,brandColor:o}=v.useContext(N);return c.jsxs("section",{children:[c.jsx("div",{className:"gh-portal-section gh-portal-accountplans-main",children:c.jsx(ff,{showLabel:!1,plans:e,selectedPlan:t,onPlanSelect:n,changePlan:!0})}),c.jsx(zx,{member:a,onCancelSubscription:r,action:i,brandColor:o})]})};function ff({showLabel:e,plans:t,selectedPlan:n,onPlanSelect:r,onPlanCheckout:a,changePlan:i=!1}){const{site:o,member:s}=v.useContext(N),l=kw({site:o,member:s});return c.jsx(fx,{products:l,selectedPlan:n,changePlan:i,onPlanSelect:r,onPlanCheckout:a})}const Ux=({plans:e,selectedPlan:t,onPlanSelect:n,onPlanCheckout:r})=>{let a="";return e.length===1&&(a="singleplan"),c.jsx("section",{children:c.jsx("div",{className:`gh-portal-section gh-portal-accountplans-main ${a}`,children:c.jsx(ff,{showLabel:!1,plans:e,selectedPlan:t,onPlanSelect:n,onPlanCheckout:r})})})},Ox=({plans:e,selectedPlan:t,confirmationPlan:n,confirmationType:r,showConfirmation:a=!1,onPlanSelect:i,onPlanCheckout:o,onConfirm:s,onCancelSubscription:l})=>{const{member:u}=v.useContext(N),p=Ea({member:u})&&ar({member:u});return!bt({member:u})||p?c.jsx(Ux,{plans:e,selectedPlan:t,onPlanSelect:i,onPlanCheckout:o}):a?c.jsx(Rx,{plan:n,type:r,onConfirm:s}):c.jsx(Lx,{plans:e,selectedPlan:t,onCancelSubscription:l,onPlanSelect:i})};class gf extends R.Component{constructor(n,r){super(n,r);G(this,"onPlanSelect",(n,r)=>{n==null||n.preventDefault();const{member:a}=this.context,i=Ea({member:a})?ar({member:a}):!1;if(!bt({member:a})||i)this.timeoutId=setTimeout(()=>{this.setState(()=>({selectedPlan:r}))},5);else{const o=this.prices.find(u=>u.id===r),l=this.getActivePriceId({member:a})?"changePlan":"subscribe";r!==this.state.selectedPlan&&this.setState({confirmationPlan:o,confirmationType:l,showConfirmation:!0})}});this.state=this.getInitialState()}componentDidMount(){const{member:n}=this.context;n||this.context.onAction("switchPage",{page:"signin"})}componentWillUnmount(){clearTimeout(this.timeoutId)}getInitialState(){const{member:n,site:r}=this.context;this.prices=bo({site:r});let a=dn({member:n});a&&(this.prices=ww({prices:this.prices,currency:a.currency}));let i=a?this.prices.find(s=>s.id===a.id):null;return!bt({member:n})&&this.prices.length>0&&(i=this.prices[0]),{selectedPlan:i?i.id:null}}handleSignout(n){n.preventDefault(),this.context.onAction("signout")}onBack(n){this.state.showConfirmation?this.cancelConfirmPage():this.context.onAction("back")}cancelConfirmPage(){this.setState({showConfirmation:!1,confirmationPlan:null,confirmationType:null})}onPlanCheckout(n,r){const{onAction:a,member:i}=this.context;let{confirmationPlan:o,selectedPlan:s}=this.state;r&&(s=r);const l=Ea({member:i})?!ar({member:i}):!0;if(bt({member:i})&&l){const u=Ge({member:i}),p=u?u.id:"";p&&a("updateSubscription",{plan:o.name,planId:o.id,subscriptionId:p,cancelAtPeriodEnd:!1})}else a("checkoutPlan",{plan:s})}onCancelSubscription({subscriptionId:n,cancelAtPeriodEnd:r}){const{member:a}=this.context,i=Sw({subscriptionId:n,member:a}),o=Ph({subscription:i});this.setState({showConfirmation:!0,confirmationPlan:o,confirmationType:"cancel"})}onCancelSubscriptionConfirmation(n){const{member:r}=this.context,a=Ge({member:r});if(!a)return null;this.context.onAction("cancelSubscription",{subscriptionId:a.id,cancelAtPeriodEnd:!0,cancellationReason:n})}getActivePriceId({member:n}){const r=dn({member:n});return r?r.id:null}onConfirm(n,r){const{confirmationType:a}=this.state;if(a==="cancel")return this.onCancelSubscriptionConfirmation(r);if(["changePlan","subscribe"].includes(a))return this.onPlanCheckout()}render(){const n=this.prices,{selectedPlan:r,showConfirmation:a,confirmationPlan:i,confirmationType:o}=this.state,{lastPage:s}=this.context;return c.jsx(c.Fragment,{children:c.jsxs("div",{className:"gh-portal-content",children:[c.jsx(cr,{onClick:l=>this.onBack(l),hidden:!s&&!a}),c.jsx(be,{}),c.jsx(Mx,{onBack:l=>this.onBack(l),confirmationType:o,showConfirmation:a}),c.jsx(Ox,{plans:n,selectedPlan:r,showConfirmation:a,confirmationPlan:i,confirmationType:o,onConfirm:(...l)=>this.onConfirm(...l),onCancelSubscription:l=>this.onCancelSubscription(l),onPlanSelect:this.onPlanSelect,onPlanCheckout:(l,u)=>this.onPlanCheckout(l,u)})]})})}}G(gf,"contextType",N);const Yx=`
1224
+ `;function Ax({confirmationType:e,t}){if(e==="changePlan")return t("Confirm subscription");if(e==="cancel")return t("Cancel subscription");if(e==="subscribe")return t("Subscribe")}const Mx=({onBack:e,showConfirmation:t,confirmationType:n})=>{const{member:r,t:a}=v.useContext(N);let i=bt({member:r})?"Change plan":"Choose a plan";return t&&(i=Ax({confirmationType:n,t:a})),c.jsx("header",{className:"gh-portal-detail-header",children:c.jsx("h3",{className:"gh-portal-main-title",children:i})})},zx=({member:e,onCancelSubscription:t,action:n,brandColor:r})=>{const{site:a,t:i}=v.useContext(N);if(!e.paid)return null;const o=Ge({member:e});if(!o||o.cancel_at_period_end)return null;const s=i("Cancel subscription"),l=["cancelSubscription:running"].includes(n),u=!!l,p=!!o.cancel_at_period_end,m=!o.cancelAtPeriodEnd;return c.jsx("div",{className:"gh-portal-expire-container",children:c.jsx(de,{dataTestId:"cancel-subscription",onClick:d=>{t({subscriptionId:o.id,cancelAtPeriodEnd:!0})},isRunning:l,disabled:u,isPrimary:p,isDestructive:m,classes:po({site:a})?"gh-portal-btn-text mt2 mb4":"",brandColor:r,label:s,style:{width:"100%"}})})},Rx=({plan:e,type:t,onConfirm:n})=>{const{site:r,action:a,member:i,brandColor:o,t:s}=v.useContext(N),[l,u]=v.useState(""),p=Ge({member:i}),m=["updateSubscription:running","checkoutPlan:running","cancelSubscription:running"].includes(a),d=s("Confirm"),y=yt(p.current_period_end),b=dn({member:i});let x=s("Starting {{startDate}}",{startDate:y});b.id!==e.id&&(x=s("Starting today"));const f=lr(e.price),h=`${e.currency_symbol}${f}/${e.interval} – ${x}`,g=Rh({site:r,priceId:e==null?void 0:e.id}),w=po({site:r})?g==null?void 0:g.name:s("Price");return t==="changePlan"?c.jsxs("div",{className:"gh-portal-logged-out-form-container",children:[c.jsxs("div",{className:"gh-portal-list mb6",children:[c.jsx("section",{children:c.jsxs("div",{className:"gh-portal-list-detail",children:[c.jsx("h3",{children:s("Account")}),c.jsx("p",{children:i.email})]})}),c.jsx("section",{children:c.jsxs("div",{className:"gh-portal-list-detail",children:[c.jsx("h3",{children:w}),c.jsx("p",{children:h})]})})]}),c.jsx(de,{dataTestId:"confirm-action",onClick:k=>n(k,e),isRunning:m,isPrimary:!0,brandColor:o,label:d,style:{width:"100%",height:"40px"}})]}):c.jsxs("div",{className:"gh-portal-logged-out-form-container gh-portal-cancellation-form",children:[c.jsx("p",{children:c.jsx(Ue,{syntax:Ke,string:s("If you cancel your subscription now, you will continue to have access until {{periodEnd}}."),mapping:{periodEnd:c.jsx("strong",{children:yt(p.current_period_end)})}})}),c.jsxs("section",{className:"gh-portal-input-section",children:[c.jsx("div",{className:"gh-portal-input-labelcontainer",children:c.jsx("label",{className:"gh-portal-input-label",children:s("Cancellation reason")})}),c.jsx("textarea",{"data-test-input":"cancellation-reason",className:"gh-portal-input",label:"Cancellation reason",type:"text",name:"cancellation_reason",placeholder:"",value:l,onChange:k=>u(k.target.value),rows:"2",maxLength:"500"},"cancellation_reason")]}),c.jsx(de,{dataTestId:"confirm-cancel-subscription",onClick:k=>n(k,l),isRunning:m,isPrimary:!0,brandColor:o,label:s("Confirm cancellation"),style:{width:"100%",height:"40px"}})]})},Lx=({plans:e,selectedPlan:t,onPlanSelect:n,onCancelSubscription:r})=>{const{member:a,action:i,brandColor:o}=v.useContext(N);return c.jsxs("section",{children:[c.jsx("div",{className:"gh-portal-section gh-portal-accountplans-main",children:c.jsx(ff,{showLabel:!1,plans:e,selectedPlan:t,onPlanSelect:n,changePlan:!0})}),c.jsx(zx,{member:a,onCancelSubscription:r,action:i,brandColor:o})]})};function ff({showLabel:e,plans:t,selectedPlan:n,onPlanSelect:r,onPlanCheckout:a,changePlan:i=!1}){const{site:o,member:s}=v.useContext(N),l=kw({site:o,member:s});return c.jsx(fx,{products:l,selectedPlan:n,changePlan:i,onPlanSelect:r,onPlanCheckout:a})}const Ux=({plans:e,selectedPlan:t,onPlanSelect:n,onPlanCheckout:r})=>{let a="";return e.length===1&&(a="singleplan"),c.jsx("section",{children:c.jsx("div",{className:`gh-portal-section gh-portal-accountplans-main ${a}`,children:c.jsx(ff,{showLabel:!1,plans:e,selectedPlan:t,onPlanSelect:n,onPlanCheckout:r})})})},Ox=({plans:e,selectedPlan:t,confirmationPlan:n,confirmationType:r,showConfirmation:a=!1,onPlanSelect:i,onPlanCheckout:o,onConfirm:s,onCancelSubscription:l})=>{const{member:u}=v.useContext(N),p=Ea({member:u})&&ar({member:u});return!bt({member:u})||p?c.jsx(Ux,{plans:e,selectedPlan:t,onPlanSelect:i,onPlanCheckout:o}):a?c.jsx(Rx,{plan:n,type:r,onConfirm:s}):c.jsx(Lx,{plans:e,selectedPlan:t,onCancelSubscription:l,onPlanSelect:i})};class gf extends R.Component{constructor(n,r){super(n,r);G(this,"onPlanSelect",(n,r)=>{n==null||n.preventDefault();const{member:a}=this.context,i=Ea({member:a})?ar({member:a}):!1;if(!bt({member:a})||i)this.timeoutId=setTimeout(()=>{this.setState(()=>({selectedPlan:r}))},5);else{const o=this.prices.find(u=>u.id===r),l=this.getActivePriceId({member:a})?"changePlan":"subscribe";r!==this.state.selectedPlan&&this.setState({confirmationPlan:o,confirmationType:l,showConfirmation:!0})}});this.state=this.getInitialState()}componentDidMount(){const{member:n}=this.context;n||this.context.onAction("switchPage",{page:"signin"})}componentWillUnmount(){clearTimeout(this.timeoutId)}getInitialState(){const{member:n,site:r}=this.context;this.prices=bo({site:r});let a=dn({member:n});a&&(this.prices=ww({prices:this.prices,currency:a.currency}));let i=a?this.prices.find(s=>s.id===a.id):null;return!bt({member:n})&&this.prices.length>0&&(i=this.prices[0]),{selectedPlan:i?i.id:null}}handleSignout(n){n.preventDefault(),this.context.onAction("signout")}onBack(n){this.state.showConfirmation?this.cancelConfirmPage():this.context.onAction("back")}cancelConfirmPage(){this.setState({showConfirmation:!1,confirmationPlan:null,confirmationType:null})}onPlanCheckout(n,r){const{onAction:a,member:i}=this.context;let{confirmationPlan:o,selectedPlan:s}=this.state;r&&(s=r);const l=Ea({member:i})?!ar({member:i}):!0;if(bt({member:i})&&l){const u=Ge({member:i}),p=u?u.id:"";p&&a("updateSubscription",{plan:o.name,planId:o.id,subscriptionId:p,cancelAtPeriodEnd:!1})}else a("checkoutPlan",{plan:s})}onCancelSubscription({subscriptionId:n,cancelAtPeriodEnd:r}){const{member:a}=this.context,i=Sw({subscriptionId:n,member:a}),o=Ph({subscription:i});this.setState({showConfirmation:!0,confirmationPlan:o,confirmationType:"cancel"})}onCancelSubscriptionConfirmation(n){const{member:r}=this.context,a=Ge({member:r});if(!a)return null;this.context.onAction("cancelSubscription",{subscriptionId:a.id,cancelAtPeriodEnd:!0,cancellationReason:n})}getActivePriceId({member:n}){const r=dn({member:n});return r?r.id:null}onConfirm(n,r){const{confirmationType:a}=this.state;if(a==="cancel")return this.onCancelSubscriptionConfirmation(r);if(["changePlan","subscribe"].includes(a))return this.onPlanCheckout()}render(){const n=this.prices,{selectedPlan:r,showConfirmation:a,confirmationPlan:i,confirmationType:o}=this.state,{lastPage:s}=this.context;return c.jsx(c.Fragment,{children:c.jsxs("div",{className:"gh-portal-content",children:[c.jsx(cr,{onClick:l=>this.onBack(l),hidden:!s&&!a}),c.jsx(be,{}),c.jsx(Mx,{onBack:l=>this.onBack(l),confirmationType:o,showConfirmation:a}),c.jsx(Ox,{plans:n,selectedPlan:r,showConfirmation:a,confirmationPlan:i,confirmationType:o,onConfirm:(...l)=>this.onConfirm(...l),onCancelSubscription:l=>this.onCancelSubscription(l),onPlanSelect:this.onPlanSelect,onPlanCheckout:(l,u)=>this.onPlanCheckout(l,u)})]})})}}G(gf,"contextType",N);const Fx=`
1225
1225
  .gh-portal-input {
1226
1226
  -webkit-appearance: none;
1227
1227
  -moz-appearance: none;
@@ -1282,7 +1282,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
1282
1282
  .gh-portal-popup-container:not(.preview) .gh-portal-input:disabled::placeholder {
1283
1283
  color: var(--grey9);
1284
1284
  }
1285
- `;function Fx({message:e,style:t}){return e?c.jsx("p",{style:{...t||{}},children:e}):null}function Bx({name:e,id:t,label:n,hideLabel:r,type:a,value:i,placeholder:o,disabled:s=!1,onChange:l=()=>{},onBlur:u=()=>{},onKeyDown:p=()=>{},tabindex:m,maxlength:d,autoFocus:y,errorMessage:b}){const x=v.useRef(null);t=t||`input-${e}`;const f=r?"gh-portal-input-label hidden":"gh-portal-input-label",h=b?"gh-portal-input error":"gh-portal-input";rr()&&(s=!0),V(["preview"])&&(s=!0);let g="",w="",k="";switch(t){case"input-email":g="off",w="off",k="off";break;case"input-name":g="off",w="off";break}return v.useEffect(()=>{y&&x.current.focus()},[y]),c.jsxs("section",{className:"gh-portal-input-section",children:[c.jsxs("div",{className:"gh-portal-input-labelcontainer",children:[c.jsxs("label",{htmlFor:t,className:f,children:[" ",n," "]}),c.jsx(Fx,{message:b,name:e})]}),c.jsx("input",{"data-test-input":t,ref:x,id:t,className:h,type:a,name:e,value:i,placeholder:o,onChange:C=>l(C,e),onKeyDown:C=>p(C,e),onBlur:C=>u(C,e),disabled:s,tabIndex:m,maxLength:d,autoComplete:g,autoCorrect:w,autoCapitalize:k,"aria-label":n})]})}class yf extends R.Component{render(){const{t}=this.context;return c.jsx(c.Fragment,{children:c.jsxs("button",{className:"gh-portal-btn gh-portal-btn-site-title-back",onClick:()=>{this.props.onBack?this.props.onBack():this.context.onAction("closePopup")},children:[c.jsx("span",{children:"← "})," ",t("Back")]})})}}G(yf,"contextType",N);const Hx=e=>v.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",...e},v.createElement("g",{transform:"matrix(0.6666666666666666,0,0,0.6666666666666666,0,0)"},v.createElement("path",{d:"M19.5,9.5h-.75V6.75a6.75,6.75,0,0,0-13.5,0V9.5H4.5a2,2,0,0,0-2,2V22a2,2,0,0,0,2,2h15a2,2,0,0,0,2-2V11.5A2,2,0,0,0,19.5,9.5Zm-7.5,9a2,2,0,1,1,2-2A2,2,0,0,1,12,18.5ZM16.25,9a.5.5,0,0,1-.5.5H8.25a.5.5,0,0,1-.5-.5V6.75a4.25,4.25,0,0,1,8.5,0Z",style:{fill:"#000000"}})));function qx({newsletter:e,subscribedNewsletters:t,setSubscribedNewsletters:n,t:r}){const a=t.some(i=>i.id===(e==null?void 0:e.id));return e.paid?c.jsxs("section",{className:"gh-portal-list-toggle-wrapper","data-test-toggle-wrapper":!0,children:[c.jsxs("div",{className:"gh-portal-list-detail gh-portal-list-big",children:[c.jsx("h3",{children:e.name}),c.jsx("p",{children:e.description})]}),c.jsx("div",{class:"gh-portal-lock-icon-container",children:c.jsx(Hx,{className:"gh-portal-lock-icon",alt:"",title:r("Unlock access to all newsletters by becoming a paid subscriber.")})})]}):c.jsxs("section",{className:"gh-portal-list-toggle-wrapper","data-test-toggle-wrapper":!0,children:[c.jsxs("div",{className:"gh-portal-list-detail gh-portal-list-big",children:[c.jsx("h3",{children:e.name}),c.jsx("p",{children:e.description})]}),c.jsx("div",{children:c.jsx(So,{id:e.id,onToggle:(i,o)=>{let s=[];o?s=t.filter(l=>l.id!==e.id).concat(e):s=t.filter(l=>l.id!==e.id),n(s)},checked:a})})]})}function Vx({subscribedNewsletters:e,setSubscribedNewsletters:t}){const{site:n,t:r}=v.useContext(N);return sr({site:n}).map(i=>c.jsx(qx,{newsletter:i,subscribedNewsletters:e,setSubscribedNewsletters:t,t:r},i==null?void 0:i.id))}function Hc({pageData:e,onBack:t}){const{brandColor:n,site:r,onAction:a,action:i,t:o}=v.useContext(N),l=sr({site:r}).filter(x=>x.subscribe_on_signup);let u=!1;i==="signup:running"&&(u=!0);let p=o("Continue"),m=!1;i==="signup:failed"&&(p=o("Retry"),m=!0);const d=i==="signup:running",[y,b]=v.useState(l);return c.jsxs("div",{className:"gh-portal-content with-footer gh-portal-newsletter-selection",children:[c.jsx("p",{className:"gh-portal-text-center gh-portal-text-large",children:o("Choose your newsletters")}),c.jsx("div",{className:"gh-portal-section",children:c.jsx("div",{className:"gh-portal-list",children:c.jsx(Vx,{subscribedNewsletters:y,setSubscribedNewsletters:b})})}),c.jsx("footer",{className:"gh-portal-action-footer",children:c.jsxs("div",{style:{width:"100%"},children:[c.jsx("div",{style:{marginBottom:"20px"},children:c.jsx(de,{isRunning:u,retry:m,disabled:d,onClick:x=>{let f=y.map(C=>({id:C.id}));const{name:h,email:g,plan:w,offerId:k}=e;a("signup",{name:h,email:g,plan:w,newsletters:f,offerId:k})},brandColor:n,label:p,style:{width:"100%"}})}),Ca({site:r})?null:c.jsx("div",{children:c.jsx("button",{className:"gh-portal-btn gh-portal-btn-link gh-portal-btn-different-plan",onClick:()=>{t()},children:c.jsx("span",{children:o("Choose a different plan")})})})]})})]})}const Wx=({field:e,onChange:t,onBlur:n=()=>{},onKeyDown:r=()=>{}})=>e?c.jsx(c.Fragment,{children:c.jsx(Bx,{label:e.label,type:e.type,name:e.name,placeholder:e.placeholder,disabled:e.disabled,value:e.value,onKeyDown:r,onChange:a=>t(a,e),onBlur:a=>n(a,e),tabIndex:e.tabindex,errorMessage:e.errorMessage,autoFocus:e.autoFocus},e.name)}):null;class Po extends v.Component{constructor(t){super(t),this.state={}}render(){const{fields:t,onChange:n,onBlur:r,onKeyDown:a}=this.props,i=t.map(o=>c.jsx(Wx,{field:o,onChange:n,onBlur:r,onKeyDown:a},o.name));return c.jsx(c.Fragment,{children:i})}}const Gx=e=>!!e&&/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/.test(String(e).toLowerCase()),Kx=({field:e})=>{if(e.required&&!e.value)switch(e.name){case"name":return"Enter your name";case"email":return"Enter your email address";default:return`Please enter ${e.name}`}return e.type==="email"&&!Gx(e.value)?"Invalid email address":null},No=({fields:e})=>{const t={};return e.forEach(n=>{const r=n.name,a=Kx({field:n});t[r]=a}),t},Jx=e=>v.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",...e},v.createElement("defs",null,v.createElement("style",null,".inviteicon{fill: currentColor;}")),v.createElement("path",{className:"inviteicon",d:"M23.991 11.464l-.036-.146-.028-.068-.011-.027-.115-.114-.018-.021-.008-.005h-.001l-3.774-2.596v-7.987c0-.276-.224-.5-.5-.5h-15c-.276 0-.5.224-.5.5v7.987l-3.774 2.595-.003.002-.006.004-.015.016-.118.118-.011.027-.028.068-.036.146-.009.037v10.5c0 1.103.897 2 2 2h20c1.103 0 2-.897 2-2v-10.5l-.009-.036zm-1.383.03l-2.608 1.738v-3.531l2.608 1.793zm-18.608 1.738l-2.608-1.739 2.608-1.792v3.531zm18 9.768h-20c-.551 0-1-.449-1-1v-9.566l5.223 3.482c.085.057.181.084.276.084.162 0 .32-.078.417-.223.153-.23.091-.54-.139-.693l-1.777-1.185v-12.899h14v12.899l-1.777 1.185c-.23.153-.292.463-.139.693.096.145.255.223.416.223.095 0 .191-.027.277-.084l5.223-3.482v9.566c0 .551-.449 1-1 1zM15.812 16.109c-.088-.07-.198-.109-.312-.109h-7c-.114 0-.224.039-.312.109l-5 4c-.215.173-.25.487-.078.703.173.215.487.251.703.078l4.862-3.89h6.649l4.863 3.891c.093.073.203.109.313.109.147 0 .292-.065.391-.188.172-.216.137-.53-.078-.703l-5.001-4zM11.706 12.779c.087.064.191.096.294.096s.207-.032.294-.096c.482-.35 4.706-3.497 4.706-6.101 0-1.868-1.387-2.984-2.728-2.984-.772 0-1.674.379-2.272 1.368-.598-.988-1.5-1.368-2.272-1.368-1.341-.001-2.728 1.116-2.728 2.984 0 2.604 4.224 5.751 4.706 6.101zm-1.978-8.086c.844 0 1.511.681 1.786 1.822.108.45.864.45.973 0 .274-1.141.942-1.822 1.786-1.822.85 0 1.728.742 1.728 1.984 0 1.646-2.658 4.037-4 5.072-1.342-1.035-4-3.426-4-5.072-.001-1.241.877-1.984 1.727-1.984z"})),Qx=`
1285
+ `;function Yx({message:e,style:t}){return e?c.jsx("p",{style:{...t||{}},children:e}):null}function Bx({name:e,id:t,label:n,hideLabel:r,type:a,value:i,placeholder:o,disabled:s=!1,onChange:l=()=>{},onBlur:u=()=>{},onKeyDown:p=()=>{},tabindex:m,maxlength:d,autoFocus:y,errorMessage:b}){const x=v.useRef(null);t=t||`input-${e}`;const f=r?"gh-portal-input-label hidden":"gh-portal-input-label",h=b?"gh-portal-input error":"gh-portal-input";rr()&&(s=!0),V(["preview"])&&(s=!0);let g="",w="",k="";switch(t){case"input-email":g="off",w="off",k="off";break;case"input-name":g="off",w="off";break}return v.useEffect(()=>{y&&x.current.focus()},[y]),c.jsxs("section",{className:"gh-portal-input-section",children:[c.jsxs("div",{className:"gh-portal-input-labelcontainer",children:[c.jsxs("label",{htmlFor:t,className:f,children:[" ",n," "]}),c.jsx(Yx,{message:b,name:e})]}),c.jsx("input",{"data-test-input":t,ref:x,id:t,className:h,type:a,name:e,value:i,placeholder:o,onChange:C=>l(C,e),onKeyDown:C=>p(C,e),onBlur:C=>u(C,e),disabled:s,tabIndex:m,maxLength:d,autoComplete:g,autoCorrect:w,autoCapitalize:k,"aria-label":n})]})}class yf extends R.Component{render(){const{t}=this.context;return c.jsx(c.Fragment,{children:c.jsxs("button",{className:"gh-portal-btn gh-portal-btn-site-title-back",onClick:()=>{this.props.onBack?this.props.onBack():this.context.onAction("closePopup")},children:[c.jsx("span",{children:"← "})," ",t("Back")]})})}}G(yf,"contextType",N);const Hx=e=>v.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",...e},v.createElement("g",{transform:"matrix(0.6666666666666666,0,0,0.6666666666666666,0,0)"},v.createElement("path",{d:"M19.5,9.5h-.75V6.75a6.75,6.75,0,0,0-13.5,0V9.5H4.5a2,2,0,0,0-2,2V22a2,2,0,0,0,2,2h15a2,2,0,0,0,2-2V11.5A2,2,0,0,0,19.5,9.5Zm-7.5,9a2,2,0,1,1,2-2A2,2,0,0,1,12,18.5ZM16.25,9a.5.5,0,0,1-.5.5H8.25a.5.5,0,0,1-.5-.5V6.75a4.25,4.25,0,0,1,8.5,0Z",style:{fill:"#000000"}})));function qx({newsletter:e,subscribedNewsletters:t,setSubscribedNewsletters:n,t:r}){const a=t.some(i=>i.id===(e==null?void 0:e.id));return e.paid?c.jsxs("section",{className:"gh-portal-list-toggle-wrapper","data-test-toggle-wrapper":!0,children:[c.jsxs("div",{className:"gh-portal-list-detail gh-portal-list-big",children:[c.jsx("h3",{children:e.name}),c.jsx("p",{children:e.description})]}),c.jsx("div",{class:"gh-portal-lock-icon-container",children:c.jsx(Hx,{className:"gh-portal-lock-icon",alt:"",title:r("Unlock access to all newsletters by becoming a paid subscriber.")})})]}):c.jsxs("section",{className:"gh-portal-list-toggle-wrapper","data-test-toggle-wrapper":!0,children:[c.jsxs("div",{className:"gh-portal-list-detail gh-portal-list-big",children:[c.jsx("h3",{children:e.name}),c.jsx("p",{children:e.description})]}),c.jsx("div",{children:c.jsx(So,{id:e.id,onToggle:(i,o)=>{let s=[];o?s=t.filter(l=>l.id!==e.id).concat(e):s=t.filter(l=>l.id!==e.id),n(s)},checked:a})})]})}function Vx({subscribedNewsletters:e,setSubscribedNewsletters:t}){const{site:n,t:r}=v.useContext(N);return sr({site:n}).map(i=>c.jsx(qx,{newsletter:i,subscribedNewsletters:e,setSubscribedNewsletters:t,t:r},i==null?void 0:i.id))}function Hc({pageData:e,onBack:t}){const{brandColor:n,site:r,onAction:a,action:i,t:o}=v.useContext(N),l=sr({site:r}).filter(x=>x.subscribe_on_signup);let u=!1;i==="signup:running"&&(u=!0);let p=o("Continue"),m=!1;i==="signup:failed"&&(p=o("Retry"),m=!0);const d=i==="signup:running",[y,b]=v.useState(l);return c.jsxs("div",{className:"gh-portal-content with-footer gh-portal-newsletter-selection",children:[c.jsx("p",{className:"gh-portal-text-center gh-portal-text-large",children:o("Choose your newsletters")}),c.jsx("div",{className:"gh-portal-section",children:c.jsx("div",{className:"gh-portal-list",children:c.jsx(Vx,{subscribedNewsletters:y,setSubscribedNewsletters:b})})}),c.jsx("footer",{className:"gh-portal-action-footer",children:c.jsxs("div",{style:{width:"100%"},children:[c.jsx("div",{style:{marginBottom:"20px"},children:c.jsx(de,{isRunning:u,retry:m,disabled:d,onClick:x=>{let f=y.map(C=>({id:C.id}));const{name:h,email:g,plan:w,offerId:k}=e;a("signup",{name:h,email:g,plan:w,newsletters:f,offerId:k})},brandColor:n,label:p,style:{width:"100%"}})}),Ca({site:r})?null:c.jsx("div",{children:c.jsx("button",{className:"gh-portal-btn gh-portal-btn-link gh-portal-btn-different-plan",onClick:()=>{t()},children:c.jsx("span",{children:o("Choose a different plan")})})})]})})]})}const Wx=({field:e,onChange:t,onBlur:n=()=>{},onKeyDown:r=()=>{}})=>e?c.jsx(c.Fragment,{children:c.jsx(Bx,{label:e.label,type:e.type,name:e.name,placeholder:e.placeholder,disabled:e.disabled,value:e.value,onKeyDown:r,onChange:a=>t(a,e),onBlur:a=>n(a,e),tabIndex:e.tabindex,errorMessage:e.errorMessage,autoFocus:e.autoFocus},e.name)}):null;class Po extends v.Component{constructor(t){super(t),this.state={}}render(){const{fields:t,onChange:n,onBlur:r,onKeyDown:a}=this.props,i=t.map(o=>c.jsx(Wx,{field:o,onChange:n,onBlur:r,onKeyDown:a},o.name));return c.jsx(c.Fragment,{children:i})}}const Gx=e=>!!e&&/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/.test(String(e).toLowerCase()),Kx=({field:e})=>{if(e.required&&!e.value)switch(e.name){case"name":return"Enter your name";case"email":return"Enter your email address";default:return`Please enter ${e.name}`}return e.type==="email"&&!Gx(e.value)?"Invalid email address":null},No=({fields:e})=>{const t={};return e.forEach(n=>{const r=n.name,a=Kx({field:n});t[r]=a}),t},Jx=e=>v.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",...e},v.createElement("defs",null,v.createElement("style",null,".inviteicon{fill: currentColor;}")),v.createElement("path",{className:"inviteicon",d:"M23.991 11.464l-.036-.146-.028-.068-.011-.027-.115-.114-.018-.021-.008-.005h-.001l-3.774-2.596v-7.987c0-.276-.224-.5-.5-.5h-15c-.276 0-.5.224-.5.5v7.987l-3.774 2.595-.003.002-.006.004-.015.016-.118.118-.011.027-.028.068-.036.146-.009.037v10.5c0 1.103.897 2 2 2h20c1.103 0 2-.897 2-2v-10.5l-.009-.036zm-1.383.03l-2.608 1.738v-3.531l2.608 1.793zm-18.608 1.738l-2.608-1.739 2.608-1.792v3.531zm18 9.768h-20c-.551 0-1-.449-1-1v-9.566l5.223 3.482c.085.057.181.084.276.084.162 0 .32-.078.417-.223.153-.23.091-.54-.139-.693l-1.777-1.185v-12.899h14v12.899l-1.777 1.185c-.23.153-.292.463-.139.693.096.145.255.223.416.223.095 0 .191-.027.277-.084l5.223-3.482v9.566c0 .551-.449 1-1 1zM15.812 16.109c-.088-.07-.198-.109-.312-.109h-7c-.114 0-.224.039-.312.109l-5 4c-.215.173-.25.487-.078.703.173.215.487.251.703.078l4.862-3.89h6.649l4.863 3.891c.093.073.203.109.313.109.147 0 .292-.065.391-.188.172-.216.137-.53-.078-.703l-5.001-4zM11.706 12.779c.087.064.191.096.294.096s.207-.032.294-.096c.482-.35 4.706-3.497 4.706-6.101 0-1.868-1.387-2.984-2.728-2.984-.772 0-1.674.379-2.272 1.368-.598-.988-1.5-1.368-2.272-1.368-1.341-.001-2.728 1.116-2.728 2.984 0 2.604 4.224 5.751 4.706 6.101zm-1.978-8.086c.844 0 1.511.681 1.786 1.822.108.45.864.45.973 0 .274-1.141.942-1.822 1.786-1.822.85 0 1.728.742 1.728 1.984 0 1.646-2.658 4.037-4 5.072-1.342-1.035-4-3.426-4-5.072-.001-1.241.877-1.984 1.727-1.984z"})),Qx=`
1286
1286
  .gh-portal-back-sitetitle {
1287
1287
  position: absolute;
1288
1288
  top: 35px;
@@ -1586,7 +1586,7 @@ footer.gh-portal-signup-footer.invite-only .gh-portal-signup-message {
1586
1586
  transform: translateX(-50%);
1587
1587
  }
1588
1588
  }
1589
- `;class bf extends R.Component{constructor(n){super(n);G(this,"handleSelectPlan",(n,r)=>{n&&n.preventDefault(),this.timeoutId=setTimeout(()=>{this.setState(a=>({plan:r}))},5)});this.state={name:"",email:"",plan:"free",showNewsletterSelection:!1,termsCheckboxChecked:!1}}componentDidMount(){const{member:n}=this.context;n&&this.context.onAction("switchPage",{page:"accountHome"}),this.handleSelectedPlan()}componentDidUpdate(){this.handleSelectedPlan()}handleSelectedPlan(){const{site:n,pageQuery:r}=this.context,a=vo({site:n,pageQuery:r}),i=this.getSelectedPriceId(a,this.state.plan);i!==this.state.plan&&this.setState({plan:i})}componentWillUnmount(){clearTimeout(this.timeoutId)}getFormErrors(n){const a=this.context.site.portal_signup_checkbox_required&&this.context.site.portal_signup_terms_html&&!n.termsCheckboxChecked;return{...No({fields:this.getInputFields({state:n})}),checkbox:a}}doSignup(){this.setState(n=>({errors:this.getFormErrors(n)}),()=>{const{site:n,onAction:r}=this.context,{name:a,email:i,plan:o,errors:s}=this.state;s&&Object.values(s).filter(u=>!!u).length>0||(go({site:n})?this.setState({showNewsletterSelection:!0,pageData:{name:a,email:i,plan:o},errors:{}}):(this.setState({errors:{}}),r("signup",{name:a,email:i,plan:o})))})}handleSignup(n){n.preventDefault(),this.doSignup()}handleChooseSignup(n,r){n.preventDefault(),this.setState({plan:r},()=>{this.doSignup()})}handleInputChange(n,r){const a=r.name,i=n.target.value;this.setState({[a]:i})}onKeyDown(n){n.keyCode===13&&this.handleSignup(n)}getSelectedPriceId(n=[],r){return!n||n.length===0?"free":n.some(i=>i.id===r)?r:n[0].id||"free"}getInputFields({state:n,fieldNames:r}){const{site:{portal_name:a},t:i}=this.context,o=n.errors||{},s=[{type:"email",value:n.email,placeholder:"jamie@example.com",label:i("Email"),name:"email",required:!0,tabindex:2,errorMessage:o.email||""}];return a&&s.unshift({type:"text",value:n.name,placeholder:"Jamie Larson",label:i("Name"),name:"name",required:!0,tabindex:1,errorMessage:o.name||""}),s[0].autoFocus=!0,r&&r.length>0?s.filter(l=>r.includes(l.name)):s}renderSignupTerms(){var u;const{site:n}=this.context;if(n.portal_signup_terms_html===null||n.portal_signup_terms_html==="")return null;const r=p=>{this.setState({termsCheckboxChecked:p.target.checked})},a=c.jsx("div",{className:"gh-portal-signup-terms-content",dangerouslySetInnerHTML:{__html:n.portal_signup_terms_html}}),i=n.portal_signup_checkbox_required?c.jsxs("label",{children:[c.jsx("input",{type:"checkbox",checked:!!this.state.termsCheckboxChecked,required:!0,onChange:r}),c.jsx("span",{class:"checkbox"}),a]}):a,s=`gh-portal-signup-terms ${(u=this.state.errors)!=null&&u.checkbox?"gh-portal-error":""}`,l=p=>{p.target.tagName==="A"&&(p.preventDefault(),window.open(p.target.href,"_blank"))};return c.jsx("div",{className:s,onClick:l,children:i})}renderSubmitButton(){const{action:n,site:r,brandColor:a,pageQuery:i,t:o}=this.context;if(at({site:r,pageQuery:i}))return null;let s=o("Continue");const l=i==="free"&&pn({site:r});if(Ca({site:r})||l)s=o("Sign up");else return null;let u=!1;n==="signup:running"&&(s=o("Sending..."),u=!0);let p=!1;n==="signup:failed"&&(s=o("Retry"),p=!0);const m=n==="signup:running";return c.jsx(de,{style:{width:"100%"},retry:p,onClick:d=>this.handleSignup(d),disabled:m,brandColor:a,label:s,isRunning:u,tabIndex:"3"})}renderProducts(){const{site:n,pageQuery:r,t:a}=this.context,i=ho({site:n,pageQuery:r}),o=this.state.errors||{},s={};return Object.keys(o).length>0&&this.state.plan&&(s[this.state.plan]=a("Please fill in required fields")),c.jsx(c.Fragment,{children:c.jsx(ef,{handleChooseSignup:(...l)=>this.handleChooseSignup(...l),products:i,onPlanSelect:this.handleSelectPlan,errors:s})})}renderFreeTrialMessage(){const{site:n,t:r}=this.context;return fo({site:n})&&!at({site:n})?c.jsx("p",{className:"gh-portal-free-trial-notification","data-testid":"free-trial-notification-text",children:r("After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.")}):null}renderLoginMessage(){const{brandColor:n,onAction:r,t:a}=this.context;return c.jsxs("div",{children:[this.renderFreeTrialMessage(),c.jsxs("div",{className:"gh-portal-signup-message",children:[c.jsx("div",{children:a("Already a member?")}),c.jsx("button",{"data-test-button":"signin-switch",className:"gh-portal-btn gh-portal-btn-link",style:{color:n},onClick:()=>r("switchPage",{page:"signin"}),children:c.jsx("span",{children:a("Sign in")})})]})]})}renderForm(){const n=this.getInputFields({state:this.state}),{site:r,pageQuery:a,t:i}=this.context;if(this.state.showNewsletterSelection)return c.jsx(Hc,{pageData:this.state.pageData,onBack:()=>{this.setState({showNewsletterSelection:!1})}});if(at({site:r,pageQuery:a}))return c.jsx("section",{children:c.jsxs("div",{className:"gh-portal-section",children:[c.jsx("p",{className:"gh-portal-invite-only-notification","data-testid":"invite-only-notification-text",children:i("This site is invite-only, contact the owner for access.")}),this.renderLoginMessage()]})});const o=Ih({site:r}),s=Ah({site:r}),l=a==="free"&&pn({site:r}),u=yo({site:r})||l,p=!l&&(o.length||s);return c.jsx("section",{className:"gh-portal-signup",children:c.jsxs("div",{className:"gh-portal-section",children:[c.jsx("div",{className:"gh-portal-logged-out-form-container",children:c.jsx(Po,{fields:n,onChange:(m,d)=>this.handleInputChange(m,d),onKeyDown:m=>this.onKeyDown(m)})}),c.jsxs("div",{children:[u?c.jsxs(c.Fragment,{children:[this.renderProducts(),c.jsx("div",{className:"gh-portal-signup-terms-wrapper free-only",children:this.renderSignupTerms()})]}):c.jsxs(c.Fragment,{children:[c.jsx("div",{className:"gh-portal-signup-terms-wrapper",children:this.renderSignupTerms()}),this.renderProducts()]}),u?c.jsx("div",{className:"gh-portal-btn-container"+(p?" sticky m24":""),children:c.jsxs("div",{className:"gh-portal-logged-out-form-container",children:[this.renderSubmitButton(),this.renderLoginMessage()]})}):this.renderLoginMessage()]})]})})}renderSiteLogo(){const{site:n,pageQuery:r}=this.context,a=n.icon;return a?c.jsx("img",{className:"gh-portal-signup-logo",src:a,alt:n.title}):at({site:n,pageQuery:r})?c.jsx(Jx,{className:"gh-portal-icon gh-portal-icon-invitation"}):null}renderFormHeader(){const{site:n}=this.context,r=n.title||"";return c.jsxs("header",{className:"gh-portal-signup-header",children:[this.renderSiteLogo(),c.jsx("h1",{className:"gh-portal-main-title","data-testid":"site-title-text",children:r})]})}getClassNames(){const{site:n,pageQuery:r}=this.context,a=vo({site:n,pageQuery:r}),i=this.getInputFields({state:this.state});let o="",s="";return(a.length<=1||at({site:n}))&&(a.length===1&&a[0].type==="free"||at({site:n,pageQuery:r})?(o=_w({site:n})?"singleplan":"noplan",i.length===1&&(o="single-field"),at({site:n})&&(s="invite-only",o="invite-only")):o="singleplan"),{sectionClass:o,footerClass:s}}render(){let{sectionClass:n}=this.getClassNames();return c.jsxs(c.Fragment,{children:[c.jsx("div",{className:"gh-portal-back-sitetitle",children:c.jsx(yf,{onBack:()=>{this.state.showNewsletterSelection?this.setState({showNewsletterSelection:!1}):this.context.onAction("closePopup")}})}),c.jsx(be,{}),c.jsxs("div",{className:"gh-portal-content signup "+n,children:[this.renderFormHeader(),this.renderForm()]})]})}}G(bf,"contextType",N);const Xx=e=>v.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",...e},v.createElement("defs",null,v.createElement("style",null,".a{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1px;}")),v.createElement("rect",{className:"a",x:.75,y:4.5,width:22.5,height:15,rx:1.5,ry:1.5}),v.createElement("line",{className:"a",x1:15.687,y1:9.975,x2:19.5,y2:13.5}),v.createElement("line",{className:"a",x1:8.313,y1:9.975,x2:4.5,y2:13.5}),v.createElement("path",{className:"a",d:"M22.88,5.014l-9.513,6.56a2.406,2.406,0,0,1-2.734,0L1.12,5.014"})),Zx=`
1589
+ `;class bf extends R.Component{constructor(n){super(n);G(this,"handleSelectPlan",(n,r)=>{n&&n.preventDefault(),this.timeoutId=setTimeout(()=>{this.setState(a=>({plan:r}))},5)});this.state={name:"",email:"",plan:"free",showNewsletterSelection:!1,termsCheckboxChecked:!1}}componentDidMount(){const{member:n}=this.context;n&&this.context.onAction("switchPage",{page:"accountHome"}),this.handleSelectedPlan()}componentDidUpdate(){this.handleSelectedPlan()}handleSelectedPlan(){const{site:n,pageQuery:r}=this.context,a=vo({site:n,pageQuery:r}),i=this.getSelectedPriceId(a,this.state.plan);i!==this.state.plan&&this.setState({plan:i})}componentWillUnmount(){clearTimeout(this.timeoutId)}getFormErrors(n){const a=this.context.site.portal_signup_checkbox_required&&this.context.site.portal_signup_terms_html&&!n.termsCheckboxChecked;return{...No({fields:this.getInputFields({state:n})}),checkbox:a}}doSignup(){this.setState(n=>({errors:this.getFormErrors(n)}),()=>{const{site:n,onAction:r}=this.context,{name:a,email:i,plan:o,errors:s}=this.state;s&&Object.values(s).filter(u=>!!u).length>0||(go({site:n})?this.setState({showNewsletterSelection:!0,pageData:{name:a,email:i,plan:o},errors:{}}):(this.setState({errors:{}}),r("signup",{name:a,email:i,plan:o})))})}handleSignup(n){n.preventDefault(),this.doSignup()}handleChooseSignup(n,r){n.preventDefault(),this.setState({plan:r},()=>{this.doSignup()})}handleInputChange(n,r){const a=r.name,i=n.target.value;this.setState({[a]:i})}onKeyDown(n){n.keyCode===13&&this.handleSignup(n)}getSelectedPriceId(n=[],r){return!n||n.length===0?"free":n.some(i=>i.id===r)?r:n[0].id||"free"}getInputFields({state:n,fieldNames:r}){const{site:{portal_name:a},t:i}=this.context,o=n.errors||{},s=[{type:"email",value:n.email,placeholder:"jamie@example.com",label:i("Email"),name:"email",required:!0,tabindex:2,errorMessage:o.email||""}];return a&&s.unshift({type:"text",value:n.name,placeholder:"Jamie Larson",label:i("Name"),name:"name",required:!0,tabindex:1,errorMessage:o.name||""}),s[0].autoFocus=!0,r&&r.length>0?s.filter(l=>r.includes(l.name)):s}renderSignupTerms(){var u;const{site:n}=this.context;if(n.portal_signup_terms_html===null||n.portal_signup_terms_html==="")return null;const r=p=>{this.setState({termsCheckboxChecked:p.target.checked})},a=c.jsx("div",{className:"gh-portal-signup-terms-content",dangerouslySetInnerHTML:{__html:n.portal_signup_terms_html}}),i=n.portal_signup_checkbox_required?c.jsxs("label",{children:[c.jsx("input",{type:"checkbox",checked:!!this.state.termsCheckboxChecked,required:!0,onChange:r}),c.jsx("span",{class:"checkbox"}),a]}):a,s=`gh-portal-signup-terms ${(u=this.state.errors)!=null&&u.checkbox?"gh-portal-error":""}`,l=p=>{p.target.tagName==="A"&&(p.preventDefault(),window.open(p.target.href,"_blank"))};return c.jsx("div",{className:s,onClick:l,children:i})}renderSubmitButton(){const{action:n,site:r,brandColor:a,pageQuery:i,t:o}=this.context;if(at({site:r,pageQuery:i}))return null;let s=o("Continue");const l=i==="free"&&pn({site:r});if(Ca({site:r})||l)s=o("Sign up");else return null;let u=!1;n==="signup:running"&&(s=o("Sending..."),u=!0);let p=!1;n==="signup:failed"&&(s=o("Retry"),p=!0);const m=n==="signup:running";return c.jsx(de,{style:{width:"100%"},retry:p,onClick:d=>this.handleSignup(d),disabled:m,brandColor:a,label:s,isRunning:u,tabIndex:"3"})}renderProducts(){const{site:n,pageQuery:r,t:a}=this.context,i=ho({site:n,pageQuery:r}),o=this.state.errors||{},s={};return Object.keys(o).length>0&&this.state.plan&&(s[this.state.plan]=a("Please fill in required fields")),c.jsx(c.Fragment,{children:c.jsx(ef,{handleChooseSignup:(...l)=>this.handleChooseSignup(...l),products:i,onPlanSelect:this.handleSelectPlan,errors:s})})}renderFreeTrialMessage(){const{site:n,t:r,pageQuery:a}=this.context;return fo({site:n,pageQuery:a})&&!at({site:n})?c.jsx("p",{className:"gh-portal-free-trial-notification","data-testid":"free-trial-notification-text",children:r("After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.")}):null}renderLoginMessage(){const{brandColor:n,onAction:r,t:a}=this.context;return c.jsxs("div",{children:[this.renderFreeTrialMessage(),c.jsxs("div",{className:"gh-portal-signup-message",children:[c.jsx("div",{children:a("Already a member?")}),c.jsx("button",{"data-test-button":"signin-switch",className:"gh-portal-btn gh-portal-btn-link",style:{color:n},onClick:()=>r("switchPage",{page:"signin"}),children:c.jsx("span",{children:a("Sign in")})})]})]})}renderForm(){const n=this.getInputFields({state:this.state}),{site:r,pageQuery:a,t:i}=this.context;if(this.state.showNewsletterSelection)return c.jsx(Hc,{pageData:this.state.pageData,onBack:()=>{this.setState({showNewsletterSelection:!1})}});if(at({site:r,pageQuery:a}))return c.jsx("section",{children:c.jsxs("div",{className:"gh-portal-section",children:[c.jsx("p",{className:"gh-portal-invite-only-notification","data-testid":"invite-only-notification-text",children:i("This site is invite-only, contact the owner for access.")}),this.renderLoginMessage()]})});const o=Ih({site:r}),s=Ah({site:r}),l=a==="free"&&pn({site:r}),u=yo({site:r})||l,p=!l&&(o.length||s);return c.jsx("section",{className:"gh-portal-signup",children:c.jsxs("div",{className:"gh-portal-section",children:[c.jsx("div",{className:"gh-portal-logged-out-form-container",children:c.jsx(Po,{fields:n,onChange:(m,d)=>this.handleInputChange(m,d),onKeyDown:m=>this.onKeyDown(m)})}),c.jsxs("div",{children:[u?c.jsxs(c.Fragment,{children:[this.renderProducts(),c.jsx("div",{className:"gh-portal-signup-terms-wrapper free-only",children:this.renderSignupTerms()})]}):c.jsxs(c.Fragment,{children:[c.jsx("div",{className:"gh-portal-signup-terms-wrapper",children:this.renderSignupTerms()}),this.renderProducts()]}),u?c.jsx("div",{className:"gh-portal-btn-container"+(p?" sticky m24":""),children:c.jsxs("div",{className:"gh-portal-logged-out-form-container",children:[this.renderSubmitButton(),this.renderLoginMessage()]})}):this.renderLoginMessage()]})]})})}renderSiteLogo(){const{site:n,pageQuery:r}=this.context,a=n.icon;return a?c.jsx("img",{className:"gh-portal-signup-logo",src:a,alt:n.title}):at({site:n,pageQuery:r})?c.jsx(Jx,{className:"gh-portal-icon gh-portal-icon-invitation"}):null}renderFormHeader(){const{site:n}=this.context,r=n.title||"";return c.jsxs("header",{className:"gh-portal-signup-header",children:[this.renderSiteLogo(),c.jsx("h1",{className:"gh-portal-main-title","data-testid":"site-title-text",children:r})]})}getClassNames(){const{site:n,pageQuery:r}=this.context,a=vo({site:n,pageQuery:r}),i=this.getInputFields({state:this.state});let o="",s="";return(a.length<=1||at({site:n}))&&(a.length===1&&a[0].type==="free"||at({site:n,pageQuery:r})?(o=_w({site:n})?"singleplan":"noplan",i.length===1&&(o="single-field"),at({site:n})&&(s="invite-only",o="invite-only")):o="singleplan"),{sectionClass:o,footerClass:s}}render(){let{sectionClass:n}=this.getClassNames();return c.jsxs(c.Fragment,{children:[c.jsx("div",{className:"gh-portal-back-sitetitle",children:c.jsx(yf,{onBack:()=>{this.state.showNewsletterSelection?this.setState({showNewsletterSelection:!1}):this.context.onAction("closePopup")}})}),c.jsx(be,{}),c.jsxs("div",{className:"gh-portal-content signup "+n,children:[this.renderFormHeader(),this.renderForm()]})]})}}G(bf,"contextType",N);const Xx=e=>v.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",...e},v.createElement("defs",null,v.createElement("style",null,".a{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1px;}")),v.createElement("rect",{className:"a",x:.75,y:4.5,width:22.5,height:15,rx:1.5,ry:1.5}),v.createElement("line",{className:"a",x1:15.687,y1:9.975,x2:19.5,y2:13.5}),v.createElement("line",{className:"a",x1:8.313,y1:9.975,x2:4.5,y2:13.5}),v.createElement("path",{className:"a",d:"M22.88,5.014l-9.513,6.56a2.406,2.406,0,0,1-2.734,0L1.12,5.014"})),Zx=`
1590
1590
  .gh-portal-icon-envelope {
1591
1591
  width: 44px;
1592
1592
  margin: 12px 0 10px;
@@ -3158,10 +3158,10 @@ footer.gh-portal-signup-footer.invite-only .gh-portal-signup-message {
3158
3158
  .gh-portal-hide {
3159
3159
  display: none;
3160
3160
  }
3161
- `;function b0({site:e}){return Tc+f0+tx+Dx+Yx+rx({site:e})+ex+Jw+Zw+_h+Zx+Qx+r0({site:e})+e0+g0+y0+i0+p0+m0+h0}class Cf extends R.Component{constructor(t){super(t),this.state={email:""}}componentDidMount(){const{member:t}=this.context;t&&this.context.onAction("switchPage",{page:"accountHome"})}handleSignin(t){t.preventDefault(),this.setState(n=>({errors:No({fields:this.getInputFields({state:n})})}),async()=>{const{email:n,errors:r}=this.state,{redirect:a}=this.context.pageData??{};r&&Object.values(r).filter(o=>!!o).length>0||this.context.onAction("signin",{email:n,redirect:a})})}handleInputChange(t,n){const r=n.name;this.setState({[r]:t.target.value})}onKeyDown(t){t.keyCode===13&&this.handleSignin(t)}getInputFields({state:t}){const{t:n}=this.context,r=t.errors||{};return[{type:"email",value:t.email,placeholder:"jamie@example.com",label:n("Email"),name:"email",required:!0,errorMessage:r.email||"",autoFocus:!0}]}renderSubmitButton(){const{action:t,t:n}=this.context;let r=!1;const a=t==="signin:running";let i=n(a?"Sending login link...":"Continue");const o=!!a;return t==="signin:failed"&&(i=n("Retry"),r=!0),c.jsx(de,{dataTestId:"signin",retry:r,style:{width:"100%"},onClick:s=>this.handleSignin(s),disabled:o,brandColor:this.context.brandColor,label:i,isRunning:a})}renderSignupMessage(){const{brandColor:t,t:n}=this.context;return c.jsxs("div",{className:"gh-portal-signup-message",children:[c.jsx("div",{children:n("Don't have an account?")}),c.jsx("button",{"data-test-button":"signup-switch",className:"gh-portal-btn gh-portal-btn-link",style:{color:t},onClick:()=>this.context.onAction("switchPage",{page:"signup"}),children:c.jsx("span",{children:n("Sign up")})})]})}renderForm(){return c.jsx("section",{children:c.jsx("div",{className:"gh-portal-section",children:c.jsx(Po,{fields:this.getInputFields({state:this.state}),onChange:(t,n)=>this.handleInputChange(t,n),onKeyDown:(t,n)=>this.onKeyDown(t,n)})})})}renderSiteLogo(){const t=this.context.site.icon;return t?c.jsx("img",{className:"gh-portal-signup-logo",src:t,alt:this.context.site.title}):null}renderFormHeader(){const{t}=this.context;return c.jsxs("header",{className:"gh-portal-signin-header",children:[this.renderSiteLogo(),c.jsx("h1",{className:"gh-portal-main-title",children:t("Sign in")})]})}render(){return c.jsxs(c.Fragment,{children:[c.jsx(be,{}),c.jsxs("div",{className:"gh-portal-logged-out-form-container",children:[c.jsxs("div",{className:"gh-portal-content signin",children:[this.renderFormHeader(),this.renderForm()]}),c.jsxs("footer",{className:"gh-portal-signin-footer",children:[this.renderSubmitButton(),this.renderSignupMessage()]})]})]})}}G(Cf,"contextType",N);const v0=({onClose:e,handleSignout:t,supportAddress:n="",t:r})=>{const a=`mailto:${n}`;return c.jsxs("footer",{className:"gh-portal-account-footer",children:[c.jsx("ul",{className:"gh-portal-account-footermenu",children:c.jsx("li",{children:c.jsx("button",{"data-test-button":"footer-signout",className:"gh-portal-btn",name:"logout","aria-label":"logout",onClick:i=>t(i),children:r("Sign out")})})}),c.jsx("div",{className:"gh-portal-account-footerright",children:c.jsx("ul",{className:"gh-portal-account-footermenu",children:c.jsx("li",{children:c.jsx("a",{"data-test-link":"footer-support",className:"gh-portal-btn gh-portal-btn-branded",href:a,onClick:()=>{a&&window.open(a)},children:r("Contact support")})})})})]})},k0=()=>{const{member:e,brandColor:t,t:n}=v.useContext(N),r=e.avatar_image;return c.jsxs("header",{className:"gh-portal-account-header",children:[c.jsx(Nc,{gravatar:r,style:{userIcon:{color:t,width:"56px",height:"56px",padding:"2px"}}}),c.jsx("h2",{className:"gh-portal-main-title",children:n("Your account")})]})},w0=()=>{const{site:e,action:t,brandColor:n,onAction:r,t:a}=v.useContext(N),{is_stripe_configured:i}=e;if(!i||Ca({site:e}))return null;const o=["checkoutPlan:running"].includes(t),s=()=>{r("switchPage",{page:"accountPlan",lastPage:"accountHome"})};return c.jsx(de,{dataTestId:"view-plans",isRunning:o,label:a("View plans"),onClick:()=>s(),brandColor:n,style:{width:"100%"}})},x0=()=>{const{member:e,site:t,t:n}=v.useContext(N),{is_stripe_configured:r}=t;if(!r||Ca({site:t}))return null;const a=Ge({member:e}),i=ar({member:e});if(i&&!a)return null;if(a){const o=a==null?void 0:a.current_period_end;if(i&&Dc({member:e})){const s=Dc({member:e}),l=yt(s);return c.jsx("div",{className:"gh-portal-section",children:c.jsx("p",{className:"gh-portal-text-center gh-portal-free-ctatext",children:n("Your subscription will expire on {{expiryDate}}",{expiryDate:l})})})}if(a!=null&&a.cancel_at_period_end)return null;if(Mc({sub:a})){const s=yt(a.trial_end_at);return c.jsx("div",{className:"gh-portal-section",children:c.jsx("p",{className:"gh-portal-text-center gh-portal-free-ctatext",children:n("Your subscription will start on {{subscriptionStart}}",{subscriptionStart:s})})})}return c.jsx("div",{className:"gh-portal-section",children:c.jsx("p",{className:"gh-portal-text-center gh-portal-free-ctatext",children:n("Your subscription will renew on {{renewalDate}}",{renewalDate:yt(o)})})})}return c.jsxs("div",{className:"gh-portal-section",children:[c.jsx("p",{className:"gh-portal-text-center gh-portal-free-ctatext",children:n("You currently have a free membership, upgrade to a paid subscription for full access.")}),c.jsx(w0,{})]})},S0=()=>{const{member:e,onAction:t,action:n,brandColor:r,t:a}=v.useContext(N),i=Ge({member:e});if(!i||!i.cancel_at_period_end)return null;const o=i.cancel_at_period_end?a("Continue subscription"):a("Cancel subscription"),s=["cancelSubscription:running"].includes(n),l=!!s,u=!!i.cancel_at_period_end,p=()=>{if(!i.cancel_at_period_end)return null;const m=i.current_period_end;return c.jsx("p",{className:"gh-portal-text-center gh-portal-free-ctatext",children:a("Your subscription will expire on {{expiryDate}}",{expiryDate:yt(m)})})};return c.jsxs("div",{className:"gh-portal-cancelcontinue-container",children:[c.jsx(p,{}),c.jsx(de,{onClick:m=>{t("continueSubscription",{subscriptionId:i.id})},isRunning:s,disabled:l,isPrimary:u,brandColor:r,label:o,style:{width:"100%"}})]})},E0=e=>v.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e},v.createElement("defs",null,v.createElement("style",null,".a{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5px;}")),v.createElement("path",{d:"M22.939 2.56V8.817C22.9391 9.61244 22.6232 10.3754 22.061 10.938L10.5 22.5C10.2187 22.7812 9.83721 22.9392 9.43946 22.9392C9.04172 22.9392 8.66026 22.7812 8.37896 22.5L1.49997 15.62C1.21876 15.3387 1.06079 14.9572 1.06079 14.5595C1.06079 14.1618 1.21876 13.7803 1.49997 13.499L13.061 1.938C13.6236 1.37572 14.3865 1.0599 15.182 1.06H21.439C21.8368 1.06 22.2183 1.21803 22.4996 1.49934C22.7809 1.78064 22.939 2.16217 22.939 2.56V2.56Z",className:"a"}),v.createElement("path",{d:"M17.689 7.81C16.8605 7.81 16.189 7.13842 16.189 6.31C16.189 5.48157 16.8605 4.81 17.689 4.81C18.5174 4.81 19.189 5.48157 19.189 6.31C19.189 7.13842 18.5174 7.81 17.689 7.81Z",className:"a"})),C0=()=>{const{member:e,site:t,onAction:n,t:r}=v.useContext(N),a=()=>{const d=Ge({member:e});n("editBilling",{subscriptionId:d.id})},i=()=>{const{is_stripe_configured:d}=t;d&&n("switchPage",{page:"accountPlan",lastPage:"accountHome"})},o=({price:d,isComplimentary:y,subscription:b})=>{const{offer:x,start_date:f}=b||{};let h="";if(d){const{amount:$=0,currency:T,interval:j}=d;h=`${Intl.NumberFormat("en",{currency:T,style:"currency"}).format($/100)}/${j}`}let g=_0({price:d,offer:x,subscriptionStartDate:f,t:r});const w=Dc({member:e});y&&(w?h=`${r("Complimentary")} - ${r("Expires {{expiryDate}}",{expiryDate:w})}`:h=h?`${r("Complimentary")} (${h})`:r("Complimentary"));let k="";g&&(k="gh-portal-account-old-price");const C=()=>g?c.jsxs("p",{className:"gh-portal-account-discountcontainer",children:[c.jsx(E0,{className:"gh-portal-account-tagicon"}),c.jsx("span",{children:g})]}):null,S=Mc({sub:b});return S&&(k="gh-portal-account-old-price"),S?c.jsxs(c.Fragment,{children:[c.jsx("p",{className:k,children:h}),c.jsx($0,{subscription:b,t:r})]}):c.jsxs(c.Fragment,{children:[c.jsx("p",{className:k,children:h}),c.jsx(C,{})]})},s=({isComplimentary:d})=>(Ea({member:e})?!1:d)||Ca({site:t})?null:c.jsx("button",{className:"gh-portal-btn gh-portal-btn-list",onClick:b=>i(),"data-test-button":"change-plan",children:r("Change")}),l=({defaultCardLast4:d})=>{if(d){const y=`**** **** **** ${d}`;return c.jsx("p",{children:y})}return null},u=({defaultCardLast4:d,isComplimentary:y})=>{const{action:b}=v.useContext(N),x=b==="editBilling:running"?c.jsx($a,{className:"gh-portal-billing-button-loader"}):r("Update");return y?null:c.jsxs("section",{children:[c.jsxs("div",{className:"gh-portal-list-detail",children:[c.jsx("h3",{children:r("Billing info")}),c.jsx(l,{defaultCardLast4:d})]}),c.jsx("button",{className:"gh-portal-btn gh-portal-btn-list",onClick:f=>a(),"data-test-button":"update-billing",children:x})]})},p=Ge({member:e}),m=ar({member:e});if(p||m){const{price:d,default_payment_card_last4:y}=p||{};let b=r("Plan");return po({site:t})&&Nh({member:e})&&(b=Nh({member:e})),c.jsxs(c.Fragment,{children:[c.jsxs("section",{children:[c.jsxs("div",{className:"gh-portal-list-detail",children:[c.jsx("h3",{children:b}),c.jsx(o,{price:d,isComplimentary:m,subscription:p})]}),c.jsx(s,{isComplimentary:m})]}),c.jsx(u,{isComplimentary:m,defaultCardLast4:y})]})}return null};function $0({subscription:e,priceLabel:t,t:n}){if(Mc({sub:e})){const r=yt(e.trial_end_at);return c.jsx("p",{className:"gh-portal-account-discountcontainer",children:c.jsx("div",{children:c.jsx("span",{children:n("Free Trial – Ends {{trialEnd}}",{trialEnd:r})})})})}return null}function _0({offer:e,price:t,subscriptionStartDate:n,t:r}){let a="";if((e==null?void 0:e.type)==="trial"||(e==null?void 0:e.duration)==="once")return"";if(e){const i=e.duration;let o="";if(i==="forever")o=r("Forever");else if(i==="repeating"){const s=e.duration_in_months||0;let l=new Date(n),u=new Date(l.setMonth(l.getMonth()+s));if(zh(u))return"";o=r("Ends {{offerEndDate}}",{offerEndDate:yt(u)})}a=`${Mw({offer:e,price:t,useFormatted:!0})}/${t.interval}${o?` — ${o}`:""}`}return a}function j0(){const{member:e,site:t,onAction:n,t:r}=v.useContext(N);let{newsletters:a}=e;const i=!!(a!=null&&a.length);let o=r(i?"Subscribed":"Unsubscribed");const s=(l,u)=>{var d;l.preventDefault();const p=sr({site:t}),m=(d=e==null?void 0:e.newsletters)!=null&&d.length?[]:p;n("updateNewsletterPreference",{newsletters:m})};return c.jsxs("section",{children:[c.jsxs("div",{className:"gh-portal-list-detail email-newsletter",children:[c.jsx("h3",{children:r("Email newsletter")}),c.jsxs("p",{children:[o," ",zc({member:e})&&i&&c.jsx("button",{className:"gh-portal-btn-text gh-email-faq-page-button",onClick:()=>n("switchPage",{page:"emailReceivingFAQ",lastPage:"accountHome"}),children:r("Not receiving emails?")})]})]}),c.jsx("div",{children:c.jsx(So,{dataTestId:"default-newsletter-toggle",id:"default-newsletter-toggle",onToggle:l=>{s(l)},checked:i})})]})}const $f=e=>v.createElement("svg",{fill:"none",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",...e},v.createElement("path",{d:"m12.79 12.376 4.08 4.079m-4.08 0 4.08-4.08",stroke:"red",strokeWidth:1.35,strokeLinecap:"round",strokeLinejoin:"round"}),v.createElement("path",{d:"m10.439 17.994-2.664-2.652-2.86 1.478.111-4.239m0 0L1.677 9.232a1.344 1.344 0 0 1-.366-1.222 1.369 1.369 0 0 1 .904-1.05l13.111-4.374a1.369 1.369 0 0 1 1.76 1.758L15 10m-9.974 2.581 11.67-9.727",stroke:"#A3A3A3",strokeWidth:1.35,strokeLinecap:"round",strokeLinejoin:"round"}));function P0(){const{onAction:e,member:t,t:n}=v.useContext(N),r=Mh({member:t}),a=r?"emailSuppressed":"accountEmail";return c.jsxs("section",{children:[c.jsxs("div",{className:"gh-portal-list-detail",children:[c.jsx("h3",{children:n("Emails")}),r?c.jsxs("p",{className:"gh-portal-email-notice",children:[c.jsx($f,{className:"gh-portal-email-notice-icon"}),c.jsx("span",{className:"gh-mobile-only",children:n("You're not receiving emails")}),c.jsx("span",{className:"gh-desktop-only",children:n("You're currently not receiving emails")})]}):c.jsx("p",{children:n("Update your preferences")})]}),c.jsx("button",{className:"gh-portal-btn gh-portal-btn-list",onClick:i=>{e("switchPage",{page:a,lastPage:"accountHome"})},"data-test-button":"manage-newsletters",children:n("Manage")})]})}const N0=()=>{const{member:e,onAction:t,site:n,t:r}=v.useContext(N),{name:a,email:i}=e,o=()=>{t("switchPage",{page:"accountProfile",lastPage:"accountHome"})},s=go({site:n})||Th({site:n})||Mh({member:e});return c.jsx("div",{children:c.jsxs("div",{className:"gh-portal-list",children:[c.jsxs("section",{children:[c.jsxs("div",{className:"gh-portal-list-detail",children:[c.jsx("h3",{children:a||"Account"}),c.jsx("p",{children:i})]}),c.jsx("button",{"data-test-button":"edit-profile",className:"gh-portal-btn gh-portal-btn-list",onClick:l=>o(),children:r("Edit")})]}),c.jsx(C0,{}),s?c.jsx(P0,{}):c.jsx(j0,{})]})})},T0=()=>c.jsxs("div",{className:"gh-portal-content gh-portal-account-main",children:[c.jsx(be,{}),c.jsx(k0,{}),c.jsxs("section",{className:"gh-portal-account-data",children:[c.jsx(x0,{}),c.jsx(S0,{}),c.jsx(N0,{})]})]});class _f extends R.Component{componentDidMount(){const{member:t}=this.context;t||this.context.onAction("switchPage",{page:"signin",pageData:{redirect:window.location.href}})}handleSignout(t){t.preventDefault(),this.context.onAction("signout")}render(){const{member:t,site:n,t:r}=this.context,a=ko({site:n});return t?c.jsxs("div",{className:"gh-portal-account-wrapper",children:[c.jsx(T0,{}),c.jsx(v0,{onClose:()=>this.context.onAction("closePopup"),handleSignout:i=>this.handleSignout(i),supportAddress:a,t:r})]}):null}}G(_f,"contextType",N);class jf extends R.Component{constructor(t,n){super(t,n);const{name:r="",email:a=""}=n.member||{};this.state={name:r,email:a}}componentDidMount(){const{member:t}=this.context;t||this.context.onAction("switchPage",{page:"signin"})}handleSignout(t){t.preventDefault(),this.context.onAction("signout")}onBack(t){this.context.onAction("back")}onProfileSave(t){t.preventDefault(),this.setState(n=>({errors:No({fields:this.getInputFields({state:n})})}),()=>{const{email:n,name:r,errors:a}=this.state;a&&Object.values(a).filter(o=>!!o).length>0||(this.context.onAction("clearPopupNotification"),this.context.onAction("updateProfile",{email:n,name:r}))})}renderSaveButton(){const{t}=this.context,n=this.context.action==="updateProfile:running";let r=t("Save");this.context.action==="updateProfile:failed"&&(r=t("Retry"));const a=!!n;return c.jsx(de,{dataTestId:"save-button",isRunning:n,onClick:i=>this.onProfileSave(i),disabled:a,brandColor:this.context.brandColor,label:r,style:{width:"100%"}})}renderDeleteAccountButton(){const{t}=this.context;return c.jsx("div",{style:{cursor:"pointer",color:"red"},role:"button",children:t("Delete account")})}renderAccountFooter(){return c.jsx("footer",{className:"gh-portal-action-footer",children:this.renderSaveButton()})}renderHeader(){const{t}=this.context;return c.jsxs("header",{className:"gh-portal-detail-header",children:[c.jsx(cr,{brandColor:this.context.brandColor,hidden:!this.context.lastPage,onClick:n=>this.onBack(n)}),c.jsx("h3",{className:"gh-portal-main-title",children:t("Account settings")})]})}renderUserAvatar(){const t=this.context.member&&this.context.member.avatar_image,n={position:"relative",display:"flex",width:"64px",height:"64px",marginBottom:"6px",borderRadius:"100%",boxShadow:"0 0 0 3px #fff",border:"1px solid gray",overflow:"hidden",justifyContent:"center",alignItems:"center"};return c.jsx("div",{style:n,children:c.jsx(Nc,{gravatar:t,style:{userIcon:{color:"black",width:"56px",height:"56px"}}})})}handleInputChange(t,n){const r=n.name;this.setState({[r]:t.target.value})}getInputFields({state:t,fieldNames:n}){const{t:r}=this.context,a=t.errors||{},i=[{type:"text",value:t.name,placeholder:"Jamie Larson",label:r("Name"),name:"name",required:!0,errorMessage:a.name||""},{type:"email",value:t.email,placeholder:"jamie@example.com",label:r("Email"),name:"email",required:!0,errorMessage:a.email||""}];return n&&n.length>0?i.filter(o=>n.includes(o.name)):i}onKeyDown(t){t.keyCode===13&&this.onProfileSave(t)}renderProfileData(){return c.jsx("div",{className:"gh-portal-section",children:c.jsx(Po,{fields:this.getInputFields({state:this.state}),onChange:(t,n)=>this.handleInputChange(t,n),onKeyDown:(t,n)=>this.onKeyDown(t,n)})})}render(){const{member:t}=this.context;return t?c.jsxs(c.Fragment,{children:[c.jsxs("div",{className:"gh-portal-content with-footer",children:[c.jsx(be,{}),this.renderHeader(),c.jsx("div",{className:"gh-portal-section",children:this.renderProfileData()})]}),this.renderAccountFooter()]}):null}}G(jf,"contextType",N);const I0=e=>v.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",...e},v.createElement("defs",null,v.createElement("style",null,`.a{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5px!important;}
3162
- `)),v.createElement("title",null,"check-circle-1"),v.createElement("path",{className:"a",d:"M6,13.223,8.45,16.7a1.049,1.049,0,0,0,1.707.051L18,6.828"}),v.createElement("circle",{className:"a",cx:12,cy:11.999,r:11.25}));function D0(){const{brandColor:e,lastPage:t,onAction:n,t:r}=v.useContext(N);return c.jsxs("header",{className:"gh-portal-detail-header",children:[c.jsx(cr,{brandColor:e,hidden:!t,onClick:a=>{n("back")}}),c.jsx("h3",{className:"gh-portal-main-title",children:r("Email preferences")})]})}function Pf({show:e,checked:t}){let n=[];return e&&n.push("gh-portal-checkmark-show"),t&&n.push("gh-portal-toggle-checked"),n.push("gh-portal-checkmark-container"),c.jsx("div",{className:n.join(" "),children:c.jsx(I0,{className:"gh-portal-checkmark-icon",alt:""})})}function A0({newsletter:e,subscribedNewsletters:t,setSubscribedNewsletters:n}){const r=t.some(l=>l.id===(e==null?void 0:e.id)),[a,i]=v.useState(!1),[o,s]=v.useState(null);return c.jsxs("section",{className:"gh-portal-list-toggle-wrapper","data-test-toggle-wrapper":!0,children:[c.jsxs("div",{className:"gh-portal-list-detail",children:[c.jsx("h3",{children:e.name}),c.jsx("p",{children:e==null?void 0:e.description})]}),c.jsxs("div",{style:{display:"flex",alignItems:"center"},children:[c.jsx(Pf,{show:a,checked:r}),c.jsx(So,{id:e.id,onToggle:(l,u)=>{let p=[];if(u){p=t.filter(d=>d.id!==e.id).concat(e),i(!0),clearTimeout(o);let m=setTimeout(()=>{i(!1)},2e3);s(m)}else{p=t.filter(d=>d.id!==e.id),i(!0),clearTimeout(o);let m=setTimeout(()=>{i(!1)},2e3);s(m)}n(p)},checked:r})]})]})}function M0({updateCommentNotifications:e,isCommentsEnabled:t,enableCommentNotifications:n}){const{t:r}=v.useContext(N),a=!!n,[i,o]=v.useState(!1),[s,l]=v.useState(null);return t?c.jsxs("section",{className:"gh-portal-list-toggle-wrapper","data-test-toggle-wrapper":!0,children:[c.jsxs("div",{className:"gh-portal-list-detail",children:[c.jsx("h3",{children:r("Comments")}),c.jsx("p",{children:r("Get notified when someone replies to your comment")})]}),c.jsxs("div",{style:{display:"flex",alignItems:"center"},children:[c.jsx(Pf,{show:i,checked:a}),c.jsx(So,{id:"comments",onToggle:(u,p)=>{o(!0),clearTimeout(s);let m=setTimeout(()=>{o(!1)},2e3);l(m),e(p)},checked:a})]})]}):null}function z0({subscribedNewsletters:e,setSubscribedNewsletters:t}){const{site:n}=v.useContext(N);return sr({site:n}).map(a=>c.jsx(A0,{newsletter:a,subscribedNewsletters:e,setSubscribedNewsletters:t},a==null?void 0:a.id))}function R0({site:e,isPaid:t}){const{t:n}=v.useContext(N);return t?c.jsx("p",{style:{textAlign:"center",marginTop:"12px",marginBottom:"0",color:"var(--grey6)"},children:n("Unsubscribing from emails will not cancel your paid subscription to {{title}}",{title:e==null?void 0:e.title})}):null}function Nf({notification:e,subscribedNewsletters:t,updateSubscribedNewsletters:n,updateCommentNotifications:r,unsubscribeAll:a,isPaidMember:i,isCommentsEnabled:o,enableCommentNotifications:s}){const{brandColor:l,onAction:u,member:p,site:m,t:d}=v.useContext(N),y=!(t!=null&&t.length)&&(o&&!s||!o),x=e||(()=>null);return c.jsxs("div",{className:"gh-portal-content with-footer",children:[c.jsx(be,{}),c.jsx(D0,{}),c.jsx(x,{}),c.jsx("div",{className:"gh-portal-section flex",children:c.jsxs("div",{className:"gh-portal-list",children:[c.jsx(z0,{subscribedNewsletters:t,setSubscribedNewsletters:f=>{let h=f.map(g=>({id:g.id}));n(h)}}),c.jsx(M0,{isCommentsEnabled:o,enableCommentNotifications:s,updateCommentNotifications:r})]})}),c.jsxs("footer",{className:"gh-portal-action-footer"+(zc({member:p})?" gh-feature-suppressions":""),children:[c.jsxs("div",{style:{width:"100%"},children:[c.jsx(de,{isRunning:!1,onClick:f=>{a()},disabled:y,brandColor:l,isPrimary:!1,label:d("Unsubscribe from all emails"),isDestructive:!0,style:{width:"100%"},dataTestId:"unsubscribe-from-all-emails"}),c.jsx(R0,{isPaid:i,site:m})]}),zc({member:p})&&!y&&c.jsxs("div",{className:"gh-portal-footer-secondary",children:[c.jsx("span",{className:"gh-portal-footer-secondary-light",children:d("Not receiving emails?")}),c.jsxs("button",{className:"gh-portal-btn-text gh-email-faq-page-button",onClick:()=>u("switchPage",{page:"emailReceivingFAQ"}),children:[d("Get help")," →"]})]})]})]})}function L0(){const{member:e,onAction:t,site:n,t:r}=v.useContext(N);v.useEffect(()=>{e||t("switchPage",{page:"signin"})},[e,t]);const a=[...(e==null?void 0:e.newsletters)||[]],[i,o]=v.useState(a),{comments_enabled:s}=n,{enable_comment_notifications:l}=e||{};return v.useEffect(()=>{o((e==null?void 0:e.newsletters)||[])},[e==null?void 0:e.newsletters]),c.jsx(Nf,{notification:null,subscribedNewsletters:i,updateSubscribedNewsletters:u=>{o(u),t("updateNewsletterPreference",{newsletters:u})},updateCommentNotifications:async u=>{t("updateNewsletterPreference",{enableCommentNotifications:u})},unsubscribeAll:()=>{o([]),t("showPopupNotification",{action:"updated:success",message:r("Email preference updated.")});const u={newsletters:[]};s&&(u.enableCommentNotifications=!1),t("updateNewsletterPreference",u)},isPaidMember:bt({member:e}),isCommentsEnabled:s!=="off",enableCommentNotifications:l})}function U0(){const{site:e}=v.useContext(N),t=e.icon;return t?c.jsx("img",{className:"gh-portal-unsubscribe-logo",src:t,alt:e.title}):null}function O0(){const{site:e}=v.useContext(N),t=e.title||"";return c.jsxs("header",{className:"gh-portal-header",children:[c.jsx(U0,{}),c.jsx("h2",{className:"gh-portal-publication-title",children:t})]})}async function qc({api:e,memberUuid:t,newsletters:n,enableCommentNotifications:r}){try{return await e.member.updateNewsletters({uuid:t,newsletters:n,enableCommentNotifications:r})}catch{}}function Y0(){const{site:e,pageData:t,onAction:n,t:r}=v.useContext(N),a=To({siteUrl:e.url}),[i,o]=v.useState(),s=sr({site:e}),l=s.filter(g=>g.subscribe_on_signup),[u,p]=v.useState(!1),[m,d]=v.useState(l),[y,b]=v.useState(!1),{comments_enabled:x}=e,{enable_comment_notifications:f=!1}=i||{};if(v.useEffect(()=>{const g=To({siteUrl:e.url});(async()=>{const w=await g.member.newsletters({uuid:t.uuid});o(w);const k=(w==null?void 0:w.newsletters)||[];if(d(k),(s==null?void 0:s.length)===1&&!x){const C=await qc({api:g,memberUuid:t.uuid,newsletters:[]});d(C.newsletters)}else if(t.newsletterUuid){const C=await qc({api:g,memberUuid:t.uuid,newsletters:k==null?void 0:k.filter(S=>S.uuid!==t.newsletterUuid)});d(C.newsletters)}else if(t.comments&&x){const C=await qc({api:g,memberUuid:t.uuid,enableCommentNotifications:!1});o(C)}})()},[x,t.uuid,t.newsletterUuid,t.comments,e.url,s==null?void 0:s.length]),i===null)return c.jsxs("div",{className:"gh-portal-content gh-portal-feedback with-footer",children:[c.jsx(be,{}),c.jsx("div",{class:"gh-feedback-icon gh-feedback-icon-error",children:c.jsx(Oc,{})}),c.jsx("h1",{className:"gh-portal-main-title",children:r("That didn't go to plan")}),c.jsx("div",{children:c.jsx("p",{className:"gh-portal-text-center",children:r("We couldn't unsubscribe you as the email address was not found. Please contact the site owner.")})}),c.jsx(de,{style:{width:"100%"},retry:!1,onClick:()=>n("closePopup"),disabled:!1,brandColor:"#000000",label:r("Close"),isRunning:!1,tabindex:"3",classes:"sticky bottom"})]});if((s==null?void 0:s.length)===1&&!x&&!y)return c.jsxs("div",{className:"gh-portal-content gh-portal-unsubscribe with-footer",children:[c.jsx(be,{}),c.jsx(O0,{}),c.jsx("h1",{className:"gh-portal-main-title",children:r("Successfully unsubscribed")}),c.jsxs("div",{children:[c.jsx("p",{className:"gh-portal-text-center",children:c.jsx(Ue,{syntax:Ke,string:r("{{memberEmail}} will no longer receive this newsletter."),mapping:{memberEmail:c.jsx("strong",{children:i==null?void 0:i.email})}})}),c.jsx("p",{className:"gh-portal-text-center",children:c.jsx(Ue,{syntax:Ke,string:r("Didn't mean to do this? Manage your preferences <button>here</button>."),mapping:{button:c.jsx("button",{className:"gh-portal-btn-link gh-portal-btn-branded gh-portal-btn-inline",onClick:()=>{b(!0)}})}})})]})]});const h=()=>{if(t.comments&&x){const k=u?"gh-portal-hide":"";return c.jsx(c.Fragment,{children:c.jsx("p",{className:`gh-portal-text-center gh-portal-header-message ${k}`,children:c.jsx(Ue,{syntax:Ke,string:r("{{memberEmail}} will no longer receive emails when someone replies to your comments."),mapping:{memberEmail:c.jsx("strong",{children:i==null?void 0:i.email})}})})})}const g=s==null?void 0:s.find(k=>k.uuid===t.newsletterUuid),w=u?"gh-portal-hide":"";return c.jsx(c.Fragment,{children:c.jsx("p",{className:`gh-portal-text-center gh-portal-header-message ${w}`,children:c.jsx(Ue,{syntax:Ke,string:r("{{memberEmail}} will no longer receive {{newsletterName}} newsletter."),mapping:{memberEmail:c.jsx("strong",{children:i==null?void 0:i.email}),newsletterName:c.jsx("strong",{children:g==null?void 0:g.name})}})})})};return c.jsx(Nf,{notification:h,subscribedNewsletters:m,updateSubscribedNewsletters:async g=>{d(g),p(!0),await a.member.updateNewsletters({uuid:t.uuid,newsletters:g})},updateCommentNotifications:async g=>{const w=await a.member.updateNewsletters({uuid:t.uuid,enableCommentNotifications:g});o(w)},unsubscribeAll:async()=>{p(!0),d([]),n("showPopupNotification",{action:"updated:success",message:r("Email preference updated.")});const g=await a.member.updateNewsletters({uuid:t.uuid,newsletters:[],enableCommentNotifications:!1});o(g)},isPaidMember:(i==null?void 0:i.status)!=="free",isCommentsEnabled:x!=="off",enableCommentNotifications:f})}function F0(){const{brandColor:e,lastPage:t,onAction:n,action:r,site:a,t:i}=v.useContext(N);v.useEffect(()=>{["removeEmailFromSuppressionList:success"].includes(r)&&n("refreshMemberData"),["removeEmailFromSuppressionList:failed","refreshMemberData:failed"].includes(r)&&n("back"),["refreshMemberData:success"].includes(r)&&(go({site:a})||Th({site:a})?(n("switchPage",{page:"accountEmail",lastPage:"accountHome"}),n("showPopupNotification",{message:i("You have been successfully resubscribed")})):n("back"))},[r,n,a,i]);const o=["removeEmailFromSuppressionList:running","refreshMemberData:running"].includes(r),s=()=>{n("removeEmailFromSuppressionList")};return c.jsxs("div",{className:"gh-email-suppressed-page",children:[c.jsxs("header",{className:"gh-portal-detail-header",children:[c.jsx(cr,{brandColor:e,hidden:!t,onClick:()=>{n("back")}}),c.jsx(be,{})]}),c.jsx($f,{className:"gh-email-suppressed-page-icon"}),c.jsxs("div",{className:"gh-email-suppressed-page-text",children:[c.jsx("h3",{className:"gh-portal-main-title gh-email-suppressed-page-title",children:i("Emails disabled")}),c.jsx("p",{children:i("You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.")})]}),c.jsx(de,{dataTestId:"resubscribe-email",classes:"gh-portal-confirm-button",onClick:s,disabled:o,brandColor:e,label:i("Re-enable emails"),isRunning:o})]})}function B0(){const{brandColor:e,onAction:t,site:n,t:r}=v.useContext(N),a=`mailto:${ko({site:n})}`;return c.jsxs("div",{className:"gh-email-suppression-faq",children:[c.jsxs("header",{className:"gh-portal-detail-header",children:[c.jsx(cr,{brandColor:e,onClick:()=>{t("switchPage",{page:"emailSuppressed",lastPage:"accountHome"})}}),c.jsx(be,{})]}),c.jsxs("div",{class:"gh-longform",children:[c.jsx("h3",{children:r("Why has my email been disabled?")}),c.jsx("p",{children:r("Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).")}),c.jsx("h4",{children:r("Spam complaints")}),c.jsx("p",{children:r("If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.")}),c.jsx("p",{children:r("If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.")}),c.jsx("p",{children:r("Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.")}),c.jsx("h4",{children:r("Permanent failure (bounce)")}),c.jsx("p",{children:r("When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.")}),c.jsx("p",{children:r("In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.")}),c.jsx("p",{children:r("If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.")}),c.jsx("p",{children:c.jsx("a",{className:"gh-portal-btn gh-portal-btn-branded",href:a,onClick:()=>{a&&window.open(a)},children:r("Need more help? Contact support")})})]})]})}function H0(){const{brandColor:e,onAction:t,site:n,lastPage:r,member:a,t:i}=v.useContext(N),o=ko({site:n}),s=`mailto:${o}`,l=Dw({site:n});return c.jsxs("div",{className:"gh-email-receiving-faq",children:[c.jsxs("header",{className:"gh-portal-detail-header",children:[c.jsx(cr,{brandColor:e,onClick:()=>{r?t("switchPage",{page:"accountHome"}):t("switchPage",{page:"accountEmail",lastPage:"accountHome"})}}),c.jsx(be,{})]}),c.jsxs("div",{class:"gh-longform",children:[c.jsx("h3",{children:i("Help! I'm not receiving emails")}),c.jsx("p",{children:i("If you're not receiving the email newsletter you've subscribed to, here are few things to check.")}),c.jsx("h4",{children:i("Verify your email address is correct")}),c.jsx("p",{children:c.jsx(Ue,{syntax:Ke,string:i("The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>."),mapping:{memberEmail:c.jsx("strong",{children:a.email}),button:c.jsx("button",{className:"gh-portal-btn-text",onClick:()=>t("switchPage",{lastPage:"emailReceivingFAQ",page:"accountProfile"})})}})}),c.jsx("h4",{children:i("Check spam & promotions folders")}),c.jsx("p",{children:i(`Make sure emails aren't accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".`)}),c.jsx("h4",{children:i("Create a new contact")}),c.jsx("p",{children:c.jsx(Ue,{syntax:Ke,string:i("In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted."),mapping:{senderEmail:c.jsx("strong",{children:l})}})}),c.jsx("h4",{children:i("Send an email and say hi!")}),c.jsx("p",{children:c.jsx(Ue,{syntax:Ke,string:i("Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted."),mapping:{senderEmail:c.jsx("strong",{children:l})}})}),c.jsx("h4",{children:i("Check with your mail provider")}),c.jsx("p",{children:c.jsx(Ue,{syntax:Ke,string:i("If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}"),mapping:{senderEmail:c.jsx("strong",{children:l})}})}),c.jsx("h4",{children:i("Get in touch for help")}),c.jsx("p",{children:c.jsx(Ue,{syntax:Ke,string:i("If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}."),mapping:{supportAddress:c.jsx("a",{href:s,onClick:()=>{s&&window.open(s)},children:o})}})})]})]})}const Vc={signin:Cf,signup:bf,accountHome:_f,accountPlan:gf,accountProfile:jf,accountEmail:L0,signupNewsletter:Hc,unsubscribe:Y0,magiclink:vf,loading:Ef,offer:wf,feedback:d0,emailSuppressed:F0,emailSuppressionFAQ:B0,emailReceivingFAQ:H0},Wc=function({page:e}){return Object.keys(Vc).includes(e)?e:"signup"},q0=function({page:e}){return e.includes("account")},V0=function({page:e}){return e.includes("offer")},W0=e=>v.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e},v.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M24 12C24 18.6274 18.6274 24 12 24C5.37258 24 0 18.6274 0 12C0 5.37258 5.37258 0 12 0C18.6274 0 24 5.37258 24 12ZM11.8326 2.33879C6.37785 2.95189 3.95901 5.20797 3.41126 9.74699C3.34896 10.2632 3.22642 10.7805 3.10443 11.2954C2.93277 12.02 2.76221 12.74 2.76221 13.4458C2.76221 17.9885 6.5856 21.556 11.1283 21.556C12.8959 21.556 14.4433 20.8144 15.8756 20.048C19.0536 18.3478 22.0328 16.2597 22.0328 12.5411C22.0328 9.91512 20.1051 7.56932 18.466 5.5747C18.3834 5.47416 18.3015 5.37451 18.2206 5.27577C17.3866 4.25742 14.4333 2.04643 11.8326 2.33879Z",fill:"#15171A"}));class Gc extends R.Component{render(){return c.jsxs("a",{href:"https://ghost.org",target:"_blank",rel:"noopener noreferrer",onClick:()=>{window.open("https://ghost.org","_blank")},children:[c.jsx(W0,{}),"Powered by Ghost"]})}}G(Gc,"contextType",N);const Tf=({member:e})=>({modalContainer:{zIndex:"3999999",position:"fixed",left:"0",top:"0",width:"100%",height:"100%",overflow:"hidden"},frame:{common:{margin:"auto",position:"relative",padding:"0",outline:"0",width:"100%",opacity:"1",overflow:"hidden",height:"100%"}},page:{links:{width:"600px"}}});function G0({message:e}){return rr()?c.jsx("div",{className:"gh-portal-cookiebanner",children:e}):null}class If extends R.Component{componentDidMount(){this.node&&!V(["preview"])&&!this.props.isMobile&&(this.node.focus(),this.keyUphandler=t=>{t.key==="Escape"&&this.dismissPopup(t)},this.node.ownerDocument.removeEventListener("keyup",this.keyUphandler),this.node.ownerDocument.addEventListener("keyup",this.keyUphandler)),this.sendContainerHeightChangeEvent()}dismissPopup(t){var a;const n=t.target&&t.target.tagName;(n!=="INPUT"||n==="INPUT"&&!((a=t==null?void 0:t.target)!=null&&a.value))&&this.context.onAction("closePopup")}sendContainerHeightChangeEvent(){var t,n;this.node&&V(["preview"])&&((t=this.node)==null?void 0:t.clientHeight)!==this.lastContainerHeight&&(this.lastContainerHeight=(n=this.node)==null?void 0:n.clientHeight,window.document.body.style.overflow="hidden",window.document.body.style["scrollbar-width"]="none",window.parent.postMessage({type:"portal-preview-updated",payload:{height:this.lastContainerHeight}},"*"))}componentDidUpdate(){this.sendContainerHeightChangeEvent()}componentWillUnmount(){this.node&&this.node.ownerDocument.removeEventListener("keyup",this.keyUphandler)}handlePopupClose(t){V(["preview"])||t.target===t.currentTarget&&this.context.onAction("closePopup")}renderActivePage(){const{page:t}=this.context;Wc({page:t});const n=Vc[t];return c.jsx(n,{})}renderPopupNotification(){const{popupNotification:t}=this.context;return!t||!t.type?null:c.jsx(kf,{})}render(){const{page:t,pageQuery:n,site:r,customSiteUrl:a}=this.context,o=ho({site:r}).length;Wc({page:t});const l={...Tf({page:t}).page[t]};let u="",p="regular",m="",d=t;switch(t){case"signup":m="Cookies must be enabled in your browser to sign up.";break;case"signin":m="Cookies must be enabled in your browser to sign in.";break;case"accountHome":d="account-home";break;case"accountProfile":d="account-profile";break;case"accountPlan":d="account-plan";break;default:m="Cookies must be enabled in your browser.",d=t;break}o>1&&!at({site:r,pageQuery:n})&&t==="signup"&&(d+=" full-size",p="full");const y=pn({site:r});(y&&o>2||!y&&o>1)&&t==="accountPlan"&&(d+=" full-size",p="full"),(t==="emailSuppressionFAQ"||t==="emailReceivingFAQ")&&(d+=" large-size");let b="gh-portal-popup-container";V(["preview"])&&(d+=" preview"),V(["preview"],{customSiteUrl:a})&&!r.disableBackground&&(b+=" preview"),V(["dev"])&&(b+=" dev");const x=`${b} ${u} ${d}`;return c.jsxs(c.Fragment,{children:[c.jsx("div",{className:"gh-portal-popup-wrapper "+d,onClick:f=>this.handlePopupClose(f),children:c.jsxs("div",{className:x,style:l,ref:f=>this.node=f,tabIndex:-1,children:[c.jsx(G0,{message:m}),this.renderPopupNotification(),this.renderActivePage(),p==="full"?c.jsx("div",{className:"gh-portal-powered inside "+(V(["preview"])?"hidden ":"")+d,children:c.jsx(Gc,{})}):""]})}),c.jsx("div",{className:"gh-portal-powered outside "+(V(["preview"])?"hidden ":"")+d,children:c.jsx(Gc,{})})]})}}G(If,"contextType",N);class Df extends R.Component{constructor(t){super(t),this.state={height:null}}renderCurrentPage(t){const n=Vc[t];return c.jsx(n,{})}onHeightChange(t){this.setState({height:t})}handlePopupClose(t){t.preventDefault(),t.target===t.currentTarget&&this.context.onAction("closePopup")}renderFrameStyles(){const{site:t}=this.context,n=b0({site:t}),r=`
3161
+ `;function b0({site:e}){return Tc+f0+tx+Dx+Fx+rx({site:e})+ex+Jw+Zw+_h+Zx+Qx+r0({site:e})+e0+g0+y0+i0+p0+m0+h0}class Cf extends R.Component{constructor(t){super(t),this.state={email:""}}componentDidMount(){const{member:t}=this.context;t&&this.context.onAction("switchPage",{page:"accountHome"})}handleSignin(t){t.preventDefault(),this.setState(n=>({errors:No({fields:this.getInputFields({state:n})})}),async()=>{const{email:n,errors:r}=this.state,{redirect:a}=this.context.pageData??{};r&&Object.values(r).filter(o=>!!o).length>0||this.context.onAction("signin",{email:n,redirect:a})})}handleInputChange(t,n){const r=n.name;this.setState({[r]:t.target.value})}onKeyDown(t){t.keyCode===13&&this.handleSignin(t)}getInputFields({state:t}){const{t:n}=this.context,r=t.errors||{};return[{type:"email",value:t.email,placeholder:"jamie@example.com",label:n("Email"),name:"email",required:!0,errorMessage:r.email||"",autoFocus:!0}]}renderSubmitButton(){const{action:t,t:n}=this.context;let r=!1;const a=t==="signin:running";let i=n(a?"Sending login link...":"Continue");const o=!!a;return t==="signin:failed"&&(i=n("Retry"),r=!0),c.jsx(de,{dataTestId:"signin",retry:r,style:{width:"100%"},onClick:s=>this.handleSignin(s),disabled:o,brandColor:this.context.brandColor,label:i,isRunning:a})}renderSignupMessage(){const{brandColor:t,t:n}=this.context;return c.jsxs("div",{className:"gh-portal-signup-message",children:[c.jsx("div",{children:n("Don't have an account?")}),c.jsx("button",{"data-test-button":"signup-switch",className:"gh-portal-btn gh-portal-btn-link",style:{color:t},onClick:()=>this.context.onAction("switchPage",{page:"signup"}),children:c.jsx("span",{children:n("Sign up")})})]})}renderForm(){return c.jsx("section",{children:c.jsx("div",{className:"gh-portal-section",children:c.jsx(Po,{fields:this.getInputFields({state:this.state}),onChange:(t,n)=>this.handleInputChange(t,n),onKeyDown:(t,n)=>this.onKeyDown(t,n)})})})}renderSiteLogo(){const t=this.context.site.icon;return t?c.jsx("img",{className:"gh-portal-signup-logo",src:t,alt:this.context.site.title}):null}renderFormHeader(){const{t}=this.context;return c.jsxs("header",{className:"gh-portal-signin-header",children:[this.renderSiteLogo(),c.jsx("h1",{className:"gh-portal-main-title",children:t("Sign in")})]})}render(){return c.jsxs(c.Fragment,{children:[c.jsx(be,{}),c.jsxs("div",{className:"gh-portal-logged-out-form-container",children:[c.jsxs("div",{className:"gh-portal-content signin",children:[this.renderFormHeader(),this.renderForm()]}),c.jsxs("footer",{className:"gh-portal-signin-footer",children:[this.renderSubmitButton(),this.renderSignupMessage()]})]})]})}}G(Cf,"contextType",N);const v0=({onClose:e,handleSignout:t,supportAddress:n="",t:r})=>{const a=`mailto:${n}`;return c.jsxs("footer",{className:"gh-portal-account-footer",children:[c.jsx("ul",{className:"gh-portal-account-footermenu",children:c.jsx("li",{children:c.jsx("button",{"data-test-button":"footer-signout",className:"gh-portal-btn",name:"logout","aria-label":"logout",onClick:i=>t(i),children:r("Sign out")})})}),c.jsx("div",{className:"gh-portal-account-footerright",children:c.jsx("ul",{className:"gh-portal-account-footermenu",children:c.jsx("li",{children:c.jsx("a",{"data-test-link":"footer-support",className:"gh-portal-btn gh-portal-btn-branded",href:a,onClick:()=>{a&&window.open(a)},children:r("Contact support")})})})})]})},k0=()=>{const{member:e,brandColor:t,t:n}=v.useContext(N),r=e.avatar_image;return c.jsxs("header",{className:"gh-portal-account-header",children:[c.jsx(Nc,{gravatar:r,style:{userIcon:{color:t,width:"56px",height:"56px",padding:"2px"}}}),c.jsx("h2",{className:"gh-portal-main-title",children:n("Your account")})]})},w0=()=>{const{site:e,action:t,brandColor:n,onAction:r,t:a}=v.useContext(N),{is_stripe_configured:i}=e;if(!i||Ca({site:e}))return null;const o=["checkoutPlan:running"].includes(t),s=()=>{r("switchPage",{page:"accountPlan",lastPage:"accountHome"})};return c.jsx(de,{dataTestId:"view-plans",isRunning:o,label:a("View plans"),onClick:()=>s(),brandColor:n,style:{width:"100%"}})},x0=()=>{const{member:e,site:t,t:n}=v.useContext(N),{is_stripe_configured:r}=t;if(!r||Ca({site:t}))return null;const a=Ge({member:e}),i=ar({member:e});if(i&&!a)return null;if(a){const o=a==null?void 0:a.current_period_end;if(i&&Dc({member:e})){const s=Dc({member:e}),l=yt(s);return c.jsx("div",{className:"gh-portal-section",children:c.jsx("p",{className:"gh-portal-text-center gh-portal-free-ctatext",children:n("Your subscription will expire on {{expiryDate}}",{expiryDate:l})})})}if(a!=null&&a.cancel_at_period_end)return null;if(Mc({sub:a})){const s=yt(a.trial_end_at);return c.jsx("div",{className:"gh-portal-section",children:c.jsx("p",{className:"gh-portal-text-center gh-portal-free-ctatext",children:n("Your subscription will start on {{subscriptionStart}}",{subscriptionStart:s})})})}return c.jsx("div",{className:"gh-portal-section",children:c.jsx("p",{className:"gh-portal-text-center gh-portal-free-ctatext",children:n("Your subscription will renew on {{renewalDate}}",{renewalDate:yt(o)})})})}return c.jsxs("div",{className:"gh-portal-section",children:[c.jsx("p",{className:"gh-portal-text-center gh-portal-free-ctatext",children:n("You currently have a free membership, upgrade to a paid subscription for full access.")}),c.jsx(w0,{})]})},S0=()=>{const{member:e,onAction:t,action:n,brandColor:r,t:a}=v.useContext(N),i=Ge({member:e});if(!i||!i.cancel_at_period_end)return null;const o=i.cancel_at_period_end?a("Continue subscription"):a("Cancel subscription"),s=["cancelSubscription:running"].includes(n),l=!!s,u=!!i.cancel_at_period_end,p=()=>{if(!i.cancel_at_period_end)return null;const m=i.current_period_end;return c.jsx("p",{className:"gh-portal-text-center gh-portal-free-ctatext",children:a("Your subscription will expire on {{expiryDate}}",{expiryDate:yt(m)})})};return c.jsxs("div",{className:"gh-portal-cancelcontinue-container",children:[c.jsx(p,{}),c.jsx(de,{onClick:m=>{t("continueSubscription",{subscriptionId:i.id})},isRunning:s,disabled:l,isPrimary:u,brandColor:r,label:o,style:{width:"100%"}})]})},E0=e=>v.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e},v.createElement("defs",null,v.createElement("style",null,".a{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5px;}")),v.createElement("path",{d:"M22.939 2.56V8.817C22.9391 9.61244 22.6232 10.3754 22.061 10.938L10.5 22.5C10.2187 22.7812 9.83721 22.9392 9.43946 22.9392C9.04172 22.9392 8.66026 22.7812 8.37896 22.5L1.49997 15.62C1.21876 15.3387 1.06079 14.9572 1.06079 14.5595C1.06079 14.1618 1.21876 13.7803 1.49997 13.499L13.061 1.938C13.6236 1.37572 14.3865 1.0599 15.182 1.06H21.439C21.8368 1.06 22.2183 1.21803 22.4996 1.49934C22.7809 1.78064 22.939 2.16217 22.939 2.56V2.56Z",className:"a"}),v.createElement("path",{d:"M17.689 7.81C16.8605 7.81 16.189 7.13842 16.189 6.31C16.189 5.48157 16.8605 4.81 17.689 4.81C18.5174 4.81 19.189 5.48157 19.189 6.31C19.189 7.13842 18.5174 7.81 17.689 7.81Z",className:"a"})),C0=()=>{const{member:e,site:t,onAction:n,t:r}=v.useContext(N),a=()=>{const d=Ge({member:e});n("editBilling",{subscriptionId:d.id})},i=()=>{const{is_stripe_configured:d}=t;d&&n("switchPage",{page:"accountPlan",lastPage:"accountHome"})},o=({price:d,isComplimentary:y,subscription:b})=>{const{offer:x,start_date:f}=b||{};let h="";if(d){const{amount:$=0,currency:T,interval:j}=d;h=`${Intl.NumberFormat("en",{currency:T,style:"currency"}).format($/100)}/${j}`}let g=_0({price:d,offer:x,subscriptionStartDate:f,t:r});const w=Dc({member:e});y&&(w?h=`${r("Complimentary")} - ${r("Expires {{expiryDate}}",{expiryDate:w})}`:h=h?`${r("Complimentary")} (${h})`:r("Complimentary"));let k="";g&&(k="gh-portal-account-old-price");const C=()=>g?c.jsxs("p",{className:"gh-portal-account-discountcontainer",children:[c.jsx(E0,{className:"gh-portal-account-tagicon"}),c.jsx("span",{children:g})]}):null,S=Mc({sub:b});return S&&(k="gh-portal-account-old-price"),S?c.jsxs(c.Fragment,{children:[c.jsx("p",{className:k,children:h}),c.jsx($0,{subscription:b,t:r})]}):c.jsxs(c.Fragment,{children:[c.jsx("p",{className:k,children:h}),c.jsx(C,{})]})},s=({isComplimentary:d})=>(Ea({member:e})?!1:d)||Ca({site:t})?null:c.jsx("button",{className:"gh-portal-btn gh-portal-btn-list",onClick:b=>i(),"data-test-button":"change-plan",children:r("Change")}),l=({defaultCardLast4:d})=>{if(d){const y=`**** **** **** ${d}`;return c.jsx("p",{children:y})}return null},u=({defaultCardLast4:d,isComplimentary:y})=>{const{action:b}=v.useContext(N),x=b==="editBilling:running"?c.jsx($a,{className:"gh-portal-billing-button-loader"}):r("Update");return y?null:c.jsxs("section",{children:[c.jsxs("div",{className:"gh-portal-list-detail",children:[c.jsx("h3",{children:r("Billing info")}),c.jsx(l,{defaultCardLast4:d})]}),c.jsx("button",{className:"gh-portal-btn gh-portal-btn-list",onClick:f=>a(),"data-test-button":"update-billing",children:x})]})},p=Ge({member:e}),m=ar({member:e});if(p||m){const{price:d,default_payment_card_last4:y}=p||{};let b=r("Plan");return po({site:t})&&Nh({member:e})&&(b=Nh({member:e})),c.jsxs(c.Fragment,{children:[c.jsxs("section",{children:[c.jsxs("div",{className:"gh-portal-list-detail",children:[c.jsx("h3",{children:b}),c.jsx(o,{price:d,isComplimentary:m,subscription:p})]}),c.jsx(s,{isComplimentary:m})]}),c.jsx(u,{isComplimentary:m,defaultCardLast4:y})]})}return null};function $0({subscription:e,priceLabel:t,t:n}){if(Mc({sub:e})){const r=yt(e.trial_end_at);return c.jsx("p",{className:"gh-portal-account-discountcontainer",children:c.jsx("div",{children:c.jsx("span",{children:n("Free Trial – Ends {{trialEnd}}",{trialEnd:r})})})})}return null}function _0({offer:e,price:t,subscriptionStartDate:n,t:r}){let a="";if((e==null?void 0:e.type)==="trial"||(e==null?void 0:e.duration)==="once")return"";if(e){const i=e.duration;let o="";if(i==="forever")o=r("Forever");else if(i==="repeating"){const s=e.duration_in_months||0;let l=new Date(n),u=new Date(l.setMonth(l.getMonth()+s));if(zh(u))return"";o=r("Ends {{offerEndDate}}",{offerEndDate:yt(u)})}a=`${Mw({offer:e,price:t,useFormatted:!0})}/${t.interval}${o?` — ${o}`:""}`}return a}function j0(){const{member:e,site:t,onAction:n,t:r}=v.useContext(N);let{newsletters:a}=e;const i=!!(a!=null&&a.length);let o=r(i?"Subscribed":"Unsubscribed");const s=(l,u)=>{var d;l.preventDefault();const p=sr({site:t}),m=(d=e==null?void 0:e.newsletters)!=null&&d.length?[]:p;n("updateNewsletterPreference",{newsletters:m})};return c.jsxs("section",{children:[c.jsxs("div",{className:"gh-portal-list-detail email-newsletter",children:[c.jsx("h3",{children:r("Email newsletter")}),c.jsxs("p",{children:[o," ",zc({member:e})&&i&&c.jsx("button",{className:"gh-portal-btn-text gh-email-faq-page-button",onClick:()=>n("switchPage",{page:"emailReceivingFAQ",lastPage:"accountHome"}),children:r("Not receiving emails?")})]})]}),c.jsx("div",{children:c.jsx(So,{dataTestId:"default-newsletter-toggle",id:"default-newsletter-toggle",onToggle:l=>{s(l)},checked:i})})]})}const $f=e=>v.createElement("svg",{fill:"none",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",...e},v.createElement("path",{d:"m12.79 12.376 4.08 4.079m-4.08 0 4.08-4.08",stroke:"red",strokeWidth:1.35,strokeLinecap:"round",strokeLinejoin:"round"}),v.createElement("path",{d:"m10.439 17.994-2.664-2.652-2.86 1.478.111-4.239m0 0L1.677 9.232a1.344 1.344 0 0 1-.366-1.222 1.369 1.369 0 0 1 .904-1.05l13.111-4.374a1.369 1.369 0 0 1 1.76 1.758L15 10m-9.974 2.581 11.67-9.727",stroke:"#A3A3A3",strokeWidth:1.35,strokeLinecap:"round",strokeLinejoin:"round"}));function P0(){const{onAction:e,member:t,t:n}=v.useContext(N),r=Mh({member:t}),a=r?"emailSuppressed":"accountEmail";return c.jsxs("section",{children:[c.jsxs("div",{className:"gh-portal-list-detail",children:[c.jsx("h3",{children:n("Emails")}),r?c.jsxs("p",{className:"gh-portal-email-notice",children:[c.jsx($f,{className:"gh-portal-email-notice-icon"}),c.jsx("span",{className:"gh-mobile-only",children:n("You're not receiving emails")}),c.jsx("span",{className:"gh-desktop-only",children:n("You're currently not receiving emails")})]}):c.jsx("p",{children:n("Update your preferences")})]}),c.jsx("button",{className:"gh-portal-btn gh-portal-btn-list",onClick:i=>{e("switchPage",{page:a,lastPage:"accountHome"})},"data-test-button":"manage-newsletters",children:n("Manage")})]})}const N0=()=>{const{member:e,onAction:t,site:n,t:r}=v.useContext(N),{name:a,email:i}=e,o=()=>{t("switchPage",{page:"accountProfile",lastPage:"accountHome"})},s=go({site:n})||Th({site:n})||Mh({member:e});return c.jsx("div",{children:c.jsxs("div",{className:"gh-portal-list",children:[c.jsxs("section",{children:[c.jsxs("div",{className:"gh-portal-list-detail",children:[c.jsx("h3",{children:a||"Account"}),c.jsx("p",{children:i})]}),c.jsx("button",{"data-test-button":"edit-profile",className:"gh-portal-btn gh-portal-btn-list",onClick:l=>o(),children:r("Edit")})]}),c.jsx(C0,{}),s?c.jsx(P0,{}):c.jsx(j0,{})]})})},T0=()=>c.jsxs("div",{className:"gh-portal-content gh-portal-account-main",children:[c.jsx(be,{}),c.jsx(k0,{}),c.jsxs("section",{className:"gh-portal-account-data",children:[c.jsx(x0,{}),c.jsx(S0,{}),c.jsx(N0,{})]})]});class _f extends R.Component{componentDidMount(){const{member:t}=this.context;t||this.context.onAction("switchPage",{page:"signin",pageData:{redirect:window.location.href}})}handleSignout(t){t.preventDefault(),this.context.onAction("signout")}render(){const{member:t,site:n,t:r}=this.context,a=ko({site:n});return t?c.jsxs("div",{className:"gh-portal-account-wrapper",children:[c.jsx(T0,{}),c.jsx(v0,{onClose:()=>this.context.onAction("closePopup"),handleSignout:i=>this.handleSignout(i),supportAddress:a,t:r})]}):null}}G(_f,"contextType",N);class jf extends R.Component{constructor(t,n){super(t,n);const{name:r="",email:a=""}=n.member||{};this.state={name:r,email:a}}componentDidMount(){const{member:t}=this.context;t||this.context.onAction("switchPage",{page:"signin"})}handleSignout(t){t.preventDefault(),this.context.onAction("signout")}onBack(t){this.context.onAction("back")}onProfileSave(t){t.preventDefault(),this.setState(n=>({errors:No({fields:this.getInputFields({state:n})})}),()=>{const{email:n,name:r,errors:a}=this.state;a&&Object.values(a).filter(o=>!!o).length>0||(this.context.onAction("clearPopupNotification"),this.context.onAction("updateProfile",{email:n,name:r}))})}renderSaveButton(){const{t}=this.context,n=this.context.action==="updateProfile:running";let r=t("Save");this.context.action==="updateProfile:failed"&&(r=t("Retry"));const a=!!n;return c.jsx(de,{dataTestId:"save-button",isRunning:n,onClick:i=>this.onProfileSave(i),disabled:a,brandColor:this.context.brandColor,label:r,style:{width:"100%"}})}renderDeleteAccountButton(){const{t}=this.context;return c.jsx("div",{style:{cursor:"pointer",color:"red"},role:"button",children:t("Delete account")})}renderAccountFooter(){return c.jsx("footer",{className:"gh-portal-action-footer",children:this.renderSaveButton()})}renderHeader(){const{t}=this.context;return c.jsxs("header",{className:"gh-portal-detail-header",children:[c.jsx(cr,{brandColor:this.context.brandColor,hidden:!this.context.lastPage,onClick:n=>this.onBack(n)}),c.jsx("h3",{className:"gh-portal-main-title",children:t("Account settings")})]})}renderUserAvatar(){const t=this.context.member&&this.context.member.avatar_image,n={position:"relative",display:"flex",width:"64px",height:"64px",marginBottom:"6px",borderRadius:"100%",boxShadow:"0 0 0 3px #fff",border:"1px solid gray",overflow:"hidden",justifyContent:"center",alignItems:"center"};return c.jsx("div",{style:n,children:c.jsx(Nc,{gravatar:t,style:{userIcon:{color:"black",width:"56px",height:"56px"}}})})}handleInputChange(t,n){const r=n.name;this.setState({[r]:t.target.value})}getInputFields({state:t,fieldNames:n}){const{t:r}=this.context,a=t.errors||{},i=[{type:"text",value:t.name,placeholder:"Jamie Larson",label:r("Name"),name:"name",required:!0,errorMessage:a.name||""},{type:"email",value:t.email,placeholder:"jamie@example.com",label:r("Email"),name:"email",required:!0,errorMessage:a.email||""}];return n&&n.length>0?i.filter(o=>n.includes(o.name)):i}onKeyDown(t){t.keyCode===13&&this.onProfileSave(t)}renderProfileData(){return c.jsx("div",{className:"gh-portal-section",children:c.jsx(Po,{fields:this.getInputFields({state:this.state}),onChange:(t,n)=>this.handleInputChange(t,n),onKeyDown:(t,n)=>this.onKeyDown(t,n)})})}render(){const{member:t}=this.context;return t?c.jsxs(c.Fragment,{children:[c.jsxs("div",{className:"gh-portal-content with-footer",children:[c.jsx(be,{}),this.renderHeader(),c.jsx("div",{className:"gh-portal-section",children:this.renderProfileData()})]}),this.renderAccountFooter()]}):null}}G(jf,"contextType",N);const I0=e=>v.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",...e},v.createElement("defs",null,v.createElement("style",null,`.a{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5px!important;}
3162
+ `)),v.createElement("title",null,"check-circle-1"),v.createElement("path",{className:"a",d:"M6,13.223,8.45,16.7a1.049,1.049,0,0,0,1.707.051L18,6.828"}),v.createElement("circle",{className:"a",cx:12,cy:11.999,r:11.25}));function D0(){const{brandColor:e,lastPage:t,onAction:n,t:r}=v.useContext(N);return c.jsxs("header",{className:"gh-portal-detail-header",children:[c.jsx(cr,{brandColor:e,hidden:!t,onClick:a=>{n("back")}}),c.jsx("h3",{className:"gh-portal-main-title",children:r("Email preferences")})]})}function Pf({show:e,checked:t}){let n=[];return e&&n.push("gh-portal-checkmark-show"),t&&n.push("gh-portal-toggle-checked"),n.push("gh-portal-checkmark-container"),c.jsx("div",{className:n.join(" "),children:c.jsx(I0,{className:"gh-portal-checkmark-icon",alt:""})})}function A0({newsletter:e,subscribedNewsletters:t,setSubscribedNewsletters:n}){const r=t.some(l=>l.id===(e==null?void 0:e.id)),[a,i]=v.useState(!1),[o,s]=v.useState(null);return c.jsxs("section",{className:"gh-portal-list-toggle-wrapper","data-test-toggle-wrapper":!0,children:[c.jsxs("div",{className:"gh-portal-list-detail",children:[c.jsx("h3",{children:e.name}),c.jsx("p",{children:e==null?void 0:e.description})]}),c.jsxs("div",{style:{display:"flex",alignItems:"center"},children:[c.jsx(Pf,{show:a,checked:r}),c.jsx(So,{id:e.id,onToggle:(l,u)=>{let p=[];if(u){p=t.filter(d=>d.id!==e.id).concat(e),i(!0),clearTimeout(o);let m=setTimeout(()=>{i(!1)},2e3);s(m)}else{p=t.filter(d=>d.id!==e.id),i(!0),clearTimeout(o);let m=setTimeout(()=>{i(!1)},2e3);s(m)}n(p)},checked:r})]})]})}function M0({updateCommentNotifications:e,isCommentsEnabled:t,enableCommentNotifications:n}){const{t:r}=v.useContext(N),a=!!n,[i,o]=v.useState(!1),[s,l]=v.useState(null);return t?c.jsxs("section",{className:"gh-portal-list-toggle-wrapper","data-test-toggle-wrapper":!0,children:[c.jsxs("div",{className:"gh-portal-list-detail",children:[c.jsx("h3",{children:r("Comments")}),c.jsx("p",{children:r("Get notified when someone replies to your comment")})]}),c.jsxs("div",{style:{display:"flex",alignItems:"center"},children:[c.jsx(Pf,{show:i,checked:a}),c.jsx(So,{id:"comments",onToggle:(u,p)=>{o(!0),clearTimeout(s);let m=setTimeout(()=>{o(!1)},2e3);l(m),e(p)},checked:a})]})]}):null}function z0({subscribedNewsletters:e,setSubscribedNewsletters:t}){const{site:n}=v.useContext(N);return sr({site:n}).map(a=>c.jsx(A0,{newsletter:a,subscribedNewsletters:e,setSubscribedNewsletters:t},a==null?void 0:a.id))}function R0({site:e,isPaid:t}){const{t:n}=v.useContext(N);return t?c.jsx("p",{style:{textAlign:"center",marginTop:"12px",marginBottom:"0",color:"var(--grey6)"},children:n("Unsubscribing from emails will not cancel your paid subscription to {{title}}",{title:e==null?void 0:e.title})}):null}function Nf({notification:e,subscribedNewsletters:t,updateSubscribedNewsletters:n,updateCommentNotifications:r,unsubscribeAll:a,isPaidMember:i,isCommentsEnabled:o,enableCommentNotifications:s}){const{brandColor:l,onAction:u,member:p,site:m,t:d}=v.useContext(N),y=!(t!=null&&t.length)&&(o&&!s||!o),x=e||(()=>null);return c.jsxs("div",{className:"gh-portal-content with-footer",children:[c.jsx(be,{}),c.jsx(D0,{}),c.jsx(x,{}),c.jsx("div",{className:"gh-portal-section flex",children:c.jsxs("div",{className:"gh-portal-list",children:[c.jsx(z0,{subscribedNewsletters:t,setSubscribedNewsletters:f=>{let h=f.map(g=>({id:g.id}));n(h)}}),c.jsx(M0,{isCommentsEnabled:o,enableCommentNotifications:s,updateCommentNotifications:r})]})}),c.jsxs("footer",{className:"gh-portal-action-footer"+(zc({member:p})?" gh-feature-suppressions":""),children:[c.jsxs("div",{style:{width:"100%"},children:[c.jsx(de,{isRunning:!1,onClick:f=>{a()},disabled:y,brandColor:l,isPrimary:!1,label:d("Unsubscribe from all emails"),isDestructive:!0,style:{width:"100%"},dataTestId:"unsubscribe-from-all-emails"}),c.jsx(R0,{isPaid:i,site:m})]}),zc({member:p})&&!y&&c.jsxs("div",{className:"gh-portal-footer-secondary",children:[c.jsx("span",{className:"gh-portal-footer-secondary-light",children:d("Not receiving emails?")}),c.jsxs("button",{className:"gh-portal-btn-text gh-email-faq-page-button",onClick:()=>u("switchPage",{page:"emailReceivingFAQ"}),children:[d("Get help")," →"]})]})]})]})}function L0(){const{member:e,onAction:t,site:n,t:r}=v.useContext(N);v.useEffect(()=>{e||t("switchPage",{page:"signin"})},[e,t]);const a=[...(e==null?void 0:e.newsletters)||[]],[i,o]=v.useState(a),{comments_enabled:s}=n,{enable_comment_notifications:l}=e||{};return v.useEffect(()=>{o((e==null?void 0:e.newsletters)||[])},[e==null?void 0:e.newsletters]),c.jsx(Nf,{notification:null,subscribedNewsletters:i,updateSubscribedNewsletters:u=>{o(u),t("updateNewsletterPreference",{newsletters:u})},updateCommentNotifications:async u=>{t("updateNewsletterPreference",{enableCommentNotifications:u})},unsubscribeAll:()=>{o([]),t("showPopupNotification",{action:"updated:success",message:r("Email preference updated.")});const u={newsletters:[]};s&&(u.enableCommentNotifications=!1),t("updateNewsletterPreference",u)},isPaidMember:bt({member:e}),isCommentsEnabled:s!=="off",enableCommentNotifications:l})}function U0(){const{site:e}=v.useContext(N),t=e.icon;return t?c.jsx("img",{className:"gh-portal-unsubscribe-logo",src:t,alt:e.title}):null}function O0(){const{site:e}=v.useContext(N),t=e.title||"";return c.jsxs("header",{className:"gh-portal-header",children:[c.jsx(U0,{}),c.jsx("h2",{className:"gh-portal-publication-title",children:t})]})}async function qc({api:e,memberUuid:t,newsletters:n,enableCommentNotifications:r}){try{return await e.member.updateNewsletters({uuid:t,newsletters:n,enableCommentNotifications:r})}catch{}}function F0(){const{site:e,pageData:t,onAction:n,t:r}=v.useContext(N),a=To({siteUrl:e.url}),[i,o]=v.useState(),s=sr({site:e}),l=s.filter(g=>g.subscribe_on_signup),[u,p]=v.useState(!1),[m,d]=v.useState(l),[y,b]=v.useState(!1),{comments_enabled:x}=e,{enable_comment_notifications:f=!1}=i||{};if(v.useEffect(()=>{const g=To({siteUrl:e.url});(async()=>{const w=await g.member.newsletters({uuid:t.uuid});o(w);const k=(w==null?void 0:w.newsletters)||[];if(d(k),(s==null?void 0:s.length)===1&&!x){const C=await qc({api:g,memberUuid:t.uuid,newsletters:[]});d(C.newsletters)}else if(t.newsletterUuid){const C=await qc({api:g,memberUuid:t.uuid,newsletters:k==null?void 0:k.filter(S=>S.uuid!==t.newsletterUuid)});d(C.newsletters)}else if(t.comments&&x){const C=await qc({api:g,memberUuid:t.uuid,enableCommentNotifications:!1});o(C)}})()},[x,t.uuid,t.newsletterUuid,t.comments,e.url,s==null?void 0:s.length]),i===null)return c.jsxs("div",{className:"gh-portal-content gh-portal-feedback with-footer",children:[c.jsx(be,{}),c.jsx("div",{class:"gh-feedback-icon gh-feedback-icon-error",children:c.jsx(Oc,{})}),c.jsx("h1",{className:"gh-portal-main-title",children:r("That didn't go to plan")}),c.jsx("div",{children:c.jsx("p",{className:"gh-portal-text-center",children:r("We couldn't unsubscribe you as the email address was not found. Please contact the site owner.")})}),c.jsx(de,{style:{width:"100%"},retry:!1,onClick:()=>n("closePopup"),disabled:!1,brandColor:"#000000",label:r("Close"),isRunning:!1,tabindex:"3",classes:"sticky bottom"})]});if((s==null?void 0:s.length)===1&&!x&&!y)return c.jsxs("div",{className:"gh-portal-content gh-portal-unsubscribe with-footer",children:[c.jsx(be,{}),c.jsx(O0,{}),c.jsx("h1",{className:"gh-portal-main-title",children:r("Successfully unsubscribed")}),c.jsxs("div",{children:[c.jsx("p",{className:"gh-portal-text-center",children:c.jsx(Ue,{syntax:Ke,string:r("{{memberEmail}} will no longer receive this newsletter."),mapping:{memberEmail:c.jsx("strong",{children:i==null?void 0:i.email})}})}),c.jsx("p",{className:"gh-portal-text-center",children:c.jsx(Ue,{syntax:Ke,string:r("Didn't mean to do this? Manage your preferences <button>here</button>."),mapping:{button:c.jsx("button",{className:"gh-portal-btn-link gh-portal-btn-branded gh-portal-btn-inline",onClick:()=>{b(!0)}})}})})]})]});const h=()=>{if(t.comments&&x){const k=u?"gh-portal-hide":"";return c.jsx(c.Fragment,{children:c.jsx("p",{className:`gh-portal-text-center gh-portal-header-message ${k}`,children:c.jsx(Ue,{syntax:Ke,string:r("{{memberEmail}} will no longer receive emails when someone replies to your comments."),mapping:{memberEmail:c.jsx("strong",{children:i==null?void 0:i.email})}})})})}const g=s==null?void 0:s.find(k=>k.uuid===t.newsletterUuid),w=u?"gh-portal-hide":"";return c.jsx(c.Fragment,{children:c.jsx("p",{className:`gh-portal-text-center gh-portal-header-message ${w}`,children:c.jsx(Ue,{syntax:Ke,string:r("{{memberEmail}} will no longer receive {{newsletterName}} newsletter."),mapping:{memberEmail:c.jsx("strong",{children:i==null?void 0:i.email}),newsletterName:c.jsx("strong",{children:g==null?void 0:g.name})}})})})};return c.jsx(Nf,{notification:h,subscribedNewsletters:m,updateSubscribedNewsletters:async g=>{d(g),p(!0),await a.member.updateNewsletters({uuid:t.uuid,newsletters:g})},updateCommentNotifications:async g=>{const w=await a.member.updateNewsletters({uuid:t.uuid,enableCommentNotifications:g});o(w)},unsubscribeAll:async()=>{p(!0),d([]),n("showPopupNotification",{action:"updated:success",message:r("Email preference updated.")});const g=await a.member.updateNewsletters({uuid:t.uuid,newsletters:[],enableCommentNotifications:!1});o(g)},isPaidMember:(i==null?void 0:i.status)!=="free",isCommentsEnabled:x!=="off",enableCommentNotifications:f})}function Y0(){const{brandColor:e,lastPage:t,onAction:n,action:r,site:a,t:i}=v.useContext(N);v.useEffect(()=>{["removeEmailFromSuppressionList:success"].includes(r)&&n("refreshMemberData"),["removeEmailFromSuppressionList:failed","refreshMemberData:failed"].includes(r)&&n("back"),["refreshMemberData:success"].includes(r)&&(go({site:a})||Th({site:a})?(n("switchPage",{page:"accountEmail",lastPage:"accountHome"}),n("showPopupNotification",{message:i("You have been successfully resubscribed")})):n("back"))},[r,n,a,i]);const o=["removeEmailFromSuppressionList:running","refreshMemberData:running"].includes(r),s=()=>{n("removeEmailFromSuppressionList")};return c.jsxs("div",{className:"gh-email-suppressed-page",children:[c.jsxs("header",{className:"gh-portal-detail-header",children:[c.jsx(cr,{brandColor:e,hidden:!t,onClick:()=>{n("back")}}),c.jsx(be,{})]}),c.jsx($f,{className:"gh-email-suppressed-page-icon"}),c.jsxs("div",{className:"gh-email-suppressed-page-text",children:[c.jsx("h3",{className:"gh-portal-main-title gh-email-suppressed-page-title",children:i("Emails disabled")}),c.jsx("p",{children:i("You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.")})]}),c.jsx(de,{dataTestId:"resubscribe-email",classes:"gh-portal-confirm-button",onClick:s,disabled:o,brandColor:e,label:i("Re-enable emails"),isRunning:o})]})}function B0(){const{brandColor:e,onAction:t,site:n,t:r}=v.useContext(N),a=`mailto:${ko({site:n})}`;return c.jsxs("div",{className:"gh-email-suppression-faq",children:[c.jsxs("header",{className:"gh-portal-detail-header",children:[c.jsx(cr,{brandColor:e,onClick:()=>{t("switchPage",{page:"emailSuppressed",lastPage:"accountHome"})}}),c.jsx(be,{})]}),c.jsxs("div",{class:"gh-longform",children:[c.jsx("h3",{children:r("Why has my email been disabled?")}),c.jsx("p",{children:r("Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).")}),c.jsx("h4",{children:r("Spam complaints")}),c.jsx("p",{children:r("If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.")}),c.jsx("p",{children:r("If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.")}),c.jsx("p",{children:r("Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.")}),c.jsx("h4",{children:r("Permanent failure (bounce)")}),c.jsx("p",{children:r("When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.")}),c.jsx("p",{children:r("In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.")}),c.jsx("p",{children:r("If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.")}),c.jsx("p",{children:c.jsx("a",{className:"gh-portal-btn gh-portal-btn-branded",href:a,onClick:()=>{a&&window.open(a)},children:r("Need more help? Contact support")})})]})]})}function H0(){const{brandColor:e,onAction:t,site:n,lastPage:r,member:a,t:i}=v.useContext(N),o=ko({site:n}),s=`mailto:${o}`,l=Dw({site:n});return c.jsxs("div",{className:"gh-email-receiving-faq",children:[c.jsxs("header",{className:"gh-portal-detail-header",children:[c.jsx(cr,{brandColor:e,onClick:()=>{r?t("switchPage",{page:"accountHome"}):t("switchPage",{page:"accountEmail",lastPage:"accountHome"})}}),c.jsx(be,{})]}),c.jsxs("div",{class:"gh-longform",children:[c.jsx("h3",{children:i("Help! I'm not receiving emails")}),c.jsx("p",{children:i("If you're not receiving the email newsletter you've subscribed to, here are few things to check.")}),c.jsx("h4",{children:i("Verify your email address is correct")}),c.jsx("p",{children:c.jsx(Ue,{syntax:Ke,string:i("The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>."),mapping:{memberEmail:c.jsx("strong",{children:a.email}),button:c.jsx("button",{className:"gh-portal-btn-text",onClick:()=>t("switchPage",{lastPage:"emailReceivingFAQ",page:"accountProfile"})})}})}),c.jsx("h4",{children:i("Check spam & promotions folders")}),c.jsx("p",{children:i(`Make sure emails aren't accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".`)}),c.jsx("h4",{children:i("Create a new contact")}),c.jsx("p",{children:c.jsx(Ue,{syntax:Ke,string:i("In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted."),mapping:{senderEmail:c.jsx("strong",{children:l})}})}),c.jsx("h4",{children:i("Send an email and say hi!")}),c.jsx("p",{children:c.jsx(Ue,{syntax:Ke,string:i("Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted."),mapping:{senderEmail:c.jsx("strong",{children:l})}})}),c.jsx("h4",{children:i("Check with your mail provider")}),c.jsx("p",{children:c.jsx(Ue,{syntax:Ke,string:i("If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}"),mapping:{senderEmail:c.jsx("strong",{children:l})}})}),c.jsx("h4",{children:i("Get in touch for help")}),c.jsx("p",{children:c.jsx(Ue,{syntax:Ke,string:i("If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}."),mapping:{supportAddress:c.jsx("a",{href:s,onClick:()=>{s&&window.open(s)},children:o})}})})]})]})}const Vc={signin:Cf,signup:bf,accountHome:_f,accountPlan:gf,accountProfile:jf,accountEmail:L0,signupNewsletter:Hc,unsubscribe:F0,magiclink:vf,loading:Ef,offer:wf,feedback:d0,emailSuppressed:Y0,emailSuppressionFAQ:B0,emailReceivingFAQ:H0},Wc=function({page:e}){return Object.keys(Vc).includes(e)?e:"signup"},q0=function({page:e}){return e.includes("account")},V0=function({page:e}){return e.includes("offer")},W0=e=>v.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e},v.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M24 12C24 18.6274 18.6274 24 12 24C5.37258 24 0 18.6274 0 12C0 5.37258 5.37258 0 12 0C18.6274 0 24 5.37258 24 12ZM11.8326 2.33879C6.37785 2.95189 3.95901 5.20797 3.41126 9.74699C3.34896 10.2632 3.22642 10.7805 3.10443 11.2954C2.93277 12.02 2.76221 12.74 2.76221 13.4458C2.76221 17.9885 6.5856 21.556 11.1283 21.556C12.8959 21.556 14.4433 20.8144 15.8756 20.048C19.0536 18.3478 22.0328 16.2597 22.0328 12.5411C22.0328 9.91512 20.1051 7.56932 18.466 5.5747C18.3834 5.47416 18.3015 5.37451 18.2206 5.27577C17.3866 4.25742 14.4333 2.04643 11.8326 2.33879Z",fill:"#15171A"}));class Gc extends R.Component{render(){return c.jsxs("a",{href:"https://ghost.org",target:"_blank",rel:"noopener noreferrer",onClick:()=>{window.open("https://ghost.org","_blank")},children:[c.jsx(W0,{}),"Powered by Ghost"]})}}G(Gc,"contextType",N);const Tf=({member:e})=>({modalContainer:{zIndex:"3999999",position:"fixed",left:"0",top:"0",width:"100%",height:"100%",overflow:"hidden"},frame:{common:{margin:"auto",position:"relative",padding:"0",outline:"0",width:"100%",opacity:"1",overflow:"hidden",height:"100%"}},page:{links:{width:"600px"}}});function G0({message:e}){return rr()?c.jsx("div",{className:"gh-portal-cookiebanner",children:e}):null}class If extends R.Component{componentDidMount(){this.node&&!V(["preview"])&&!this.props.isMobile&&(this.node.focus(),this.keyUphandler=t=>{t.key==="Escape"&&this.dismissPopup(t)},this.node.ownerDocument.removeEventListener("keyup",this.keyUphandler),this.node.ownerDocument.addEventListener("keyup",this.keyUphandler)),this.sendContainerHeightChangeEvent()}dismissPopup(t){var a;const n=t.target&&t.target.tagName;(n!=="INPUT"||n==="INPUT"&&!((a=t==null?void 0:t.target)!=null&&a.value))&&this.context.onAction("closePopup")}sendContainerHeightChangeEvent(){var t,n;this.node&&V(["preview"])&&((t=this.node)==null?void 0:t.clientHeight)!==this.lastContainerHeight&&(this.lastContainerHeight=(n=this.node)==null?void 0:n.clientHeight,window.document.body.style.overflow="hidden",window.document.body.style["scrollbar-width"]="none",window.parent.postMessage({type:"portal-preview-updated",payload:{height:this.lastContainerHeight}},"*"))}componentDidUpdate(){this.sendContainerHeightChangeEvent()}componentWillUnmount(){this.node&&this.node.ownerDocument.removeEventListener("keyup",this.keyUphandler)}handlePopupClose(t){V(["preview"])||t.target===t.currentTarget&&this.context.onAction("closePopup")}renderActivePage(){const{page:t}=this.context;Wc({page:t});const n=Vc[t];return c.jsx(n,{})}renderPopupNotification(){const{popupNotification:t}=this.context;return!t||!t.type?null:c.jsx(kf,{})}render(){const{page:t,pageQuery:n,site:r,customSiteUrl:a}=this.context,o=ho({site:r}).length;Wc({page:t});const l={...Tf({page:t}).page[t]};let u="",p="regular",m="",d=t;switch(t){case"signup":m="Cookies must be enabled in your browser to sign up.";break;case"signin":m="Cookies must be enabled in your browser to sign in.";break;case"accountHome":d="account-home";break;case"accountProfile":d="account-profile";break;case"accountPlan":d="account-plan";break;default:m="Cookies must be enabled in your browser.",d=t;break}o>1&&!at({site:r,pageQuery:n})&&t==="signup"&&(d+=" full-size",p="full");const y=pn({site:r});(y&&o>2||!y&&o>1)&&t==="accountPlan"&&(d+=" full-size",p="full"),(t==="emailSuppressionFAQ"||t==="emailReceivingFAQ")&&(d+=" large-size");let b="gh-portal-popup-container";V(["preview"])&&(d+=" preview"),V(["preview"],{customSiteUrl:a})&&!r.disableBackground&&(b+=" preview"),V(["dev"])&&(b+=" dev");const x=`${b} ${u} ${d}`;return c.jsxs(c.Fragment,{children:[c.jsx("div",{className:"gh-portal-popup-wrapper "+d,onClick:f=>this.handlePopupClose(f),children:c.jsxs("div",{className:x,style:l,ref:f=>this.node=f,tabIndex:-1,children:[c.jsx(G0,{message:m}),this.renderPopupNotification(),this.renderActivePage(),p==="full"?c.jsx("div",{className:"gh-portal-powered inside "+(V(["preview"])?"hidden ":"")+d,children:c.jsx(Gc,{})}):""]})}),c.jsx("div",{className:"gh-portal-powered outside "+(V(["preview"])?"hidden ":"")+d,children:c.jsx(Gc,{})})]})}}G(If,"contextType",N);class Df extends R.Component{constructor(t){super(t),this.state={height:null}}renderCurrentPage(t){const n=Vc[t];return c.jsx(n,{})}onHeightChange(t){this.setState({height:t})}handlePopupClose(t){t.preventDefault(),t.target===t.currentTarget&&this.context.onAction("closePopup")}renderFrameStyles(){const{site:t}=this.context,n=b0({site:t}),r=`
3163
3163
  :root {
3164
3164
  --brandcolor: ${this.context.brandColor}
3165
3165
  }
3166
- `+n;return c.jsxs(c.Fragment,{children:[c.jsx("style",{dangerouslySetInnerHTML:{__html:r}}),c.jsx("meta",{name:"viewport",content:"width=device-width, initial-scale=1, maximum-scale=1"})]})}renderFrameContainer(){const{member:t,site:n,customSiteUrl:r}=this.context,a=Tf({member:t}),i=window.innerWidth<480,o={...a.frame.common};let s="gh-portal-popup-background";return V(["preview"])&&(a.modalContainer.zIndex="3999997"),V(["preview"],{customSiteUrl:r})&&!n.disableBackground&&(s+=" preview"),V(["dev"])&&(s+=" dev"),c.jsx("div",{style:a.modalContainer,children:c.jsxs(jc,{style:o,title:"portal-popup",head:this.renderFrameStyles(),dataTestId:"portal-popup-frame",children:[c.jsx("div",{className:s,onClick:l=>this.handlePopupClose(l)}),c.jsx(If,{isMobile:i})]})})}render(){const{showPopup:t}=this.context;return t?this.renderFrameContainer():null}}G(Df,"contextType",N),Io({products:Kc({numOfProducts:1})});function Se(){return(new Date().getTime()/1e3|0).toString(16)+"xxxxxxxxxxxxxxxx".replace(/[x]/g,function(){return(Math.random()*16|0).toString(16)}).toLowerCase()}function Io({title:e="The Blueprint",description:t="Thoughts, stories and ideas.",logo:n="https://static.ghost.org/v4.0.0/images/ghost-orb-1.png",icon:r="https://static.ghost.org/v4.0.0/images/ghost-orb-1.png",url:a="https://portal.localhost",plans:i={monthly:5e3,yearly:15e4,currency:"USD"},products:o=Kc({numOfProducts:1}),portalProducts:s=o.map($=>$.id),accentColor:l="#45C32E",portalPlans:u=["free","monthly","yearly"],allowSelfSignup:p=!0,membersSignupAccess:m="all",freePriceName:d="Free",freePriceDescription:y="Free preview",isStripeConfigured:b=!0,portalButton:x=!0,portalName:f=!0,portalButtonIcon:h="icon-1",portalButtonSignupText:g="Subscribe now",portalButtonStyle:w="icon-and-text",membersSupportAddress:k="support@example.com",newsletters:C=[],commentsEnabled:S}={}){return{title:e,description:t,logo:n,icon:r,accent_color:l,url:a,plans:i,products:o,portal_products:s,allow_self_signup:p,members_signup_access:m,free_price_name:d,free_price_description:y,is_stripe_configured:b,portal_button:x,portal_name:f,portal_plans:u,portal_button_icon:h,portal_button_signup_text:g,portal_button_style:w,members_support_address:k,comments_enabled:!!S,newsletters:C}}function Af({name:e="Black Friday",code:t="black-friday",displayTitle:n="Black Friday Sale!",displayDescription:r="Special deal for Black Friday. Subscribe now for only $15 per month and get additional benefits like accessing our podcast.",type:a="percent",cadence:i="month",amount:o=50,duration:s="repeating",durationInMonths:l=null,currencyRestriction:u=!1,currency:p=null,status:m="active",tierId:d="",tierName:y="Basic"}={}){return{id:`offer_${Se()}`,name:e,code:t,display_title:n,display_description:r,type:a,cadence:i,amount:o,duration:s,duration_in_months:l,currency_restriction:u,currency:p,status:m,tier:{id:`${d}`,name:y}}}function Je({name:e="Jamie Larson",email:t="jamie@example.com",firstname:n="Jamie",subscriptions:r=[],paid:a=!1,avatarImage:i="",subscribed:o=!0,email_suppression:s={suppressed:!1,info:null}}={}){return{uuid:`member_${Se()}`,email:t,name:e,firstname:n,paid:a,subscribed:o,avatar_image:i,subscriptions:r,email_suppression:s}}function Kc({numOfProducts:e=3}={}){const n=[dr({name:"Bronze",description:"Access to all members articles",monthlyPrice:Oe({interval:"month",amount:700}),yearlyPrice:Oe({interval:"year",amount:7e3}),numOfBenefits:2}),dr({name:"Silver",description:"Access to all members articles and weekly podcast",monthlyPrice:Oe({interval:"month",amount:1200}),yearlyPrice:Oe({interval:"year",amount:12e3}),numOfBenefits:3}),dr({name:"Friends of the Blueprint",description:"Get access to everything and lock in early adopter pricing for life + listen to my podcast",monthlyPrice:Oe({interval:"month",amount:18e3}),yearlyPrice:Oe({interval:"year",amount:17e3}),numOfBenefits:4})].slice(0,e),r=Mf({});return[...n,r]}function dr({type:e="paid",name:t="Basic",description:n="",id:r=`product_${Se()}`,monthlyPrice:a=Oe(),yearlyPrice:i=Oe({interval:"year"}),numOfBenefits:o=2}){return{id:r,name:t,description:n,monthlyPrice:e==="free"?null:a,yearlyPrice:e==="free"?null:i,type:e,benefits:zf({numOfBenefits:o})}}function Mf({name:e="Free tier",description:t="Free tier description",id:n=`product_${Se()}`,numOfBenefits:r=2}){return{id:n,name:e,type:"free",description:t,benefits:zf({numOfBenefits:r})}}function zf({numOfBenefits:e}){return[Do({name:"Limited early adopter pricing"}),Do({name:"Latest gear reviews"}),Do({name:"Weekly email newsletter"}),Do({name:"Listen to my podcast"})].slice(0,e)}function Do({id:e=`benefit_${Se()}`,name:t="Benefit"}){return{id:e,name:t}}function Oe({interval:e="month",amount:t=e==="month"?500:5e3,nickname:n=e==="month"?"Monthly":"Yearly",description:r=null,currency:a="usd",active:i=!0,id:o=`price_${Se()}`}={}){return{id:o,active:i,nickname:n,currency:a,amount:t,interval:e,description:r,stripe_price_id:`price_${Se()}`,stripe_product_id:`prod_${Se()}`,type:"recurring"}}function hn({id:e=`sub_${Se()}`,status:t="active",currency:n="USD",interval:r="year",amount:a=r==="month"?500:5e3,nickname:i=r==="month"?"Monthly":"Yearly",cardLast4:o="4242",offer:s=J0,priceId:l=`price_${Se()}`,startDate:u="2021-10-05T03:18:30.000Z",currentPeriodEnd:p="2022-10-05T03:18:30.000Z",cancelAtPeriodEnd:m=!1}={}){return{id:e,customer:{id:`cus_${Se()}`,name:"Jamie",email:"jamie@example.com"},plan:{id:`price_${Se()}`,nickname:i,amount:a,interval:r,currency:n},offer:s,status:t,start_date:u,default_payment_card_last4:o,cancel_at_period_end:m,cancellation_reason:null,current_period_end:p,price:{id:`stripe_price_${Se()}`,price_id:l,nickname:i,amount:a,interval:r,type:"recurring",currency:n,product:{id:`stripe_prod_${Se()}`,product_id:`prod_${Se()}`}}}}function Rf(){const e=Kc({numOfProducts:1}),t=e.map(r=>r.id);return Io({products:e,portalPlans:["free","monthly","yearly"],portalProducts:t})}Rf();const K0=Io({products:[dr({numOfBenefits:2,type:"free"})]}),J0=Af({tierId:(ng=K0.products[0])==null?void 0:ng.id});Je(),Je({paid:!0,subscriptions:[hn()]}),Je({paid:!0,subscriptions:[]}),Je({paid:!0,subscriptions:[hn({amount:0})]}),Je({paid:!0,subscriptions:[hn({amount:1500,startDate:"2019-05-01T11:42:40.000Z",currentPeriodEnd:"2021-06-05T11:42:40.000Z"})]}),Rf();const Ao=[Mf({name:"Free",description:"Free tier description which is actually a pretty long description",numOfBenefits:2}),dr({name:"The Blueprint",description:"",monthlyPrice:Oe({interval:"month",amount:500}),yearlyPrice:Oe({interval:"year",amount:5e3}),numOfBenefits:3}),dr({name:"Friends of the Blueprint Silver",description:"Access to all members articles and weekly podcast",monthlyPrice:Oe({interval:"month",amount:1200}),yearlyPrice:Oe({interval:"year",amount:11e3}),numOfBenefits:4})],pr=Io({title:"The Blueprint",description:"Thoughts, stories and ideas.",logo:"https://static.ghost.org/v4.0.0/images/ghost-orb-1.png",icon:"https://static.ghost.org/v4.0.0/images/ghost-orb-1.png",accentColor:"#45C32E",url:"https://portal.localhost",plans:{monthly:5e3,yearly:15e4,currency:"USD"},products:Ao,portalProducts:Ao.map(e=>e.id),allowSelfSignup:!0,membersSignupAccess:"all",freePriceName:"Free",freePriceDescription:"Free preview",isStripeConfigured:!0,portalButton:!0,portalName:!0,portalPlans:["free","monthly","yearly"],portalButtonIcon:"icon-1",portalButtonSignupText:"Subscribe now",portalButtonStyle:"icon-and-text",membersSupportAddress:"support@example.com",commentsEnabled:!0,newsletters:[{id:"weekly",name:"Weekly Rundown",description:"Best of last week",subscribe_on_signup:!0,paid:!0},{id:"daily",name:"Daily Brief",description:"One email every day",subscribe_on_signup:!1,paid:!1}]}),Lf=Af({tierId:(rg=pr.products[1])==null?void 0:rg.id}),Mo={free:Je({name:"Jamie Larson",email:"jamie@example.com",firstname:"Jamie",subscriptions:[],paid:!1,avatarImage:"",subscribed:!0}),paid:Je({paid:!0,subscriptions:[hn({status:"active",currency:"USD",interval:"year",amount:5e3,cardLast4:"4242",startDate:"2021-10-05T03:18:30.000Z",currentPeriodEnd:"2022-10-05T03:18:30.000Z",cancelAtPeriodEnd:!1})]}),complimentary:Je({paid:!0,subscriptions:[]}),complimentaryWithSubscription:Je({paid:!0,subscriptions:[hn({amount:0})]}),preview:Je({paid:!0,subscriptions:[hn({amount:1500,startDate:"2019-05-01T11:42:40.000Z",currentPeriodEnd:"2021-06-05T11:42:40.000Z"})]})};function Q0(){var n;if(!Ao||!Ao[1])return null;let e=(n=pr==null?void 0:pr.products)==null?void 0:n[1].monthlyPrice,t=Je({paid:!0,subscriptions:[hn({offer:null,priceId:e==null?void 0:e.id,status:"active",currency:e==null?void 0:e.currency,interval:e==null?void 0:e.interval,amount:e==null?void 0:e.amount,cardLast4:"4242",startDate:"2021-10-05T03:18:30.000Z",currentPeriodEnd:"2022-10-05T03:18:30.000Z",cancelAtPeriodEnd:!1})]});return{site:pr,member:t}}function X0({data:e,state:t}){return{page:e.page,popupNotification:null,lastPage:e.lastPage||null,pageData:e.pageData||t.pageData}}function Z0({state:e}){return{showPopup:!e.showPopup}}function eS({data:e}){return{showPopup:!0,page:e.page,...e.pageQuery?{pageQuery:e.pageQuery}:{},...e.pageData?{pageData:e.pageData}:{}}}function tS({state:e}){return e.lastPage?{page:e.lastPage}:Uf({state:e})}function Uf({state:e}){return Ic(),{showPopup:!1,lastPage:null,pageQuery:"",popupNotification:null,page:e.page==="magiclink"?"":e.page}}function nS({data:e}){return{showNotification:!0,...e}}function rS({state:e}){return{showNotification:!1}}async function aS({api:e,state:t}){try{return await e.member.signout(),{action:"signout:success"}}catch{return{action:"signout:failed",popupNotification:Q({type:"signout:failed",autoHide:!1,closeable:!0,state:t,status:"error",message:"Failed to log out, please try again"})}}}async function iS({data:e,api:t,state:n}){try{return await t.member.sendMagicLink({...e,emailType:"signin"}),{page:"magiclink",lastPage:"signin"}}catch(r){return{action:"signin:failed",popupNotification:Q({type:"signin:failed",autoHide:!1,closeable:!0,state:n,status:"error",message:vt.getMessageFromError(r,"Failed to log in, please try again")})}}}async function oS({data:e,state:t,api:n}){try{let{plan:r,tierId:a,cadence:i,email:o,name:s,newsletters:l,offerId:u}=e;if(r.toLowerCase()==="free")await n.member.sendMagicLink({emailType:"signup",...e});else return a&&i?await n.member.checkoutPlan({plan:r,tierId:a,cadence:i,email:o,name:s,newsletters:l,offerId:u}):({tierId:a,cadence:i}=mn({site:t==null?void 0:t.site,priceId:r}),await n.member.checkoutPlan({plan:r,tierId:a,cadence:i,email:o,name:s,newsletters:l,offerId:u})),{page:"loading"};return{page:"magiclink",lastPage:"signup"}}catch(r){const a=(r==null?void 0:r.message)||"Failed to sign up, please try again";return{action:"signup:failed",popupNotification:Q({type:"signup:failed",autoHide:!1,closeable:!0,state:t,status:"error",message:a})}}}async function sS({data:e,state:t,api:n}){try{let{plan:r,offerId:a,tierId:i,cadence:o}=e;(!i||!o)&&({tierId:i,cadence:o}=mn({site:t==null?void 0:t.site,priceId:r})),await n.member.checkoutPlan({plan:r,tierId:i,cadence:o,offerId:a,metadata:{checkoutType:"upgrade"}})}catch{return{action:"checkoutPlan:failed",popupNotification:Q({type:"checkoutPlan:failed",autoHide:!1,closeable:!0,state:t,status:"error",message:"Failed to process checkout, please try again"})}}}async function lS({data:e,state:t,api:n}){try{const{plan:r,planId:a,subscriptionId:i,cancelAtPeriodEnd:o}=e,{tierId:s,cadence:l}=mn({site:t==null?void 0:t.site,priceId:a});await n.member.updateSubscription({planName:r,tierId:s,cadence:l,subscriptionId:i,cancelAtPeriodEnd:o,planId:a});const u=await n.member.sessionData(),p="updateSubscription:success";return{action:p,popupNotification:Q({type:p,autoHide:!0,closeable:!0,state:t,status:"success",message:"Subscription plan updated successfully"}),page:"accountHome",member:u}}catch{return{action:"updateSubscription:failed",popupNotification:Q({type:"updateSubscription:failed",autoHide:!1,closeable:!0,state:t,status:"error",message:"Failed to update subscription, please try again"})}}}async function cS({data:e,state:t,api:n}){try{const{subscriptionId:r,cancellationReason:a}=e;return await n.member.updateSubscription({subscriptionId:r,smartCancel:!0,cancellationReason:a}),{action:"cancelSubscription:success",page:"accountHome",member:await n.member.sessionData()}}catch{return{action:"cancelSubscription:failed",popupNotification:Q({type:"cancelSubscription:failed",autoHide:!1,closeable:!0,state:t,status:"error",message:"Failed to cancel subscription, please try again"})}}}async function uS({data:e,state:t,api:n}){try{const{subscriptionId:r}=e;return await n.member.updateSubscription({subscriptionId:r,cancelAtPeriodEnd:!1}),{action:"continueSubscription:success",page:"accountHome",member:await n.member.sessionData()}}catch{return{action:"continueSubscription:failed",popupNotification:Q({type:"continueSubscription:failed",autoHide:!1,closeable:!0,state:t,status:"error",message:"Failed to cancel subscription, please try again"})}}}async function dS({data:e,state:t,api:n}){try{await n.member.editBilling(e)}catch{return{action:"editBilling:failed",popupNotification:Q({type:"editBilling:failed",autoHide:!1,closeable:!0,state:t,status:"error",message:"Failed to update billing information, please try again"})}}}async function pS(){return{popupNotification:null}}async function mS({data:e,state:t}){let{action:n,message:r=""}=e;return n=n||"showPopupNotification:success",{popupNotification:Q({type:n,autoHide:!0,closeable:!0,state:t,status:"success",message:r})}}async function hS({data:e,state:t,api:n}){try{const{newsletters:r,enableCommentNotifications:a}=e;if(!r&&a===void 0)return{};const i={};return r&&(i.newsletters=r),a!==void 0&&(i.enableCommentNotifications=a),{action:"updateNewsletterPref:success",member:await n.member.update(i)}}catch{return{action:"updateNewsletterPref:failed",popupNotification:Q({type:"updateNewsletter:failed",autoHide:!0,closeable:!0,state:t,status:"error",message:"Failed to update newsletter settings"})}}}async function fS({state:e,api:t}){try{return await t.member.deleteSuppression(),{action:"removeEmailFromSuppressionList:success",popupNotification:Q({type:"removeEmailFromSuppressionList:success",autoHide:!0,closeable:!0,state:e,status:"success",message:"You have been successfully resubscribed"})}}catch{return{action:"removeEmailFromSuppressionList:failed",popupNotification:Q({type:"removeEmailFromSuppressionList:failed",autoHide:!0,closeable:!0,state:e,status:"error",message:"Your email has failed to resubscribe, please try again"})}}}async function gS({data:e,state:t,api:n}){try{const{subscribed:r}=e,a=await n.member.update({subscribed:r});if(!a)throw new Error("Failed to update newsletter");const i="updateNewsletter:success";return{action:i,member:a,popupNotification:Q({type:i,autoHide:!0,closeable:!0,state:t,status:"success",message:"Email newsletter settings updated"})}}catch{return{action:"updateNewsletter:failed",popupNotification:Q({type:"updateNewsletter:failed",autoHide:!0,closeable:!0,state:t,status:"error",message:"Failed to update newsletter settings"})}}}async function yS({data:e,state:t,api:n}){const{email:r}=e,a=Nw({member:t.member});if(r!==a)try{return await n.member.updateEmailAddress({email:r}),{success:!0}}catch(i){return{success:!1,error:i}}return null}async function bS({data:e,state:t,api:n}){const{name:r}=e;if(Iw({member:t.member})!==r)try{const i=await n.member.update({name:r});if(!i)throw new Error("Failed to update member");return{member:i,success:!0}}catch(i){return{success:!1,error:i}}return null}async function vS({state:e,api:t}){if(e.member)try{const n=await t.member.sessionData();return n?{member:n,success:!0,action:"refreshMemberData:success"}:null}catch(n){return{success:!1,error:n,action:"refreshMemberData:failed"}}return null}async function kS({data:e,state:t,api:n}){const[r,a]=await Promise.all([bS({data:e,state:t,api:n}),yS({data:e,state:t,api:n})]);if(r&&a){if(a.success)return{action:"updateProfile:success",...r.success?{member:r.member}:{},page:"accountHome",popupNotification:Q({type:"updateProfile:success",autoHide:!0,closeable:!0,status:"success",state:t,message:"Check your inbox to verify email update"})};const i=r.success?"Failed to send verification email":"Failed to update account data";return{action:"updateProfile:failed",...r.success?{member:r.member}:{},popupNotification:Q({type:"updateProfile:failed",autoHide:!0,closeable:!0,status:"error",message:i,state:t})}}else if(r){const i=r.success?"updateProfile:success":"updateProfile:failed",o=r.success?"success":"error",s=r.success?"Account details updated successfully":"Failed to update account details";return{action:i,...r.success?{member:r.member}:{},...r.success?{page:"accountHome"}:{},popupNotification:Q({type:i,autoHide:r.success,closeable:!0,status:o,state:t,message:s})}}else if(a){const i=a.success?"updateProfile:success":"updateProfile:failed",o=a.success?"success":"error",s=a.success?"Check your inbox to verify email update":"Failed to send verification email";return{action:i,...a.success?{page:"accountHome"}:{},popupNotification:Q({type:i,autoHide:a.success,closeable:!0,status:o,state:t,message:s})}}return{action:"updateProfile:success",page:"accountHome",popupNotification:Q({type:"updateProfile:success",autoHide:!0,closeable:!0,status:"success",state:t,message:"Account details updated successfully"})}}const wS={togglePopup:Z0,openPopup:eS,closePopup:Uf,switchPage:X0,openNotification:nS,closeNotification:rS,back:tS,signout:aS,signin:iS,signup:oS,updateSubscription:lS,cancelSubscription:cS,continueSubscription:uS,updateNewsletter:gS,updateProfile:kS,refreshMemberData:vS,clearPopupNotification:pS,editBilling:dS,checkoutPlan:sS,updateNewsletterPreference:hS,showPopupNotification:mS,removeEmailFromSuppressionList:fS};async function xS({action:e,data:t,state:n,api:r}){const a=wS[e];return a?await a({data:t,state:n,api:r})||{}:{}}const nE="";function SS({event:e,form:t,errorEl:n,siteUrl:r,submitHandler:a}){var x;t.removeEventListener("submit",a),e.preventDefault(),n&&(n.innerText=""),t.classList.remove("success","invalid","error");let i=e.target.querySelector("input[data-members-email]"),o=e.target.querySelector("input[data-members-name]"),s=((x=t==null?void 0:t.dataset)==null?void 0:x.membersAutoredirect)||"true",l=i==null?void 0:i.value,u=o&&o.value||void 0,p,m=[],d=e.target.querySelectorAll("input[data-members-label]")||[];for(let f=0;f<d.length;++f)m.push(d[f].value);t.dataset.membersForm&&(p=t.dataset.membersForm),t.classList.add("loading");const y=xo(),b={email:l,emailType:p,labels:m,name:u,autoRedirect:s==="true"};y&&(b.urlHistory=y),fetch(`${r}/members/api/send-magic-link/`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(b)}).then(function(f){if(t.addEventListener("submit",a),t.classList.remove("loading"),f.ok)t.classList.add("success");else return vt.fromApiResponse(f).then(h=>{throw h})}).catch(f=>{n&&(n.innerText=vt.getMessageFromError(f,"There was an error sending the email, please try again")),t.classList.add("error")})}function ES({event:e,el:t,errorEl:n,siteUrl:r,site:a,member:i,clickHandler:o}){t.removeEventListener("click",o),e.preventDefault();let s=t.dataset.membersPlan,l=Ew(a,s.toLowerCase()),u=t.dataset.membersSuccess,p=t.dataset.membersCancel,m,d;u&&(m=new URL(u,window.location.href).href),p&&(d=new URL(p,window.location.href).href),n&&(n.innerText=""),t.classList.add("loading");const y=i?{checkoutType:"upgrade"}:{},b=xo();return b&&(y.urlHistory=b),fetch(`${r}/members/api/session`,{credentials:"same-origin"}).then(function(x){return x.ok?x.text():null}).then(function(x){return fetch(`${r}/members/api/create-stripe-checkout-session/`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...l,identity:x,successUrl:m,cancelUrl:d,metadata:y})}).then(function(f){if(!f.ok)throw new Error("Could not create stripe checkout session");return f.json()})}).then(function(x){return x.url?window.location.assign(x.url):window.Stripe(x.publicKey).redirectToCheckout({sessionId:x.sessionId}).then(function(h){if(h.error)throw new Error(h.error.message)})}).catch(function(x){console.error(x),t.addEventListener("click",o),t.classList.remove("loading"),n&&(n.innerText=x.message),t.classList.add("error")})}function CS({siteUrl:e,site:t,member:n}){e&&(e=e.replace(/\/$/,""),Array.prototype.forEach.call(document.querySelectorAll("form[data-members-form]"),function(r){let a=r.querySelector("[data-members-error]");function i(o){SS({event:o,errorEl:a,form:r,siteUrl:e,submitHandler:i})}r.addEventListener("submit",i)}),Array.prototype.forEach.call(document.querySelectorAll("[data-members-plan]"),function(r){let a=r.querySelector("[data-members-error]");function i(o){ES({el:r,event:o,errorEl:a,member:n,site:t,siteUrl:e,clickHandler:i})}r.addEventListener("click",i)}),Array.prototype.forEach.call(document.querySelectorAll("[data-members-edit-billing]"),function(r){let a=r.querySelector("[data-members-error]"),i=r.dataset.membersSuccess,o=r.dataset.membersCancel,s,l;i&&(s=new URL(i,window.location.href).href),o&&(l=new URL(o,window.location.href).href);function u(p){r.removeEventListener("click",u),p.preventDefault(),a&&(a.innerText=""),r.classList.add("loading"),fetch(`${e}/members/api/session`,{credentials:"same-origin"}).then(function(m){return m.ok?m.text():null}).then(function(m){return fetch(`${e}/members/api/create-stripe-update-session/`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({identity:m,successUrl:s,cancelUrl:l})}).then(function(d){if(!d.ok)throw new Error("Could not create stripe checkout session");return d.json()})}).then(function(m){return window.Stripe(m.publicKey).redirectToCheckout({sessionId:m.sessionId})}).then(function(m){if(m.error)throw new Error(m.error.message)}).catch(function(m){console.error(m),r.addEventListener("click",u),r.classList.remove("loading"),a&&(a.innerText=m.message),r.classList.add("error")})}r.addEventListener("click",u)}),Array.prototype.forEach.call(document.querySelectorAll("[data-members-signout]"),function(r){function a(i){r.removeEventListener("click",a),i.preventDefault(),r.classList.remove("error"),r.classList.add("loading"),fetch(`${e}/members/api/session`,{method:"DELETE"}).then(function(o){o.ok?window.location.replace(e):(r.addEventListener("click",a),r.classList.remove("loading"),r.classList.add("error"))})}r.addEventListener("click",a)}),Array.prototype.forEach.call(document.querySelectorAll("[data-members-cancel-subscription]"),function(r){let a=r.parentElement.querySelector("[data-members-error]");function i(o){r.removeEventListener("click",i),o.preventDefault(),r.classList.remove("error"),r.classList.add("loading");let s=r.dataset.membersCancelSubscription;return a&&(a.innerText=""),fetch(`${e}/members/api/session`,{credentials:"same-origin"}).then(function(l){return l.ok?l.text():null}).then(function(l){return fetch(`${e}/members/api/subscriptions/${s}/`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({identity:l,smart_cancel:!0})})}).then(function(l){l.ok?window.location.reload():(r.addEventListener("click",i),r.classList.remove("loading"),r.classList.add("error"),a&&(a.innerText="There was an error cancelling your subscription, please try again."))})}r.addEventListener("click",i)}),Array.prototype.forEach.call(document.querySelectorAll("[data-members-continue-subscription]"),function(r){let a=r.parentElement.querySelector("[data-members-error]");function i(o){r.removeEventListener("click",i),o.preventDefault(),r.classList.remove("error"),r.classList.add("loading");let s=r.dataset.membersContinueSubscription;return a&&(a.innerText=""),fetch(`${e}/members/api/session`,{credentials:"same-origin"}).then(function(l){return l.ok?l.text():null}).then(function(l){return fetch(`${e}/members/api/subscriptions/${s}/`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({identity:l,cancel_at_period_end:!1})})}).then(function(l){l.ok?window.location.reload():(r.addEventListener("click",i),r.classList.remove("loading"),r.classList.add("error"),a&&(a.innerText="There was an error continuing your subscription, please try again."))})}r.addEventListener("click",i)}))}const $S={"{{amount}} days free":"{{amount}} dae gratis","{{amount}} off":"{{amount}} afslag","{{amount}} off for first {{number}} months.":"{{amount}} afslag vir die eerste {{number}} maande.","{{amount}} off for first {{period}}.":"{{amount}} afslag vir die eerste {{period}}.","{{amount}} off forever.":"{{amount}} afslag vir altyd.","{{discount}}% discount":"{{discount}}% afslag","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"{{memberEmail}} sal nie meer die {{newsletterName}} nuusbrief ontvang nie.","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"{{memberEmail}} sal nie meer e-posse ontvang wanneer iemand op u kommentaar reageer nie.","{{memberEmail}} will no longer receive this newsletter.":"{{memberEmail}} sal nie meer hierdie nuusbrief ontvang nie.","{{trialDays}} days free":"{{trialDays}} dae gratis","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"'n Aanmeldskakel is na u epos gestuur. As dit nie binne 3 minute aankom nie, moet u asseblief u spam-vouer nagaan.",Account:"Rekening","Account settings":"Rekening instellings","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Na afloop van die gratis proeftydperk sal u die vasgestelde pry vir die vlak wat u gekies het, betaal. U kan altyd voor die tyd kanselleer.","Already a member?":"Is u reeds 'n lid?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"Terug","Back to Log in":"Terug na aanmelding","Billing info":"Rekening inligting","Black Friday":"Swart Vrydag","Cancel anytime.":"Kanselleer enige tyd.","Cancel subscription":"Kanselleer inskrywing","Cancellation reason":"Kansellasie rede",Change:"Verander","Check spam & promotions folders":"Kyk in spam & promosie vouers","Check with your mail provider":"Kyk by u e-posverskaffer",Choose:"Kies","Choose a different plan":"Kies 'n ander plan","Choose your newsletters":"Kies u nuusbriefs","Click here to retry":"Kliek hier om weer te probeer",Close:"Sluit",Comments:"Kommentaar",Complimentary:"Komplimentêr",Confirm:"Bevestig","Confirm cancellation":"Bevestig kansellasie","Confirm subscription":"Bevestig inskrywing","Contact support":"Kontak kliëntediens",Continue:"Gaan voort","Continue subscription":"Gaan voort met inskrywing","Could not sign in. Login link expired.":"Kon nie aanmeld nie. Aanmeldskakel het verval.","Could not update email! Invalid link.":"Kon nie e-pos opdateer nie! Ongeldige skakel.","Create a new contact":"Skep 'n nuwe kontak","Current plan":"Huidige plan","Delete account":"Verwyder rekening","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"Het u nie 'n rekening nie?",Edit:"Wysig",Email:"E-pos","Email newsletter":"Epos nuusbrief","Email preference updated.":"E-pos instellings opgedateer.","Email preferences":"E-pos instellings",Emails:"E-posse","Emails disabled":"E-posse afgeskakel","Ends {{offerEndDate}}":"Eindig {{offerEndDate}}",Error:"Fout","Expires {{expiryDate}}":"Verval {{expiryDate}}",Forever:"Verewig","Free Trial – Ends {{trialEnd}}":"Gratis proeftydperk – Eindig {{trialEnd}}","Get help":"Kry hulp","Get in touch for help":"Kontak vir hulp","Get notified when someone replies to your comment":"Ontvang 'n kennisgewing wanneer iemand op u kommentaar reageer","Give feedback on this post":"Gee terugvoering oor hierdie pos","Help! I'm not receiving emails":"Help! Ek ontvang nie e-posse nie","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"As 'n nuusbrief as spam geïdentifiseer word, word e-posse outomaties vir daardie adres afgeskakel om seker te maak dat u geen ongewenste boodskappe meer ontvang nie.","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"As die spam klag per ongeluk was, of as u weer e-posse wil begin ontvang, kan u weer inskryf vir e-posse deur op die knoppie op die vorige skerm te klik.","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"As u nou kanselleer, sal u toegang hê tot {{periodEnd}}.","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"As u 'n korporatiewe of regerings e-posrekening het, kontak u IT-afdeling en vra hulle om e-posse van {{senderEmail}} te ontvang","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"As u weer e-posse wil begin ontvang, is die beste volgende stap om u e-posadres op rekord te kontroleer vir enige probleme en dan weer in te skryf op die vorige skerm.","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"As u nie die e-pos nuusbrief ontvang wat u op ingeteken het nie, is hier 'n paar goed om te kontroleer.","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"As u al hierdie kontroles voltooi het en u steeds nie e-posse ontvang nie, kan u hulp kry deur {{supportAddress}} te kontak.","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"In die geval dat 'n permanente fout ontvang word wanneer 'n nuusbrief gestuur word, sal e-posse op die rekening afgeskakel word.","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"In u e-pos program, voeg {{senderEmail}} by u kontaklys. Dit dui aan u e-posverskaffer aan dat e-posse wat van hierdie adres gestuur word, vertrou moet word.","Less like this":"Minder soos hierdie",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':'Maak seker dat e-posse nie per ongeluk in die Spam of Promosies vouers van u posbus beland nie. As dit wel is, kliek op "Mark as not spam" en/of "Move to inbox".',Manage:"Bestuur",Monthly:"Maandeliks","More like this":"Meer soos hierdie",Name:"Naam","Need more help? Contact support":"Benodig meer hulp? Kontak kliëntediens","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"Nuusbriewe kan op u rekening afgeskakel word vir twee redes: 'n Vorige e-pos is as spam gemerk, of 'n poging om 'n e-pos te stuur het tot 'n permanente fout gelei (bounce).","Not receiving emails?":"Ontvang u nie e-posse nie?","Now check your email!":"Kyk nou u e-pos!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"As u weer ingeskryf is, en u sien steeds nie e-posse in u posbus nie, kontroleer u spam vouer. Sommige posbusverskaffers hou 'n rekord van vorige spam klagtes en sal steeds e-posse merk. As dit gebeur, merk die nuutste nuusbrief as 'Not spam' om dit terug te skuif na u primêre posbus.","Permanent failure (bounce)":"Permanente fout (bounce)",Plan:"Plan","Plan checkout was cancelled.":"Plan afreken is gekanselleer.","Plan upgrade was cancelled.":"Plan opgradering is gekanselleer.","Please fill in required fields":"Vul asseblief die verpligte velde in",Price:"Prys","Re-enable emails":"Her-aktiveer eposse","Renews at {{price}}.":"Hernu teen {{price}}.",Retry:"Probeer weer",Save:"Stoor","Send an email and say hi!":"Stuur 'n epos en sê hallo!","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"Stuur 'n e-pos na {{senderEmail}} en sê hallo. Dit kan ook help om aan u e-posverskaffer aan te dui dat e-posse na en van hierdie adres vertrou moet word.","Sending login link...":"Stuur aanmeldskakel...","Sending...":"Stuur...","Sign in":"Meld aan","Sign out":"Teken uit","Sign up":"Registreer","Signup error: Invalid link":"Aanmelding fout: Ongeldige skakel","Sorry, that didn’t work.":"Jammer, dit het nie gewerk nie.","Spam complaints":"Spam klagtes","Start {{amount}}-day free trial":"Begin {{amount}}-dag gratis proeftydperk","Starting {{startDate}}":"Begin {{startDate}}","Starting today":"Begin vandag","Submit feedback":"Stuur terugvoering",Subscribe:"Teken in",Subscribed:"Ingeteken",Success:"Sukses","Success! Check your email for magic link to sign-in.":"Sukses! Kyk in jou e-pos vir 'n magiese skakel om aan te meld.","Success! Your account is fully activated, you now have access to all content.":"Sukses! U rekening is ten volle geaktiveer, u het nou toegang tot alle inhoud.","Success! Your email is updated.":"Sukses! U e-pos is opgedateer.","Successfully unsubscribed":"Suksesvol afgemeld","Thanks for the feedback!":"Dankie vir die terugvoering!","That didn't go to plan":"Dit het nie volgens plan verloop nie","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"Die epos addres wat ons vir u het is {{memberEmail}} — as dit nie korrek is nie, kan u dit opdateer in u <button>rekeninginstellings area</button>.","There was a problem submitting your feedback. Please try again a little later.":"Daar was 'n probleem om u terugvoering in te dien. Probeer asseblief later weer.","This site is invite-only, contact the owner for access.":"Hierdie webwerf is slegs op uitnodiging, kontak die eienaar vir toegang.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Om die registrasie te voltooi, kliek op die bevestigingskakel in jou inboks. As dit nie binne 3 minute aankom nie, kontroleer asseblief jou spam-vouer!","Try free for {{amount}} days, then {{originalPrice}}.":"Probeer gratis vir {{amount}} dae, dan {{originalPrice}}.","Unlock access to all newsletters by becoming a paid subscriber.":"Ontsluit toegang tot alle nuusbriewe deur 'n betaalde intekenaar te word.","Unsubscribe from all emails":"Meld af van alle e-posse",Unsubscribed:"Afgemeld","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Deur van eposse af te skakel, sal nie u betaalde subskripsie van {{title}} kanselleer nie",Update:"Opdateer","Update your preferences":"Opdateer u voorkeure","Verify your email address is correct":"Bevestig dat u e-posadres korrek is","View plans":"Kyk na planne","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Ons kon u nie afskakel nie, omdat die e-pos adres nie gevind is nie. Kontak asseblief die webwerf eienaar.","Welcome back, {{name}}!":"Welkom terug, {{name}}!","Welcome back!":"Welkom terug!","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"As 'n inboks nie 'n e-pos aanvaar nie, word dit algemeen 'n 'bounce' genoem. In baie gevalle kan dit tydelik wees. In sommige gevalle kan 'n gebotsde e-pos egter as 'n permanente fout teruggekeer word wanneer 'n e-posadres ongeldig of nie-bestaande is nie.","Why has my email been disabled?":"Waarom is my e-pos gedeaktiveer?",Yearly:"Jaarliks","You currently have a free membership, upgrade to a paid subscription for full access.":"U het tans 'n gratis lidmaatskap, opgradeer na 'n betaalde intekening vir volle toegang.","You have been successfully resubscribed":"U is suksesvol heringeskryf","You're currently not receiving emails":"U ontvang tans nie e-posse nie","You're not receiving emails":"U ontvang nie e-posse nie","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"U ontvang nie e-posse nie, omdat u onlangs 'n boodskap as spam gemerk het, of omdat boodskappe nie na die e-pos adres wat u verskaf het gestuur kon word nie.","You've successfully signed in.":"U het suksesvol aangemeld.","Your account":"U rekening","Your input helps shape what gets published.":"U insette help om te bepaal wat gepubliseer word.","Your subscription will expire on {{expiryDate}}":"U intekening sal verval op {{expiryDate}}","Your subscription will renew on {{renewalDate}}":"U intekening sal hernu op {{renewalDate}}","Your subscription will start on {{subscriptionStart}}":"U intekening sal begin op {{subscriptionStart}}"},_S={"{{amount}} days free":"","{{amount}} off":"","{{amount}} off for first {{number}} months.":"","{{amount}} off for first {{period}}.":"","{{amount}} off forever.":"","{{discount}}% discount":"отстъпка {{discount}}%","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"{{trialDays}} дни безплатен достъп","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Връзка за влизане беше изпратена към пощенската Ви кутия. Ако писмото не пристигне до 3 минути, провете дали не е категоризирана като нежелано писмо.",Account:"Вашият акаунт","Account settings":"Настройки на акаунта Ви","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"След прикючване на безплатния достъп ще бъдете таксувани според обявените цени. Можете да се откажете преди изтичането на безплатния достъп.","Already a member?":"Вече сте абонат на сайта?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"Обратно","Back to Log in":"Обратно към формата за влизане","Billing info":"","Black Friday":"","Cancel anytime.":"","Cancel subscription":"Откажи абонамент","Cancellation reason":"Причина за отказ",Change:"","Check spam & promotions folders":"","Check with your mail provider":"",Choose:"","Choose a different plan":"Избеи различен план","Choose your newsletters":"Избери твоят бюлетин","Click here to retry":"",Close:"Затвори",Comments:"Коментари",Complimentary:"",Confirm:"Потвърди","Confirm cancellation":"","Confirm subscription":"","Contact support":"",Continue:"Продължи","Continue subscription":"","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"","Delete account":"Изтрий акаунт","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"Намате акаунт за достъп?",Edit:"",Email:"Пощенски адрес","Email newsletter":"","Email preference updated.":"Параметри на пощенския адрес са обновени.","Email preferences":"Параметри на пощенския адрес ",Emails:"Пощенски адреси","Emails disabled":"Писмата са преустновени","Ends {{offerEndDate}}":"",Error:"","Expires {{expiryDate}}":"",Forever:"","Free Trial – Ends {{trialEnd}}":"","Get help":"Получете помощ","Get in touch for help":"","Get notified when someone replies to your comment":"Бъдете уведомявани, ако някой отговори на Ваш коментар","Give feedback on this post":"Моля за Вашият отзив за публикацията","Help! I'm not receiving emails":"","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"Управлявай",Monthly:"Месечно","More like this":"Повече материали с подобно съдържание",Name:"Име","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"Не получавате поща?","Now check your email!":"Провете си пощенската кутия!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"Цена","Re-enable emails":"Позволете отново изпращането на писма","Renews at {{price}}.":"",Retry:"Отново",Save:"Запиши","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"Изпращане на връзка за влизане...","Sending...":"Изпращане...","Sign in":"Влизане","Sign out":"","Sign up":"Регистриране","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"Започване на {{amount}}-дневен безплатен достъп.","Starting {{startDate}}":"","Starting today":"","Submit feedback":"Изпрати отзив",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"Успешно разабониране","Thanks for the feedback!":"Благодарим за изпратеният отзив!","That didn't go to plan":"Нещо се обърка и не се случи както трябваше","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"Сайтът е само с покани. Свържете се със собственика за да получите достъп.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"За да прикючите вашата регистрация беше изпратена връзка за влизане към пощенската Ви кутия. Ако писмото не пристигне до 3 минути, провете дали не е категоризирана като нежелано писмо.","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"Прекрати изпращането на всякакви писма",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Спирането на изпращането на писма, няма да ти прекрати абонамента и регистрацията в {{title}}",Update:"","Update your preferences":"Обнови твоите предпочитания/настройки","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Този пощенски адрес който опитвате да разабонирате, изглежда невалиден. Моля свържете се със собственика на сайта.","Welcome back, {{name}}!":"","Welcome back!":"","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"Годишно","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"Успешно беше подновен абонаментът","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Не получавате писма защото или пощенският адрес е невалиден, или писмата се класифицират като нежелана поща.","You've successfully signed in.":"","Your account":"Твоята регистрация","Your input helps shape what gets published.":"Вашият принос помага да се оформи това, което се публикува.","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},jS={"{{amount}} days free":"{{amount}} dies gratuïts","{{amount}} off":"{{amount}} de descompte","{{amount}} off for first {{number}} months.":"{{amount}} de descompte pels primers {{number}} mesos","{{amount}} off for first {{period}}.":"{{amount}} de descompte pels primers {{period}}.","{{amount}} off forever.":"{{amount}} de descompte per sempre.","{{discount}}% discount":"{{discount}}% de descompte","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"{{memberEmail}} ja no rebràs cap butlletí de {{newsletterName}}.","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"{{memberEmail}} no rebrà cap correu electrònic quan algú respongui els teus comentaris.","{{memberEmail}} will no longer receive this newsletter.":"{{memberEmail}} ja no rebrà aquest butlletí.","{{trialDays}} days free":"{{trialDays}} dies de franc","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"S'ha enviat un enllaç d'inici de sessió al teu correu electrònic. Si no t'arriba en 3 minuts, reivsa la teva carpeta de correu brossa.",Account:"Compte","Account settings":"Configuració del compte","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Després que finalitzi el període de prova gratuït, se't cobrarà el preu regular del nivell que hagis triat. Sempre pots cancel·lar abans d'això.","Already a member?":"Ja ets membre?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"Un error inesperat ha passat. Si us plau, torneu a provar o <a>contacti amb suport tècnic</a> si l'error persisteix.",Back:"Tornar enrere","Back to Log in":"Tornar al inici de sessió","Billing info":"Dades de facturació","Black Friday":"Divendres negre","Cancel anytime.":"Cancel·la en qualsevol moment.","Cancel subscription":"Cancel·la la subscripció","Cancellation reason":"Motiu de la cancel·lació",Change:"Canvia","Check spam & promotions folders":"Comproveu les carpetes de correu brossa i promocions","Check with your mail provider":"Consulteu amb el vostre proveïdor de correu",Choose:"Tria","Choose a different plan":"Seleccioneu un pla diferent","Choose your newsletters":"Selecciona els teus butlletins","Click here to retry":"Fes clic aquí per tornar a intentar",Close:"Tancar",Comments:"Comentaris",Complimentary:"Complementari",Confirm:"Confirmar","Confirm cancellation":"Confirmar cancel·lació","Confirm subscription":"Confirmar subscripció","Contact support":"Contactar amb suport tècnic",Continue:"Continuar","Continue subscription":"Continuar subscripció","Could not sign in. Login link expired.":"No s'ha pogut iniciar sessió. L'enllaç d'inici de sessió ha expirat.","Could not update email! Invalid link.":"No s'ha pogut actualitzar el correu electrònic! Enllaç no vàlid.","Create a new contact":"Crear un nou contacte","Current plan":"Pla actual","Delete account":"Esborra compte","Didn't mean to do this? Manage your preferences <button>here</button>.":"No volia fer això? Gestioneu les vostres preferències <button>aquí</button>.","Don't have an account?":"No tens un compte?",Edit:"Editar",Email:"Correu electrònic","Email newsletter":"Butlletí informatiu per correu electrònic","Email preference updated.":"Preferència del correu electrònic actualitzada","Email preferences":"Preferència del correu electrònic",Emails:"Correus electrònics","Emails disabled":"Correus electrònics desactivats","Ends {{offerEndDate}}":"Finalitza el {{offerEndDate}}",Error:"Error","Expires {{expiryDate}}":"Expira el {{expiryDate}}",Forever:"per sempre","Free Trial – Ends {{trialEnd}}":"Prova gratuita - Finalitza el {{trialEnd}}","Get help":"Demanar ajuda","Get in touch for help":"Poseu-vos en contacte per obtenir ajuda","Get notified when someone replies to your comment":"Rep notificacions quan algú et respongui al teu comentari","Give feedback on this post":"Enviar comentaris sobre aquesta publicació","Help! I'm not receiving emails":"Ajuda! No rebo correus electrònics","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"Si un butlletí es marca com a correu brossa, els correus electrònics es desactivaran automàticament per a aquesta adreça per assegurar-vos que ja no rebeu cap missatge no desitjat.","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"Si la queixa de correu brossa va ser accidental, o si voleu començar a rebre correus electrònics de nou, podeu tornar a subscriure's als correus electrònics fent clic al botó de la pantalla anterior.","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"Si cancel·leu la vostra subscripció ara, continuareu tenint accés fins al {{periodEnd}}.","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"Si teniu un compte de correu electrònic corporatiu o governamental, poseu-vos en contacte amb el vostre departament de TI i demaneu-los que permetin rebre correus electrònics de {{senderEmail}}","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"Si voleu començar a rebre correus electrònics de nou, els millors passos següents són comprovar si hi ha cap problema a la vostra adreça de correu electrònic al fitxer i, a continuació, feu clic a tornar a subscriure's a la pantalla anterior.","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"Si no rebeu el butlletí electrònic al qual us heu subscrit, aquí teniu algunes coses per comprovar.","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"Si heu completat totes aquestes comprovacions i encara no rebeu correus electrònics, podeu contactar amb {{supportAddress}} per obtenir assistència.","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"En cas que es rebi un error permanent en intentar enviar un butlletí, els correus electrònics es desactivaran al compte.","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"Afegiu {{senderEmail}} al vostre client de correu electrònic a la vostra llista de contactes. Això indica al vostre proveïdor de correu que els correus electrònics enviats des d'aquesta adreça haurien de ser de confiança.","Less like this":"Menys com aquesta",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':`Assegureu-vos que els correus electrònics no acabin accidentalment a les carpetes Correu brossa o Promocions de la vostra safata d'entrada. Si ho són, feu clic a "Marca com a correu brossa" i/o a "Mou a la safata d'entrada".`,Manage:"Gestionar",Monthly:"Mensual","More like this":"Més com aquesta",Name:"Nom","Need more help? Contact support":"Necessites més ajuda? Contacte de suport","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"Els butlletins de notícies es poden desactivar al vostre compte per dos motius: un correu electrònic anterior s'ha marcat com a correu brossa o si s'ha intentat enviar un correu electrònic ha provocat un error permanent (rebot).","Not receiving emails?":"No reps els correus electrònics?","Now check your email!":"Revisar ara el teu correu electrònic!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":`Un cop us torneu a subscriure, si encara no veieu correus electrònics a la vostra safata d'entrada, comproveu la vostra carpeta de correu brossa. Alguns proveïdors de safates d'entrada mantenen un registre de les queixes de correu brossa anteriors i continuaran marcant els correus electrònics. Si això passa, marqueu el darrer butlletí com a "No és correu brossa". ' per tornar-lo a moure a la safata d'entrada principal.`,"Permanent failure (bounce)":"Falla permanent (rebot)",Plan:"Pla","Plan checkout was cancelled.":"S'ha cancel·lat el pagament del pla.","Plan upgrade was cancelled.":"S'ha cancel·lat l'actualització del pla.","Please fill in required fields":"Si us plau, ompliu els camps obligatoris",Price:"Preu","Re-enable emails":"Torna a activar els correus electrònics","Renews at {{price}}.":"Es renova a {{price}}",Retry:"Torna-ho a provar",Save:"Desa","Send an email and say hi!":"Envia un correu electrònic i saluda!","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"Envieu un correu electrònic a {{senderEmail}} i saludeu. Això també pot ajudar a indicar al vostre proveïdor de correu que els correus electrònics d'anada i des d'aquesta adreça haurien de ser de confiança.","Sending login link...":"Enviant enllaç d'inici de sessió...","Sending...":"Enviant","Sign in":"Inici de sessió","Sign out":"Finalitza la sessió","Sign up":"Registrar-se","Signup error: Invalid link":"Error de registre: Enllaç no vàlid","Sorry, that didn’t work.":"Em sap greu, pero no ha funcionat.","Spam complaints":"Queixes de correu brossa","Start {{amount}}-day free trial":"Comença el període de proves de {{amount}} dies","Starting {{startDate}}":"A partir de {{startDate}}","Starting today":"Comença avui","Submit feedback":"Enviar comentaris",Subscribe:"Subscriu-te",Subscribed:"Subscrit",Success:"Amb èxit","Success! Check your email for magic link to sign-in.":"Amb èxit! Comproveu el vostre correu electrònic per trobar l'enllaç màgic per iniciar la sessió.","Success! Your account is fully activated, you now have access to all content.":"Amb èxit! El vostre compte està totalment activat, ara teniu accés a tot el contingut.","Success! Your email is updated.":"Amb èxit! El teu correu electrònic està actualitzat.","Successfully unsubscribed":"T'has donat de baixa correctament","Thanks for the feedback!":"Gràcies pels teus comentaris!","That didn't go to plan":"Això no ha anat com estava previst","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"'adreça electrònica que tenim per a vostè és {{memberEmail}}; si no és correcta, podeu actualitzar-la a l'<button>àrea de configuració del vostre compte</button>.","There was a problem submitting your feedback. Please try again a little later.":"Hi ha hagut un problema en enviar els vostres comentaris. Torneu-ho a provar una mica més tard.","This site is invite-only, contact the owner for access.":"Aquest llog és només per invitació, contacta amb el propietari per obtenir accés.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Per completar el registre, fes clic sobre l'enllaç de confirmació al teu correu electrònic. Si no t'arria en 3 minuts, revisa la teva carpeta de correu brossa!","Try free for {{amount}} days, then {{originalPrice}}.":"Prova gratis durant {{amount}} dies i després {{originalPrice}}.","Unlock access to all newsletters by becoming a paid subscriber.":"Desbloqueja l'accés a tots els butlletins de notícies fent-te un subscriptor de pagament.","Unsubscribe from all emails":"Cancel·la les subscripcions a tots els correus electrònics",Unsubscribed:"S'ha cancel·lat la subscripció","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Cancel·lar la subscripció al teu correu electrònic no cancel·larà la teva subscripció de pagament a {{title}}",Update:"Actualitza","Update your preferences":"Actualitza les preferències","Verify your email address is correct":"Verifica que la teva adreça de correu electrònic és correcta","View plans":"Mostrar plans","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"No hem pogut cancel·lar la teva subscripció ja que no s'ha trobar la direcció de correu electrònic. Si us plau, contacta amb el propietari del lloc web.","Welcome back, {{name}}!":"Benvingut/da de nou, {{name}}!","Welcome back!":"Benvingut/da de noi!","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"Quan una safata d'entrada no accepta un correu electrònic s'anomena habitualment un rebot. En molts casos, això pot ser temporal. Tanmateix, en alguns casos, un correu electrònic rebutjat es pot retornar com a error permanent quan una adreça de correu electrònic no és vàlida o no és vàlida. existent.","Why has my email been disabled?":"Per què s'ha desactivat el meu correu electrònic?",Yearly:"Anual","You currently have a free membership, upgrade to a paid subscription for full access.":"Actualment teniu una subscripció gratuïta, actualitzeu a una subscripció de pagament per accedir-hi.","You have been successfully resubscribed":"T'has tornat a subscribir amb èxit","You're currently not receiving emails":"Actualment no rebeu correus electrònics","You're not receiving emails":"No estàs rebent correus electrònics","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"No estas reben correus electrònics perquè has marcat recentment com SPAM o perque no s'han pogut entregar els missatges a la direcció de correu electrònic proporcionada.","You've successfully signed in.":"Heu iniciat la sessió correctament.","Your account":"El teu copte","Your input helps shape what gets published.":"La teva opinió ajuda a definir el que es publica.","Your subscription will expire on {{expiryDate}}":"La vostra subscripció caducarà el {{expiryDate}}","Your subscription will renew on {{renewalDate}}":"La vostra subscripció es renovarà el {{renewalDate}}","Your subscription will start on {{subscriptionStart}}":"La vostra subscripció començarà el {{subscriptionStart}}"},PS={"{{amount}} days free":"","{{amount}} off":"","{{amount}} off for first {{number}} months.":"","{{amount}} off for first {{period}}.":"","{{amount}} off forever.":"","{{discount}}% discount":"{{discount}}% sleva","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"{{trialDays}} dní zdarma","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Odkaz pro přihlášení byl odeslán do vaší e-mailové schránky. Pokud nepřijde do 3 minut, zkontrolujte prosím svou složku nevyžádaných zpráv (spam).",Account:"Účet","Account settings":"Nastavení účtu","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Po skončení zkušební doby vám bude účtována běžná cena pro vybranou úroveň. Vždy můžete předtím zrušit odběr.","Already a member?":"Již jste členem?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"Zpět","Back to Log in":"Zpět na přihlášení","Billing info":"","Black Friday":"","Cancel anytime.":"","Cancel subscription":"Zrušit odběr","Cancellation reason":"Důvod zrušení",Change:"","Check spam & promotions folders":"","Check with your mail provider":"",Choose:"","Choose a different plan":"Vybrat jiný plán","Choose your newsletters":"Vyberte si newsletter","Click here to retry":"",Close:"Zavřít",Comments:"Komentáře",Complimentary:"",Confirm:"Potvrdit","Confirm cancellation":"","Confirm subscription":"","Contact support":"",Continue:"Pokračovat","Continue subscription":"","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"","Delete account":"Smazat účet","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"Nemáte účet?",Edit:"",Email:"E-mail","Email newsletter":"","Email preference updated.":"Předvolby e-mailu byly aktualizovány.","Email preferences":"Předvolby e-mailu",Emails:"E-maily","Emails disabled":"E-maily vypnuty","Ends {{offerEndDate}}":"",Error:"","Expires {{expiryDate}}":"",Forever:"","Free Trial – Ends {{trialEnd}}":"","Get help":"Získat pomoc","Get in touch for help":"","Get notified when someone replies to your comment":"Dostávat upozornění, když někdo odpoví na váš komentář","Give feedback on this post":"Dát zpětnou vazbu k tomuto příspěvku","Help! I'm not receiving emails":"","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"Méně podobných",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"Spravovat",Monthly:"Měsíčně","More like this":"Víc podobných",Name:"Jméno","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"Nepřicházejí vám e-maily?","Now check your email!":"Zkontrolujte svou e-mailovou schránku!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"Cena","Re-enable emails":"Znovu povolit e-maily","Renews at {{price}}.":"",Retry:"Zkusit znovu",Save:"Uložit","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"Odesílání přihlašovacího odkazu...","Sending...":"Odesílání...","Sign in":"Přihlásit se","Sign out":"","Sign up":"Registrovat se","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"Začít {{amount}}denní zkušební verzi zdarma","Starting {{startDate}}":"","Starting today":"","Submit feedback":"Odeslat zpětnou vazbu",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"Úspěšné odhlášení","Thanks for the feedback!":"Děkujeme za zpětnou vazbu!","That didn't go to plan":"Něco se nepovedlo","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"Tento web je pouze pro pozvané, kontaktujte provozovatele pro přístup.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Pro dokončení registrace klikněte na potvrzovací odkaz ve vaší e-mailové schránce. Pokud nepřijde do 3 minut, zkontrolujte prosím složku nevyžádaných zpráv (spam)!","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"Odhlásit se od všech e-mailů",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Odhlášení ze newsletterů nezruší váš placený odběr {{title}}",Update:"","Update your preferences":"Aktualizovat předvolby","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Nemohli jsme vás odhlásit, protože e-mailová adresa nebyla nalezena. Kontaktujte prosím provozovatele webu.","Welcome back, {{name}}!":"","Welcome back!":"","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"Ročně","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"Úspěšně jste se opět přihlásili k odběru","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Nepřicházejí vám e-maily, protože jste buď označili nedávnou zprávu jako spam, nebo doručování zpráv na vámi zadaný e-mail nefunguje.","You've successfully signed in.":"","Your account":"Váš účet","Your input helps shape what gets published.":"Vaše připomínky pomáhají spoluvytvářet obsah webu.","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},NS={"{{amount}} days free":"{{amount}} dage gratis","{{amount}} off":"{{amount}} rabat","{{amount}} off for first {{number}} months.":"{{amount}} rabat for de første {{number}} måneder.","{{amount}} off for first {{period}}.":"{{amount}} rabat for den/det første {{period}}.","{{amount}} off forever.":"{{amount}} rabat for evigt","{{discount}}% discount":"{{discount}}% rabat","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"{{memberEmail}} vil ikke længere modtage {{newsletterName}} nyhedsbrev.","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"{{memberEmail}} vil ikke længere modtage e-mails når nogen svarer på dine kommentarer.","{{memberEmail}} will no longer receive this newsletter.":"{{memberEmail}} vil ikke længere modtage dette nyhedsbrev.","{{trialDays}} days free":"{{trialDays}} dage gratis","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Der er blevet sendt en link til din email, du kan bruge til at logge ind med. Hvis det ikke kommer frem indenfor 3 minutter, så tjek din spam mappe.",Account:"Konto","Account settings":"Kontoindstillinger","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Når din gratis prøveperiode udløber, vil du blive opkrævet den normale pris for det abonnement du har valgt. Du kan selvfølgelig altid annullere dit abonnement inden.","Already a member?":"Er du allerede medlem?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"Der opstod en uventet fejl. Prøv venligst igen eller <a>kontakt support</a> hvis fejlen fortsætter.",Back:"Tilbage","Back to Log in":"Tilbage til log ind","Billing info":"Faktureringsoplysninger","Black Friday":"Black Friday","Cancel anytime.":"Annuller når som helst.","Cancel subscription":"Annuller abonnement","Cancellation reason":"Årsag til annullering",Change:"Skift","Check spam & promotions folders":"Tjek spam og kampagner mapper","Check with your mail provider":"Tjek med din e-mailudbyder",Choose:"Vælg","Choose a different plan":"Vælg et andet abonnement","Choose your newsletters":"Hvilke nyhedsbreve ønsker du","Click here to retry":"Klik her for at prøve igen",Close:"Luk",Comments:"Kommentarer",Complimentary:"Gratis",Confirm:"Bekræft","Confirm cancellation":"Bekræft annullering","Confirm subscription":"Bekræft abonnement","Contact support":"Kontakt support",Continue:"Fortsæt","Continue subscription":"Fortsæt tilmelding","Could not sign in. Login link expired.":"Kunne ikke log ind. Log ind link udløbet.","Could not update email! Invalid link.":"Kunne ikke opdatere e-mail! Ugyldigt link.","Create a new contact":"Opret ny kontakt","Current plan":"Nuværende abonnement","Delete account":"Slet konto","Didn't mean to do this? Manage your preferences <button>here</button>.":"Var det ikke dette du ønskede at gøre? Administrer dine præferencer <button>her</button>.","Don't have an account?":"Har du ikke en konto?",Edit:"Rediger",Email:"E-mail","Email newsletter":"E-mail nyhedsbrev","Email preference updated.":"E-mail præferencer blev opdateret.","Email preferences":"E-mail præferencer",Emails:"E-mails","Emails disabled":"E-mails deaktiveret","Ends {{offerEndDate}}":"Udløber {{offerEndDate}}",Error:"Fejl","Expires {{expiryDate}}":"Udløber {{expiryDate}}",Forever:"For evigt","Free Trial – Ends {{trialEnd}}":"Gratis prøveperiode - Udløber {{trialEnd}}","Get help":"Få hjælp","Get in touch for help":"Tag kontakt for at få hjælp","Get notified when someone replies to your comment":"Bliv notificeret når nogen svarer på din kommentar","Give feedback on this post":"Giv feedback til dette indlæg","Help! I'm not receiving emails":"Hjælp! Jeg modtager ikke e-mails","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"Hvis et nyhedsbrev er markeret som spam, deaktiveres e-mails automatisk for den adresse så du ikke længere modtage uønskede beskeder.","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"Hvis spamklagen var utilsigtet, eller du gerne vil begynde at modtage e-mails igen, kan du abonnere igen på e-mails ved at klikke på knappen på det forrige skærmbillede.","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"Hvis du annullere dit abonnement nu, vil du fortsat have adgang indtil {{periodEnd}}.","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"Hvis du har en virksomheds- eller statslig e-mailkonto, skal du kontakte din it-afdeling og bede dem om at tillade, at e-mails modtages fra {{senderEmail}}","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"Hvis du gerne vil begynde at modtage e-mails igen, er de bedste næste trin at tjekke din registreret e-mailadresse for eventuelle problemer og derefter klikke på gentilmeld på den forrige skærmbillede.","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"Hvis du ikke modtager det e-mailnyhedsbrev, du har tilmeldt dig, er der et par ting, du skal tjekke.","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"Hvis du har gennemført alle disse checks, og du stadig ikke modtager e-mails, kan du kontakte {{supportAddress}} for at få hjælp.","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"I tilfælde af, at der modtages en permanent fejl ved forsøg på at sende et nyhedsbrev, vil e-mails blive deaktiveret på kontoen.","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"Tilføj {{senderEmail}} til din kontaktliste i din e-mailklient. Dette signalerer til din e-mailudbyder, at e-mails sendt fra denne adresse skal være tillid til.","Less like this":"Mindre af dette",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':'Sørg for, at e-mails ikke ender i Spam eller Kampagner mapper i din indbakke. Hvis de gør, skal du klikke på "Markér som ikke spam" og/eller "Flyt til indbakke".',Manage:"Administrer",Monthly:"Månedlig","More like this":"Mere af dette",Name:"Navn","Need more help? Contact support":"Brug for hjælp? Kontakt support","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"Nyhedsbreve kan deaktiveres på din konto af to årsager: En tidligere e-mail blev markeret som spam, eller forsøg på at sende en e-mail resulterede i en permanent fejl (bounce).","Not receiving emails?":"Modtager du ikke e-mails?","Now check your email!":"Tjek din e-mail!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"Når du har tilmeldt dig igen, hvis du stadig ikke kan se e-mails i din indbakke, skal du tjekke din spam-mappe. Nogle e-mailudbydere registrerer tidligere spam-klager og vil blive ved med at markere e-mails. Hvis dette sker, skal du markere det seneste nyhedsbrev som 'Ikke spam' for at flytte det tilbage til din primære indbakke.","Permanent failure (bounce)":"Permanent fejl (bounce)",Plan:"Abonnement","Plan checkout was cancelled.":"Abonnementsbetaling blev aflyst.","Plan upgrade was cancelled.":"Opgradering af abonnement blev aflyst.","Please fill in required fields":"Udfyld venligst påkrævede felter",Price:"Pris","Re-enable emails":"Genaktiver e-mails","Renews at {{price}}.":"Bliver fornyet til {{price}}.",Retry:"Prøv igen",Save:"Gem","Send an email and say hi!":"Send en e-mail og sig hej!","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"Send en e-mail til {{senderEmail}} og sig hej. Dette kan også hjælpe med at signalere til din e-mailudbyder, at e-mails til og fra denne adresse skal være tillid til.","Sending login link...":"Sender link til log ind","Sending...":"Sender","Sign in":"Log ind","Sign out":"","Sign up":"Bliv medlem","Signup error: Invalid link":"Tilmeldingsfejl: Ugyldigt link","Sorry, that didn’t work.":"Beklager, det virkede ikke.","Spam complaints":"Spam klager","Start {{amount}}-day free trial":"Start {{amount}}-dages gratis prøveperiode","Starting {{startDate}}":"Fra {{startDate}}","Starting today":"Fra i dag","Submit feedback":"Send feedback",Subscribe:"Tilmeld",Subscribed:"Tilmeldt",Success:"Succes","Success! Check your email for magic link to sign-in.":"Sådan! Tjek din indbakke for et magisk link til at logge ind.","Success! Your account is fully activated, you now have access to all content.":"Sådan! Din konto er fuldt aktiveret, du har nu adgang til alt indhold.","Success! Your email is updated.":"Sådan! Din e-mail er opdateret.","Successfully unsubscribed":"Du er nu afmeldt","Thanks for the feedback!":"Tak for din feedback!","That didn't go to plan":"Det gik ikke helt efter planen","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"Den e-mailadresse, vi har på dig, er {{memberEmail}} – hvis det ikke er korrekt, kan du opdatere den i dit <button>kontoindstillingsområde</button>.","There was a problem submitting your feedback. Please try again a little later.":"Der opstod et problem med at sende din feedback. Prøv venligst igen lidt senere.","This site is invite-only, contact the owner for access.":"Denne sider kræver at du skal være inviteret. Kontakt ejeres for at få adgang.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"For at gennemføre oprettelsen af din konto, skal du klikke på bekræftelseslinket i din e-mail indbakke. Hvis det ikke kommer indenfor 3 minutter, så tjek venligst din spam mappe!","Try free for {{amount}} days, then {{originalPrice}}.":"Prøv gratis i {{amount}} dage, derefter {{original Price}}.","Unlock access to all newsletters by becoming a paid subscriber.":"Lås op for adgang til alle nyhedsbreve ved at blive en betalingsabonnent.","Unsubscribe from all emails":"Afmeld alle e-mails",Unsubscribed:"Afmeldt","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Du annullerer ikke dit abonnement på {{title}} ved at afmelde dig fra alle e-mails",Update:"Opdater","Update your preferences":"Opdater dine præferencer","Verify your email address is correct":"Tjek om din e-mailadresse er korrekt","View plans":"Se abonnementer","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Vi kunne ikke afmelde dig, da e-mailen ikke blev fundet. Kontakt venligst ejeren af siden.","Welcome back, {{name}}!":"Velkommen tilbage, {{name}}!","Welcome back!":"Velkommen tilbage!","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"Når en indbakke ikke accepterer en e-mail, kaldes det almindeligvis en bounce. I mange tilfælde kan dette være midlertidigt. Men i nogle tilfælde kan en afvist e-mail returneres som en permanent fejl, når en e-mailadresse er ugyldig eller ikke eksisterer.","Why has my email been disabled?":"Hvorfor er min e-mail blevet deaktiveret?",Yearly:"Årlig","You currently have a free membership, upgrade to a paid subscription for full access.":"Du har i øjeblikket et gratis medlemskab, opgrader til et betalt abonnement for fuld adgang.","You have been successfully resubscribed":"Du er nu tilmeldt igen","You're currently not receiving emails":"Du modtager ikke e-mails i øjeblikket","You're not receiving emails":"Du modtager ikke e-mails","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Du modtager ikke e-mails fordi du enten har markeret en af de seneste mails som spam, eller fordi e-mails ikke kunne leveres til den oplyste e-mailadresse.","You've successfully signed in.":"Du er logget ind.","Your account":"Din konto","Your input helps shape what gets published.":"Dit input hjælper med at forme det der bliver publiceret.","Your subscription will expire on {{expiryDate}}":"Dit abonnement udløber {{expiryDate}}","Your subscription will renew on {{renewalDate}}":"Dit abonnement fornyes {{renewalDate}}","Your subscription will start on {{subscriptionStart}}":"Dit abonnement starter {{subscriptionStart}}"},TS={"{{amount}} days free":"","{{amount}} off":"","{{amount}} off for first {{number}} months.":"","{{amount}} off for first {{period}}.":"","{{amount}} off forever.":"","{{discount}}% discount":"{{discount}}% Rabatt","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"{{trialDays}} Tage kostenlos","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Ein Login-Link wurde an Deine E-Mail-Adresse gesendet. Falls die E-Mail nicht innerhalb von 3 Minuten ankommt, überprüfe bitte Deinen Spam-Ordner.",Account:"Benutzerkonto","Account settings":"Benutzerkonto-Einstellungen","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Wenn das kostenlose Testabo endet, wirst Du den regulären Preis für den gewählten Tarif bezahlen. Du kannst das Abonnement jederzeit kündigen.","Already a member?":"Bereits Mitglied?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"Zurück","Back to Log in":"Zurück zur Anmeldung","Billing info":"","Black Friday":"","Cancel anytime.":"","Cancel subscription":"Abonnierung kündigen","Cancellation reason":"Kündigungsgrund",Change:"","Check spam & promotions folders":"","Check with your mail provider":"",Choose:"","Choose a different plan":"Wähle einen anderen Plan","Choose your newsletters":"Wähle Deine Newsletter","Click here to retry":"",Close:"Schließen",Comments:"Kommentare",Complimentary:"",Confirm:"Bestätigen","Confirm cancellation":"","Confirm subscription":"","Contact support":"",Continue:"Weiter","Continue subscription":"","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"","Delete account":"Konto löschen","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"Noch kein Konto?",Edit:"",Email:"Email","Email newsletter":"","Email preference updated.":"Email Einstellungen aktualisiert.","Email preferences":"Email Einstellungen",Emails:"Emails","Emails disabled":"Emails deaktiviert","Ends {{offerEndDate}}":"",Error:"","Expires {{expiryDate}}":"",Forever:"","Free Trial – Ends {{trialEnd}}":"","Get help":"Hilfe erhalten","Get in touch for help":"","Get notified when someone replies to your comment":"Erhalte eine Benachrichtigung, wenn jemand auf Deinen Kommentar antwortet","Give feedback on this post":"Gebe Feedback zu diesem Beitrag","Help! I'm not receiving emails":"","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"Weniger davon",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"Verwalten",Monthly:"Monatlich","More like this":"Mehr davon",Name:"Name","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"Keine Emails erhalten?","Now check your email!":"Überprüfe jetzt Deine E-Mails!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"Preis","Re-enable emails":"Emails wieder aktivieren","Renews at {{price}}.":"",Retry:"Nochmals versuchen",Save:"Speichern","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"Sende Login-Link...","Sending...":"Sende...","Sign in":"Einloggen","Sign out":"","Sign up":"Registrieren","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"Starte {{amount}}-tägiges kostenloses Testabo","Starting {{startDate}}":"","Starting today":"","Submit feedback":"Feedback senden",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"Erfolgreich abgemeldet","Thanks for the feedback!":"Danke für das Feedback!","That didn't go to plan":"Das verlief nicht nach Plan","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"Diese Seite ist nur nach Einladung zugänglich. Bitte kontaktiere den Seitenbetreiber.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Um die Registrierung abzuschließen, klicke auf den Bestätigungslink in Deinem E-Mail Postfach. Falls die E-Mail nicht innerhalb von 3 Minuten ankommt, überprüfe bitte Deinen Spam-Ordner!","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"Von allen Emails abmelden",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Wenn Du Dich von Emails abmeldest, wird Dein bezahltes Abonnement bei {{title}} nicht gekündigt",Update:"","Update your preferences":"Aktualisiere Deine Einstellungen","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Wir konnten Dich nicht abmelden, da die E-Mail-Adresse nicht gefunden wurde. Bitte kontaktiere den Seitenbetreiber.","Welcome back, {{name}}!":"","Welcome back!":"","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"Jährlich","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"Du wurdest erfolgreich wieder angemeldet","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Du erhältst keine Emails, da Du entweder eine kürzlich empfangene Nachricht als Spam markiert hast oder weil Nachrichten nicht an Deine angegebene E-Mail-Adresse zugestellt werden konnten.","You've successfully signed in.":"","Your account":"Dein Konto","Your input helps shape what gets published.":"Deine Eingaben helfen dabei, was veröffentlicht wird.","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},IS={"{{amount}} days free":"","{{amount}} off":"","{{amount}} off for first {{number}} months.":"","{{amount}} off for first {{period}}.":"","{{amount}} off forever.":"","{{discount}}% discount":"","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"",Account:"","Account settings":"","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"","Already a member?":"","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"","Back to Log in":"","Billing info":"","Black Friday":"","Cancel anytime.":"","Cancel subscription":"","Cancellation reason":"",Change:"","Check spam & promotions folders":"","Check with your mail provider":"",Choose:"","Choose a different plan":"","Choose your newsletters":"","Click here to retry":"",Close:"",Comments:"",Complimentary:"",Confirm:"","Confirm cancellation":"","Confirm subscription":"","Contact support":"",Continue:"","Continue subscription":"","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"","Delete account":"","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"",Edit:"",Email:"","Email newsletter":"","Email preference updated.":"","Email preferences":"",Emails:"","Emails disabled":"","Ends {{offerEndDate}}":"",Error:"","Expires {{expiryDate}}":"",Forever:"","Free Trial – Ends {{trialEnd}}":"","Get help":"","Get in touch for help":"","Get notified when someone replies to your comment":"","Give feedback on this post":"","Help! I'm not receiving emails":"","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"",Monthly:"","More like this":"",Name:"","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"","Now check your email!":"","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"","Re-enable emails":"","Renews at {{price}}.":"",Retry:"",Save:"","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"","Sending...":"","Sign in":"","Sign out":"","Sign up":"","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"","Starting {{startDate}}":"","Starting today":"","Submit feedback":"",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"","Thanks for the feedback!":"","That didn't go to plan":"","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"",Update:"","Update your preferences":"","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"","Welcome back, {{name}}!":"","Welcome back!":"","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"","You've successfully signed in.":"","Your account":"","Your input helps shape what gets published.":"","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},DS={"{{amount}} days free":"","{{amount}} off":"","{{amount}} off for first {{number}} months.":"","{{amount}} off for first {{period}}.":"","{{amount}} off forever.":"","{{discount}}% discount":"{{discount}}% rabato","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"{{trialDays}} tagoj senpagaj","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Sendis ensalutan ligilon al via enirkesto. Se ĝi ne alvenas post 3 minutoj, nepre kontrolu vian trudmesaĝdosieron.",Account:"Konto","Account settings":"Kontagordoj","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Post senpaga provo finiĝos, vi pagos la regulan prezon por la nivelo, kiun vi elektis. Vi ĉiam povas nuligi antaŭ tiam.","Already a member?":"Ĉu membro jam?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"Reen","Back to Log in":"Reen al Ensaluto","Billing info":"","Black Friday":"","Cancel anytime.":"","Cancel subscription":"Nuligu abonon","Cancellation reason":"Nuliga kialo",Change:"","Check spam & promotions folders":"","Check with your mail provider":"",Choose:"","Choose a different plan":"Elektu alian planon","Choose your newsletters":"Elektu viajn bultenojn","Click here to retry":"",Close:"Fermu",Comments:"Komentoj",Complimentary:"",Confirm:"Konfirmu","Confirm cancellation":"","Confirm subscription":"","Contact support":"",Continue:"Daŭrigu","Continue subscription":"","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"","Delete account":"Forigu konton","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"Ĉu ne havas konton?",Edit:"",Email:"Retadreso","Email newsletter":"","Email preference updated.":"Retpoŝta agordo ĝisdatigita.","Email preferences":"Retpoŝtaj agordoj",Emails:"Retpoŝtoj","Emails disabled":"Retpoŝtoj malŝaltitaj","Ends {{offerEndDate}}":"",Error:"","Expires {{expiryDate}}":"",Forever:"","Free Trial – Ends {{trialEnd}}":"","Get help":"Ricevi helpon","Get in touch for help":"","Get notified when someone replies to your comment":"Estu sciiga kiam iu respondos al via komento","Give feedback on this post":"Donu komentojn pri ĉi tiu afiŝo","Help! I'm not receiving emails":"","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"Malpli tiel",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"Administru",Monthly:"Monate","More like this":"Pli kiel ĉi tio",Name:"Nomo","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"","Now check your email!":"Bonvolu kontroli vian retpoŝton nun!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"Kosto","Re-enable emails":"Reŝalti retpoŝtojn","Renews at {{price}}.":"",Retry:"Reprovu",Save:"Konservi","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"Sendanta ensaluta ligilo...","Sending...":"Sendante...","Sign in":"Ensalutu","Sign out":"","Sign up":"Aliĝu","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"Komencu senpaga {{amount}}-taga provo","Starting {{startDate}}":"","Starting today":"","Submit feedback":"Sendu rimarkojn",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"Sukcese malabonita","Thanks for the feedback!":"Dankon pro la rimarkoj!","That didn't go to plan":"Tio ne iris laŭ la intenco","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"Ĉi tiu retejo estas nur por invitiĝuloj, kontaktu la proprietulo por alireblo.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Por kompletigi aliĝon, premu la konfirman ligilon en via enirkesto. Se ĝi ne alvenas ene de 3 minutoj, kontrolu vian trudmesaĝdosieron!","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"Malabonu de ĉiuj retpoŝtoj",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Malabonigi de retpoŝtoj ne nuligos vian pagitan abonon al {{title}}",Update:"","Update your preferences":"Ĝisdatigu viajn agordojn","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Ni ne povis malaboni vin ĉar la retadreso ne estis trovita. Bonvolu kontakti la proprietulo de la retejo","Welcome back, {{name}}!":"","Welcome back!":"","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"Jare","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"Vi sukcese reaboniĝis","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Vi ne ricevas retpoŝtojn ĉar vi aŭ markis lastatempan mesaĝon kiel trudmesaĝo, aŭ ĉar mesaĝoj ne povis liveri al via provizita retadreso.","You've successfully signed in.":"","Your account":"Via konto","Your input helps shape what gets published.":"Via enigo helpas formi kio estas aperigita.","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},AS={"{{amount}} days free":"{{amount}} días gratis","{{amount}} off":"{{amount}} de descuento","{{amount}} off for first {{number}} months.":"{{amount}} de descuento por los primeros {{number}} meses.","{{amount}} off for first {{period}}.":"{{amount}} de descuento por los primeros {{period}}.","{{amount}} off forever.":"{{amount}} de descuento para siempre.","{{discount}}% discount":"{{discount}}% de descuento","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"{{memberEmail}} ya no va a recibir boletines de {{newsletterName}}.","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"{{memberEmail}} ya no va a recibir correos electrónicos cuando alguien responde a sus comentarios.","{{memberEmail}} will no longer receive this newsletter.":"{{memberEmail}} ya no va a recibir este bolentin.","{{trialDays}} days free":"{{trialDays}} días gratis","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Se ha enviado un enlace de inicio de sesión a tu correo. Si no llega en 3 minutos, revisa tu carpeta de spam.",Account:"Cuenta","Account settings":"Configuración de la cuenta","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Después de que finalice el período de prueba gratuito, se te cobrará el precio regular del nivel que hayas elegido. Siempre puedes cancelar antes de eso.","Already a member?":"¿Ya eres miembro?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"Un error inesperado ha ocurrido. Por favor intente de nuevo o <a>contacte soporte técnico</a> si el error persiste.",Back:"Atrás","Back to Log in":"Volver al inicio de sesión","Billing info":"Informacion de pago","Black Friday":"Viernes negro","Cancel anytime.":"Cancelacion en cualquier momento.","Cancel subscription":"Cancelar suscripción","Cancellation reason":"Razón de cancelación",Change:"Cambiar","Check spam & promotions folders":"Compruebe la carpeta de correo basura y promociones","Check with your mail provider":"Compruebe con su proveedor de correo",Choose:"elija","Choose a different plan":"Elige un plan diferente","Choose your newsletters":"Elige tus boletines","Click here to retry":"Haga click aqui para reintentar",Close:"Cerrar",Comments:"Comentarios",Complimentary:"Complementario",Confirm:"Confirmar","Confirm cancellation":"Confirmar cancelación","Confirm subscription":"Confirmar suscripción","Contact support":"Contacte soporte técnico",Continue:"Continuar","Continue subscription":"Continuar suscripción","Could not sign in. Login link expired.":"No se pudo iniciar sesion. El enlace de inicio ha expirado.","Could not update email! Invalid link.":"No se pudo actualizar el email! Enlace inválido.","Create a new contact":"Crea un nuevo contacto","Current plan":"Plan actual","Delete account":"Eliminar cuenta","Didn't mean to do this? Manage your preferences <button>here</button>.":"¿No quisiste hacer esto? Puedes gestionar tus preferencias <button>acá</button>.","Don't have an account?":"¿No tienes una cuenta?",Edit:"Editar",Email:"Correo electrónico","Email newsletter":"Boletín informativo por correo electrónico","Email preference updated.":"Preferencia de correo electrónico actualizada.","Email preferences":"Preferencias de correo electrónico",Emails:"Correos electrónicos","Emails disabled":"Correos electrónicos desactivados","Ends {{offerEndDate}}":"Termina el {{offerEndDate}}",Error:"Error","Expires {{expiryDate}}":"Expira {{expiryDate}}",Forever:"para siempre","Free Trial – Ends {{trialEnd}}":"Prueba gratis - Termina el {{trialEnd}}","Get help":"Obtener ayuda","Get in touch for help":"Póngase en contacto para obtener ayuda","Get notified when someone replies to your comment":"Recibe notificaciones cuando alguien responda a tu comentario","Give feedback on this post":"Envía comentarios sobre esta publicación","Help! I'm not receiving emails":"¡Ayuda! No estoy recibiendo correos electronicos","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"Si un correo es marcado como spam, los correos electrónicos son automáticamente deshabilitados para esa dirección de correo para asegurarse que usted no reciba ningún correo indeseado.","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"Si la denuncia de spam fue accidental, o si quiere recibir los correos electrónicos de nuevo, puede volver a suscribirse a los correos haciendo click en el botón de la pantalla anterior.","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"Si cancela su suscripción ahora, continuara con acceso hasta el {{periodEnd}}.","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"Si usted tiene un correo electrónico de una corporación o del gobierno, puede contactarse con el departamento de TI y solicitar que se le permita recibir correos de {{senderEmail}}","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"Si no estas recibiendo los boletines informativos a los que se suscribió, estas son algunas cosas que puede revisar.","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"Si ha comprobado todo y aun así no esta recibiendo los correos electrónicos, puede comunicarse con soporte técnico contactando {{supportAddress}}.","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"Menos como esto",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':'Asegúrese de que los correos electrónicos no terminen accidentalmente en las carpetas de correo no deseado o promociones de su bandeja de entrada. Si lo son, haga clic en "Mark as not spam" y/o "Move to inbox".',Manage:"Administrar",Monthly:"Mensual","More like this":"Más como esto",Name:"Nombre","Need more help? Contact support":"Necesitas más ayuda? Contacta la manutención","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"Los boletines se pueden deshabilitar en su cuenta por dos razones: Un correo electrónico anterior se marcó como correo no deseado o el intento de enviar un correo electrónico resultó en una falla permanente (bounce).","Not receiving emails?":"¿No recibes correos electrónicos?","Now check your email!":"¡Ahora revisa tu correo electrónico!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"Una vez que se haya vuelto a suscribir, si aún no ve los correos electrónicos en su bandeja de entrada, verifique su carpeta de correo no deseado. Algunos proveedores de bandejas de entrada mantienen un registro de quejas de spam anteriores y continuarán marcando los correos electrónicos. Si esto sucede, marque el último boletín como 'No es spam' para moverlo nuevamente a su bandeja de entrada principal.","Permanent failure (bounce)":"Falla permanente (bounce)",Plan:"Plan","Plan checkout was cancelled.":"El pago de plan fue cancelado.","Plan upgrade was cancelled.":"La actualización de plan fue cancelado.","Please fill in required fields":"Por favor llene los campos requridos.",Price:"Precio","Re-enable emails":"Reactivar correos electrónicos","Renews at {{price}}.":"Se renueva en {{price}}.",Retry:"Reintentar",Save:"Guardar","Send an email and say hi!":"¡Envía un correo electronico y saluda!","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"¡Envia un correo electronico a {{senderEmail}} y saluda! Esto también puede ayudar a indicarle a su proveedor de correo que se debe confiar en los correos electrónicos hacia y desde esta dirección.","Sending login link...":"Enviando enlace de inicio de sesión...","Sending...":"Enviando...","Sign in":"Iniciar sesión","Sign out":"Terminar sesión","Sign up":"Registrarse","Signup error: Invalid link":"Error de registro: Enlace inválido","Sorry, that didn’t work.":"Lo siento, eso no funcionó.","Spam complaints":"Quejas de spam","Start {{amount}}-day free trial":"Comienza el período de prueba gratuito de {{amount}} días","Starting {{startDate}}":"A partir de {{startDate}}","Starting today":"A partir de hoy","Submit feedback":"Enviar comentarios",Subscribe:"Suscribir",Subscribed:"Suscrito",Success:"Éxito","Success! Check your email for magic link to sign-in.":"¡Éxito! Revise su correo electrónico para ver el enlace mágico para iniciar sesión.","Success! Your account is fully activated, you now have access to all content.":"¡Éxito! Su cuenta está completamente activada, ahora tiene acceso a todo el contenido.","Success! Your email is updated.":"¡Éxito! Su correo electrónico está actualizado.","Successfully unsubscribed":"Te has dado de baja correctamente","Thanks for the feedback!":"¡Gracias por tus comentarios!","That didn't go to plan":"Eso no salió según lo planeado","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"La dirección de correo electrónico que tenemos para usted es {{memberEmail}} - si eso no es correcto, puede actualizarlo en su <button> área de configuracion de la cuenta <button>.","There was a problem submitting your feedback. Please try again a little later.":"Hubo un problema al enviar sus comentarios. Vuelva a intentarlo un poco más tarde.","This site is invite-only, contact the owner for access.":"Este sitio es solo por invitación, contacta al propietario para obtener acceso.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Para completar el registro, haz clic en el enlace de confirmación en tu correo electrónico. Si no llega en 3 minutos, ¡revisa tu carpeta de spam!","Try free for {{amount}} days, then {{originalPrice}}.":"Prueba gratis por {{amount}} dias, luego {{originalPrice}}.","Unlock access to all newsletters by becoming a paid subscriber.":"Desbloquee el acceso a todos los boletines convirtiéndose en un suscriptor pago.","Unsubscribe from all emails":"Cancelar suscripción a todos los correos electrónicos",Unsubscribed:"Dado de baja","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Cancelar la suscripción a los correos electrónicos no cancelará tu suscripción de pago a {{title}}",Update:"Actualizar","Update your preferences":"Actualiza tus preferencias","Verify your email address is correct":"Verifique que su dirección de correo electrónico sea correcta","View plans":"Ver planes","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"No pudimos cancelar tu suscripción ya que no se encontró la dirección de correo electrónico. Por favor, contacta al propietario del sitio.","Welcome back, {{name}}!":"¡Bienvenido de nuevo, {{name}}!","Welcome back!":"¡Bienvenido de nuevo!","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"Cuando una bandeja de entrada no acepta un correo electrónico, comúnmente se le llama rebote. En muchos casos, esto puede ser temporal. Sin embargo, en algunos casos, un correo electrónico rebotado puede devolverse como una falla permanente cuando una dirección de correo electrónico no es válida o no existe.","Why has my email been disabled?":"¿Por qué mi correo electronico ha sido desabilitado.",Yearly:"Anual","You currently have a free membership, upgrade to a paid subscription for full access.":"Usted tiene una membresía gratuita, actualice a una suscripción paga para obtener acceso completo.","You have been successfully resubscribed":"Te has vuelto a suscribir con éxito","You're currently not receiving emails":"Actualmente no estás recibiendo correos electrónicos","You're not receiving emails":"No estás recibiendo correos electrónicos","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"No estás recibiendo correos electrónicos porque marcaste un mensaje reciente como spam o porque no se pudieron entregar los mensajes a la dirección de correo electrónico proporcionada.","You've successfully signed in.":"Has iniciado sesión correctamente.","Your account":"Tu cuenta","Your input helps shape what gets published.":"Tu opinión ayuda a definir lo que se publica.","Your subscription will expire on {{expiryDate}}":"Su suscripción caducará el {{expiryDate}} ","Your subscription will renew on {{renewalDate}}":"Su suscripción se renovará el {{renewalDate}}","Your subscription will start on {{subscriptionStart}}":"Su suscripción comenzará el {{subscriptionStart}}"},MS={"{{amount}} days free":"{{amount}} päivää ilmaiseksi","{{amount}} off":"{{amount}} pois","{{amount}} off for first {{number}} months.":"{{amount}} pois ensimmäisestä {{number}} kuukaudesta","{{amount}} off for first {{period}}.":"{{amount}} pois ensimmäisestä {{period}}","{{amount}} off forever.":"{{amount}} pois ikuisesti","{{discount}}% discount":"{{discount}}% alennus","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"{{memberEmail}} ei enää jatkossa saa {{newsletterName}} uutiskirjettä.","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"{{memberEmail}} ei lähetetä enää jatkossa sähköpostia jos joku vastaa kommenttiisi.","{{memberEmail}} will no longer receive this newsletter.":"{{memberEmail}} ei enää lähetetä tätä uutiskirjettä.","{{trialDays}} days free":"{{trialDays}} päivää ilmaiseksi","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Kirjautumislinkki on lähetetty sähköpostiisi. Jos se ei tule 3 minuutin kuluessa, muista katsoa spam-kansiosi.",Account:"Oma tili","Account settings":"Tilin asetukset","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Kun ilmainen kokeilusi loppuu, sinulta veloitetaan valitsemasi tilauksen kuukausimaksu. Voit aina peruuttaa tilauksesi ennen tätä.","Already a member?":"Oletko jo jäsen?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"Odottamaton virhe syntyi, yritäthän uudestaan tai <a>contact support</a> jos ongelma jatkuu.",Back:"Takaisin","Back to Log in":"Takaisin kirjautumiseen","Billing info":"Maksutiedot","Black Friday":"Black Friday","Cancel anytime.":"Peruuta milloin vain","Cancel subscription":"Peruuta tilaus","Cancellation reason":"Syy peruutukselle",Change:"Vaihda","Check spam & promotions folders":"Katso spam & promotions kansiot","Check with your mail provider":"Tarkista sähköpostitarjoajaltasi",Choose:"Valitse","Choose a different plan":"Valitse toinen tilaus","Choose your newsletters":"Valitse uutiskirjeesi","Click here to retry":"Klikkaa tästä kokeillaksesi uudestaan",Close:"Sulje",Comments:"Kommentit",Complimentary:"Ilmainen",Confirm:"Vahvista","Confirm cancellation":"Vahvista peruutus","Confirm subscription":"Vahvista tilaus","Contact support":"Ota yhteyttä tukeen",Continue:"Jatka","Continue subscription":"Jatka tilaustasi","Could not sign in. Login link expired.":"Kirjautuminen epäonnistui. Kirjautumislinkki on vanhentunut.","Could not update email! Invalid link.":"Sähköpostia ei pystytty päivittämään! Linkki ei toimi.","Create a new contact":"Luo uusi kontakti","Current plan":"Nykyinen tilaus","Delete account":"Poista tilisi","Didn't mean to do this? Manage your preferences <button>here</button>.":"Etkö tarkoittanut tehdä näin? Muokkaa valintojasi <button>here</button>","Don't have an account?":"Eikö sinulla ole tiliä?",Edit:"Muokkaa",Email:"Sähköposti","Email newsletter":"Uutiskirje sähköpostiin","Email preference updated.":"Sähköpostiasetukset päivitetty","Email preferences":"Sähköpostiasetukset",Emails:"Sähköpostit","Emails disabled":"Sähköpostit pois käytöstä","Ends {{offerEndDate}}":"Loppuu {{offerEndDate}}",Error:"Virhe","Expires {{expiryDate}}":"Vanhenee {{expiryDate}}",Forever:"Ikuisesti","Free Trial – Ends {{trialEnd}}":"Ilmainen kokeilu – Loppuu {{trialEnd}}","Get help":"Pyydä apua","Get in touch for help":"Ota yhteyttä saadaksesi apua","Get notified when someone replies to your comment":"Saa viesti kun joku vastaa kommenttiisi","Give feedback on this post":"Anna palautetta tähän postaukseen","Help! I'm not receiving emails":"Apua! En saa sähköposteja","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"Jos uutiskirje on merkitty spammiksi, sähköpostit tähän osoitteeseen on estetty, jotta et enää vastaanota viestejä osoitteeseen","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"Jos spam-valitus oli aiheeton, tai haluaisit saada taas viestejä, voit uudelleen ilmoittautua sähköposteihin painamalla nappia edellisellä sivulla.","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"Jos haluat perua tilauksesi nyt, sinulla on vielä oikeus materiaaliin {{periodEnd}} asti","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"Jos sinulla on yritys- tai valtion sähköposti, pyydä IT-osastoa hyväksymään sähköpostit lähettäjältä {{senderEmail}}","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"Jos haluat saada taas sähköposteja, paras tapa jatkaa on tarkistaa sähköpostiosoitteesi ja sitten klikata uudelleen uutiskirjeeseen osallistumista edellisellä sivulla.","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"Jos et saa uutiskirjettä sähköpostiisi, tässä on muutama asia tarkistettavaksi:","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"Jos et vieläkään saa uutiskirjeitä, ota yhteyttä {{supportAddress}}","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"Jos uutiskirjeen lähetyksessä tapahtuu pysyvä ongelma, sähköpostien lähetys keskeytetään.","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"Sähköpostiasetuksissasi lisää {{senderEmail}} kontakteihisi. Tämä antaa viestin sähköpostitarjoajalle, että viestit tästä osoitteesta ovat hyväksyttäviä.","Less like this":"Vähemmän tämän kaltaisia",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':'Varmista, että sähköpostit eivät mene Spam- tai roskapostikansioihin, Jos näin käy, klikkaa "Mark as not spam" ja/tai "Move to inbox".',Manage:"Hallitse",Monthly:"Kuukausittainen","More like this":"Lisää tämän kaltaista",Name:"Nimi","Need more help? Contact support":"Tarvitsetko lisää apua? Ota yhteyttä tukeen","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"Uutiskirjeet sähköpostiisi voivat peruuntua kahdesta syystä: edellinen sähköposti oli merkattu spammiksi, tai sähköpostin lähetyksestä tuli bounce.","Not receiving emails?":"Etkö saa sähköposteja?","Now check your email!":"Nyt tarkista sähköpostisi","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"Kun olet tilannut sähköpostit uudelleen ja et vieläkään saa posteja, katso ensimmäiseksi spam-kansio. Jotkut tarjoajat pitävät listaa ennen merkityistä viesteistä ja estävät niitä jatkossakin. Jos näin tapahtuu, merkitse viesti Not Spam ja siirrä se postilaatikkoosi.","Permanent failure (bounce)":"Pysyvä virhe (bounce)",Plan:"Tilaus","Plan checkout was cancelled.":"Tilauksen checkout on peruttu","Plan upgrade was cancelled.":"Tilauksen korotus on peruttu","Please fill in required fields":"Täytä tarvittavat kentät",Price:"Hinta","Re-enable emails":"Uudelleen hyväksy sähköpostit","Renews at {{price}}.":"Tilaus päivittyy hinnalla {{price}}.",Retry:"Kokeile uudestaan",Save:"Tallenna","Send an email and say hi!":"Lähetä sähköposti ja sano moi!","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"Lähetä sähköposti osoitteeseen {{senderEmail}} ja sano hei. Tämä viestii tarjoajalle, että osoite on hyväksytty.","Sending login link...":"Lähetetään kirjautumislinkkiä...","Sending...":"Lähetetään...","Sign in":"Kirjaudu sisään","Sign out":"Kirjaudu ulos","Sign up":"Rekisteröidy","Signup error: Invalid link":"Virhe rekisteröinnissä: Linkki ei toimi","Sorry, that didn’t work.":"Anteeksi, tämä ei onnistunut","Spam complaints":"Spam-valitukset","Start {{amount}}-day free trial":"Aloita {{amount}}-päivän kokeilu","Starting {{startDate}}":"Aloitetaan {{startDate}}","Starting today":"Alkaa tänään","Submit feedback":"Anna palautetta",Subscribe:"Tilaa",Subscribed:"Tilaus onnistunut",Success:"Onnistunut","Success! Check your email for magic link to sign-in.":"Onnistui! Katso sähköpostisi kirjautumislinkkiä varten","Success! Your account is fully activated, you now have access to all content.":"Onnistui! Tilisi on aktivoitu ja sinulla on pääsy sisältöihin","Success! Your email is updated.":"Onnistui! Sähköpostisi on päivitetty","Successfully unsubscribed":"Tilauksen peruutus onnistui","Thanks for the feedback!":"Kiitos palautteestasi!","That didn't go to plan":"Tämä ei mennyt suunnitelmien mukaan","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"Meillä oli ongelma palautteesi lähetyksen kanssa. Kokeleithan myöhemmin uudestaan.","This site is invite-only, contact the owner for access.":"Tämä sivu on vain kutsutuille, ota yhteyttä omistajaan saadaksesi pääsyoikeuden.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Viimeistelläksesi rekisteröitymisen, klikkaa vahvistuslinkkiä sähköpostissasi. Jos sitä ei saavu 3 minuutin kuluessa, tarkista roskapostikansiosi!","Try free for {{amount}} days, then {{originalPrice}}.":"Kokeile ilmaiseksi {{amount}} päivää, sen jälkeen hinta on {{originalPrice}}.","Unlock access to all newsletters by becoming a paid subscriber.":"Avaa pääsy kaikkiin uutiskirjeisiin maksullisella tilauksella.","Unsubscribe from all emails":"Peruuta kaikki sähköpostit",Unsubscribed:"Tilaus peruutettu","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Sähköpostien peruuttaminen ei peruuta maksullista tilaustasi {{title}}",Update:"Päivitä","Update your preferences":"Päivitä asetuksesi","Verify your email address is correct":"Vahvista sähköpostiosoitteesi oikeellisuus","View plans":"Katso tilausvaihtoehtoja","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Emme voineet peruuttaa tilaustasi, koska sähköpostiosoitetta ei löytynyt. Ota yhteyttä sivuston omistajaan.","Welcome back, {{name}}!":"Tervetuloa takaisin, {{name}}!","Welcome back!":"Tervetuloa takaisin!","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"ksissa “bounssannut” sähköposti voi kuitenkin palautua pysyvänä virheenä, kun sähköpostiosoite on virheellinen tai sitä ei ole olemassa.","Why has my email been disabled?":"Miksi sähköpostini on poistettu käytöstä?",Yearly:"Vuosittainen","You currently have a free membership, upgrade to a paid subscription for full access.":"Sinulla on tällä hetkellä ilmainen jäsenyys, päivitä maksulliseksi tilaukseksi saadaksesi täyden pääsyn.","You have been successfully resubscribed":"Olet tilannut uudelleen onnistuneesti","You're currently not receiving emails":"Et tällä hetkellä ole saamassa sähköposteja","You're not receiving emails":"Et saa sähköposteja","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Et saa sähköposteja siksi, että joko merkitsit äskettäisen viestin roskapostiksi tai siksi, että viestejä ei voitu toimittaa antamaasi sähköpostiosoitteeseen.","You've successfully signed in.":"Olet kirjautunut sisään onnistuneesti","Your account":"Tilisi","Your input helps shape what gets published.":"Antamasi palautteen avulla muokataan julkaistavaa sisältöä","Your subscription will expire on {{expiryDate}}":"Tilauksesi päättyy {{expiryDate}}","Your subscription will renew on {{renewalDate}}":"Tilauksesi uusiutuu {{renewalDate}}","Your subscription will start on {{subscriptionStart}}":"Tilauksesi alkaa {{subscriptionStart}}"},zS={"{{amount}} days free":"{{amount}} jours gratuits","{{amount}} off":"{{amount}} de réduction","{{amount}} off for first {{number}} months.":"{{amount}} de réduction pour les {{number}} premiers mois.","{{amount}} off for first {{period}}.":"{{amount}} de réduction pour le/la premier/ère {{period}}.","{{amount}} off forever.":"{{amount}} de réduction permanente.","{{discount}}% discount":"{{discount}}% de réduction","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"{{memberEmail}} ne recevra plus la newsletter {{newsletterName}}.","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"{{memberEmail}} ne recevra plus d'e-mails lorsque quelqu'un répond à vos commentaires.","{{memberEmail}} will no longer receive this newsletter.":"{{memberEmail}} ne recevra plus cette newsletter.","{{trialDays}} days free":"{{trialDays}} jours gratuits","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Un lien de connexion a été envoyé dans votre boîte de réception. S’il n’arrive pas dans les 3 minutes, vérifiez votre dossier spam.",Account:"Compte","Account settings":"Paramètres du compte","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"À la fin de la période d’essai gratuite, le prix normal de l’abonnement choisi sera facturé. Vous pouvez toujours annuler d’ici là.","Already a member?":"Déjà membre ?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"Une erreur inattendue s'est produite. Veuillez réessayer ou <a>contacter le support</a> si l'erreur persiste.",Back:"Retour","Back to Log in":"Retour à Connexion","Billing info":"Informations sur la facturation","Black Friday":"Black Friday","Cancel anytime.":"Annuler à tout moment.","Cancel subscription":"Annuler l’abonnement","Cancellation reason":"Raison de l’annulation",Change:"Changer","Check spam & promotions folders":"Vérifiez les dossiers de spam et de promotion","Check with your mail provider":"Vérifiez auprès de votre fournisseur d'e-mail",Choose:"Choisir","Choose a different plan":"Choisir un autre abonnement","Choose your newsletters":"Choisir les newsletters","Click here to retry":"Cliquez ici pour réessayer",Close:"Fermer",Comments:"Commentaires",Complimentary:"Offert",Confirm:"Confirmer","Confirm cancellation":"Confirmer l'annulation","Confirm subscription":"Confirmer l'abonnement","Contact support":"Contacter le support",Continue:"Continuer","Continue subscription":"Continuer l'abonnement","Could not sign in. Login link expired.":"Impossible de se connecter. Le lien de connexion a expiré.","Could not update email! Invalid link.":"Impossible de mettre à jour l'e-mail ! Lien invalide.","Create a new contact":"Créer un nouveau contact","Current plan":"Abonnement actuel","Delete account":"Supprimer le compte","Didn't mean to do this? Manage your preferences <button>here</button>.":"Vous ne vouliez pas faire ça ? Gérez vos préférences <button>ici</button>.","Don't have an account?":"Vous n’avez pas encore de compte ?",Edit:"Modifier",Email:"E-mail","Email newsletter":"E-mail de la newsletter","Email preference updated.":"Préférences d’e-mail mises à jour.","Email preferences":"Préférences d’e-mail",Emails:"E-mails","Emails disabled":"E-mails désactivés","Ends {{offerEndDate}}":"Se termine le {{offerEndDate}}",Error:"Erreur","Expires {{expiryDate}}":"Expire le {{expiryDate}}",Forever:"Permanent","Free Trial – Ends {{trialEnd}}":"Essai gratuit - Se termine le {{trialEnd}}","Get help":"Obtenir de l’aide","Get in touch for help":"Contactez-nous pour obtenir de l'aide","Get notified when someone replies to your comment":"Recevez une notification lorsque quelqu’un répond à votre commentaire","Give feedback on this post":"Donnez votre avis sur cet article","Help! I'm not receiving emails":"À l'aide ! Je ne reçois pas d'e-mails","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"Si une newsletter est signalée comme étant du spam, les e-mails sont automatiquement désactivés pour cette adresse afin que vous ne receviez plus de messages indésirables.","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"Si le signalement spam était accidentel, ou si vous voulez de nouveau recevoir les e-mails, vous pouvez vous réinscrire aux e-mails en cliquant sur le bouton sur la page précédente.","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"Si vous annulez votre abonnement maintenant, vous continuerez à y avoir accès jusqu'au {{periodEnd}}.","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"Si vous avez un compte e-mail d'entreprise ou gouvernenmental, contactez votre service informatique et demandez leur d'autoriser les e-mails provenant de {{senderEmail}}","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"Si vous voulez à nouveau recevoir les e-mails, la meilleure chose à faire est de vérifier votre toute erreur liée à l'adresse e-mail renseignée, puis de cliquer sur réinscription sur la page précédente.","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"Si vous ne recevez pas la newsletter par e-mail à laquelle vous vous êtes abonné, voici quelques points à vérifier.","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"Si vous avez complété toutes ces étapes et ne recevez toujours pas d'e-mails, vous pouvez nous contacter à {{supportAddress}} pour obtenir de l'aide.","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"Si une erreur persistante est reçue lors de la tentative d'envoi de la newsletter, les e-mails seront désactivés pour le compte.","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"Dans votre client de messagerie, ajoutez {{senderEmail} à votre liste de contacts. Cela signale à votre fournisseur de messagerie que les e-mails provenant de cette adresse doivent être considérés comme dignes de confiance.","Less like this":"Moins de contenu similaire",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':`Assurez-vous que les e-mails ne finissent pas accidentellement dans le dossier Spam ou Promotions de votre boîte de réception. Si c'est le cas, cliquez sur "Marquer en tant que non-indésirable" et/ou "Déplacer vers la boîte de réception".`,Manage:"Gérer",Monthly:"Mensuel","More like this":"Plus de contenu similaire",Name:"Nom","Need more help? Contact support":"Besoin d'aide? Contactez le support","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"Les newsletters peuvent être désactivés pour votre compte pour deux raisons : un précédent e-mail a été marqué en tant que spam, ou une tentative d'envoi d'e-mail a résulté en une erreur persistante (renvoi).","Not receiving emails?":"Vous n’avez pas reçu d’e-mails ?","Now check your email!":"Veuillez maintenant vérifier votre boite de réception.","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"Une fois réinscrit, si vous ne voyez toujours pas d'e-mails dans votre boîte de réception, vérifiez votre dossier spam. Certains fournisseurs garde en mémoire les précédents signalements spams et continue de marquer les e-mails comme tels. Si tel est le cas, marquez la dernière newsletter comme 'non-indésirable' et déplacez-là vers votre boîte de réception.","Permanent failure (bounce)":"Erreur persistante (renvoi)",Plan:"Abonnement","Plan checkout was cancelled.":"Le paiement de l'abonnement a été annulé.","Plan upgrade was cancelled.":"La mise à niveau de l'abonnement a été annulée.","Please fill in required fields":"Veuillez remplir les champs requis",Price:"Prix","Re-enable emails":"Ré-activer les e-mails","Renews at {{price}}.":"Renouvellement pour {{price}}.",Retry:"Réesayer",Save:"Sauvegarder","Send an email and say hi!":"Envoyez un e-mail et dites bonjour !","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"Envoyez un e-mail à {{senderEmail}} et dites bonjour ! Cela devrait également signaler à votre fournisseur de messagerie que les e-mails depuis/vers cette adresse doivent être considérés comme dignes de confiance.","Sending login link...":"Envoi du lien de connexion…","Sending...":"Envoi…","Sign in":"Se connecter","Sign out":"Se déconnecter","Sign up":"S’inscrire","Signup error: Invalid link":"Erreur d'inscription : lien invalide","Sorry, that didn’t work.":"Désolé, cela n'a pas fonctionné.","Spam complaints":"Signalements pour spam","Start {{amount}}-day free trial":"Commencer l’essai gratuit de {{amount}} jours","Starting {{startDate}}":"À partir du {{startDate}}","Starting today":"À partir d'aujourd'hui","Submit feedback":"Envoyez votre avis",Subscribe:"S'abonner",Subscribed:"Abonné(e)",Success:"Succès","Success! Check your email for magic link to sign-in.":"Succès ! Vérifiez votre boîte de réception pour le lien de connexion.","Success! Your account is fully activated, you now have access to all content.":"Succès ! Votre compte est entièrement activé, et vous avez désormais accès à tout le contenu.","Success! Your email is updated.":"Succès ! Votre adresse e-mail a été mise à jour.","Successfully unsubscribed":"Désabonnement réussi","Thanks for the feedback!":"Merci pour votre avis !","That didn't go to plan":"Cela n’a pas fonctionné comme prévu","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"L'adresse e-mail qui vous est associée est {{memberEmail}} — Si celle-ci est incorrecte, vous pouvez la modifier dans votre <button>espace paramètres de compte</button>","There was a problem submitting your feedback. Please try again a little later.":"Un problème est survenu lors de la soumission de votre commentaire. Veuillez réessayer un peu plus tard.","This site is invite-only, contact the owner for access.":"Ce site est réservé aux invités, contactez le propriétaire pour y accéder.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Pour confirmer votre inscription, cliquez sur le lien de confirmation envoyé dans votre boite de réception. S’il ne vous parvient pas dans les 3 minutes, vérifiez votre dossier spam.","Try free for {{amount}} days, then {{originalPrice}}.":"Essayez gratuitement pendant {{amount}} jours, puis {{originalPrice}}.","Unlock access to all newsletters by becoming a paid subscriber.":"Débloquez l'accès à toutes les newsletters en devenant un abonné payant.","Unsubscribe from all emails":"Se désinscrire de tous les e-mails",Unsubscribed:"Désabonné(e)","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"La désinscription des e-mails n’annulera pas votre abonnement payant à {{title}}",Update:"Mise à jour","Update your preferences":"Mettez à jour vos préférences","Verify your email address is correct":"Vérifiez que votre adresse e-mail est correcte","View plans":"Voir les abonnements","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"La désinscription n’a pas fonctionné car votre adresse e-mail n’a pas été trouvée. Veuillez contacter le propriétaire du site.","Welcome back, {{name}}!":"Bon retour parmi nous, {{name}} !","Welcome back!":"Bon retour parmi nous !","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"Lorsqu'une boîte de réception n'accepte pas un e-mail, on parle communément d'un renvoi. Dans beaucoup de cas, cela peut être temporaire. Cependant, dans certains cas, un e-mail renvoyé peut être accompagné d'une erreur persistante, lorsqu'une adresse e-mail est invalide ou inexistante.","Why has my email been disabled?":"Pourquoi mon e-mail a-t-il été désactivé ?",Yearly:"Annuel","You currently have a free membership, upgrade to a paid subscription for full access.":"Vous avez actuellement un abonnement gratuit, passez à un abonnement payant pour un accès complet.","You have been successfully resubscribed":"Vous avez été réinscrit avec succès","You're currently not receiving emails":"Vous ne recevez actuellement pas d'e-mails","You're not receiving emails":"Vous ne recevez pas d'e-mails","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Vous ne recevez pas d’e-mails parce que vous avez marqué un message récent comme spam, ou parce que les messages n’ont pas pu être livrés à l’adresse e-mail que vous aviez indiquée.","You've successfully signed in.":"Vous vous êtes connecté avec succès.","Your account":"Votre compte","Your input helps shape what gets published.":"Votre avis aide à améliorer ce qui est publié.","Your subscription will expire on {{expiryDate}}":"Votre abonnement expirera le {{expiryDate}}","Your subscription will renew on {{renewalDate}}":"Votre abonnement sera renouvelé le {{renewalDate}}","Your subscription will start on {{subscriptionStart}}":"Votre abonnement débutera le {{subscriptionStart}}"},RS={"{{amount}} days free":"","{{amount}} off":"","{{amount}} off for first {{number}} months.":"","{{amount}} off for first {{period}}.":"","{{amount}} off forever.":"","{{discount}}% discount":"{{discount}}% popust","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"{{trialDays}} dana besplatno","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Link za prijavu je poslan na Vašu email adresu. Ako ne stigne za 3 minute provjerite spam folder.",Account:"Račun","Account settings":"Podešavanje korisničkog računa","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Nakon što probni period istekne, izvršit će se naplata za plan koji ste izabrali. Uvijek možete otkazati pretplatu prije toga.","Already a member?":"Već ste član?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"Natrag","Back to Log in":"Natrag na prijavu","Billing info":"","Black Friday":"","Cancel anytime.":"","Cancel subscription":"Otkaži pretplatu","Cancellation reason":"Razlog za otkazivanje",Change:"","Check spam & promotions folders":"","Check with your mail provider":"",Choose:"","Choose a different plan":"Izaberi drugi plan","Choose your newsletters":"Izaberi ","Click here to retry":"",Close:"Zatvori",Comments:"Komentari",Complimentary:"",Confirm:"Potvrdi","Confirm cancellation":"","Confirm subscription":"","Contact support":"",Continue:"Nastavi","Continue subscription":"","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"","Delete account":"Obriši račun","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"Nemate račun?",Edit:"",Email:"Email","Email newsletter":"","Email preference updated.":"Email podešavanja su sačuvana.","Email preferences":"Email podešavanja",Emails:"Email-ovi","Emails disabled":"Isključeni email-ovi","Ends {{offerEndDate}}":"",Error:"","Expires {{expiryDate}}":"",Forever:"","Free Trial – Ends {{trialEnd}}":"","Get help":"Potražite pomoć","Get in touch for help":"","Get notified when someone replies to your comment":"Obavijesti me ako netko odgovori na moj komentar:","Give feedback on this post":"Ostavite komentar na ovaj post","Help! I'm not receiving emails":"","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"Manje sadržaja kao što je ovaj",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"Podešavanja",Monthly:"Mjesečno","More like this":"Više sadržaja kao što je ovaj",Name:"Ime","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"Ne dobivate e-poštu?","Now check your email!":"Provjerite Vaš email!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"Cijena","Re-enable emails":"Ponovo omogući email adrese","Renews at {{price}}.":"",Retry:"Pokušaj opet",Save:"Sačuvaj","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"Link za prijavu se šalje...","Sending...":"Slanje...","Sign in":"Prijava","Sign out":"","Sign up":"Registracija","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"Počni besplatnu probu {{amount}} dana","Starting {{startDate}}":"","Starting today":"","Submit feedback":"Pošalji povratne informacije",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"Uspješna odjava","Thanks for the feedback!":"Hvala na povratnim informacijama!","That didn't go to plan":"Nešto nije kako treba","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"Ovaj sajt je samo za članove, kontaktirajte vlasnika kako biste dobili pristup.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Kliknite na link da biste završili registraciju. Ukoliko ne stigne za 3 minute provjerite spam folder!","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"Odjavite se sa svih email-ova",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Odjavljivanjem sa email-ova nećete prekinuti Vašu pretplatu na {{title}}",Update:"","Update your preferences":"Izmijenite Vaše postavke","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Nismo uspjeli odjaviti email. Molimo Vas kontaktirajte vlasnika sajta.","Welcome back, {{name}}!":"","Welcome back!":"","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"Godišnje","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"Uspješno ste se ponovo prijavili","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Ne primate e-poruke zato što ste nedavnu poruku označili kao nepoželjnu ili zato što se poruke nisu mogle isporučiti na adresu e-pošte koju ste naveli.","You've successfully signed in.":"","Your account":"Vaš korisnički račun","Your input helps shape what gets published.":"Vaš doprinos pomaže u oblikovanju onoga što se objavljuje.","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},LS={"{{amount}} days free":"","{{amount}} off":"","{{amount}} off for first {{number}} months.":"","{{amount}} off for first {{period}}.":"","{{amount}} off forever.":"","{{discount}}% discount":"{{discount}}% kedvezmény","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"{{trialDays}} nap ingyen","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"A bejelentkezéshez szükséges linket elküldtük a megadott email címre. Ha nem érkezne meg 3 percen belül, kérjük ellenőrizze a spam mappát!",Account:"Fiók","Account settings":"Fiók beállítások","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Az ingyenes próbaidőszak lejárta után a kiválasztott csomag normál díját fogjuk felszámolni. A feliratkozás bármikor ingyenesen lemondható a próbaidőszak alatt.","Already a member?":"Már van fiókja?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"Vissza","Back to Log in":"Vissza a bejelentkezéshez","Billing info":"","Black Friday":"","Cancel anytime.":"","Cancel subscription":"Feliratkozás megszűntetése","Cancellation reason":"A megszűntetés oka",Change:"","Check spam & promotions folders":"","Check with your mail provider":"",Choose:"","Choose a different plan":"Válasszon másik csomagot","Choose your newsletters":"Válassza ki a hírleveleket","Click here to retry":"",Close:"Bezár",Comments:"Kommentek",Complimentary:"",Confirm:"Jóváhgyás","Confirm cancellation":"","Confirm subscription":"","Contact support":"",Continue:"Folytatás","Continue subscription":"","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"","Delete account":"Fiók törlése","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"Még nincs fiókja?",Edit:"",Email:"Email","Email newsletter":"","Email preference updated.":"Email beállítások elmentve","Email preferences":"Email beállítások",Emails:"Email-ek","Emails disabled":"Email-ek kikapcsolva","Ends {{offerEndDate}}":"",Error:"","Expires {{expiryDate}}":"",Forever:"","Free Trial – Ends {{trialEnd}}":"","Get help":"Kérjen segítséget","Get in touch for help":"","Get notified when someone replies to your comment":"Értesítést kérek ha valaki válaszol a kommentemre","Give feedback on this post":"Hogy tetszett ez a cikk?","Help! I'm not receiving emails":"","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"Kevesebb ilyet",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"Kezelés",Monthly:"Havi","More like this":"Több ilyet",Name:"Név","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"Nem érkeznek meg az email-ek?","Now check your email!":"Ellenőrizze az postafiókját","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"Ár","Re-enable emails":"Email-ek aktiválása","Renews at {{price}}.":"",Retry:"Újra",Save:"Mentés","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"Bejelenkezési link küldése...","Sending...":"Küldés...","Sign in":"Bejelentkezés","Sign out":"","Sign up":"Regisztráció","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"{{amount}} napos próbaidőszak kezdése","Starting {{startDate}}":"","Starting today":"","Submit feedback":"Visszajelzés küldése",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"Sikeres leiratkozás","Thanks for the feedback!":"Köszönjük a visszajelzést","That didn't go to plan":"Hiba történt","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"A website csak meghívóval látogatható. Meghívóért lépjen kapcsolatba az oldal tulajdonosával!","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"A regisztráció befejezéséhez kérjük kattintson az email-ben kapott linkre. Ha a link nem érkezne meg 3 percen belül kérjük ellenőrizze a spam mappát.","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"Leiratkozás minden email-ről",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Az email-ről történő leiratkozás nem szűnteti meg a fiókját",Update:"","Update your preferences":"Beállítások mentése","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Ehhez az email-hez nem tartozik fiók. Kérjük lépjen kapcsolatba az oldal tulajdonosával.","Welcome back, {{name}}!":"","Welcome back!":"","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"Éves","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"Sikeres feliratkozás","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Azért nem kap email-t mert vagy spam-nek jelölt egy tőlünk kapott hírlevelet, vagy azért mert a megadott email cím nem tud üzeneteket fogadni.","You've successfully signed in.":"","Your account":"Fiók","Your input helps shape what gets published.":"A visszajelzése segít abban, hogy mit publikáljunk","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},US={"{{amount}} days free":"Gratis {{amount}} hari","{{amount}} off":"Diskon {{amount}}","{{amount}} off for first {{number}} months.":"Diskon {{amount}} untuk {{number}} bulan pertama.","{{amount}} off for first {{period}}.":"Diskon {{amount}} untuk {{period}} pertama.","{{amount}} off forever.":"Diskon {{amount}} selamanya.","{{discount}}% discount":"Diskon {{discount}}%","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"{{memberEmail}} tidak akan menerima buletin {{newsletterName}} lagi.","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"{{memberEmail}} tidak akan lagi menerima email ketika seseorang membalas komentar Anda.","{{memberEmail}} will no longer receive this newsletter.":"{{memberEmail}} tidak akan menerima buletin ini lagi.","{{trialDays}} days free":"Gratis {{trialDays}} hari","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Tautan masuk telah dikirimkan ke kotak masuk Anda. Jika tidak diterima dalam waktu 3 menit, pastikan untuk memeriksa folder spam Anda.",Account:"Akun","Account settings":"Pengaturan akun","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Setelah percobaan gratis berakhir, Anda akan dikenai biaya harga normal untuk tingkatan yang Anda pilih. Anda selalu dapat membatalkannya sebelum itu.","Already a member?":"Sudah menjadi anggota?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"Terjadi kesalahan tak terduga. Harap coba lagi atau <a>hubungi layanan dukungan</a> jika kesalahan tetap berlanjut.",Back:"Kembali","Back to Log in":"Kembali ke Masuk","Billing info":"Info pembayaran","Black Friday":"Black Friday","Cancel anytime.":"Batalkan kapan saja.","Cancel subscription":"Batalkan langganan","Cancellation reason":"Alasan pembatalan",Change:"Ubah","Check spam & promotions folders":"Periksa folder spam & promosi","Check with your mail provider":"Hubungi penyedia layanan email Anda",Choose:"Pilih","Choose a different plan":"Pilih paket yang berbeda","Choose your newsletters":"Pilih buletin Anda","Click here to retry":"Klik di sini untuk mencoba lagi",Close:"Tutup",Comments:"Komentar",Complimentary:"Pemberian gratis",Confirm:"Konfirmasi","Confirm cancellation":"Konfirmasi pembatalan","Confirm subscription":"Konfirmasi langganan","Contact support":"Hubungi layanan dukungan",Continue:"Lanjutkan","Continue subscription":"Lanjutkan berlangganan","Could not sign in. Login link expired.":"Tidak dapat masuk. Tautan untuk masuk telah kedaluwarsa.","Could not update email! Invalid link.":"Tidak dapat memperbarui email! Tautan tidak valid.","Create a new contact":"Buat kontak baru","Current plan":"Paket saat ini","Delete account":"Hapus akun","Didn't mean to do this? Manage your preferences <button>here</button>.":"Tidak bermaksud melakukan ini? Kelola preferensi Anda <button>di sini</button>.","Don't have an account?":"Belum punya akun?",Edit:"Edit",Email:"Email","Email newsletter":"Buletin email","Email preference updated.":"Preferensi email diperbarui.","Email preferences":"Preferensi email.",Emails:"Email","Emails disabled":"Email dinonaktifkan","Ends {{offerEndDate}}":"Berakhir {{offerEndDate}}",Error:"Eror","Expires {{expiryDate}}":"kedaluwarsa {{expiryDate}}",Forever:"Selamanya","Free Trial – Ends {{trialEnd}}":"Percobaan Gratis – Berakhir {{trialEnd}}","Get help":"Dapatkan bantuan","Get in touch for help":"Hubungi untuk mednapatkan bantuan","Get notified when someone replies to your comment":"Dapatkan pemberitahuan ketika seseorang menjawab komentar Anda","Give feedback on this post":"Berikan masukan pada postingan ini","Help! I'm not receiving emails":"Tolong! Saya tidak menerima email","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"Jika buletin ditandai sebagai spam, email secara otomatis dinonaktifkan untuk alamat tersebut guna memastikan Anda tidak lagi menerima pesan yang tidak diinginkan.","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"Jika keluhan spam tersebut tidak disengaja, atau Anda ingin mulai menerima email lagi, Anda dapat berlangganan kembali untuk menerima email dengan mengklik tombol di layar sebelumnya.","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"Jika Anda membatalkan langganan sekarang, Anda akan tetap memiliki akses hingga {{periodEnd}}.","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"Jika Anda memiliki akun email perusahaan atau pemerintah, hubungi departemen IT Anda dan mintalah mereka untuk mengizinkan pengiriman email dari {{senderEmail}} diterima.","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"Jika Anda ingin mulai menerima email lagi, langkah-langkah terbaik selanjutnya adalah memeriksa alamat email Anda pada data yang tersimpan untuk memastikan tidak ada masalah, kemudian klik tombol 'berlangganan kembali' pada layar sebelumnya.","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"Jika Anda tidak menerima buletin email langganan Anda, berikut adalah beberapa hal yang perlu diperiksa.","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"Jika Anda telah melakukan semua pemeriksaan tersebut dan masih belum menerima email, Anda dapat menghubungi kami melalui kontak {{supportAddress}} untuk mendapatkan bantuan.","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"Jika terjadi kegagalan permanen saat mencoba mengirim buletin, email akan dinonaktifkan pada akun tersebut.","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"Pada klien email Anda, tambahkan {{senderEmail}} ke daftar kontak Anda. Hal ini akan memberikan sinyal kepada layanan email Anda bahwa email yang dikirim dari alamat ini harus dipercaya.","Less like this":"Kurangi yang seperti ini",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':'Pastikan email tidak berakhir di kotak masuk Spam atau Promosi Anda secara tidak sengaja. Jika ya, klik "Tandai sebagai bukan spam" dan/atau "Pindahkan ke kotak masuk".',Manage:"Kelola",Monthly:"Bulanan","More like this":"Lebih banyak yang seperti ini",Name:"Nama","Need more help? Contact support":"Perlu bantuan lebih lanjut? Hubungi layanan dukungan","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"Buletin dapat dinonaktifkan pada akun Anda dengan dua alasan: Email sebelumnya ditandai sebagai spam, atau percobaan pengiriman email menghasilkan kegagalan permanen (bounce).","Not receiving emails?":"Tidak menerima email?","Now check your email!":"Sekarang periksa email Anda!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"Setelah berlangganan kembali, jika Anda masih tidak melihat email di kotak masuk Anda, periksa folder spam. Beberapa penyedia layanan kotak masuk menyimpan catatan keluhan spam sebelumnya dan akan terus menandai email tersebut. Jika hal ini terjadi, tandai buletin terbaru sebagai 'Bukan spam' untuk memindahkannya kembali ke kotak masuk utama Anda.","Permanent failure (bounce)":"Kegagalan permanen (bounce)",Plan:"Paket","Plan checkout was cancelled.":"Pembayaran paket dibatalkan.","Plan upgrade was cancelled.":"Peningkatan paket dibatalkan.","Please fill in required fields":"Harap isi kolom yang wajib diisi",Price:"Harga","Re-enable emails":"Aktifkan kembali email","Renews at {{price}}.":"Perpanjang dengan harga {{price}}",Retry:"Coba lagi",Save:"Simpan","Send an email and say hi!":"Kirimkan email dan ucapan hai!","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"Kirim email ke {{senderEmail}} dan ucapan halo. Hal ini juga dapat membantu memberi sinyal kepada penyedia layanan email Anda bahwa email yang dikirim ke dan dari alamat ini harus dipercaya.","Sending login link...":"Mengirim tautan masuk...","Sending...":"Mengirim...","Sign in":"Masuk","Sign out":"Keluar","Sign up":"Daftar","Signup error: Invalid link":"Kesalahan pendaftaran: Tautan tidak valid","Sorry, that didn’t work.":"Maaf, itu tidak berhasil.","Spam complaints":"Keluhan spam","Start {{amount}}-day free trial":"Mulai percobaan gratis selama {{amount}} hari","Starting {{startDate}}":"Dimulai pada {{startDate}}.","Starting today":"Dimulai hari ini","Submit feedback":"Kirim masukan",Subscribe:"Berlangganan",Subscribed:"Telah berlangganan",Success:"Berhasil","Success! Check your email for magic link to sign-in.":"Berhasil! Periksa email Anda untuk mendapatkan tautan ajaib untuk masuk.","Success! Your account is fully activated, you now have access to all content.":"Berhasil! Akun Anda telah diaktifkan sepenuhnya, sekarang Anda memiliki akses ke semua konten.","Success! Your email is updated.":"Berhasil! Email Anda telah diperbarui.","Successfully unsubscribed":"Berhasil berhenti berlangganan","Thanks for the feedback!":"Terima kasih atas masukannya!","That didn't go to plan":"Itu tidak berjalan sesuai rencana","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"Alamat email Anda yang kami miliki adalah {{memberEmail}} — jika itu tidak benar, Anda dapat memperbarui di <button>area pengaturan akun</button> Anda.","There was a problem submitting your feedback. Please try again a little later.":"Terjadi masalah saat mengirimkan masukan Anda. Coba lagi nanti.","This site is invite-only, contact the owner for access.":"Situs ini hanya untuk yang diundang, hubungi pemiliknya untuk mendapatkan akses.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Untuk menyelesaikan pendaftaran, klik tautan konfirmasi di kotak masuk Anda. Jika tidak diterima dalam waktu 3 menit, pastikan untuk memeriksa folder spam Anda!","Try free for {{amount}} days, then {{originalPrice}}.":"Coba gratis selama {{amount}} hari, kemudian {{originalPrice}}.","Unlock access to all newsletters by becoming a paid subscriber.":"Buka akses ke semua buletin dengan menjadi pelanggan berbayar.","Unsubscribe from all emails":"Berhenti berlangganan dari semua email",Unsubscribed:"Tidak berlangganan","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Berhenti berlangganan dari email tidak akan membatalkan langganan berbayar Anda ke {{title}}",Update:"Perbarui","Update your preferences":"Perbarui preferensi Anda","Verify your email address is correct":"Verifikasi bahwa alamat email Anda benar","View plans":"Lihat paket","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Kami tidak dapat menghentikan langganan Anda karena alamat email tidak ditemukan. Harap hubungi pemilik situs.","Welcome back, {{name}}!":"Selamat datang kembali, {{name}}!","Welcome back!":"Selamat datang kembali!","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"Ketika sebuah kotak masuk gagal menerima sebuah email, hal tersebut umumnya disebut sebagai bounce. Dalam banyak kasus, ini bisa bersifat sementara. Namun, dalam beberapa kasus, email yang terbounce dapat dikembalikan sebagai kegagalan permanen ketika alamat email yang dituju tidak valid atau tidak ada.","Why has my email been disabled?":"Mengapa email saya dinonaktifkan?",Yearly:"Tahunan","You currently have a free membership, upgrade to a paid subscription for full access.":"Saat ini Anda memiliki keanggotaan gratis, tingkatkan ke langganan berbayar untuk akses penuh","You have been successfully resubscribed":"Anda telah berhasil berlangganan kembali","You're currently not receiving emails":"Anda saat ini tidak menerima email.","You're not receiving emails":"Anda tidak menerima email.","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Anda tidak menerima email karena Anda telah menandai pesan terbaru sebagai spam, atau karena pesan tidak dapat dikirimkan ke alamat email yang Anda berikan.","You've successfully signed in.":"Anda telah berhasil masuk.","Your account":"Akun Anda","Your input helps shape what gets published.":"Masukan Anda membantu membentuk apa yang dipublikasikan.","Your subscription will expire on {{expiryDate}}":"Langganan Anda akan berakhir pada {{expiryDate}}","Your subscription will renew on {{renewalDate}}":"Langganan Anda akan diperpanjang pada {{renewalDate}}","Your subscription will start on {{subscriptionStart}}":"Langganan Anda akan dimulai pada {{subscriptionStart}}"},OS={"{{amount}} days free":"{{amount}} giorni gratis","{{amount}} off":"{{amount}} in meno","{{amount}} off for first {{number}} months.":"{{amount}} in meno per i primi {{number}} mesi.","{{amount}} off for first {{period}}.":"{{amount}} in meno per il primo {{period}}.","{{amount}} off forever.":"{{amount}} in meno per sempre.","{{discount}}% discount":"{{discount}}% di sconto","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"La newsletter {{newsletterName}} non verrà più inviata a {{memberEmail}}.","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"Non riceverà più email a {{memberEmail}} quando qualcuno risponde ai tuoi commenti.","{{memberEmail}} will no longer receive this newsletter.":"La newsletter non verrà più inviata a {{memberEmail}}.","{{trialDays}} days free":"{{trialDays}} giorni gratis","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Un link di accesso è stato inviato alla tua casella di posta. Se non lo ricevi entro 3 minuti, controlla nello spam.",Account:"Account","Account settings":"Impostazioni account","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Al termine della prova gratuita, ti verrà addebitato il prezzo regolare del piano scelto. Puoi annullare in qualsiasi momento prima della scadenza.","Already a member?":"Sei già iscritto?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"Si è verificato un errore imprevisto. <a>Contatta l'assistenza</a> se l'errore persiste.",Back:"Indietro","Back to Log in":"Torna alla pagina d'accesso","Billing info":"Informazioni di fatturazione","Black Friday":"Black friday","Cancel anytime.":"Cancella in qualsiasi momento.","Cancel subscription":"Cancella l'abbonamento","Cancellation reason":"Motivo della cancellazione",Change:"Cambia","Check spam & promotions folders":"Controlla nello spam","Check with your mail provider":"Contatta il tuo provider di posta elettronica",Choose:"Scegli","Choose a different plan":"Scegli un piano differente","Choose your newsletters":"Scegli la tua newsletter","Click here to retry":"Clicca qui per riprovare",Close:"Chiudi",Comments:"Commenti",Complimentary:"Omaggio",Confirm:"Conferma","Confirm cancellation":"Conferma cancellazione","Confirm subscription":"Conferma abbonamento","Contact support":"Contatta l'assistenza",Continue:"Continua","Continue subscription":"Riabbonati","Could not sign in. Login link expired.":"Accesso non effettuato. Il link è scaduto.","Could not update email! Invalid link.":"Email non aggiornata! Link non valido.","Create a new contact":"Crea un nuovo contatto","Current plan":"Piano attuale","Delete account":"Elimina account","Didn't mean to do this? Manage your preferences <button>here</button>.":"Non era tua intenzione? Gestisti <button>qui</button> le tue preferenze.","Don't have an account?":"Non hai un account?",Edit:"Modifica",Email:"Email","Email newsletter":"Newsletter","Email preference updated.":"Preferenze email aggiornate.","Email preferences":"Preferenze email",Emails:"Email","Emails disabled":"Email disattivate","Ends {{offerEndDate}}":"Finisce il {{offerEndDate}}",Error:"Errore","Expires {{expiryDate}}":"Scade il {{offerEndDate}}",Forever:"Per sempre","Free Trial – Ends {{trialEnd}}":"Prova gratuita – finisce il {{trialEnd}}","Get help":"Chiedi aiuto","Get in touch for help":"Richiedere assistenza","Get notified when someone replies to your comment":"Ricevi una notifica quando qualcuno risponde ad un tuo commento","Give feedback on this post":"Manda un feedback per questo post","Help! I'm not receiving emails":"Aiuto! Non ricevo le email","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"Se una newsletter viene segnalata come spam, le email per quell'indirizzo vengono disabilitate automaticamente, in modo che tu non riceva nessun messaggio indesiderato.","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"Se il reclamo per spam è stato commesso per errore, o nel caso tu voglia nuovamente ricevere le email, puoi iscriverti nuovamente cliccando il bottone nella schermata precedente.","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"Se annulli ora il tuo abbonamento, continuerai ad avere accesso fino al {{periodEnd}}.","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"Se possiedi un account email aziendale o governativo, contatta il reparto IT e chiedi di consentire la ricezione delle email da parte di {{senderEmail}}","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":'Se desideri ricevere nuovamente le email, la cosa migliore da fare è controllare che non ci siano problemi con il tuo indirizzo di posta e poi cliccare su "Reiscriviti" nella schermata precedente.',"If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"Se non ricevi la newsletter a cui sei iscritto, ecco alcuni passaggi da controllare.","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"Se avete completato tutti i passaggi e ancora non ricevete nessuna email, potete contattare l'assistenza a {{supportAddress}}.","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"Nel caso in cui si verifichi un fallimento permanente durante l'invio di una newsletter, le email saranno disabilitate per quell'account.","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"Nel tuo client di posta aggiungi {{senderEmail}} ai tuoi contatti. Questo fa si che il tuo provider riconosca l'indirizzo come attendibile.","Less like this":"Meno come questo",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':'Assicurati che le email non finiscano per sbaglio nello spam. Se ve ne sono, clicca su "Segnala come non spam" e/o "Sposta nella cartella Posta in arrivo".',Manage:"Gestisci",Monthly:"Mensile","More like this":"Più come questo",Name:"Nome","Need more help? Contact support":"Hai ancora bisogno di aiuto? Contatta l'assistenza","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"Le newsletter possono essere disabilitate nel tuo account per due ragioni: un'email precedente è stata segnalata come spam, o l'invio di un'email ha restituito un fallimento permanente (rimbalzo).","Not receiving emails?":"Non ricevi le email?","Now check your email!":"Ora controlla la tua email!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":`Se ancora non vedi le email una volta reiscritto, controlla nello spam. Alcuni provider tengono nota dei reclami e continuano a segnalare le email. Se questo dovesse succedere, segnala l'ultima email ricevuta come "non spam" e spostala nella tua posta in arrivo.`,"Permanent failure (bounce)":"Fallimento permanente (rimbalzo)",Plan:"Piano","Plan checkout was cancelled.":"Il pagamento del piano è stato annullato.","Plan upgrade was cancelled.":"L'aggiornamento del piano è stato annullato.","Please fill in required fields":"Si prega di compilare i campi obbligatori",Price:"Prezzo","Re-enable emails":"Riattiva le email","Renews at {{price}}.":"Rinnova a {{price}}.",Retry:"Riprova",Save:"Salva","Send an email and say hi!":"Invia un'email di saluti!","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"Invia un'email di saluti a {{senderEmail}}. Questo potrebbe aiutare a segnalare al tuo provider che le email da e verso questo indirizzo possono essere considerate attendibili.","Sending login link...":"Invio link di accesso...","Sending...":"Invio...","Sign in":"Accedi","Sign out":"Esci","Sign up":"Iscriviti","Signup error: Invalid link":"Errore di accesso: link invalido","Sorry, that didn’t work.":"Mi dispiace, non ha funzionato.","Spam complaints":"Reclami per spam","Start {{amount}}-day free trial":"Inizia i {{amount}} giorni di prova gratuita","Starting {{startDate}}":"Inizia il {{startDate}}","Starting today":"Inizia oggi","Submit feedback":"Invia feedback",Subscribe:"Abbonati",Subscribed:"Abbonato",Success:"Fatto","Success! Check your email for magic link to sign-in.":"Fatto! Controlla la tua email per il magico link d'accesso.","Success! Your account is fully activated, you now have access to all content.":"Fatto! Il tuo account è stato attivato, ora hai accesso a tutti i contenuti.","Success! Your email is updated.":"Fatto! La tua email è stata aggiornata.","Successfully unsubscribed":"Disiscrizione effettuata con successo","Thanks for the feedback!":"Grazie per il feedback!","That didn't go to plan":"Questo non era previsto","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"L'indirizzo email registrato è {{memberEmail}} — se non è corretto, puoi modificarlo nelle tue <button>impostazioni dell'account</button>.","There was a problem submitting your feedback. Please try again a little later.":"C'è stato un errore durante l'invio del tuo feedback. Si prega di riprovare più tardi.","This site is invite-only, contact the owner for access.":"Questo sito è accessibile solo su invito, contatta il proprietario per poter accedere.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Per completare l'iscrizione, clicca il link di conferma inviato alla tua email. Se non lo ricevi entro 3 minuti, controlla nello spam!","Try free for {{amount}} days, then {{originalPrice}}.":"Prova gratis per {{amount}} giorni, poi {{originalPrice}}.","Unlock access to all newsletters by becoming a paid subscriber.":"Abbonati per sbloccare l'accesso a tutte le newsletter.","Unsubscribe from all emails":"Disiscriviti da tutte le email",Unsubscribed:"Disiscritto","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"La disiscrizione dalle email non annullerà l'abbonamento a {{title}}",Update:"Aggiorna","Update your preferences":"Aggiorna le tue preferenze","Verify your email address is correct":"Controlla che il tuo indirizzo email sia corretto","View plans":"Vedi piani","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Non è stato possibile disiscriverti poiché l'indirizzo email non è stato trovato. Si prega di contattare il proprietario del sito.","Welcome back, {{name}}!":"È bello rivederti, {{name}}!","Welcome back!":"Bentornato!","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":`Quando una casella fallisce l'accettazione di un'email, questo viene normalmente chiamato "rimbalzo". In molti casi questo è temporaneo. Tuttavia, in alcuni casi un'email potrebbe tornare come un fallimento permanente se l'indirizzo è sbagliato o inesistente.`,"Why has my email been disabled?":"Perché la mia email è stata disattivata?",Yearly:"Annuale","You currently have a free membership, upgrade to a paid subscription for full access.":"Attualmente hai un piano gratuito, abbonati per ottenere l'accesso completo.","You have been successfully resubscribed":"Reiscrizione effettuata con successo","You're currently not receiving emails":"Al momento non ricevi nessuna email","You're not receiving emails":"Non ricevi nessuna email","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Non ricevi email perché hai contrassegnato un messaggio recente come spam, o perché non è stato possibile recapitare i messaggi all'indirizzo email fornito.","You've successfully signed in.":"Accesso effettuato.","Your account":"Il tuo account","Your input helps shape what gets published.":"Il tuo contributo aiuta a dare forma a ciò che viene pubblicato.","Your subscription will expire on {{expiryDate}}":"Il tuo abbonamento scadrà il {{expiryDate}}","Your subscription will renew on {{renewalDate}}":"Il tuo abbonamento verrà rinnovato il {{renewalDate}}","Your subscription will start on {{subscriptionStart}}":"Il tuo abbonamento inizierà il {{subscriptionStart}}"},YS={"{{amount}} days free":"","{{amount}} off":"","{{amount}} off for first {{number}} months.":"","{{amount}} off for first {{period}}.":"","{{amount}} off forever.":"","{{discount}}% discount":"{{discount}}% 할인","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"{{trialDays}}일 무료","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"로그인 링크가 이메일로 전송되었습니다. 3분 내에 도착하지 않으면 스팸 폴더를 확인해주세요.",Account:"계정","Account settings":"계정 설정","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"무료 체험이 종료되면 선택한 요금제의 정상 가격이 청구됩니다. 그 전에 언제든지 취소할 수 있습니다.","Already a member?":"이미 회원이신가요?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"뒤로","Back to Log in":"로그인으로 돌아가기","Billing info":"","Black Friday":"","Cancel anytime.":"","Cancel subscription":"구독 취소","Cancellation reason":"취소 사유",Change:"","Check spam & promotions folders":"","Check with your mail provider":"",Choose:"","Choose a different plan":"다른 요금제 선택","Choose your newsletters":"뉴스레터 선택","Click here to retry":"",Close:"닫기",Comments:"댓글",Complimentary:"",Confirm:"확인","Confirm cancellation":"","Confirm subscription":"","Contact support":"",Continue:"계속","Continue subscription":"","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"","Delete account":"계정 삭제","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"계정이 없으신가요?",Edit:"",Email:"이메일","Email newsletter":"","Email preference updated.":"이메일 기본 설정이 업데이트되었습니다.","Email preferences":"이메일 설정",Emails:"이메일","Emails disabled":"이메일 사용 중지됨","Ends {{offerEndDate}}":"",Error:"","Expires {{expiryDate}}":"",Forever:"","Free Trial – Ends {{trialEnd}}":"","Get help":"도움말 받기","Get in touch for help":"","Get notified when someone replies to your comment":"댓글에 대한 답변이 올라오면 알림 받기","Give feedback on this post":"이 게시물에 대한 의견 제공하기","Help! I'm not receiving emails":"","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"비슷한 게시물 줄이기",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"관리",Monthly:"월간","More like this":"비슷한 게시물 더 보기",Name:"이름","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"이메일을 받지 못하고 계신가요?","Now check your email!":"지금 이메일을 확인해주세요!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"가격","Re-enable emails":"이메일 재활성화","Renews at {{price}}.":"",Retry:"다시 시도",Save:"저장","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"로그인 링크 전송 중...","Sending...":"전송 중...","Sign in":"로그인","Sign out":"","Sign up":"가입하기","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"{{amount}}일 동안의 무료 체험 시작","Starting {{startDate}}":"","Starting today":"","Submit feedback":"의견 제출",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"구독이 성공적으로 취소되었습니다","Thanks for the feedback!":"의견을 보내주셔서 감사합니다!","That didn't go to plan":"계획대로 진행되지 않았습니다","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"위 사이트는 초대된 사용자만 사용이 가능합니다. 접근을 위해서는 관리자에게 연락하세요.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"가입을 완료하려면 이메일의 확인 링크를 클릭하세요. 3분 이내에 도착하지 않으면 스팸 폴더를 확인해주세요!","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"모든 이메일 구독 취소",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"이메일 구독 취소는 {{title}}에 대한 유료 구독을 취소하지 않습니다",Update:"","Update your preferences":"설정 업데이트","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"이메일 주소를 찾을 수 없어 구독을 취소할 수 없습니다. 사이트 관리자에게 문의하세요.","Welcome back, {{name}}!":"","Welcome back!":"","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"연간","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"성공적으로 재구독되었습니다","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"최근 메시지를 스팸으로 표시했거나 메시지를 제공된 이메일 주소로 전달할 수 없어 이메일을 받지 못하고 계십니다.","You've successfully signed in.":"","Your account":"계정","Your input helps shape what gets published.":"귀하의 의견은 게시물을 제공하기 위해 큰 도움이 됩니다.","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},FS={"{{amount}} days free":"","{{amount}} off":"","{{amount}} off for first {{number}} months.":"","{{amount}} off for first {{period}}.":"","{{amount}} off forever.":"","{{discount}}% discount":"{{discount}}% хямдрал","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"{{trialDays}} өдөр үнэгүй","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Таны имэйл рүү нэвтрэх холбоосыг илгээлээ. Хэрвээ 3 минутын дотор ирэхгүй бол спамаа шалгана уу.",Account:"Бүртгэл","Account settings":"Бүртгэлийн тохиргоо","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Үнэгүй туршилтын хугацаа дуусахад таны данснаас сонгосон багцын үнэ хасагдана. Гэвч та өмнө нь цуцлах боломжтой.","Already a member?":"Бүртгэлтэй юу?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"Буцах","Back to Log in":"Нэвтрэх хэсэг рүү буцах","Billing info":"","Black Friday":"","Cancel anytime.":"","Cancel subscription":"Захиалгаа цуцлах","Cancellation reason":"Цуцалсан шалтгаан",Change:"","Check spam & promotions folders":"","Check with your mail provider":"",Choose:"","Choose a different plan":"Өөр багц сонгох","Choose your newsletters":"Товхимолоо сонгох","Click here to retry":"",Close:"Хаах",Comments:"Сэтгэгдлүүд",Complimentary:"",Confirm:"Баталгаажуулах","Confirm cancellation":"","Confirm subscription":"","Contact support":"",Continue:"Үргэлжлүүлэх","Continue subscription":"","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"","Delete account":"Бүртгэлээ устгах","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"Бүргэлгүй юу?",Edit:"",Email:"Имэйл","Email newsletter":"","Email preference updated.":"Имэйлийн тохиргоо шинэчлэгдлээ.","Email preferences":"Имэйлийн тохиргоо",Emails:"Имэйлүүд","Emails disabled":"Имэйлийг идэхгүй болгосон","Ends {{offerEndDate}}":"",Error:"","Expires {{expiryDate}}":"",Forever:"","Free Trial – Ends {{trialEnd}}":"","Get help":"Тусламж","Get in touch for help":"","Get notified when someone replies to your comment":"Хэн нэгэн таны сэтгэгдэлд хариу бичих үед мэдэгдэх","Give feedback on this post":"Энэ нийтлэлд саналаа өгөх","Help! I'm not receiving emails":"","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"Таалагдсангүй",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"Удирдах",Monthly:"Сарын","More like this":"Таалагдлаа",Name:"Нэр","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"Имэйл ирээгүй юу?","Now check your email!":"Одоо имэйлээ шалгана уу!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"Үнэ","Re-enable emails":"Имэйлийг дахин идэвхжүүлэх","Renews at {{price}}.":"",Retry:"Дахин оролдох",Save:"Хадгалах","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"Нэвтрэх холбоосыг илгээж байна...","Sending...":"Илгээж байна...","Sign in":"Нэвтрэх","Sign out":"","Sign up":"Бүртгүүлэх","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"{{amount}} өдрийн үнэгүй туршилтыг эхлүүлэх","Starting {{startDate}}":"","Starting today":"","Submit feedback":"Саналаа илгээх",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"Захиалгыг амжилттай цуцаллаа","Thanks for the feedback!":"Саналаа илгээсэнд баярлалаа!","That didn't go to plan":"","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"Энэхүү сайт руу зөвхөн урилгаар нэвтрэх боломжтой тул та админд нь хандана уу.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Тан руу илгээсэн баталгаажуулах холбоос дээр дарж бүртгэлээ дуусгана уу. Хэрвээ 3 минутын дотор ирэхгүй бол спамаа шалгана уу!","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"Бүх имэйлийг зогсоох",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Имэйлийг зогсоосон ч таны {{title}} төлбөртэй захиалга цуцлагдахгүй",Update:"","Update your preferences":"Тохиргоогоо шинэчлэх","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Энэхүү имэйл хаяг олдоогүй учир захиалгыг цуцлах боломжгүй. Та сайтын админд хандана уу.","Welcome back, {{name}}!":"","Welcome back!":"","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"Жилийн","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"Таны захиалга амжилттай дахин идэвхжлээ","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Таны имэйл хүлээж авахгүй байгаа шалтгаан нь нэг бол та аль нэг имэйлийг спам гэж тэмдэглэсэн, эсвэл таны хаяг имэйл хүлээж авах боломжгүй байна.","You've successfully signed in.":"","Your account":"Таны бүртгэл","Your input helps shape what gets published.":"Таны санал дараа дараагийн нийтлэлийг илүү чанартай болгоход туслана","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},BS={"{{amount}} days free":"Percuma {{amount}} hari","{{amount}} off":"","{{amount}} off for first {{number}} months.":"{{amount}} potongan untuk {{number}} bulan pertama.","{{amount}} off for first {{period}}.":"{{amount}} potongan untuk {{period}} pertama.","{{amount}} off forever.":"{{amount}} potongan selama-lamanya.","{{discount}}% discount":"{{discount}}% diskaun","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"{{memberEmail}} tidak akan menerima newsletter {{newsletterName}} lagi.","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"{{memberEmail}} tidak akan menerima email apabila seseorang membalas komen anda.","{{memberEmail}} will no longer receive this newsletter.":"{{memberEmail}} tidak akan menerima newsletter ini lagi.","{{trialDays}} days free":"Percuma {{trialDays}} hari","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Pautan log masuk telah dihantar ke peti masuk anda. Jika ia tidak sampai dalam masa 3 minit, pastikan anda menyemak folder spam anda.",Account:"Akaun","Account settings":"Tetapan akaun","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Selepas tempoh percubaan percuma tamat, anda akan dicaj harga biasa untuk peringkat yang anda pilih. Anda sentiasa boleh membatalkan sebelum itu.","Already a member?":"Sudah menjadi ahli?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"Ralat yang tidak dijangka berlaku. Sila cuba lagi atau <a>hubungi sokongan</a> jika ralat berterusan.",Back:"Kembali","Back to Log in":"Kembali ke Log masuk","Billing info":"Maklumat bil","Black Friday":"","Cancel anytime.":"Batalkan bila-bila masa.","Cancel subscription":"Batalkan langganan","Cancellation reason":"Alasan pembatalan",Change:"Ubah","Check spam & promotions folders":"Semak folder spam & promosi","Check with your mail provider":"Semak dengan pembekal mel anda",Choose:"Pilih","Choose a different plan":"Pilih pelan yang berbeza","Choose your newsletters":"Pilih newsletter anda","Click here to retry":"Klik di sini untuk cuba semula",Close:"Tutup",Comments:"Komen",Complimentary:"",Confirm:"Sahkan","Confirm cancellation":"Sahkan pembatalan","Confirm subscription":"Sahkan langganan","Contact support":"Hubungi sokongan",Continue:"Teruskan","Continue subscription":"Teruskan langganan","Could not sign in. Login link expired.":"Tidak dapat log masuk. Pautan log masuk tamat tempoh.","Could not update email! Invalid link.":"Tidak dapat mengemas kini e-mel! Pautan tidak sah.","Create a new contact":"Cipta kenalan baru","Current plan":"Pelam semasa","Delete account":"Padam akaun","Didn't mean to do this? Manage your preferences <button>here</button>.":"Tidak bermaksud untuk melakukan ini? Urus pilihan anda <butang>di sini</button>.","Don't have an account?":"Tiada akaun?",Edit:"Sunting",Email:"E-mel","Email newsletter":"Newsletter e-mel","Email preference updated.":"Emel pilihan dikemas kini.","Email preferences":"Emel pilihan",Emails:"E-mel","Emails disabled":"E-mel dilumpuhkan","Ends {{offerEndDate}}":"Tamat pada {{offerEndDate}}",Error:"Ralat","Expires {{expiryDate}}":"Luput pada {{expiryDate}}",Forever:"Selamanya","Free Trial – Ends {{trialEnd}}":"Percubaan Percuma – Tamat {{trialEnd}}","Get help":"Dapatkan bantuan","Get in touch for help":"Hubungi untuk mendapatkan bantuan","Get notified when someone replies to your comment":"Dapatkan pemberitahuan apabila seseorang membalas komen anda","Give feedback on this post":"Berikan maklum balas mengenai pos ini","Help! I'm not receiving emails":"Tolong! Saya tidak menerima e-mel","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"Jika newsletter ditanda sebagai spam, e-mel akan dilumpuhkan secara automatik untuk alamat tersebut untuk memastikan anda tidak lagi menerima sebarang mesej yang tidak diingini.","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"Jika aduan spam itu tidak disengajakan, atau anda ingin mula menerima e-mel semula, anda boleh melanggan semula e-mel dengan mengklik butang pada skrin sebelumnya.","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"Jika anda membatalkan langganan anda sekarang, anda akan terus mendapat akses sehingga {{periodEnd}}.","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"Jika anda mempunyai akaun e-mel korporat atau kerajaan, hubungi jabatan IT anda dan minta mereka membenarkan e-mel diterima daripada {{senderEmail}}","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"Jika anda ingin mula menerima e-mel semula, langkah terbaik seterusnya ialah menyemak alamat e-mel anda pada fail untuk sebarang isu dan kemudian klik langgan semula pada skrin sebelumnya.","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"Jika anda tidak menerima newsletter e-mel yang anda langgan, berikut adalah beberapa perkara untuk diperiksa.","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"Jika anda telah menyelesaikan semua semakan ini dan anda masih tidak menerima e-mel, anda boleh menghubungi untuk mendapatkan sokongan dengan menghubungi {{supportAddress}}.","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"Sekiranya kegagalan kekal diterima semasa cuba menghantar newsletter, e-mel akan dilumpuhkan pada akaun.","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"Dalam klien e-mel anda tambah {{senderEmail}} pada senarai kenalan anda. Ini memberi isyarat kepada pembekal mel anda bahawa e-mel yang dihantar dari alamat ini harus dipercayai.","Less like this":"Kurang macam ni",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':'Pastikan e-mel tidak tiba-tiba masuk ke dalam folder Spam atau Promosi peti masuk anda. Jika ya, klik pada "Tandakan sebagai bukan spam" dan/atau "Alih ke peti masuk".',Manage:"Urus",Monthly:"Bulanan","More like this":"Lebih seperti ini",Name:"Nama","Need more help? Contact support":"Perlukan bantuan lagi? Hubungi sokongan","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"Newsletter boleh dilumpuhkan pada akaun anda atas dua sebab: E-mel sebelumnya telah ditandakan sebagai spam atau percubaan menghantar e-mel mengakibatkan kegagalan kekal (bounce).","Not receiving emails?":"Tidak menerima e-mel?","Now check your email!":"Semak e-mel anda sekarang!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"Setelah melanggan semula, jika anda masih tidak melihat e-mel dalam peti masuk anda, semak folder spam anda. Sesetengah pembekal peti masuk menyimpan rekod aduan spam sebelumnya dan akan terus membenderakan e-mel. Jika ini berlaku, tandakan surat berita terkini sebagai 'Bukan spam' untuk mengalihkannya kembali ke peti masuk utama anda.","Permanent failure (bounce)":"Kegagalan kekal (bounce)",Plan:"Pelan","Plan checkout was cancelled.":"Daftar keluar pelan telah dibatalkan.","Plan upgrade was cancelled.":"Naik taraf pelan telah dibatalkan.","Please fill in required fields":"Sila isikan medan yang diperlukan",Price:"Harga","Re-enable emails":"Membolehkan semula e-mel","Renews at {{price}}.":"Perbaharui pada {{price}}.",Retry:"Cuba semula",Save:"Simpan","Send an email and say hi!":"Hantar e-mel dan katakan hai!","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"Hantar e-mel kepada {{senderEmail}} dan katakan hai. Ini juga boleh membantu memberi isyarat kepada pembekal mel anda bahawa e-mel ke dan dari alamat ini harus dipercayai.","Sending login link...":"Menghantar pautan log masuk...","Sending...":"Menghantar...","Sign in":"Log masuk","Sign out":"Log keluar","Sign up":"Daftar","Signup error: Invalid link":"Ralat daftar: Pautan tidak sah","Sorry, that didn’t work.":"Maaf, itu tidak berfungsi.","Spam complaints":"Aduan spam","Start {{amount}}-day free trial":"Mulakan percubaan percuma {{amount}} hari","Starting {{startDate}}":"Mulai {{startDate}}","Starting today":"Mulai hari ini","Submit feedback":"Serahkan maklum balas",Subscribe:"Langgan",Subscribed:"Dilanggan",Success:"Berjaya","Success! Check your email for magic link to sign-in.":"Berjaya! Semak e-mel anda untuk magic link untuk log masuk.","Success! Your account is fully activated, you now have access to all content.":"Berjaya! Akaun anda telah diaktifkan sepenuhnya, anda kini mempunyai akses ke semua kandungan.","Success! Your email is updated.":"Berjaya! E-mel anda dikemas kini.","Successfully unsubscribed":"Pemberhentian langganan berjaya","Thanks for the feedback!":"Terima kasih atas maklum balas!","That didn't go to plan":"Itu tidak berjalan sesuai dengan rancangan","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"Alamat e-mel yang kami miliki untuk anda adalah {{memberEmail}} — jika itu tidak betul, anda boleh mengemas kini di <button>ruang tetapan akaun</button> anda.","There was a problem submitting your feedback. Please try again a little later.":"Terdapat masalah menghantar maklum balas anda. Sila cuba sebentar lagi.","This site is invite-only, contact the owner for access.":"Laman web ini hanya untuk jemputan, hubungi pemilik untuk akses.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Untuk melengkapkan pendaftaran, klik pautan pengesahan di peti masuk anda. Jika ia tidak tiba dalam masa 3 minit, semak folder spam anda!","Try free for {{amount}} days, then {{originalPrice}}.":"Cuba secara percuma selama {{amount}} hari, kemudian {{originalPrice}}.","Unlock access to all newsletters by becoming a paid subscriber.":"Buka akses ke semua newsletter dengan menjadi pelanggan berbayar.","Unsubscribe from all emails":"Berhenti langganan dari semua e-mel",Unsubscribed:"Langganan diberhentikan","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Memberhentikan langganan dari e-mel tidak akan membatalkan langganan berbayar anda ke {{title}}",Update:"Kemas kini","Update your preferences":"Kemas kini keutamaan anda","Verify your email address is correct":"Sahkan jika alamat e-mel anda betul","View plans":"Lihat pelan","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Kami tidak dapat membatalkan langganan anda kerana alamat e-mel tidak ditemui. Sila hubungi pemilik laman web.","Welcome back, {{name}}!":"Selamat kembali, {{name}}!","Welcome back!":"Selamat kembali!","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"Apabila peti masuk gagal menerima e-mel, ia biasanya disebut sebagai bounce. Dalam banyak kes, ini hanya sementara. Walau bagaimanapun, dalam beberapa kes, e-mel bounce boleh dikembalikan sebagai kegagalan kekal apabila alamat e-mel tidak sah atau tidak wujud.","Why has my email been disabled?":"Mengapa e-mel saya telah dilumpuhkan?",Yearly:"Tahunan","You currently have a free membership, upgrade to a paid subscription for full access.":"Anda kini mempunyai keahlian percuma, naik taraf ke langganan berbayar untuk akses penuh.","You have been successfully resubscribed":"Anda telah berjaya melanggan semula","You're currently not receiving emails":"Anda kini tidak menerima e-mel","You're not receiving emails":"Anda tidak menerima e-mel","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Anda tidak menerima e-mel kerana anda sama ada menandai mesej terkini sebagai spam, atau kerana mesej tidak dapat dihantar ke alamat e-mel yang diberikan.","You've successfully signed in.":"Anda telah berjaya log masuk.","Your account":"Akaun anda","Your input helps shape what gets published.":"Input anda membantu membentuk apa yang diterbitkan.","Your subscription will expire on {{expiryDate}}":"Langganan anda akan tamat tempoh pada {{expiryDate}}","Your subscription will renew on {{renewalDate}}":"Langganan anda akan diperbaharui pada {{renewalDate}}","Your subscription will start on {{subscriptionStart}}":"Langganan anda akan bermula pada {{subscriptionStart}}"},HS={"{{amount}} days free":"","{{amount}} off":"","{{amount}} off for first {{number}} months.":"","{{amount}} off for first {{period}}.":"","{{amount}} off forever.":"","{{discount}}% discount":"{{discount}}% korting","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"{{trialDays}} dagen gratis","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Je hebt een email met een login link ontvangen. Check je spamfolder als hij niet binnen de 3 minuten aankomt.",Account:"Account","Account settings":"Gegevens","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Na de proefperiode zal het normale tarief in rekening worden gebracht voor het door jou gekozen abonnement.","Already a member?":"Al lid?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"Terug","Back to Log in":"Terug naar inloggen","Billing info":"","Black Friday":"","Cancel anytime.":"","Cancel subscription":"Abonnement opzeggen","Cancellation reason":"Reden voor opzegging",Change:"","Check spam & promotions folders":"","Check with your mail provider":"",Choose:"","Choose a different plan":"Kies een ander abonnement","Choose your newsletters":"Kies jouw nieuwsbrieven","Click here to retry":"",Close:"Sluiten",Comments:"Reacties",Complimentary:"",Confirm:"Bevestigen","Confirm cancellation":"","Confirm subscription":"","Contact support":"",Continue:"Doorgaan","Continue subscription":"","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"","Delete account":"Account verwijderen","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"Heb je nog geen account?",Edit:"",Email:"E-mail","Email newsletter":"","Email preference updated.":"E-mailinstellingen aanpassen","Email preferences":"E-mailinstellingen",Emails:"E-mails","Emails disabled":"E-mails zijn uitgeschakeld","Ends {{offerEndDate}}":"",Error:"","Expires {{expiryDate}}":"",Forever:"","Free Trial – Ends {{trialEnd}}":"","Get help":"Lees meer","Get in touch for help":"","Get notified when someone replies to your comment":"Blijf op de hoogte als iemand op jouw reactie reageert","Give feedback on this post":"Deel je mening over dit artikel","Help! I'm not receiving emails":"","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"Minder hiervan",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"Beheer",Monthly:"Maandelijks","More like this":"Meer hiervan",Name:"Naam","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"Ontvang je geen e-mails?","Now check your email!":"Check nu je e-mail!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"Prijs","Re-enable emails":"E-mails weer inschakelen","Renews at {{price}}.":"",Retry:"Opnieuw proberen",Save:"Opslaan","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"Inloglink versturen...","Sending...":"Versturen...","Sign in":"Inloggen","Sign out":"","Sign up":"Registreren","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"Start gratis je {{amount}}-daagse proefperiode","Starting {{startDate}}":"","Starting today":"","Submit feedback":"Deel je feedback",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"Succesvol uitgeschreven","Thanks for the feedback!":"Bedankt voor je feedback!","That didn't go to plan":"Er ging iets mis","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"Deze site is alleen toegankelijk op uitnodiging, neem contact op met de eigenaar.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Klik op de bevestigingslink in de e-mail om je registratie af te ronden. Check ook je spamfolder als hij niet binnen de 3 minuten aankomt.","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"Uitschrijven voor alles",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Je betaalde abonnement voor {{title}} wordt niet geannuleerd als je je uitschrijft voor e-mails",Update:"","Update your preferences":"Voorkeuren aanpassen","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Het is niet gelukt om je uit te schrijven, omdat je e-mailadres niet is gevonden. Neem contact met ons op.","Welcome back, {{name}}!":"","Welcome back!":"","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"Jaarlijks","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"Je bent weer succesvol geabonneerd","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Je ontvangt geen e-mails omdat je ofwel een recent bericht als spam had gemarkeerd, of omdat de berichten niet verzonden konden worden naar jouw e-mailadres.","You've successfully signed in.":"","Your account":"Jouw account","Your input helps shape what gets published.":"Jouw mening helpt bepalen wat er gepubliceerd wordt.","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},qS={"{{amount}} days free":"","{{amount}} off":"","{{amount}} off for first {{number}} months.":"","{{amount}} off for first {{period}}.":"","{{amount}} off forever.":"","{{discount}}% discount":"{{discount}}% rabatt","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"{{trialDays}} dager gratis","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"En påloggingslenke har blitt sendt til innboksen din. Hvis den ikke kommer innen 3 minutter, må du sjekke søppelposten din.",Account:"Konto","Account settings":"Kontoinnstillinger","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Etter at en gratis prøveperiode er over, vil du bli belastet den vanlige prisen for nivået du har valgt. Du kan alltid avbryte før det.","Already a member?":"Allerede medlem?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"Tilbake","Back to Log in":"Tilbake til innlogging","Billing info":"","Black Friday":"","Cancel anytime.":"","Cancel subscription":"Avbryt abonnement","Cancellation reason":"Grunn til avbryting",Change:"","Check spam & promotions folders":"","Check with your mail provider":"",Choose:"","Choose a different plan":"Velg et annet nivå","Choose your newsletters":"Velg dine nyhetsbrev","Click here to retry":"",Close:"Lukk",Comments:"Kommentarer",Complimentary:"",Confirm:"Bekreft","Confirm cancellation":"","Confirm subscription":"","Contact support":"",Continue:"Fortsett","Continue subscription":"","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"","Delete account":"Slett konto","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"Har du ikke konto?",Edit:"",Email:"Epost","Email newsletter":"","Email preference updated.":"Innstillinger for epost oppdatert","Email preferences":"Innstillinger for epost",Emails:"Epost","Emails disabled":"Epost deaktivert","Ends {{offerEndDate}}":"",Error:"","Expires {{expiryDate}}":"",Forever:"","Free Trial – Ends {{trialEnd}}":"","Get help":"Få hjelp","Get in touch for help":"","Get notified when someone replies to your comment":"Få varsel dersom noen svarer på kommentaren din","Give feedback on this post":"Gi tilbakemelding på dette innlegget","Help! I'm not receiving emails":"","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"Mindre som dette",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"Administrer",Monthly:"Månedlig","More like this":"Mer som dette",Name:"Navn","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"Mottar du ikke epost?","Now check your email!":"Sjekk eposten din!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"Pris","Re-enable emails":"Re-aktiver epost","Renews at {{price}}.":"",Retry:"Prøv på nytt",Save:"Lagre","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"Sender påloggingslenke","Sending...":"Sender...","Sign in":"Logg inn","Sign out":"","Sign up":"Opprett bruker","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"Start gratis prøveperiode på {{amount}} dager","Starting {{startDate}}":"","Starting today":"","Submit feedback":"Send tilbakemelding",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"Avmelding vellykket","Thanks for the feedback!":"Takk for tilbakemeldingen!","That didn't go to plan":"Det gikk ikke som planlagt","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"Denne siten er kun fo inviterte. Kontakt eieren for invitasjon.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"For å fullføre registreringen, klikk på bekreftelseslenken i innboksen din. Hvis den ikke kommer innen 3 minutter, må du sjekke søppelposten din!","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"Meld deg av mottak av all epost",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Å melde seg av e-poster vil ikke avbryte abonnementet ditt på {{title}}",Update:"","Update your preferences":"Oppdater dine valg","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Vi kunne ikke melde deg av siden e-postadressen ikke ble funnet. Vennligst kontakt nettstedseieren.","Welcome back, {{name}}!":"","Welcome back!":"","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"Årlig","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"Du har blitt meldt på igjen","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Du mottar ikke e-post fordi du enten nylig har merket en melding som spam, eller fordi meldinger ikke kunne leveres til den oppgitte e-postadressen din.","You've successfully signed in.":"","Your account":"Din konto","Your input helps shape what gets published.":"Din tilbakemelding bidrar til å forme hva som blir publisert.","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},VS={"{{amount}} days free":"","{{amount}} off":"","{{amount}} off for first {{number}} months.":"","{{amount}} off for first {{period}}.":"","{{amount}} off forever.":"","{{discount}}% discount":"Rabat {{discount}}%","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"{{trialDays}} darmowych dni","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Link do logowania został wysłany do twojej skrzynki odbiorczej. Jeśli nie dotrze w ciągu 3 minut, sprawdź swój folder spamu.",Account:"Konto","Account settings":"Ustawienia konta","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Po zakończeniu okresu próbnego zostanie naliczona regularna opłata za wybrany poziom subskrypcji. Zawsze możesz anulować subskrypcję zanim to nastąpi.","Already a member?":"Masz już konto?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"Wstecz","Back to Log in":"Wróć do logowania","Billing info":"","Black Friday":"","Cancel anytime.":"","Cancel subscription":"Anuluj subskrypcję","Cancellation reason":"Powód anulowania",Change:"","Check spam & promotions folders":"","Check with your mail provider":"",Choose:"","Choose a different plan":"Wybierz inny plan","Choose your newsletters":"Wybierz swoje newslettery","Click here to retry":"",Close:"Zamknij",Comments:"Komentarze",Complimentary:"",Confirm:"Potwierdź","Confirm cancellation":"","Confirm subscription":"","Contact support":"",Continue:"Dalej","Continue subscription":"","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"","Delete account":"Skasuj konto","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"Nie masz jeszcze konta?",Edit:"",Email:"Email","Email newsletter":"","Email preference updated.":"Ustawienia email zaktualizowane","Email preferences":"Ustawienia email",Emails:"Emaile","Emails disabled":"Wysyłanie emaili zablokowane","Ends {{offerEndDate}}":"",Error:"","Expires {{expiryDate}}":"",Forever:"","Free Trial – Ends {{trialEnd}}":"","Get help":"Uzyskaj pomoc","Get in touch for help":"","Get notified when someone replies to your comment":"Otrzymaj powiadomienie gdy ktoś odpowie na twój komentarz","Give feedback on this post":"Oceń ten wpis","Help! I'm not receiving emails":"","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"Mniej podobnych",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"Zarządzaj",Monthly:"Miesięcznie","More like this":"Więcej podobnych",Name:"Imię i nazwisko","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"Nie dostajesz emaili?","Now check your email!":"Teraz sprawdź swoją pocztę!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"Cena","Re-enable emails":"Włącz ponownie emaile","Renews at {{price}}.":"",Retry:"Powtórz",Save:"Zapisz","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"Wysyłanie linku do logowania...","Sending...":"Wysyłanie...","Sign in":"Zaloguj się","Sign out":"","Sign up":"Zarejestruj się","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"Rozpocznij {{amount}}-dniowy okres próbny","Starting {{startDate}}":"","Starting today":"","Submit feedback":"Wyślij ocenę",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"Wypisanie udane","Thanks for the feedback!":"Dziękujemy za ocenę!","That didn't go to plan":"Coś poszło nie tak","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"Ta strona jest tylko na zaproszenie, skontaktuj się z właścicielem aby uzyskać dostęp.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Aby dokończyć rejestrację, kliknij w link przesłany na twoją skrzynkę pocztową. Jeśli nie dotrze on w ciągu 3 minut, sprawdź folder spamu!","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"Wypisz się w wszystkich emaili",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Wypisanie się z otrzymywania emaili nie powoduje anulowania płatnej subskrypcji {{title}}",Update:"","Update your preferences":"Zaktualizuj preferencje","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Nie udało się wypisać, bo nie znaleziono adresu email. Skontaktuj się w właścicielem strony.","Welcome back, {{name}}!":"","Welcome back!":"","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"Rocznie","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"Zostałeś ponownie zapisany","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Nie otrzymujesz powiadomień email, ponieważ oznaczyłeś ostatnią wiadomość jako spam lub nie udało się dostarczyć wiadomości na podany adres email.","You've successfully signed in.":"","Your account":"Twoje konto","Your input helps shape what gets published.":"Twoja ocena pomoże nam lepiej kształtować nasz publikacje.","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},WS={"{{amount}} days free":"","{{amount}} off":"","{{amount}} off for first {{number}} months.":"","{{amount}} off for first {{period}}.":"","{{amount}} off forever.":"","{{discount}}% discount":"{{discount}}% de desconto","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"{{trialDays}} dias grátis","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Um link de acesso foi enviado para o teu email. Se o email não chegar dentro de 3 minutos, verifica a pasta de spam/lixo do teu email.",Account:"Conta","Account settings":"Definições de conta","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Após o fim do teste grátis, será cobrado o valor normal para o nível escolhido. Podes sempre cancelar até esse momento para evitar ser cobrado.","Already a member?":"Já és membro?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"Voltar","Back to Log in":"Voltar ao login","Billing info":"","Black Friday":"","Cancel anytime.":"","Cancel subscription":"Cancelar subscrição","Cancellation reason":"Motivo para o cancelamento",Change:"","Check spam & promotions folders":"","Check with your mail provider":"",Choose:"","Choose a different plan":"Escolhe um plano diferente","Choose your newsletters":"Escolhe as tuas newsletters","Click here to retry":"",Close:"Fechar",Comments:"Comentários",Complimentary:"",Confirm:"Confirmar","Confirm cancellation":"","Confirm subscription":"","Contact support":"",Continue:"Continuar","Continue subscription":"","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"","Delete account":"Eliminar a conta","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"Não tens conta?",Edit:"",Email:"Email","Email newsletter":"","Email preference updated.":"Preferências de email atualizadas.","Email preferences":"Preferências de email",Emails:"Emails","Emails disabled":"Email desativado","Ends {{offerEndDate}}":"",Error:"","Expires {{expiryDate}}":"",Forever:"","Free Trial – Ends {{trialEnd}}":"","Get help":"Obter ajuda","Get in touch for help":"","Get notified when someone replies to your comment":"Ser notificado quando alguém responde a um comentário teu","Give feedback on this post":"Dar feedback a este artigo","Help! I'm not receiving emails":"","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"Menos como este",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"Gerir",Monthly:"Mensalmente","More like this":"Mais como este",Name:"Nome","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"Não recebes os emails?","Now check your email!":"Verifica o teu email agora!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"Preço","Re-enable emails":"Reativar emails","Renews at {{price}}.":"",Retry:"Tentar novamente",Save:"Guardar","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"A enviar link de acesso...","Sending...":"A enviar...","Sign in":"Entrar","Sign out":"","Sign up":"Registar","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"Iniciar teste de {{amount}} dias","Starting {{startDate}}":"","Starting today":"","Submit feedback":"Enviar feedback",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"Subscrição cancelada com sucesso","Thanks for the feedback!":"Obrigado pelo teu feedback!","That didn't go to plan":"Algo não correu como planeado","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"O acesso a este site é feito apenas por convite. Entra em contacto com o proprietário para teres acesso.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Para completar o registo, clica no link de confirmação enviado para o teu email. Se não o receberes dentro de 3 minutos, verifica a pasta de spam/lixo do teu email!","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"Cancelar subscrição de todos os emails",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Cancelar a subscrição dos emails não irá cancelar a tua subscrição paga em {{title}}",Update:"","Update your preferences":"Atualizar as tuas preferências","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Não conseguimos cancelar a tua subscrição, uma vez que o endereço de email não foi encontrado. Por favor contacta o proprietário do site.","Welcome back, {{name}}!":"","Welcome back!":"","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"Anualmente","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"A tua subscrição foi renovada com sucesso","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Não estás a receber emails porque marcaste recentemente uma das nossas mensagens como spam, ou porque as mensagens não puderam ser entregues no endereço de email indicado.","You've successfully signed in.":"","Your account":"A tua conta","Your input helps shape what gets published.":"O teu feedback ajuda a decidir o conteúdo que será publicado no futuro.","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},GS={"{{amount}} days free":"{{amount}} dias grátis","{{amount}} off":"{{amount}} de desconto","{{amount}} off for first {{number}} months.":"{{amount}} de desconto nos primeiros {{number}} meses.","{{amount}} off for first {{period}}.":"{{amount}} de desconto nos primeiros {{period}}.","{{amount}} off forever.":"{{amount}} de desconto para sempre.","{{discount}}% discount":"{{discount}}% de desconto","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"{{memberEmail}} não receberá mais a newsletter {{newsletterName}}.","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"{{memberEmail}} não receberá mais e-mails quando alguém responder seus comentários.","{{memberEmail}} will no longer receive this newsletter.":"{{memberEmail}} não receberá mais esta newsletter.","{{trialDays}} days free":"{{trialDays}} dias grátis","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Um link de acesso foi enviado para o seu e-mail. Se a mensagem não chegar dentro de 3 minutos, verifique sua pasta de spam.",Account:"Conta","Account settings":"Configurações de conta","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Quando o teste grátis acabar, será cobrado o preço normal do plano que você escolheu. Você sempre pode cancelar antes.","Already a member?":"Já é membro?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"Ocorreu um erro inesperado. Tente novamente ou <a>entre em contato com o suporte</a> se o erro persistir.",Back:"Voltar","Back to Log in":"Voltar para login","Billing info":"Informações de cobrança","Black Friday":"Black Friday","Cancel anytime.":"Cancele quando quiser.","Cancel subscription":"Cancelar inscrição","Cancellation reason":"Motivo do cancelamento",Change:"Alterar","Check spam & promotions folders":"Verificar pastas de spam e promoções","Check with your mail provider":"Verificar com seu provedor de e-mail",Choose:"Escolher","Choose a different plan":"Escolher um plano diferente","Choose your newsletters":"Escolher suas newsletters","Click here to retry":"Clique aqui para tentar novamente",Close:"Fechar",Comments:"Comentários",Complimentary:"Cortesia",Confirm:"Confirmar","Confirm cancellation":"Confirmar cancelamento","Confirm subscription":"Confirmar inscrição","Contact support":"Contatar suporte",Continue:"Continuar","Continue subscription":"Continuar inscrição","Could not sign in. Login link expired.":"Não foi possível fazer login. O link de acesso expirou.","Could not update email! Invalid link.":"Não foi possível atualizar o e-mail! Link inválido.","Create a new contact":"Criar um novo contato","Current plan":"Plano atual","Delete account":"Excluir conta","Didn't mean to do this? Manage your preferences <button>here</button>.":"Não era isso que você queria? Gerencie suas preferências <button>aqui</button>.","Don't have an account?":"Não tem uma conta?",Edit:"Editar",Email:"E-mail","Email newsletter":"Newsletter por e-mail","Email preference updated.":"Preferências de e-mail atualizadas.","Email preferences":"Preferências de e-mail",Emails:"E-mails","Emails disabled":"E-mails desativados","Ends {{offerEndDate}}":"Termina em {{offerEndDate}}",Error:"Erro","Expires {{expiryDate}}":"Expira em {{expiryDate}}",Forever:"Para sempre","Free Trial – Ends {{trialEnd}}":"Teste grátis – Termina em {{trialEnd}}","Get help":"Obter ajuda","Get in touch for help":"Entre em contato para obter ajuda","Get notified when someone replies to your comment":"Receber notificação quando alguém responder seu comentário","Give feedback on this post":"Enviar feedback sobre esta postagem","Help! I'm not receiving emails":"Ajuda! Não estou recebendo e-mails","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"Se uma newsletter for marcada como spam, os e-mails são automaticamente desativados para esse endereço para garantir que você não receba mais mensagens indesejadas.","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"Se a reclamação de spam foi acidental ou se você deseja começar a receber e-mails novamente, pode se inscrever novamente para receber e-mails clicando no botão na tela anterior.","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"Se você cancelar sua inscrição agora, continuará tendo acesso até {{periodEnd}}.","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"Se você tiver uma conta de e-mail corporativa ou governamental, entre em contato com o departamento de TI e peça para permitir que os e-mails sejam recebidos de {{senderEmail}}","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"Se você deseja começar a receber e-mails novamente, os próximos passos são verificar seu endereço de e-mail no arquivo para verificar se há problemas e, em seguida, clicar em se inscrever novamente na tela anterior.","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"Se você não estiver recebendo a newsletter por e-mail à qual se inscreveu, verifique algumas coisas.","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"Se você concluiu todas essas verificações e ainda não está recebendo e-mails, pode entrar em contato para obter suporte entrando em contato com {{supportAddress}}.","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"No caso de uma falha permanente ser recebida ao tentar enviar uma newsletter, os e-mails serão desativados na conta.","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"No seu cliente de e-mail, adicione {{senderEmail}} à sua lista de contatos. Isso sinaliza ao seu provedor de e-mail que os e-mails enviados deste endereço devem ser confiáveis.","Less like this":"Menos como este",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':'Verifique se os e-mails não estão indo parar acidentalmente nas pastas Spam ou Promoções da sua caixa de entrada. Se estiverem, clique em "Marcar como não spam" e/ou "Mover para a caixa de entrada".',Manage:"Gerenciar",Monthly:"Mensal","More like this":"Relacionados",Name:"Nome","Need more help? Contact support":"Precisa de mais ajuda? Contate o suporte","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"As newsletters podem ser desativadas na sua conta por dois motivos: um e-mail anterior foi marcado como spam ou a tentativa de enviar um e-mail resultou em uma falha permanente (bounce).","Not receiving emails?":"Não está recebendo e-mails?","Now check your email!":"Agora veja seu e-mail!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"Depois de se inscrever novamente, se você ainda não vir e-mails na sua caixa de entrada, verifique sua pasta de spam. Alguns provedores de caixa de entrada mantêm um registro de reclamações anteriores de spam e continuarão a sinalizar e-mails. Se isso acontecer, marque a newsletter mais recente como 'Não é spam' para movê-la de volta para sua caixa de entrada principal.","Permanent failure (bounce)":"Falha permanente (bounce)",Plan:"Plano","Plan checkout was cancelled.":"Plano de checkout foi cancelado.","Plan upgrade was cancelled.":"Upgrade de plano foi cancelado.","Please fill in required fields":"Preencha os campos obrigatórios",Price:"Preço","Re-enable emails":"Reativar e-mails","Renews at {{price}}.":"Renova por {{price}}",Retry:"Tentar de novo",Save:"Salvar","Send an email and say hi!":"Envie um e-mail e diga oi!","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"Envie um e-mail para {{senderEmail}} e diga olá. Isso também pode ajudar a sinalizar ao seu provedor de e-mail que os e-mails de e para este endereço devem ser confiáveis.","Sending login link...":"Enviando link de acesso...","Sending...":"Enviando...","Sign in":"Entrar","Sign out":"Sair","Sign up":"Cadastrar","Signup error: Invalid link":"Erro de inscrição: link inválido","Sorry, that didn’t work.":"Desculpe, isso não funcionou.","Spam complaints":"Reclamações de spam","Start {{amount}}-day free trial":"Começar teste grátis de {{amount}} dias","Starting {{startDate}}":"Começando {{startDate}}","Starting today":"Começando hoje","Submit feedback":"Enviar avaliação",Subscribe:"Inscrever-se",Subscribed:"Inscrito",Success:"Sucesso","Success! Check your email for magic link to sign-in.":"Sucesso! Verifique seu e-mail para o link mágico de acesso.","Success! Your account is fully activated, you now have access to all content.":"Sucesso! Sua conta está totalmente ativada, agora você tem acesso a todo o conteúdo.","Success! Your email is updated.":"Sucesso! Seu e-mail foi atualizado.","Successfully unsubscribed":"Inscrição cancelada com sucesso","Thanks for the feedback!":"Obrigado pela avaliação!","That didn't go to plan":"Algo não saiu como planejado","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"O endereço de e-mail que temos para você é {{memberEmail}} — se isso não estiver correto, você pode atualizá-lo na sua <button>área de configurações da conta</button>.","There was a problem submitting your feedback. Please try again a little later.":"Houve um problema ao enviar sua avaliação. Tente novamente mais tarde.","This site is invite-only, contact the owner for access.":"Este site é apenas para convidados. Contate o proprietário para obter acesso.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Para completar o cadastro, clique no link de confirmação enviado para sua caixa de entrada. Se o link não chegar detro de 3 minutos, confira a pasta de spam!","Try free for {{amount}} days, then {{originalPrice}}.":"Experimente grátis por {{amount}} dias, depois {{originalPrice}}.","Unlock access to all newsletters by becoming a paid subscriber.":"Desbloqueie o acesso a todas as newsletters se tornando um assinante pago.","Unsubscribe from all emails":"Cancelar inscrição em todos os e-mails",Unsubscribed:"Cancelado","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Cancelar a inscrição nos e-mails não cancelará sua assinatura paga em {{title}}",Update:"atualizar","Update your preferences":"Atualizar preferências","Verify your email address is correct":"Verifique se o endereço de e-mail está correto","View plans":"Ver planos","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Não conseguimos cancelar sua inscrição já que o e-mail não foi encontrado. Por favor, entre em contato com o proprietário do site.","Welcome back, {{name}}!":"Bem-vindo de volta, {{name}}!","Welcome back!":"Bem-vindo de volta!","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"Quando uma caixa de entrada falha ao aceitar um e-mail, isso é comumente chamado de bounce. Em muitos casos, isso pode ser temporário. No entanto, em alguns casos, um e-mail com falha pode ser retornado como uma falha permanente quando um endereço de e-mail é inválido ou não existe.","Why has my email been disabled?":"Por que meu e-mail foi desativado?",Yearly:"Anualmente","You currently have a free membership, upgrade to a paid subscription for full access.":"Você atualmente tem uma assinatura gratuita, faça um upgrade para uma assinatura paga para ter acesso completo.","You have been successfully resubscribed":"Você foi reinscrito com sucesso","You're currently not receiving emails":"Você não está recebendo e-mails no momento","You're not receiving emails":"Você não está recebendo e-mails","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Você não está recebendo e-mails porque, ou classificou uma mensagem recente como spam, ou as mensagens não puderam ser entregues no endereço de e-mail que você forneceu.","You've successfully signed in.":"Você entrou com sucesso.","Your account":"Sua conta","Your input helps shape what gets published.":"Sua resposta ajuda a moldar o que será publicado.","Your subscription will expire on {{expiryDate}}":"Sua assinatura expirará em {{expiryDate}}","Your subscription will renew on {{renewalDate}}":"Sua assinatura será renovada em {{renewalDate}}","Your subscription will start on {{subscriptionStart}}":"Sua assinatura começará em {{subscriptionStart}}"},KS={"{{amount}} days free":"","{{amount}} off":"","{{amount}} off for first {{number}} months.":"","{{amount}} off for first {{period}}.":"","{{amount}} off forever.":"","{{discount}}% discount":"Reducere de {{discount}}%","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"{{trialDays}} zile gratuite","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Un link de autentificare a fost trimis în inbox-ul tău. Dacă nu ajunge în 3 minute, asigură-te că verifici folderul de spam.",Account:"Cont","Account settings":"Setări cont","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"După ce expiră perioada de încercare gratuită, vei fi taxat la prețul obișnuit pentru nivelul pe care l-ai ales. Poți anula în orice moment înainte de aceasta.","Already a member?":"Ești deja membru?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"Înapoi","Back to Log in":"Înapoi la Autentificare","Billing info":"","Black Friday":"","Cancel anytime.":"","Cancel subscription":"Anulează abonamentul","Cancellation reason":"Motivul anulării",Change:"","Check spam & promotions folders":"","Check with your mail provider":"",Choose:"","Choose a different plan":"Alege un plan diferit","Choose your newsletters":"Alege-ți newsletterele","Click here to retry":"",Close:"Închide",Comments:"Comentarii",Complimentary:"",Confirm:"Confirmă","Confirm cancellation":"","Confirm subscription":"","Contact support":"",Continue:"Continuă","Continue subscription":"","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"","Delete account":"Șterge contul","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"Nu ai un cont?",Edit:"",Email:"Email","Email newsletter":"","Email preference updated.":"Preferințele de email au fost actualizate.","Email preferences":"Preferințe de email",Emails:"Emailuri","Emails disabled":"Emailuri dezactivate","Ends {{offerEndDate}}":"",Error:"","Expires {{expiryDate}}":"",Forever:"","Free Trial – Ends {{trialEnd}}":"","Get help":"Obține ajutor","Get in touch for help":"","Get notified when someone replies to your comment":"Primește notificare când cineva răspunde la comentariul tău","Give feedback on this post":"Oferă feedback despre acest articol","Help! I'm not receiving emails":"","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"Mai puțin de genul acesta",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"Administrează",Monthly:"Lunar","More like this":"Mai multe de genul acesta",Name:"Nume","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"Nu primești emailuri?","Now check your email!":"Acum verifică-ți emailul!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"Preț","Re-enable emails":"Activează din nou emailurile","Renews at {{price}}.":"",Retry:"Reîncearcă",Save:"Salvează","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"Se trimite link-ul de autentificare...","Sending...":"Se trimite...","Sign in":"Autentificare","Sign out":"","Sign up":"Înregistrare","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"Începe perioada gratuită de {{amount}} zile","Starting {{startDate}}":"","Starting today":"","Submit feedback":"Trimite feedback",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"Dezabonare realizată cu succes","Thanks for the feedback!":"Mulțumim pentru feedback!","That didn't go to plan":"Asta nu a mers conform planului","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"Acest site este disponibil doar pe bază de invitație, contactează proprietarul pentru acces.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Pentru a finaliza înregistrarea, apasă pe link-ul de confirmare din inbox-ul tău. Dacă nu ajunge în 3 minute, verifică folderul de spam!","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"Dezabonează-te de la toate emailurile",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Dezabonarea de la emailuri nu va anula abonamentul plătit la {{title}}",Update:"","Update your preferences":"Actualizează-ți preferințele","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Nu am putut să te dezabonăm deoarece adresa de email nu a fost găsită. Te rugăm să contactezi proprietarul site-ului.","Welcome back, {{name}}!":"","Welcome back!":"","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"Anual","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"Te-ai reabonat cu succes","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Nu primești emailuri deoarece fie ai marcat un mesaj recent ca spam, fie pentru că mesajele nu pot fi livrate la adresa ta de email furnizată.","You've successfully signed in.":"","Your account":"Contul tău","Your input helps shape what gets published.":"Contribuția ta ajută la conturarea a ceea ce se publică.","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},JS={"{{amount}} days free":"","{{amount}} off":"","{{amount}} off for first {{number}} months.":"","{{amount}} off for first {{period}}.":"","{{amount}} off forever.":"","{{discount}}% discount":"Скидка {{discount}}%","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"{{trialDays}} дня(-ей) бесплатно","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Ссылка для входа была отправлена вам на email. Если письмо долго не приходит, проверьте папку Спам.",Account:"Аккаунт","Account settings":"Настройки аккаунта","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"После окончания бесплатного периода с вас будут взиматься регулярные платежи по выбранному тарифу. До этого момента вы можете отменить подписку в любое время.","Already a member?":"Уже есть аккаунт?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"Назад","Back to Log in":"Вернуться ко входу","Billing info":"","Black Friday":"","Cancel anytime.":"","Cancel subscription":"Отменить подписку","Cancellation reason":"Причина отмены",Change:"","Check spam & promotions folders":"","Check with your mail provider":"",Choose:"","Choose a different plan":"Выберите другой план","Choose your newsletters":"Выберите рассылки","Click here to retry":"",Close:"Закрыть",Comments:"Комментарии",Complimentary:"",Confirm:"Подтвердить","Confirm cancellation":"","Confirm subscription":"","Contact support":"",Continue:"Продолжить","Continue subscription":"","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"","Delete account":"Удалить аккаунт","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"У вас нет аккаунта?",Edit:"",Email:"Email","Email newsletter":"","Email preference updated.":"Настройки электронной почты обновлены.","Email preferences":"Настройки электронной почты",Emails:"Письма","Emails disabled":"Письма отключены","Ends {{offerEndDate}}":"",Error:"","Expires {{expiryDate}}":"",Forever:"","Free Trial – Ends {{trialEnd}}":"","Get help":"Получить помощь","Get in touch for help":"","Get notified when someone replies to your comment":"Оповещать, когда кто-то отвечает на ваш комментарий","Give feedback on this post":"Оставить отзыв на эту публикацию","Help! I'm not receiving emails":"","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"Меньше подобного",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"Управление",Monthly:"Ежемесячно","More like this":"Больше подобного",Name:"Имя","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"Не получаете письма?","Now check your email!":"Теперь проверьте свою электронную почту!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"Цена","Re-enable emails":"Снова включить письма","Renews at {{price}}.":"",Retry:"Повторить попытку",Save:"Сохранить","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"Отправка ссылки для входа...","Sending...":"Отправка...","Sign in":"Войти","Sign out":"","Sign up":"Зарегистрироваться","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"Начать {{amount}}-дневный пробный период","Starting {{startDate}}":"","Starting today":"","Submit feedback":"Отправить отзыв",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"Подписка успешно отменена","Thanks for the feedback!":"Спасибо за отзыв!","That didn't go to plan":"Что-то пошло не так","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"Этот сайт доступен только по приглашениям, свяжитесь с владельцем для получения доступа.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Чтобы завершить регистрацию, нажмите на ссылку подтверждения в вашем почтовом ящике. Если она не придет в течение 3 минут, проверьте папку Спам!","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"Отписаться от всех писем",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Отключение рассылки не отменит вашу платную подписку на {{title}}",Update:"","Update your preferences":"Обновить настройки","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Мы не смогли отменить вашу подписку, так как адрес электронной почты не найден. Пожалуйста, свяжитесь с владельцем сайта.","Welcome back, {{name}}!":"","Welcome back!":"","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"Ежегодно","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"Вы снова подписаны на рассылку","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Вы не получаете письма, так как либо вы пометили недавнее сообщение как спам, либо сообщения не могут быть доставлены на указанный вами email.","You've successfully signed in.":"","Your account":"Ваш аккаунт","Your input helps shape what gets published.":"Ваш отзыв поможет решить, что будет опубликовано дальше.","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},QS={"{{amount}} days free":"","{{amount}} off":"","{{amount}} off for first {{number}} months.":"","{{amount}} off for first {{period}}.":"","{{amount}} off forever.":"","{{discount}}% discount":"{{discount}}% වට්ටම්","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"දින {{trialDays}} ක් දක්වා නොමිලේ","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"වෙබ් අඩවියට පිවිසීම සඳහා ලින්කුවක් ඔබගේ විද්‍යුත් ලිපිනය වෙත යවා ඇත. එය විනාඩි 3ක් ඇතුළත නොපැමිණියේ නම් ස්පෑම් ෆෝල්ඩරය පරීක්ෂා කරන්න.",Account:"ගිණුම","Account settings":"ගිණුම් සැකසුම්","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.","Already a member?":"දැනටමත් සාමාජිකයෙක්ද?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"ආපසු","Back to Log in":"ලොග් වීම සඳහා ආපසු","Billing info":"","Black Friday":"","Cancel anytime.":"","Cancel subscription":"Subscription එක අවලංගු කරන්න","Cancellation reason":"අවලංගු කිරිමට හේතුව",Change:"","Check spam & promotions folders":"","Check with your mail provider":"",Choose:"","Choose a different plan":"වෙනත් plan එකක් තෝරන්න","Choose your newsletters":"ඔබගේ newsletter වර්ගය තෝරන්න","Click here to retry":"",Close:"වසන්න",Comments:"ප්‍රතිචාර",Complimentary:"",Confirm:"තහවුරු කරන්න","Confirm cancellation":"","Confirm subscription":"","Contact support":"",Continue:"ඉදිරියට යන්න","Continue subscription":"","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"","Delete account":"ගිණුම Delete කරන්න","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"ගිණුමක් නොමැතිද?",Edit:"",Email:"Email","Email newsletter":"","Email preference updated.":"Email preference updated.","Email preferences":"Email preferences",Emails:"ඊමේල්","Emails disabled":"Emails disabled","Ends {{offerEndDate}}":"",Error:"","Expires {{expiryDate}}":"",Forever:"","Free Trial – Ends {{trialEnd}}":"","Get help":"සහාය ලබාගන්න","Get in touch for help":"","Get notified when someone replies to your comment":"ඔබේ ප්‍රතිචාරයට යම් අයෙකු පිළිතුරු දුන් විට දැනුම් දෙන්න","Give feedback on this post":"මෙම post එකට ඔබේ අදහස එක් කරන්න","Help! I'm not receiving emails":"","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"Less like this",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"කළමනාකරණය කරන්න",Monthly:"මාසිකව","More like this":"More like this",Name:"නම","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"Emails ලැබෙන්නෙ නැද්ද?","Now check your email!":"දැන් ඔබගේ email එක පරික්ෂා කරන්න!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"මිල","Re-enable emails":"ඉමේල් නැවත සක්‍රීය කරන්න","Renews at {{price}}.":"",Retry:"නැවත උත්සහකරන්න",Save:"Save","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"පිවිසුම් සබැඳිය යවමින්...","Sending...":"යවමින්...","Sign in":"ලොග් වෙන්න","Sign out":"","Sign up":"ලියාපදිංචි වෙන්න","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"{{amount}}-day free trial එක ආරම්භකරන්න","Starting {{startDate}}":"","Starting today":"","Submit feedback":"ප්‍රතිචාරය යොමුකරන්න",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"සාර්ථකව unsubscribed කර ඇත","Thanks for the feedback!":"ප්‍රතිචාරය සඳහා ස්තූතියි!","That didn't go to plan":"ඒය සැලැස්මට අනුකූලව සිදු වුණේ නෑ","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"මෙම වෙබ් අඩවිය ආරාධිතයන් සඳහා පමණි, ප්‍රවේශ වීම සඳහා හිමිකරු අමතන්න.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"Unsubscribe from all emails",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Unsubscribing from emails will not cancel your paid subscription to {{title}}",Update:"","Update your preferences":"Update your preferences","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"We couldn't unsubscribe you as the email address was not found. Please contact the site owner.","Welcome back, {{name}}!":"","Welcome back!":"","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"වාර්ෂිකව","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"ඔබ සාර්ථකව නැවත subscribe කර ඇත","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.","You've successfully signed in.":"","Your account":"ඔබගේ ගිණුම","Your input helps shape what gets published.":"Your input helps shape what gets published.","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},XS={"{{amount}} days free":"","{{amount}} off":"","{{amount}} off for first {{number}} months.":"","{{amount}} off for first {{period}}.":"","{{amount}} off forever.":"","{{discount}}% discount":"{{discount}}% popust","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"{{trialDays}} dni brezplačno","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Povezava za prijavo je bila poslana na vašo e-pošto. Če ne prispe v treh minutah, preverite mapo za neželeno pošto.",Account:"Račun","Account settings":"Nastavitve računa","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Po koncu brezplačnega preizkusa se vam zaračuna redna cena za izbrano stopnjo. Pred tem jo lahko vedno prekličete.","Already a member?":"Ste že član?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"Nazaj","Back to Log in":"Nazaj na prijavo","Billing info":"","Black Friday":"","Cancel anytime.":"","Cancel subscription":"Prekliči naročnino","Cancellation reason":"Razlog za preklic",Change:"","Check spam & promotions folders":"","Check with your mail provider":"",Choose:"","Choose a different plan":"Izberite drug načrt","Choose your newsletters":"Izberite svoje novice","Click here to retry":"",Close:"Zapri",Comments:"Komentarji",Complimentary:"",Confirm:"Potrdi","Confirm cancellation":"","Confirm subscription":"","Contact support":"",Continue:"Nadaljuj","Continue subscription":"","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"","Delete account":"Izbriši račun","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"Nimate računa?",Edit:"",Email:"E-pošta","Email newsletter":"","Email preference updated.":"E-poštne nastavitve posodobljene","Email preferences":"Nastavitve e-pošte",Emails:"E-pošta","Emails disabled":"E-pošta onemogočena","Ends {{offerEndDate}}":"",Error:"","Expires {{expiryDate}}":"",Forever:"","Free Trial – Ends {{trialEnd}}":"","Get help":"Pomoč","Get in touch for help":"","Get notified when someone replies to your comment":"Prejmite obvestilo, ko nekdo odgovori na vaš komentar","Give feedback on this post":"Podajte povratne informacije o tej objavi","Help! I'm not receiving emails":"","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"Ni mi všeč",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"Upravljanje",Monthly:"Mesečno","More like this":"Všeč mi je",Name:"Ime","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"Ne prejemate e-poštnih sporočil?","Now check your email!":"Preverite e-pošto!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"Cena","Re-enable emails":"Ponovna vključitev e-poštnih sporočil","Renews at {{price}}.":"",Retry:"Cena",Save:"Shrani","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"Pošiljanje povezave za prijavo...","Sending...":"Pošiljanje...","Sign in":"Prijava","Sign out":"","Sign up":"Registracija","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"Začetek {{amount}}-dnevnega brezplačnega preizkusa","Starting {{startDate}}":"","Starting today":"","Submit feedback":"Pošljite povratno informacijo",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"Uspešno ste se odjavili","Thanks for the feedback!":"Hvala za povratne informacije!","That didn't go to plan":"To ni šlo po načrtu","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"To spletno mesto je dostopno samo s povabilom, obrnite se na lastnika.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Dokončatje prijavo s klikom na povezavo, ki ste jo dobili na vaš e-poštni naslov. Če je ne prejmete v treh minutah, preverite mapo za neželeno pošto!","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"Odjava od vseh e-poštnih sporočil",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Odjava od e-poštnih sporočil ne bo preklicala vaše plačane naročnine na {{title}}",Update:"","Update your preferences":"Posodobite svoje nastavitve","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Nismo vas mogli odjaviti, ker e-poštnega naslova nismo našli. Prosimo, da se obrnete na lastnika spletnega mesta.","Welcome back, {{name}}!":"","Welcome back!":"","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"Letno","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"Uspešno ste bili ponovno naročeni","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Ne prejemate e-poštnih sporočil, ker ste naše sporočilo nedavno označili kot neželeno pošto ali, ker sporočil ni bilo mogoče dostaviti na vaš e-poštni naslov.","You've successfully signed in.":"","Your account":"Vaš račun","Your input helps shape what gets published.":"Vaš prispevek se nam pomaga odločati, kaj objavimo.","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},ZS={"{{amount}} days free":"{{amount}} dite falas","{{amount}} off":"{{amount}} zbritje","{{amount}} off for first {{number}} months.":"{{amount}} zbritje në {{number}} muajt e parë","{{amount}} off for first {{period}}.":"{{amount}} zbritje per {{period}} e parë","{{amount}} off forever.":"{{amount}} zbritje pergjithmone.","{{discount}}% discount":"{{discount}}% zbritje","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"{{memberEmail}} nuk do te marre me buletinin e {{newsletterName}}","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"{{memberEmail}} nuk do të marrë më email kur dikush u përgjigjet komenteve tuaja.","{{memberEmail}} will no longer receive this newsletter.":"{{memberEmail}} nuk do te marre me kete buletin.","{{trialDays}} days free":"{{trialDays}} dite falas","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Një lidhje identifikimi është dërguar në kutinë tuaj hyrëse. Nëse nuk arrin për 3 minuta, sigurohuni që të kontrolloni dosjen tuaj të postës së padëshiruar.",Account:"Llogaria","Account settings":"Cilësimet e llogarisë","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Pasi të përfundojë një provë falas, ju do të tarifoheni me çmimin e rregullt për nivelin që keni zgjedhur. Mund të anuloni gjithmonë përpara kësaj.","Already a member?":"Tashme nje antar?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"Ndodhi një gabim i papritur. Provo sërish ose <a>kontakto mbështetjen</a> nëse gabimi vazhdon.",Back:"Kthehu","Back to Log in":"Kthehu tek identifikimi","Billing info":"Te dhenat e faturimit","Black Friday":"E premtja e zeze","Cancel anytime.":"Anullo ne cdo kohe.","Cancel subscription":"Anullo abonimin","Cancellation reason":"Arsyeja e anullimit",Change:"Ndrysho","Check spam & promotions folders":"Kontrolloni dosjet e postës së padëshiruar dhe promovimeve ","Check with your mail provider":"Kontrolloni me ofruesin tuaj të postës",Choose:"Zgjidh","Choose a different plan":"Zgjidh nje plan ndryshe","Choose your newsletters":"Zgjidh buletinin tend","Click here to retry":"Kliko ketu per te provuar perseri",Close:"Mbyll",Comments:"Komentet",Complimentary:"Pa pagesë",Confirm:"Konfirmo","Confirm cancellation":"Konfirmo anullimin","Confirm subscription":"Konfirmo abonimin","Contact support":"Kontakto suportin",Continue:"Vazhdoni","Continue subscription":"Vazhdoni abonimin","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"Shto nje kontakt te ri","Current plan":"Plani aktual","Delete account":"Fshini llogarine","Didn't mean to do this? Manage your preferences <button>here</button>.":"Nuk doje ta bëje këtë? Menaxho preferencat e tua <button>këtu</button>.","Don't have an account?":"Nuk keni nje llogari?",Edit:"Modifiko",Email:"Email","Email newsletter":"Buletini i emailit","Email preference updated.":"Preferenca e emailit u përditësua.","Email preferences":"Preferenat e emailit",Emails:"Emailet","Emails disabled":"Emailet e çaktivizuara","Ends {{offerEndDate}}":"Perfundon {{offerEndDate}}",Error:"Gabim","Expires {{expiryDate}}":"Mbaron",Forever:"Pergjithmone","Free Trial – Ends {{trialEnd}}":"Prova falas – mbaron {{trialEnd}}","Get help":"Merr ndihme","Get in touch for help":"Kontaktoni për ndihmë","Get notified when someone replies to your comment":"","Give feedback on this post":"Ler nje koment ne kete post","Help! I'm not receiving emails":"Ndihme! Nuk po marr emaile","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"Nëse një buletin shënohet si i padëshiruar, emailet çaktivizohen automatikisht për atë adresë për t'u siguruar që nuk do të merrni më mesazhe të padëshiruara.","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"Nëse ankesa për postën e padëshiruar ishte aksidentale, ose dëshironi të filloni të merrni përsëri email, mund të regjistroheni përsëri në email duke klikuar butonin në ekranin e mëparshëm.","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"Nëse e anuloni abonimin tuaj tani, do të vazhdoni të keni akses deri në {{periodEnd}}.","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"Nëse keni një llogari të postës elektronike të korporatës ose të qeverisë, kontaktoni departamentin tuaj të IT dhe kërkojuni që të lejojnë marrjen e emaileve nga {{senderEmail}}","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"Nëse dëshironi të filloni të merrni përsëri emaile, hapat më të mirë të metejshem janë të kontrolloni adresën tuaj të emailit në dosje për ndonjë problem dhe më pas klikoni Ri-abonohu në ekranin e mëparshëm.","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"Nëse nuk po merrni buletinin me email në të cilin jeni abonuar, këtu janë disa gjëra për të kontrolluar.","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"Nëse i keni përfunduar të gjitha këto kontrolle dhe ende nuk po merrni email, mund të kontaktoni për të marrë mbështetje duke kontaktuar {{supportAddress}}.","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"Në rast se merret një dështim i përhershëm gjatë përpjekjes për të dërguar një buletin, emailet do të çaktivizohen në llogari.","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"Në klientin tuaj të postës elektronike shtoni {{senderEmail}} në listën tuaj të kontakteve. Kjo i sinjalizon ofruesit tuaj të postës elektronike që emailet e dërguara nga kjo adresë duhet të jenë të besueshme.","Less like this":"Me pak si kjo",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':'Sigurohuni që emailet të mos përfundojnë aksidentalisht në dosjet e postës së padëshiruar ose të promovimeve të kutisë suaj hyrëse. Nëse janë, klikoni në "Shëno si jo të padëshiruar" dhe/ose "Lëviz te kutia hyrëse".',Manage:"Menaxho",Monthly:"Mujore","More like this":"Me shume si kjo",Name:"Emri","Need more help? Contact support":"Te duhet me shume ndihme? Kontakto suportin","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"Buletinet mund të çaktivizohen në llogarinë tuaj për dy arsye: Një email i mëparshëm u shënua si i padëshiruar, ose përpjekja për të dërguar një email rezultoi në një dështim të përhershëm (kercim).","Not receiving emails?":"Nuk po merr emaile?","Now check your email!":"Kontrollo emailin tend tani!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"Pasi të regjistroheni përsëri, nëse ende nuk i shihni emailet në kutinë tuaj hyrëse, kontrolloni dosjen tuaj të postës së padëshiruar. Disa ofrues të kutisë hyrëse mbajnë një regjistër të ankesave të mëparshme të postës së padëshiruar dhe do të vazhdojnë të raportojnë emailet. Nëse kjo ndodh, shëno buletinin më të fundit si 'Jo e padëshiruar' për ta zhvendosur atë në kutinë hyrëse kryesore.","Permanent failure (bounce)":"Deshtim i perhershem (kercim)",Plan:"Plani","Plan checkout was cancelled.":"Pagesa e planit u anullua.","Plan upgrade was cancelled.":"Përmirësimi i planit u anullua.","Please fill in required fields":"Ju lutem plotesoni fushat e kerkuara",Price:"Çmimi","Re-enable emails":"Ri-aktivizo emailet","Renews at {{price}}.":"Rinovohet per {{price}} ",Retry:"Provo perseri",Save:"Ruaj","Send an email and say hi!":"Dergo nje email dhe thuaj pershendetje!","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"Dërgo një email te {{senderEmail}} dhe thuaj përshëndetje. Kjo mund të ndihmojë gjithashtu t'i sinjalizojë ofruesit tuaj të postës elektronike se emailet drejt-dhe-nga kjo adresë duhet të jenë të besueshme.","Sending login link...":"Duke derguar linkun e identifikimit...","Sending...":"Duke derguar...","Sign in":"Hyr","Sign out":"Dil","Sign up":"Rregjistrohu","Signup error: Invalid link":"Gabim ne rregjistrim: Link i pavlefshem","Sorry, that didn’t work.":"Na vjen keq, kjo nuk funksionoi.","Spam complaints":"Ankesat për mesazhe të padëshiruara","Start {{amount}}-day free trial":"","Starting {{startDate}}":"Duke filluar {{startDate}}","Starting today":"Duke filluar nga sot","Submit feedback":"Dergo komente",Subscribe:"Abonohu",Subscribed:"Abonuar",Success:"Sukses","Success! Check your email for magic link to sign-in.":"Sukses! Kontrollo emailin tend per linkun magjik te indentifikimit.","Success! Your account is fully activated, you now have access to all content.":"Sukses! Llogaria jote eshte plotesisht e aktivizuar, tashme ju keni akses ne te githe kontentin","Success! Your email is updated.":"Sukses! Emaili yt eshte rifreskuar","Successfully unsubscribed":"Çabonuar me sukses","Thanks for the feedback!":"Faleminderit per komentin!","That didn't go to plan":"Kjo nuk shkoi sipas planit","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"Pati një problem me dërgimin e komenteve tuaja. Ju lutemi provoni sërish pak më vonë.","This site is invite-only, contact the owner for access.":"Kjo faqe eshte vetem me ftesa, kontaktoni zoteruesin per akses.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Për të përfunduar regjistrimin, klikoni lidhjen e konfirmimit në kutinë tuaj hyrëse. Nëse nuk arrin brenda 3 minutash, kontrolloni dosjen tuaj të postës elektronike!","Try free for {{amount}} days, then {{originalPrice}}.":"Provo falas per {{amount}} dite, pastaj {{originalPrice}}.","Unlock access to all newsletters by becoming a paid subscriber.":"Zhbllokoni aksesin per te gjitha buletinet duke u bere nje abonues me pagese.","Unsubscribe from all emails":"Çregjistrohu nga të gjitha emailet",Unsubscribed:"I çabonuar","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Çregjistrimi nga emailet nuk do ta anulojë abonimin tuaj me pagesë në {{title}}",Update:"Rifresko","Update your preferences":"Përditësoni preferencat tuaja","Verify your email address is correct":"Verifikoni që adresa juaj e emailit është e saktë","View plans":"Shiko planet","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"","Welcome back, {{name}}!":"Mire se erdhe, {{name}}!","Welcome back!":"Mire se erdhe!","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"Kur një kuti hyrëse dështon të pranojë një email, zakonisht quhet kthim. Në shumë raste, kjo mund të jetë e përkohshme. Megjithatë, në disa raste, një email i kthyer mund të kthehet si një dështim i përhershëm kur një adresë emaili është e pavlefshme ose nuk ekziston.","Why has my email been disabled?":"Pse është çaktivizuar emaili im?",Yearly:"Vjetore","You currently have a free membership, upgrade to a paid subscription for full access.":"Ju keni aktualisht nje antaresim falas, beni abonimin me pagese per akses te plote. ","You have been successfully resubscribed":"Ju jeni ri-abonuar me sukses","You're currently not receiving emails":"Aktualisht nuk po merrni emaile","You're not receiving emails":"Ju nuk po merrni emaile","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Ju nuk po merrni email sepse ose keni shënuar një mesazh të fundit si të padëshiruar, ose sepse mesazhet nuk mund të dërgoheshin në adresën tuaj të emailit të dhënë.","You've successfully signed in.":"Ju jeni identifikuar me sukses.","Your account":"Llogaria juar","Your input helps shape what gets published.":"Të dhënat tuaja ndihmojnë në formimin e asaj që publikohet.","Your subscription will expire on {{expiryDate}}":"Abonimi juaj do te skadoje ne {{expiryDate}}","Your subscription will renew on {{renewalDate}}":"Abonimi juaj to te rinovohet ne {{renewalDate}}","Your subscription will start on {{subscriptionStart}}":"Abonimi juaj do te filloje ne {{subscriptionStart}}"},e1={"{{amount}} days free":"","{{amount}} off":"","{{amount}} off for first {{number}} months.":"","{{amount}} off for first {{period}}.":"","{{amount}} off forever.":"","{{discount}}% discount":"{{discount}}% popust","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"{{trialDays}} dana besplatno","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Link za logovanje je poslat na Vašu email adresu. Ukoliko ne stigne za 3 minuta proverite spam folder.",Account:"Nalog","Account settings":"Podešavanja naloga","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Nakon što probni period istekne, izvršiće se naplata za plan koji ste izabrali. Uvek možete da otkažete pretplatu pre toga.","Already a member?":"Već ste član?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"Nazad","Back to Log in":"Nazad na logovanje","Billing info":"","Black Friday":"","Cancel anytime.":"","Cancel subscription":"Otkaži pretplatu","Cancellation reason":"Razlog za otkazivanje",Change:"","Check spam & promotions folders":"","Check with your mail provider":"",Choose:"","Choose a different plan":"Izaberi drugi plan","Choose your newsletters":"Izaberi ","Click here to retry":"",Close:"Zatvori",Comments:"Komentari",Complimentary:"",Confirm:"Potvrdi","Confirm cancellation":"","Confirm subscription":"","Contact support":"",Continue:"Nastavi","Continue subscription":"","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"","Delete account":"Obriši nalog","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"Nemate nalog?",Edit:"",Email:"Email","Email newsletter":"","Email preference updated.":"Email podešavanja su sačuvana.","Email preferences":"Email podešavanja",Emails:"Email-ovi","Emails disabled":"Isključeni email-ovi","Ends {{offerEndDate}}":"",Error:"","Expires {{expiryDate}}":"",Forever:"","Free Trial – Ends {{trialEnd}}":"","Get help":"Potražite pomoć","Get in touch for help":"","Get notified when someone replies to your comment":"Obavestite me ako neko odgovori na moj komentar:","Give feedback on this post":"Ostavite komentar na ovaj post","Help! I'm not receiving emails":"","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"Manje sadržaja kao ovaj",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"Podešavanja",Monthly:"Mesečno","More like this":"Više sadržaja kao ovaj",Name:"Ime","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"Ne dobijate e-poštu?","Now check your email!":"Proverite Vaš email!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"Cena","Re-enable emails":"Omogući email adrese ponovo","Renews at {{price}}.":"",Retry:"Pokušaj opet",Save:"Snimi","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"Link za logovanje se šalje...","Sending...":"Slanje...","Sign in":"Prijava","Sign out":"","Sign up":"Registracija","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"Počni {{amount}} dana besplatnu probu","Starting {{startDate}}":"","Starting today":"","Submit feedback":"Pošalji povratne informacije",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"Uspešna odjava","Thanks for the feedback!":"Hvala za povratne informacije!","That didn't go to plan":"Nešto nije kako treba","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"Ovaj sajt je samo za članove, kontaktirajte vlasnika kako bi dobili pristup.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Kliknite na link da biste završili registraciju. Ukoliko ne stigne za 3 minuta proverite spam folder!","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"Odjavite se sa svih email-ova",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Odjavljivanjem sa email-ova nećete prekinuti Vašu pretplatu na {{title}}",Update:"","Update your preferences":"Izmenite Vaša podešavanja","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Nismo uspeli da odjavimo email. Molimo Vas kontaktirajte vlasnika sajta.","Welcome back, {{name}}!":"","Welcome back!":"","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"Godišnje","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"Uspešno ste se prijavili ponovo","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Ne primate e-poruke zato što ste nedavnu poruku označili kao nepoželjnu ili zato što poruke nisu mogle da se isporuče na adresu e-pošte koju ste naveli.","You've successfully signed in.":"","Your account":"Vaš nalog","Your input helps shape what gets published.":"Vaš doprinos pomaže u oblikovanju onoga što se objavljuje.","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},t1={"{{amount}} days free":"{{amount}} gratisdagar","{{amount}} off":"{{amount}} i rabatt","{{amount}} off for first {{number}} months.":"{{amount}} i rabatt de första {{number}} månaderna.","{{amount}} off for first {{period}}.":"{{amount}} i rabatt under första {{period}}.","{{amount}} off forever.":"{{amount}} i rabatt tills vidare","{{discount}}% discount":"{{discount}}% rabatt","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"{{memberEmail}} kommer inte längre få utskicket {{newsletterName}}","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"{{memberEmail}} kommer inte längre att få meddelanden när någon svarar på din kommentar","{{memberEmail}} will no longer receive this newsletter.":"{{memberEmail}} kommer inte längre att få det här nyhetsbrevet","{{trialDays}} days free":"{{trialDays}} dagar gratis","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"En inloggningslänk har skickats till din inkorg. Om den inte anländer inom 3 minuter, kontrollera din skräppostmapp.",Account:"Konto","Account settings":"Kontoinställningar","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Efter att en gratis provperiod avslutas debiteras du det ordinarie priset för den nivå du har valt. Du kan alltid avbryta innan dess.","Already a member?":"Redan medlem?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"Ett oväntat fel inträffade. Försök igen eller <a>kontakta administratören</a> om felet kvarstår.",Back:"Tillbaka","Back to Log in":"Tillbaka till inloggning","Billing info":"Betalningsinformation","Black Friday":"Black Friday","Cancel anytime.":"Avsluta när som helst","Cancel subscription":"Avbryt prenumeration","Cancellation reason":"Anledning till avslut",Change:"Ändra","Check spam & promotions folders":"Titta i skräppostmappen","Check with your mail provider":"Verifirera att e-posten fungerar för ditt konto",Choose:"Välj","Choose a different plan":"Välj en annan prenumeration","Choose your newsletters":"Välj dina nyhetsbrev","Click here to retry":"Klicka här för att försöka igen",Close:"Stäng",Comments:"Kommentarer",Complimentary:"Kostnadsfri",Confirm:"Bekräfta","Confirm cancellation":"Bekräfta uppsägning","Confirm subscription":"Bekräfta prenumeration","Contact support":"Kontakta supporten",Continue:"Fortsätt","Continue subscription":"Förläng prenumeration","Could not sign in. Login link expired.":"Kunde inte logga in. Inloggningslänken har slutat gälla.","Could not update email! Invalid link.":"Kunde inte uppdatera e-postadressen. Länken fungerande inte.","Create a new contact":"Skapa en ny kontakt","Current plan":"Nuvarande prenumeration","Delete account":"Radera konto","Didn't mean to do this? Manage your preferences <button>here</button>.":"Ville du inte göra det här? Ändra dina inställningar <button>här</button>","Don't have an account?":"Har du inget konto?",Edit:"Editera",Email:"E-post","Email newsletter":"Nyhetsbrev via e-post","Email preference updated.":"Inställningar för e-post uppdaterade.","Email preferences":"E-postinställningar",Emails:"E-postmeddelanden","Emails disabled":"E-post inaktiverad","Ends {{offerEndDate}}":"Avslutas {{offerEndDate}}",Error:"Fel","Expires {{expiryDate}}":"Utgår {{expiryDate}}",Forever:"Tillsvidare","Free Trial – Ends {{trialEnd}}":"Gratispepriod – slutar {{trialEnd}","Get help":"Få hjälp","Get in touch for help":"Kontakta oss för hjälp","Get notified when someone replies to your comment":"Få en avisering när någon svarar på din kommentar","Give feedback on this post":"Ge feedback på det här inlägget","Help! I'm not receiving emails":"Hjälp! Jag får inte e-posten","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"Om ett nyhetsbrev markeras som skräppost, stängs utskicken till den e-postadressen av automatiskt för att det inte skall skickas ovälkomna meddelanden.","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"Om nyhetsbrevet av misstag markerades som skräppost och du vill återuppta utskicken kan du aktivera nyhetsbrevet på föregående sida.","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"Om du säger upp prenumerationen nu kommer du att ha tillgång till {{periodEnd}}.","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"Om din organisations e-postlösning blockerar utskicken kan du be administratören att tillåta e-post från adressen {{senderEmail}}","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"Om du vill börja ta emot utskicken igen, verifiera att du angett korrekt e-postadress och sedan klickar du på återaktivera utskick på förra sidan.","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"Om du inte får e-postutskicken från oss finns det några saker du kan göra.","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"Om det fortfarande inte fungerar efter att du undersökt allt kan du kontakta oss på {{supportAddress}}.","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"Om e-postutskick till din adress resulterar i ett permanent fel kommer utskicksförsök att upphöra.","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"Spara {{senderEmail}} som en kontakt i ditt e-postprogram. Det signalerar till din e-postleverantör att e-post från denna är adress är viktig.","Less like this":"Mindre sånt här",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':'Verifiera att e-postmeddelandena inte hamnat i skräppostmappen. Om de gjort det, flytta dem till inkorgen och/eller markera som "Ej skräppost".',Manage:"Hantera",Monthly:"Månadsvis","More like this":"Mer sånt här",Name:"Namn","Need more help? Contact support":"Behöver du mer hjälp? Kontakta administratören.","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"Nyhetsbrev kan inaktiveras på ditt konto av två anledningar: ett tidigare utskick markerades som spam, eller ett försök att skicka ett e-postmeddelande resulterade i ett permanent fel.","Not receiving emails?":"Får du inga e-postmeddelanden?","Now check your email!":"Kolla nu din e-post!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"Om du fortfarande inte ser e-post i din inkorg efter att du återaktiverat utskicken, kontrollera din skräppostmapp. Vissa e-postleverantörer behåller en historik över tidigare spamklagomål och fortsätter att markera e-post som spam. Om detta händer, markera det senaste nyhetsbrevet som 'Inte spam' för att flytta tillbaka det till din huvudsakliga inkorg.","Permanent failure (bounce)":"Permanent fel vid e-postutsskick (studs)",Plan:"Prenumerationen","Plan checkout was cancelled.":"Köp av prenumeration avbrutet","Plan upgrade was cancelled.":"Uppgradering av prenunmeration avbruten","Please fill in required fields":"Fyll i alla obligatoriska fält",Price:"Pris","Re-enable emails":"Återaktivera e-post","Renews at {{price}}.":"Förnyas till priset {{price}}",Retry:"Försök igen",Save:"Spara","Send an email and say hi!":"Skicka e-post och säg hej!","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"Skicka ett e-postmeddelande till {{senderEmail}} och säj hej. Detta blir en signal till din e-postleverantör meddelanden till/från {{senderEmail}} är viktiga.","Sending login link...":"Skickar inloggningslänk...","Sending...":"Skickar...","Sign in":"Logga in","Sign out":"Logga ut","Sign up":"Få uppdateringar","Signup error: Invalid link":"Registreringsfel. Länken fungerade inte.","Sorry, that didn’t work.":"Tyvärr, det fungerande inte.","Spam complaints":"Skräppostrapporter","Start {{amount}}-day free trial":"Starta {{amount}}-dagars gratis testprenumeration","Starting {{startDate}}":"Startar {{startDate}}","Starting today":"Startar idag","Submit feedback":"Skicka feedback",Subscribe:"Anmäl dig",Subscribed:"Anmäld",Success:"Det gick bra","Success! Check your email for magic link to sign-in.":"Det gick bra. Titta i din e-post efter ett meddelande från oss med en inloggningslänk.","Success! Your account is fully activated, you now have access to all content.":"Det gick bra! Ditt konto är uppdaterat och du har tillgång till allt material.","Success! Your email is updated.":"Det gick bra! Din e-postadress är uppdaterad.","Successfully unsubscribed":"Prenumerationen avslutades framgångsrikt","Thanks for the feedback!":"Tack för din feedback!","That didn't go to plan":"Det där fungerade inte som tänkt","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"E-postadressen vi har för dig är {{memberEmail}} — om det inte stämmer kan du uppdatera den i <button>kontoinställningar</button>.","There was a problem submitting your feedback. Please try again a little later.":"Det fungerande inte att skicka in din feedbak. Försök igen lite senare.","This site is invite-only, contact the owner for access.":"Den här sidan är endast för inbjudna, kontakta ägaren för åtkomst.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"För att slutföra registreringen, klicka på bekräftelselänken i din inkorg. Om den inte kommer fram inom 3 minuter, kolla din skräppostmapp!","Try free for {{amount}} days, then {{originalPrice}}.":"Prova gratis i {{amount}} dagar, sen betalar du {{originalPrice}}.","Unlock access to all newsletters by becoming a paid subscriber.":"Få tillgång till alla nyhetsbrev genom att bli betalande prenumerant","Unsubscribe from all emails":"Avregistrera från alla e-postutskick",Unsubscribed:"Avregistrerad","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Avregistrering från e-postmeddelanden kommer inte att avbryta din betalda prenumeration på {{title}}",Update:"Uppdatera","Update your preferences":"Uppdatera dina inställningar","Verify your email address is correct":"Kontrollera att e-postadressen är korrekt","View plans":"Visa prenumerationsalternativ","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Vi kunde inte avsluta kontot eftersom e-postadressen inte hittades. Vänligen kontakta webbplatsens ägare.","Welcome back, {{name}}!":"Välkommen tillbaka, {{name}}!","Welcome back!":"Välkommen tillbaka!","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"När en mottagare inte kan ta emot ett e-postmeddelande kallas det vanligtvis för att ett mejl studsar. I många fall kan detta vara tillfälligt. Dock kan i vissa fall ett studsande mejl returneras som ett permanent fel när en e-postadress är ogiltig eller inte existerar.","Why has my email been disabled?":"Varför har e-postutskicken stängts av?",Yearly:"Årligen","You currently have a free membership, upgrade to a paid subscription for full access.":"Du har för närvarande ett gratiskonto. Uppgradera till en betald prenumeration för att full tillgång.","You have been successfully resubscribed":"Du är nu anmäld ","You're currently not receiving emails":"Du tar för närvarande inte emot e-post","You're not receiving emails":"Du tar inte emot e-post","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Du får inte e-postmeddelanden eftersom du antingen markerade ett nyligt meddelande som skräppost, eller för att meddelanden inte kunde levereras till din angivna e-postadress.","You've successfully signed in.":"Du är nu inloggad.","Your account":"Ditt konto","Your input helps shape what gets published.":"Din åsikt hjälper till att forma vad som publiceras.","Your subscription will expire on {{expiryDate}}":"Din prenumeration avslutas {{expiryDate}}","Your subscription will renew on {{renewalDate}}":"Din prenumeration förnyas {{renewalDate}}","Your subscription will start on {{subscriptionStart}}":"Din prenumeration startar {{subscriptionStart}}"},n1={"{{amount}} days free":"{{amount}} gün ücretsiz","{{amount}} off":"{{amount}} indirim","{{amount}} off for first {{number}} months.":"İlk {{number}} ay için {{amount}} indirim.","{{amount}} off for first {{period}}.":"İlk {{period}} için {{amount}} indirim.","{{amount}} off forever.":"Sonsuza kadar {{amount}} indirim.","{{discount}}% discount":"%{{discount}} indirim","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"{{memberEmail}} artık {{newsletterName}} haber bülteni almayacak.","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"{{memberEmail}}, yorumlarınıza yanıt verildiğinde artık e-posta almayacak.","{{memberEmail}} will no longer receive this newsletter.":"{{memberEmail}} artık bu haber bültenini almayacak.","{{trialDays}} days free":"{{trialDays}} gün ücretsiz","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Gelen kutuna bir giriş linki gönderildi. Eğer 3 dakika içinde ulaşmazsa spam klasörünü kontrol ettiğinden emin ol.",Account:"Hesap","Account settings":"Hesap ayarları","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Ücretsiz deneme süresi bittikten sonra seçtiğin kategorinin normal fiyatından ücretlendirileceksin. O zamana kadar her an iptal edebilirsin.","Already a member?":"Zaten üye misin?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"Beklenmeyen bir hata oluştu. Lütfen tekrar deneyin veya hata devam ederse <a>destek ile iletişime geçin</a>.",Back:"Geri dön","Back to Log in":"Giriş ekranına geri dön","Billing info":"Fatura bilgisi","Black Friday":"Muhteşem Cuma","Cancel anytime.":"İstediğiniz zaman iptal edin.","Cancel subscription":"Aboneliği iptal et","Cancellation reason":"İptal sebebi",Change:"Değiştir","Check spam & promotions folders":"Spam ve promosyonlar klasörlerini kontrol edin","Check with your mail provider":"Posta sağlayıcınızla kontrol edin",Choose:"Seç","Choose a different plan":"Farklı bir plan seç","Choose your newsletters":"Haber e-postanı seç","Click here to retry":"Tekrar denemek için buraya tıkla",Close:"Kapat",Comments:"Yorumlar",Complimentary:"",Confirm:"Onayla","Confirm cancellation":"İptal İşlemini Onayla","Confirm subscription":"Aboneliği onayla","Contact support":"Desteğe başvurun",Continue:"Devam et","Continue subscription":"Aboneliğe devam et","Could not sign in. Login link expired.":"Oturum açılamadı. Oturum açma bağlantısının süresi doldu.","Could not update email! Invalid link.":"E-posta güncellenemedi! Geçersiz link.","Create a new contact":"Yeni bir kullanıcı oluştur","Current plan":"Mevcut plan","Delete account":"Hesabı sil","Didn't mean to do this? Manage your preferences <button>here</button>.":"Bunu yapmak istemedin mi? Tercihlerinizi <button>buradan</button> yönetin.","Don't have an account?":"Hesabın yok mu?",Edit:"Düzenle",Email:"E-posta","Email newsletter":"E-posta bülteni","Email preference updated.":"E-posta tercihi güncellendi.","Email preferences":"E-posta tercihleri",Emails:"E-postalar","Emails disabled":"E-postalar devre dışı","Ends {{offerEndDate}}":"{{offerEndDate}} tarihinde bitiyor",Error:"Hata","Expires {{expiryDate}}":"{{expiryDate}} tarihinde sona eriyor",Forever:"Süresiz","Free Trial – Ends {{trialEnd}}":"Ücretsiz Deneme – {{trialEnd}} tarihinde sona erer","Get help":"Yardım al","Get in touch for help":"Yardım için iletişime geçin","Get notified when someone replies to your comment":"Birisi yorumuna cevap yazdığında bildirim al","Give feedback on this post":"Gönderiye geri bildirim ver","Help! I'm not receiving emails":"Yardım! e-postası alamıyorum","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"Bir haber bülteni spam olarak işaretlenirse, artık istenmeyen mesaj almadığınızdan emin olmak için bu adres için e-postalar otomatik olarak devre dışı bırakılır.","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"Spam şikayeti yanlışlıkla olduysa veya tekrar e-posta almaya başlamak istiyorsanız, önceki ekrandaki düğmeyi tıklayarak e-postalara yeniden abone olabilirsiniz.","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"Aboneliğinizi şimdi iptal ederseniz, {{periodEnd}} tarihine kadar erişiminiz devam edecek.","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"Kurumsal veya devlet e-posta hesabınız varsa BT departmanınıza ulaşın ve {{senderEmail}} adresinden e-posta alınmasına izin vermelerini isteyin.","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"Tekrar e-posta almaya başlamak istiyorsanız, bundan sonraki en iyi adım, dosyadaki e-posta adresinizde herhangi bir sorun olup olmadığını kontrol etmek ve ardından önceki ekranda yeniden abone ol'u tıklamaktır.","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"Abone olduğunuz e-posta bültenini almıyorsanız, kontrol etmeniz gereken birkaç şey var.","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"Tüm bu kontrolleri tamamlamanıza rağmen hala e-posta almıyorsanız, {{supportAddress}} ile iletişime geçerek destek almak için ulaşabilirsiniz.","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"Haber bülteni göndermeye çalışırken kalıcı bir hata alınması durumunda, hesapta e-postalar devre dışı bırakılır.","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"E-posta istemcinizde {{senderEmail}} adresini kişi listenize ekleyin. Bu, posta sağlayıcınıza bu adresten gönderilen e-postaların güvenilir olması gerektiğini bildirir.","Less like this":"Bunun gibi daha az",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':'E-postaların yanlışlıkla gelen kutunuzun Spam veya Promosyonlar klasörlerine düşmediğinden emin olun. Varsa, "Spam değil olarak işaretle" ve/veya "Gelen kutusuna taşı"yı tıklayın.',Manage:"Yönet",Monthly:"Aylık","More like this":"Bunun gibi daha fazla",Name:"İsim","Need more help? Contact support":"Daha fazla yardıma mı ihtiyacınız var? Desteğe başvurun","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"Bültenler, hesabınızda iki nedenden dolayı devre dışı bırakılabilir: Önceki bir e-posta istenmeyen posta olarak işaretlendi veya bir e-posta gönderilmeye çalışıldığında kalıcı bir başarısızlıkla (geri dönme) sonuçlandı.","Not receiving emails?":"E-posta almıyor musun?","Now check your email!":"Şimdi e-posta kutunu kontrol et!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"Yeniden abone olduktan sonra, gelen kutunuzda hala e-posta göremiyorsanız spam klasörünüzü kontrol edin. Bazı gelen kutusu sağlayıcıları, önceki spam şikayetlerinin kaydını tutar ve e-postaları işaretlemeye devam eder. Böyle bir durumda, birincil gelen kutunuza geri taşımak için en son haber bültenini 'Spam değil' olarak işaretleyin.","Permanent failure (bounce)":"Kalıcı başarısızlık (sıçra)",Plan:"Plan","Plan checkout was cancelled.":"Plan ödemesi iptal edildi.","Plan upgrade was cancelled.":"Plan yükseltme iptal edildi.","Please fill in required fields":"Lütfen gerekli alanları doldurunuz",Price:"Fiyat","Re-enable emails":"E-postaları yeniden etkinleştir","Renews at {{price}}.":"{{price}} karşılığında yenilenir.",Retry:"Tekrar dene",Save:"Kaydet","Send an email and say hi!":"Bir e-posta gönderin ve merhaba deyin!","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"{{senderEmail}} adresine bir e-posta gönderin ve merhaba deyin. Bu, posta sağlayıcınıza bu adresten gelen ve bu adresten gelen e-postalara güvenilmesi gerektiğinin sinyalini de verebilir.","Sending login link...":"Giriş linki gönderiliyor...","Sending...":"Gönderiliyor...","Sign in":"Giriş yap","Sign out":"Çıkış yap","Sign up":"Kayıt ol","Signup error: Invalid link":"Kayıt hatası: Geçersiz bağlantı","Sorry, that didn’t work.":"Üzgünüm, bu işe yaramadı.","Spam complaints":"Spam şikayetleri","Start {{amount}}-day free trial":"{{amount}} gün ücretsiz deneme süresini başlat","Starting {{startDate}}":"{{startDate}} tarihinden itibaren","Starting today":"Bugün başlıyor","Submit feedback":"Geri bildirim gönder",Subscribe:"Abone",Subscribed:"Abone olundu",Success:"Başarılı","Success! Check your email for magic link to sign-in.":"Başarılı! Oturum açmak için sihirli bağlantı için e-postanızı kontrol edin.","Success! Your account is fully activated, you now have access to all content.":"Başarılı! Hesabınız tamamen etkinleştirildi, artık tüm içeriğe erişebilirsiniz.","Success! Your email is updated.":"Başarılı! E-postanız güncellendi.","Successfully unsubscribed":"Abonelikten başarıyla çıkıldı","Thanks for the feedback!":"Geri bildirim için teşekkürler!","That didn't go to plan":"Bir şeyler ters gitti","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"Geri bildiriminiz gönderilirken bir sorun oluştu. Lütfen biraz sonra tekrar deneyin.","This site is invite-only, contact the owner for access.":"Bu site sadece davetiyesi olanlar içindir, erişim için site sahibiyle iletişime geç.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Kaydını tamamlamak için gelen kutuna gönderilen onay linkine tıkla. Eğer 3 dakika içinde ulaşmazsa spam klasörünü kontrol et!","Try free for {{amount}} days, then {{originalPrice}}.":"{{amount}} gün ücretsiz deneyin, ardından {{originalPrice}}.","Unlock access to all newsletters by becoming a paid subscriber.":"Ücretli bir abone olarak tüm haber bültenlerine erişimin kilidini açın.","Unsubscribe from all emails":"Tüm e-postaların aboneliğinden çık",Unsubscribed:"Abonelikten çıkıldı","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"E-postaların aboneliğinden çıkmak, {{title}} sitesine olan ücretli aboneliğini iptal etmeyecek",Update:"Güncelle","Update your preferences":"Tercihlerini güncelle","Verify your email address is correct":"E-posta adresinizin doğru olduğunu doğrulayın","View plans":"Planları göster","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"E-posta adresi bulunamadığı için seni abonelikten çıkaramıyoruz. Lütfen site sahibiyle iletişime geç.","Welcome back, {{name}}!":"Tekrar hoş geldin {{name}}!","Welcome back!":"Tekrar hoşgeldiniz!","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"Bir gelen kutusu bir e-postayı kabul edemediğinde buna genellikle geri dönen denir. Çoğu durumda, bu geçici olabilir. Bununla birlikte, bazı durumlarda, bir e-posta adresi geçersiz olduğunda veya mevcut olmadığında, geri dönen bir e-posta kalıcı bir başarısızlık olarak döndürülebilir.","Why has my email been disabled?":"E-postam neden devre dışı bırakıldı?",Yearly:"Yıllık","You currently have a free membership, upgrade to a paid subscription for full access.":"Şu anda ücretsiz üyeliğiniz var, tam erişim için ücretli aboneliğe yükseltin.","You have been successfully resubscribed":"Başarıyla yeniden abone oldun","You're currently not receiving emails":"Şu anda e-posta almıyorsunuz","You're not receiving emails":"E-posta almıyorsunuz","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"E-postaları almıyorsun çünkü yakınlarda gönderilen bir mesajı spam olarak işaretledin ya da mesajlar verilen e-posta adresine teslim edilemedi.","You've successfully signed in.":"Başarıyla oturum açtınız.","Your account":"Hesabın","Your input helps shape what gets published.":"Yorumun yayımlanan içeriklerin şekillenmesine yardımcı olur.","Your subscription will expire on {{expiryDate}}":"Aboneliğiniz {{expiryDate}} tarihinde sona erecek","Your subscription will renew on {{renewalDate}}":"Aboneliğiniz {{renewalDate}} tarihinde yenilenecek","Your subscription will start on {{subscriptionStart}}":"Aboneliğiniz {{subscriptionStart}} tarihinde başlayacak"},r1={"{{amount}} days free":"","{{amount}} off":"","{{amount}} off for first {{number}} months.":"","{{amount}} off for first {{period}}.":"","{{amount}} off forever.":"","{{discount}}% discount":"Знижка {{discount}}%","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"Безплатно {{trialDays}} дні(-в)","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Посилання для входу було надіслано на твою пошту. Якщо воно не прийде протягом 3 хвилин, перевірь папку спам.",Account:"Oбліковий запис","Account settings":"Налаштування облікового запису","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Після закінчення безплатного періоду, з тебе буде стягнена вартість за обраний тариф. Ти завжди можеш скасувати послугу до цього часу.","Already a member?":"Вже зареєстрований?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"Назад","Back to Log in":"Повернутись до входу","Billing info":"","Black Friday":"","Cancel anytime.":"","Cancel subscription":"Скасуй підписку","Cancellation reason":"Причина скасування",Change:"","Check spam & promotions folders":"","Check with your mail provider":"",Choose:"","Choose a different plan":"Вибари інший план","Choose your newsletters":"Вибери свої підписки","Click here to retry":"",Close:"Закрий",Comments:"Коментарі",Complimentary:"",Confirm:"Підтвердь","Confirm cancellation":"","Confirm subscription":"","Contact support":"",Continue:"Далі","Continue subscription":"","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"","Delete account":"Видалити обліковий запис","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"Не маєш облікового запису?",Edit:"",Email:"Електронна пошта","Email newsletter":"","Email preference updated.":"Налаштування електронної пошти оновлені.","Email preferences":"Налаштування електронної пошти",Emails:"Електронні листи","Emails disabled":"Електронна пошта вимкнена","Ends {{offerEndDate}}":"",Error:"","Expires {{expiryDate}}":"",Forever:"","Free Trial – Ends {{trialEnd}}":"","Get help":"Отримати допомогу","Get in touch for help":"","Get notified when someone replies to your comment":"Повідомляй коли хтось відповість на твій коментар","Give feedback on this post":"Дати відгук на цю публікацію","Help! I'm not receiving emails":"","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"Менше подібних",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"Управління",Monthly:"Місячно","More like this":"Більше подібних",Name:"Ім'я","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"Не приходять листи?","Now check your email!":"А тепер перевір свою пошту!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"Ціна","Re-enable emails":"Знову включити пошту","Renews at {{price}}.":"",Retry:"Повтори спробу",Save:"Збережи","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"Відправляється посилання для входу...","Sending...":"Відправляється...","Sign in":"Вхід","Sign out":"","Sign up":"Реєстрація","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"Почни {{amount}}-денний безплатний період","Starting {{startDate}}":"","Starting today":"","Submit feedback":"Вишли відгук",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"Підписку успішно скасовано","Thanks for the feedback!":"Дякуємо за відгук!","That didn't go to plan":"Щось пішло не так","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"Цей сайт доступний тільки за запрошенням, звернись до власника сайта для доступу.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Щоб завершити реєстрацію, натисни посилання в своїй електронній пошті для підтвердження. Якщо електронний лист не прийде протягом 3 хвилин, перевір папку спам!","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"Відписатись від усіх листів",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Відписка від листів не скасує твою платну підписку на {{title}}",Update:"","Update your preferences":"Онови свої налаштування","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Ми не можемо відписати тебе, оскільки адреса електронної пошти не знайдена. Будь ласка, зв'яжись з власником сайту.","Welcome back, {{name}}!":"","Welcome back!":"","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"Річно","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"Тебе успішно підписано знову","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Не приходять листи, оскільки останній отриманий лист був тобою позначений як спам, або листи не можуть бути доставлені на твою адресу електронної пошти.","You've successfully signed in.":"","Your account":"Твій обліковий запис","Your input helps shape what gets published.":"Твій відгук допоможе вирішити що публікувати далі.","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},a1={"{{amount}} days free":"","{{amount}} off":"","{{amount}} off for first {{number}} months.":"","{{amount}} off for first {{period}}.":"","{{amount}} off forever.":"","{{discount}}% discount":"{{discount}}% chegirma","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"{{trialDays}} kun bepul","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Kirish havolasi email pochtangizga yuborildi. Agar u 3 daqiqada kelmasa, spam bo'limini tekshiring",Account:"Hisob","Account settings":"Hisob sozlamalari","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Bepul sinov muddati tugagandan so'ng, siz tanlagan daraja uchun odatdagi narxdan undiriladi. Undan oldin istalgan vaqtda bekor qilishingiz mumkin.","Already a member?":"Allaqachon a'zomisiz?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"Orqaga","Back to Log in":"Kirish sahifasiga qaytish","Billing info":"","Black Friday":"","Cancel anytime.":"","Cancel subscription":"Obunani bekor qilish","Cancellation reason":"Bekor qilish sababi",Change:"","Check spam & promotions folders":"","Check with your mail provider":"",Choose:"","Choose a different plan":"Boshqa rejani tanlang","Choose your newsletters":"Pochta xabarlarini tanlang","Click here to retry":"",Close:"Yopmoq",Comments:"Izohlar",Complimentary:"",Confirm:"Tasdiqlamoq","Confirm cancellation":"","Confirm subscription":"","Contact support":"",Continue:"Davom etmoq","Continue subscription":"","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"","Delete account":"Hisobni o'chirmoq","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"Hisobingiz yoqmi?",Edit:"",Email:"Email","Email newsletter":"","Email preference updated.":"Email sozlamalari yangilandi.","Email preferences":"Email sozlamalari",Emails:"Elektron xatlar","Emails disabled":"Elektron pochta xabarlari o‘chirilgan","Ends {{offerEndDate}}":"",Error:"","Expires {{expiryDate}}":"",Forever:"","Free Trial – Ends {{trialEnd}}":"","Get help":"Yordam olmoq","Get in touch for help":"","Get notified when someone replies to your comment":"Kimdir sharhingizga javob bersa, bildirishnoma oling","Give feedback on this post":"Ushbu post haqida fikr bildiring","Help! I'm not receiving emails":"","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"Bu kabi kamroq",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"Boshqarmoq",Monthly:"Oylik","More like this":"Ko'proq shunga o'xshash",Name:"Ism","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"Elektron xatlar olmayapsizmi?","Now check your email!":"Endi elektron pochtangizni tekshiring!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"Narx","Re-enable emails":"Elektron pochta xabarlarini qayta yoqing","Renews at {{price}}.":"",Retry:"Qayta urinmoq",Save:"Saqlamoq","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"Kirish havolasi yuborilmoqda...","Sending...":"Yuborilmoqda...","Sign in":"Kirish","Sign out":"","Sign up":"Ro'yxatdan o'tmoq","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"{{amount}}-kun sinov muddatini boshlang","Starting {{startDate}}":"","Starting today":"","Submit feedback":"Izoh yuboring",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"Obuna muvaffaqiyatli bekor qilindi","Thanks for the feedback!":"Izoh uchun rahmat!","That didn't go to plan":"Bu rejaga mos kelmadi","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"Bu saytda faqat taklif qilinadi, kirish uchun egasiga murojaat qiling.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Ro‘yxatdan o‘tishni yakunlash uchun pochta qutingizdagi tasdiqlash havolasini bosing. Agar u 3 daqiqada kelmasa, spam jildini tekshiring!","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"Barcha elektron pochta xabarlariga obunani bekor qiling",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Elektron pochtalarga obunani bekor qilish {{title}}ga pulli obunanu bekor qilmaydi",Update:"","Update your preferences":"Sozlamalarni yangilash","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Email manzili topilmagani uchun obunangizni bekor qila olmadik. Iltimos, sayt egasi bilan bog'laning.","Welcome back, {{name}}!":"","Welcome back!":"","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"Yillik","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"Siz muvaffaqiyatli qayta obuna bo'ldingiz","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Siz e-pochta xabarlarini olmayapsiz, chunki siz oxirgi xabarni spam deb belgilagansiz yoki xabarlar taqdim etilgan elektron pochta manzilingizga yetkazilmagan.","You've successfully signed in.":"","Your account":"Sizning hisobingiz","Your input helps shape what gets published.":"","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},i1={"{{amount}} days free":"","{{amount}} off":"","{{amount}} off for first {{number}} months.":"","{{amount}} off for first {{period}}.":"","{{amount}} off forever.":"","{{discount}}% discount":"Giảm {{discount}}%","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"{{trialDays}} ngày miễn phí còn lại","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Liên kết đăng nhập đã được gửi đến hộp thư của bạn. Nếu trong vòng 3 phút bạn vẫn chưa thấy, hãy kiểm tra thư hộp thư rác của bạn.",Account:"Tài khoản","Account settings":"Cài đặt","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Sau khi kết thúc thời gian dùng thử miễn phí, bạn sẽ được tính giá thường cho gói dịch vụ mà bạn đã chọn. Bạn có thể hủy trước khi thời gian dùng thử kết thúc.","Already a member?":"Bạn đã là thành viên?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"Quay về","Back to Log in":"Quay về đăng nhập","Billing info":"","Black Friday":"","Cancel anytime.":"","Cancel subscription":"Hủy thuê bao","Cancellation reason":"Lý do hủy thuê bao",Change:"","Check spam & promotions folders":"","Check with your mail provider":"",Choose:"","Choose a different plan":"Chọn gói dịch vụ khác","Choose your newsletters":"Chọn bản tin bạn muốn nhận","Click here to retry":"",Close:"Đóng",Comments:"Bình luận",Complimentary:"",Confirm:"Xác nhận","Confirm cancellation":"","Confirm subscription":"","Contact support":"",Continue:"Tiếp tục","Continue subscription":"","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"","Delete account":"Xóa tài khoản","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"Bạn chưa có tài khoản?",Edit:"",Email:"Email","Email newsletter":"","Email preference updated.":"Cập nhật email","Email preferences":"Cài đặt email",Emails:"Emails","Emails disabled":"Tắt chức năng email","Ends {{offerEndDate}}":"",Error:"","Expires {{expiryDate}}":"",Forever:"","Free Trial – Ends {{trialEnd}}":"","Get help":"Trợ giúp","Get in touch for help":"","Get notified when someone replies to your comment":"Nhận thông báo khi có ai đó trả lời bình luận","Give feedback on this post":"Phản hồi bài viết này","Help! I'm not receiving emails":"","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"Không thích lắm",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"Quản lý",Monthly:"Mỗi tháng","More like this":"Thích bài viết dạng này",Name:"Tên","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"Bạn không nhận được email?","Now check your email!":"Kiểm tra email ngay bây giờ!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"Giá","Re-enable emails":"Kích hoạt lại email nhận","Renews at {{price}}.":"",Retry:"Thử lại",Save:"Lưu","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"Đang gửi liên kết đăng nhập","Sending...":"Đang gửi","Sign in":"Đăng nhập","Sign out":"","Sign up":"Đăng ký","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"Bắt đầu dùng thử {{amount}} ngày","Starting {{startDate}}":"","Starting today":"","Submit feedback":"Gửi phản hồi",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"Đã hủy đăng ký thành công","Thanks for the feedback!":"Cám ơn phản hồi của bạn!","That didn't go to plan":"Không thực hiện được","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"Trang web này chỉ dành cho những người được mời, hãy liên hệ với chủ sở hữu để có quyền truy cập.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Để hoàn tất đăng ký, hãy nhấp vào liên kết xác nhận trong hộp thư đến của bạn. Nếu nó không đến trong vòng 3 phút, hãy kiểm tra thư mục thư rác của bạn!","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"Hủy theo dõi tất cả email",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Việc hủy đăng ký nhận email sẽ không hủy gói đăng ký trả phí của bạn đối với {{title}}",Update:"","Update your preferences":"Cập nhật cài đặt","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Chúng tôi không thể hủy đăng ký bạn vì không tìm thấy địa chỉ email. Vui lòng liên hệ với chủ sở hữu trang web.","Welcome back, {{name}}!":"","Welcome back!":"","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"Mỗi năm","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"Bạn đã đăng ký lại thành công","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Bạn không nhận được email vì bạn đã đánh dấu thư gần đây là thư rác, hoặc vì không thể gửi thư đến địa chỉ email bạn đã cung cấp.","You've successfully signed in.":"","Your account":"Tài khoản của bạn","Your input helps shape what gets published.":"Thông tin của bạn giúp định hình nội dung được xuất bản.","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},o1={"{{amount}} days free":"{{amount}}天免费","{{amount}} off":"减免{{amount}}","{{amount}} off for first {{number}} months.":"前{{number}}月减免{{amount}}","{{amount}} off for first {{period}}.":"首{{period}}减免{{amount}}","{{amount}} off forever.":"永久减免{{amount}}","{{discount}}% discount":"{{discount}}% 折扣","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"{{memberEmail}}将不会再收到{{newsletterName}}的刊物。","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"{{memberEmail}}将不会再收到评论回复提醒邮件。","{{memberEmail}} will no longer receive this newsletter.":"{{memberEmail}}将不会再收到本刊物。","{{trialDays}} days free":"{{trialDays}} 天免费试用","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"登录链接已经发送到您的收件箱。如果在3分钟内还没有收到,请务必检查您的垃圾邮件文件夹。",Account:"账户","Account settings":"账户设置","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"免费试用结束后,您将被收取所选套餐的标定价格。在此之前,您可以随时取消。","Already a member?":"已经是会员了?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"遇到意外错误。请重试,若持续出现请<a>联系支持服务</a>。",Back:"返回","Back to Log in":"返回登录","Billing info":"账单信息","Black Friday":"黑五促销","Cancel anytime.":"随时取消","Cancel subscription":"取消订阅","Cancellation reason":"取消原因",Change:"变更","Check spam & promotions folders":"检查垃圾邮件与促销邮件目录","Check with your mail provider":"与您的邮件服务商确认",Choose:"选择","Choose a different plan":"选择其他订阅方案","Choose your newsletters":"选择您的刊物","Click here to retry":"请点此处重试",Close:"关闭",Comments:"评论",Complimentary:"赠送",Confirm:"确认","Confirm cancellation":"确认取消","Confirm subscription":"确认订阅","Contact support":"联系支持服务",Continue:"继续","Continue subscription":"继续订阅","Could not sign in. Login link expired.":"无法登录。登录链接已过期。","Could not update email! Invalid link.":"无法更新电子邮件!链接无效。","Create a new contact":"创建新联系","Current plan":"当前订阅","Delete account":"删除账户","Didn't mean to do this? Manage your preferences <button>here</button>.":"误操作?在<button>这里</button>管理您的配置。","Don't have an account?":"还没有账户吗?",Edit:"编辑",Email:"电子邮件","Email newsletter":"电子邮件快报","Email preference updated.":"电子邮件偏好已更新。","Email preferences":"电子邮件偏好设置",Emails:"电子邮件列表","Emails disabled":"关闭电子邮件列表","Ends {{offerEndDate}}":"于{{offerEndDate}}结束",Error:"错误","Expires {{expiryDate}}":"于{{expiryDate}}过期",Forever:"永久","Free Trial – Ends {{trialEnd}}":"免费试用 - {{trialEnd}}结束","Get help":"获取帮助","Get in touch for help":"联系以获取帮助","Get notified when someone replies to your comment":"当有人回复您的评论时,将会收到通知","Give feedback on this post":"对这篇文章提供建议","Help! I'm not receiving emails":"求助!我没有收到电子邮件","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"如果有快报被标记为垃圾邮件,则自动拒绝该地址的邮件以确保后续不再接收不想要的消息。","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"如果误标记为垃圾邮件,或者您希望再次开启邮件接收,您可以通过点击上一页的按钮重新订阅。","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"如果现在取消订阅,当前订阅在{{periodEnd}}依旧有效。","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"如果您使用公司或者政府邮件账户,请联系相应IT部门以允许从{{senderEmail}}接收邮件。","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"如果您希望重新开始接收邮件,接下来最好先检查存档的电子邮件地址,然后在之前的页面点击重新订阅。","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"如果没有收到订阅快报,请检查以下事项。","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"如果您已经完成全部检查项目却依旧没有收到邮件,您可以联系{{supportAddress}}获取支持。","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"当尝试发送快报时遇到永久错误,向该账户的发送邮件的功能将被禁用。","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"在您的电子邮件客户端将 {{senderEmail}} 加入联系人列表。这将向您的邮件供应商表明来自该地址的邮件是可信的。","Less like this":"不喜欢",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"确保邮件没有被意外标记为垃圾或者促销邮件。如果是,点击“非垃圾邮件”或者“移动到收件箱”。",Manage:"管理",Monthly:"月付","More like this":"喜欢",Name:"名字","Need more help? Contact support":"需要更多帮助?联系支持服务","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"您账户的快报被禁用的可能原因有两个:先前的电子邮件被标记为垃圾邮件,或者发送邮件遇到永久错误 (bounce)","Not receiving emails?":"无法收到电子邮件?","Now check your email!":"现在请检查您的电子邮件!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"重新订阅后在收件箱依旧没有看到邮件,请检查您的垃圾邮件箱。一些服务商会保留之前的垃圾邮件记录并持续标记。如果是这样,请将最新的快报标记为“非垃圾邮件”并将其移动到收件箱。","Permanent failure (bounce)":"永久错误 (bounce)",Plan:"订阅计划","Plan checkout was cancelled.":"订阅付款已取消。","Plan upgrade was cancelled.":"订阅升级已取消。","Please fill in required fields":"请填写必须项目",Price:"价格","Re-enable emails":"重启电子邮件","Renews at {{price}}.":"以{{price}}的价格续费。",Retry:"重试",Save:"保存","Send an email and say hi!":"发送邮件问好!","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"发送邮件到{{senderEmail}}问好。这有助于您的邮件服务商将该地址的往来邮件判定为可信邮件。","Sending login link...":"正在发送登录链接...","Sending...":"发送中...","Sign in":"登录","Sign out":"退出","Sign up":"注册","Signup error: Invalid link":"注册错误:链接无效","Sorry, that didn’t work.":"抱歉,该操作无法完成。","Spam complaints":"垃圾邮件","Start {{amount}}-day free trial":"开始 {{amount}}-天免费试用","Starting {{startDate}}":"从{{startDate}}开始","Starting today":"从今天开始","Submit feedback":"提交建议",Subscribe:"订阅",Subscribed:"已订阅",Success:"成功","Success! Check your email for magic link to sign-in.":"成功!检查您的电子邮箱以获取登录链接。","Success! Your account is fully activated, you now have access to all content.":"成功!您的账户已经完全激活,您现在可以访问全部内容了。","Success! Your email is updated.":"成功!您的电子邮件已更新。","Successfully unsubscribed":"成功取消订阅","Thanks for the feedback!":"感谢您的建议!","That didn't go to plan":"似乎出错了","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"提交您的反馈时遇到错误。请稍后重试。","This site is invite-only, contact the owner for access.":"此网站仅限邀请,联系所有者以获取访问","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"要完成注册,请点击您收件箱中的确认链接。如果在3分钟内没有收到,请检查一下您的垃圾邮件文件夹!","Try free for {{amount}} days, then {{originalPrice}}.":"{{amount}}天免费试用,之后{{originalPrice}}。","Unlock access to all newsletters by becoming a paid subscriber.":"成为付费订阅用户以解锁全部快报。","Unsubscribe from all emails":"取消所有邮件订阅",Unsubscribed:"取消订阅","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"取消邮件订阅不会取消您对 {{title}} 的付费订阅。",Update:"更新","Update your preferences":"更新您的偏好设置","Verify your email address is correct":"确认您的电子邮件地址是正确的","View plans":"查阅订阅计划","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"我们无法取消您的订阅,因为找不到该电子邮件地址。请联系网站所有者。","Welcome back, {{name}}!":"欢迎回来,{{name}}!","Welcome back!":"欢迎回来!","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"收件箱无法接收邮件时称为“反弹”。大多数时候这是临时的。但是某些情况下,无效或者不存在的邮件地址反弹的邮件会被认定为永久错误。","Why has my email been disabled?":"为什么我的邮件功能被禁用了?",Yearly:"年付","You currently have a free membership, upgrade to a paid subscription for full access.":"您当前为免费用户,升级为付费订阅以获取全部内容。","You have been successfully resubscribed":"您已成功重新订阅","You're currently not receiving emails":"您当前不会接收电子邮件。","You're not receiving emails":"您当前不会接收电子邮件。","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"您收不到电子邮件是因为您可能将最近的某个消息标记为垃圾邮件,或者无法将消息发送到您提供的电子邮件地址。","You've successfully signed in.":"您已成功登录。","Your account":"您的账户","Your input helps shape what gets published.":"您的建议将使我们变得更好。","Your subscription will expire on {{expiryDate}}":"您的订阅将在{{expiryDate}}到期","Your subscription will renew on {{renewalDate}}":"您的订阅将在{{renewalDate}}续费","Your subscription will start on {{subscriptionStart}}":"您的订阅将于{{subscriptionStart}}开始"},s1={"{{amount}} days free":"{{amount}}天免費","{{amount}} off":"{{amount}}元優惠","{{amount}} off for first {{number}} months.":"前{{number}}個月有{{amount}}元優惠","{{amount}} off for first {{period}}.":"首{{period}}有{{amount}}元優惠","{{amount}} off forever.":"永久{{amount}}元優惠","{{discount}}% discount":"{{discount}}% 折扣","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"{{memberEmail}}將不再收到{{newsletterName}}的電子報。","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"{{memberEmail}}將不再收到他人回覆您的評論時的通知。","{{memberEmail}} will no longer receive this newsletter.":"{{memberEmail}}將不再收到此電子報。","{{trialDays}} days free":"{{trialDays}} 天免費試用","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"登錄連結已經發送到您的收件夾。如果在3分鐘內還沒有收到,請務必檢查您的垃圾郵件收件夾。",Account:"帳號","Account settings":"帳號設置","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"免費試用結束後,您將被收取所選套餐的標定價格。在此之前,您可以隨時取消。","Already a member?":"已經是會員了?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"發生了意外錯誤。請重試或若錯誤持續出現,請<a>聯繫客服</a>。",Back:"返回","Back to Log in":"返回登入","Billing info":"帳單內容","Black Friday":"黑色星期五促銷","Cancel anytime.":"隨時取消","Cancel subscription":"取消訂閱","Cancellation reason":"取消原因",Change:"修改","Check spam & promotions folders":"檢查垃圾收件夾或是促銷信件資料夾","Check with your mail provider":"請與您的電子信箱服務提供商確認",Choose:"選擇","Choose a different plan":"選擇其他訂閱方案","Choose your newsletters":"選擇您的電子報","Click here to retry":"點擊重試",Close:"關閉",Comments:"留言",Complimentary:"贈送",Confirm:"確認","Confirm cancellation":"確認取消","Confirm subscription":"確認訂閱","Contact support":"聯繫客服",Continue:"繼續","Continue subscription":"繼續訂閱","Could not sign in. Login link expired.":"無法登入。登入連結已過期。","Could not update email! Invalid link.":"無法更新 email!連結無效。","Create a new contact":"建立新聯絡人","Current plan":"目前方案","Delete account":"刪除帳號","Didn't mean to do this? Manage your preferences <button>here</button>.":"不小心按到?在<button>這裡</button>可以更改您的偏好設定。","Don't have an account?":"還沒有帳號嗎?",Edit:"編輯",Email:"email","Email newsletter":"電子報","Email preference updated.":"email 偏好已更新。","Email preferences":"email 偏好設定",Emails:"email 列表","Emails disabled":"關閉 email 列表","Ends {{offerEndDate}}":"於{{offerEndDate}}結束",Error:"錯誤","Expires {{expiryDate}}":"於{{expiryDate}}過期",Forever:"永久","Free Trial – Ends {{trialEnd}}":"免費試用 - 於{{trialEnd}}结束","Get help":"獲得幫助","Get in touch for help":"聯繫以獲得幫助","Get notified when someone replies to your comment":"當有人回覆您的留言時通知我","Give feedback on this post":"就這篇文章提供回饋","Help! I'm not receiving emails":"求救!我沒有收到 email","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"如果有電子報被標記為垃圾郵件,該地址的郵件將自動停用,以確保您不再收到任何不需要的訊息。","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"如果垃圾郵件投訴是意外的,或者您希望重新開始接收郵件,您可以點擊上一個畫面上的按鈕重新訂閱郵件。","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"如果現在取消訂閱,您將在{{periodEnd}}之前繼續使用服務。","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"如果您有企業或政府郵件帳戶,請聯繫您的IT部門,要求他們允許從{{senderEmail}}接收郵件。","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"如果您希望重新開始接收郵件,最好的下一步是檢查您存檔的郵件地址是否存在任何問題,然後在上一個畫面上點擊重新訂閱。","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"如果您沒有收到您訂閱的電子報,請檢查以下幾個事項。","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"如果您已經完成了所有這些檢查,但仍然沒有收到郵件,您可以通過聯繫{{supportAddress}}獲取支援。","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"當嘗試發送電子報時收到永久失敗的情況,該帳戶的郵件功能將被停用。","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"在您的email客戶端中將{{senderEmail}}添加到您的聯絡人列表中。這將向您的郵件提供商發出信號,表示應該信任從該地址發送的郵件。","Less like this":"較不感興趣",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"請確保郵件沒有意外地被歸類為垃圾郵件或推廣郵件收件夾。如果有,請點擊“標記為非垃圾郵件”和/或“移至收件夾”。",Manage:"管理",Monthly:"月付","More like this":"較感興趣",Name:"名字","Need more help? Contact support":"需要更多幫助?聯繫支援服務","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"您的帳戶可能會因兩個原因而禁用快報功能:先前的郵件被標記為垃圾郵件,或者嘗試發送郵件時出現永久失敗(退回)。","Not receiving emails?":"未收到 email?","Now check your email!":"現在檢查您的 email!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"重新訂閱後,如果您在收件夾中仍然看不到郵件,請檢查您的垃圾郵件夾。一些收件夾提供商會保留先前的垃圾郵件投訴記錄並持續標記郵件。如果發生這種情況,請將最新的電子報標記為'非垃圾郵件',將其移回到您的主要收件夾。","Permanent failure (bounce)":"永久錯誤 (退回)",Plan:"訂閱","Plan checkout was cancelled.":"訂閱付款已取消。","Plan upgrade was cancelled.":"訂閱升級已取消。","Please fill in required fields":"請填寫必填項目",Price:"價格","Re-enable emails":"重新啟用 email","Renews at {{price}}.":"以{{price}}的價格續約。",Retry:"重試",Save:"儲存","Send an email and say hi!":"發送email問好!","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"發送 email 給{{senderEmail}}並問好。這也有助於向您的 email 提供商傳達這個網址的往來郵件應該被信任。","Sending login link...":"正在發送登入連結...","Sending...":"發送中...","Sign in":"登入","Sign out":"登出","Sign up":"註冊","Signup error: Invalid link":"註冊錯誤:連結無效","Sorry, that didn’t work.":"抱歉,该操作無法完成。","Spam complaints":"垃圾信件","Start {{amount}}-day free trial":"開始 {{amount}} 天免費試用","Starting {{startDate}}":"從{{startDate}}開始","Starting today":"從今天開始","Submit feedback":"提交建議",Subscribe:"訂閱",Subscribed:"已訂閱",Success:"成功","Success! Check your email for magic link to sign-in.":"成功!請檢查您的 email 以獲取登入的魔法連結。","Success! Your account is fully activated, you now have access to all content.":"成功!您的帳號已完全啟用,現在可以訪問所有內容。","Success! Your email is updated.":"成功!您的 email 已更新。","Successfully unsubscribed":"成功取消訂閱","Thanks for the feedback!":"感謝您的建議!","That didn't go to plan":"似乎出錯了","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"我們所持有的您的 email 地址是 {{memberEmail}} — 如果這不正確,您可以在<button>帳號設定區域</button>進行更新。","There was a problem submitting your feedback. Please try again a little later.":"提交您的回饋時遇到問題。請稍後再試。","This site is invite-only, contact the owner for access.":"此網站僅限邀請,請聯繫擁有者獲取訪問權限。","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"要完成註冊,請點擊您收件箱中的確認連結。如果在3分鐘內沒有收到,請檢查您的垃圾郵件收件夾!","Try free for {{amount}} days, then {{originalPrice}}.":"免費試用{{amount}}天,然後{{originalPrice}}。","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"取消所有電子報訂閱",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"取消電子報訂閱不會取消您對{{title}}的付費訂閱。",Update:"更新","Update your preferences":"更新您的偏好設置","Verify your email address is correct":"確認你的email是正確的","View plans":"查詢訂閱計畫","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"我們無法取消您的訂閱,因為找不到該 email 地址。請聯繫網站管理員。","Welcome back, {{name}}!":"歡迎回來,{{name}}!","Welcome back!":"歡迎回來!","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"當收件匣無法接收郵件時,通常稱之為退回。在許多情況下,這可能是暫時的。然而,在某些情況下,當郵件地址無效或不存在時,退回的郵件可能會被視為永久失敗。","Why has my email been disabled?":"為什麼我的電子郵件被禁用了?",Yearly:"年付","You currently have a free membership, upgrade to a paid subscription for full access.":"您目前是免費會員,升級至付費訂閱以獲得完整存取權。","You have been successfully resubscribed":"您已成功重新訂閱","You're currently not receiving emails":"您目前無法接收郵件。","You're not receiving emails":"您無法接收郵件。","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"您無法接收郵件,可能是因為您最近將某個郵件標記為垃圾郵件,或者郵件無法發送到您提供的 email。","You've successfully signed in.":"您已成功登入。","Your account":"您的帳號","Your input helps shape what gets published.":"您的建議有助於改善我們的內容。","Your subscription will expire on {{expiryDate}}":"您的訂閱將於{{expiryDate}}到期","Your subscription will renew on {{renewalDate}}":"您的訂閱將於{{renewalDate}}自動續訂","Your subscription will start on {{subscriptionStart}}":"您的訂閱將於{{subscriptionStart}}開始"};var Of;function Yf(){return Of||(Of={"/ghost/i18n/locales/af/portal.json":function(){return $S},"/ghost/i18n/locales/bg/portal.json":function(){return _S},"/ghost/i18n/locales/ca/portal.json":function(){return jS},"/ghost/i18n/locales/cs/portal.json":function(){return PS},"/ghost/i18n/locales/da/portal.json":function(){return NS},"/ghost/i18n/locales/de/portal.json":function(){return TS},"/ghost/i18n/locales/en/portal.json":function(){return IS},"/ghost/i18n/locales/eo/portal.json":function(){return DS},"/ghost/i18n/locales/es/portal.json":function(){return AS},"/ghost/i18n/locales/fi/portal.json":function(){return MS},"/ghost/i18n/locales/fr/portal.json":function(){return zS},"/ghost/i18n/locales/hr/portal.json":function(){return RS},"/ghost/i18n/locales/hu/portal.json":function(){return LS},"/ghost/i18n/locales/id/portal.json":function(){return US},"/ghost/i18n/locales/it/portal.json":function(){return OS},"/ghost/i18n/locales/ko/portal.json":function(){return YS},"/ghost/i18n/locales/mn/portal.json":function(){return FS},"/ghost/i18n/locales/ms/portal.json":function(){return BS},"/ghost/i18n/locales/nl/portal.json":function(){return HS},"/ghost/i18n/locales/no/portal.json":function(){return qS},"/ghost/i18n/locales/pl/portal.json":function(){return VS},"/ghost/i18n/locales/pt/portal.json":function(){return WS},"/ghost/i18n/locales/pt-BR/portal.json":function(){return GS},"/ghost/i18n/locales/ro/portal.json":function(){return KS},"/ghost/i18n/locales/ru/portal.json":function(){return JS},"/ghost/i18n/locales/si/portal.json":function(){return QS},"/ghost/i18n/locales/sl/portal.json":function(){return XS},"/ghost/i18n/locales/sq/portal.json":function(){return ZS},"/ghost/i18n/locales/sr/portal.json":function(){return e1},"/ghost/i18n/locales/sv/portal.json":function(){return t1},"/ghost/i18n/locales/tr/portal.json":function(){return n1},"/ghost/i18n/locales/uk/portal.json":function(){return r1},"/ghost/i18n/locales/uz/portal.json":function(){return a1},"/ghost/i18n/locales/vi/portal.json":function(){return i1},"/ghost/i18n/locales/zh/portal.json":function(){return o1},"/ghost/i18n/locales/zh-Hant/portal.json":function(){return s1}})}function l1(e){function t(n){var r=Ff(n,e);if(r!==null)return Yf()[r]();throw new Error('Could not dynamically require "'+n+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}return t.resolve=function(n){var r=Ff(n,e);return r!==null?r:require.resolve(n)},t}function Ff(e,t){var n=c1(e);e=zo(e);var r;e[0]==="/"&&(t="");for(var a=Yf(),i=["",".js",".json"];n?r=zo(t+"/node_modules/"+e):r=zo(t+"/"+e),!r.endsWith("/..");){for(var o=0;o<i.length;o++){var s=r+i[o];if(a[s])return s}if(!n)break;var l=zo(t+"/..");if(l===t)break;t=l}return null}function c1(e){var t=e[0];if(t==="/"||t==="\\")return!1;var n=e[1],r=e[2];return!(t==="."&&(!n||n==="/"||n==="\\")||t==="."&&n==="."&&(!r||r==="/"||r==="\\")||n===":"&&(r==="/"||r==="\\"))}function zo(e){e=e.replace(/\\/g,"/");for(var t=e.split("/"),n=t[0]==="",r=1;r<t.length;r++)(t[r]==="."||t[r]==="")&&t.splice(r--,1);for(var r=1;r<t.length;r++)t[r]===".."&&r>0&&t[r-1]!==".."&&t[r-1]!=="."&&(t.splice(--r,2),r--);return e=t.join("/"),n&&e[0]!=="/"?e="/"+e:e.length===0&&(e="."),e}var Jc={exports:{}};const u1={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 Ro{constructor(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.init(t,n)}init(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.prefix=n.prefix||"i18next:",this.logger=t||u1,this.options=n,this.debug=n.debug}log(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return this.forward(n,"log","",!0)}warn(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return this.forward(n,"warn","",!0)}error(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return this.forward(n,"error","")}deprecate(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return this.forward(n,"warn","WARNING DEPRECATED: ",!0)}forward(t,n,r,a){return a&&!this.debug?null:(typeof t[0]=="string"&&(t[0]=`${r}${this.prefix} ${t[0]}`),this.logger[n](t))}create(t){return new Ro(this.logger,{prefix:`${this.prefix}:${t}:`,...this.options})}clone(t){return t=t||this.options,t.prefix=t.prefix||this.prefix,new Ro(this.logger,t)}}var it=new Ro;class Lo{constructor(){this.observers={}}on(t,n){return t.split(" ").forEach(r=>{this.observers[r]=this.observers[r]||[],this.observers[r].push(n)}),this}off(t,n){if(this.observers[t]){if(!n){delete this.observers[t];return}this.observers[t]=this.observers[t].filter(r=>r!==n)}}emit(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),a=1;a<n;a++)r[a-1]=arguments[a];this.observers[t]&&[].concat(this.observers[t]).forEach(o=>{o(...r)}),this.observers["*"]&&[].concat(this.observers["*"]).forEach(o=>{o.apply(o,[t,...r])})}}function Na(){let e,t;const n=new Promise((r,a)=>{e=r,t=a});return n.resolve=e,n.reject=t,n}function Bf(e){return e==null?"":""+e}function d1(e,t,n){e.forEach(r=>{t[r]&&(n[r]=t[r])})}function Qc(e,t,n){function r(o){return o&&o.indexOf("###")>-1?o.replace(/###/g,"."):o}function a(){return!e||typeof e=="string"}const i=typeof t!="string"?[].concat(t):t.split(".");for(;i.length>1;){if(a())return{};const o=r(i.shift());!e[o]&&n&&(e[o]=new n),Object.prototype.hasOwnProperty.call(e,o)?e=e[o]:e={}}return a()?{}:{obj:e,k:r(i.shift())}}function Hf(e,t,n){const{obj:r,k:a}=Qc(e,t,Object);r[a]=n}function p1(e,t,n,r){const{obj:a,k:i}=Qc(e,t,Object);a[i]=a[i]||[],r&&(a[i]=a[i].concat(n)),r||a[i].push(n)}function Uo(e,t){const{obj:n,k:r}=Qc(e,t);if(n)return n[r]}function m1(e,t,n){const r=Uo(e,n);return r!==void 0?r:Uo(t,n)}function qf(e,t,n){for(const r in t)r!=="__proto__"&&r!=="constructor"&&(r in e?typeof e[r]=="string"||e[r]instanceof String||typeof t[r]=="string"||t[r]instanceof String?n&&(e[r]=t[r]):qf(e[r],t[r],n):e[r]=t[r]);return e}function mr(e){return e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}var h1={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","/":"&#x2F;"};function f1(e){return typeof e=="string"?e.replace(/[&<>"'\/]/g,t=>h1[t]):e}const g1=[" ",",","?","!",";"];function y1(e,t,n){t=t||"",n=n||"";const r=g1.filter(o=>t.indexOf(o)<0&&n.indexOf(o)<0);if(r.length===0)return!0;const a=new RegExp(`(${r.map(o=>o==="?"?"\\?":o).join("|")})`);let i=!a.test(e);if(!i){const o=e.indexOf(n);o>0&&!a.test(e.substring(0,o))&&(i=!0)}return i}function Oo(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:".";if(!e)return;if(e[t])return e[t];const r=t.split(n);let a=e;for(let i=0;i<r.length;++i){if(!a||typeof a[r[i]]=="string"&&i+1<r.length)return;if(a[r[i]]===void 0){let o=2,s=r.slice(i,i+o).join(n),l=a[s];for(;l===void 0&&r.length>i+o;)o++,s=r.slice(i,i+o).join(n),l=a[s];if(l===void 0)return;if(l===null)return null;if(t.endsWith(s)){if(typeof l=="string")return l;if(s&&typeof l[s]=="string")return l[s]}const u=r.slice(i+o).join(n);return u?Oo(l,u,n):void 0}a=a[r[i]]}return a}function Xc(e){return e&&e.indexOf("_")>0?e.replace("_","-"):e}class b1 extends Lo{constructor(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{ns:["translation"],defaultNS:"translation"};super(),this.data=t||{},this.options=n,this.options.keySeparator===void 0&&(this.options.keySeparator="."),this.options.ignoreJSONStructure===void 0&&(this.options.ignoreJSONStructure=!0)}addNamespaces(t){this.options.ns.indexOf(t)<0&&this.options.ns.push(t)}removeNamespaces(t){const n=this.options.ns.indexOf(t);n>-1&&this.options.ns.splice(n,1)}getResource(t,n,r){let a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};const i=a.keySeparator!==void 0?a.keySeparator:this.options.keySeparator,o=a.ignoreJSONStructure!==void 0?a.ignoreJSONStructure:this.options.ignoreJSONStructure;let s=[t,n];r&&typeof r!="string"&&(s=s.concat(r)),r&&typeof r=="string"&&(s=s.concat(i?r.split(i):r)),t.indexOf(".")>-1&&(s=t.split("."));const l=Uo(this.data,s);return l||!o||typeof r!="string"?l:Oo(this.data&&this.data[t]&&this.data[t][n],r,i)}addResource(t,n,r,a){let i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:{silent:!1};const o=i.keySeparator!==void 0?i.keySeparator:this.options.keySeparator;let s=[t,n];r&&(s=s.concat(o?r.split(o):r)),t.indexOf(".")>-1&&(s=t.split("."),a=n,n=s[1]),this.addNamespaces(n),Hf(this.data,s,a),i.silent||this.emit("added",t,n,r,a)}addResources(t,n,r){let a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{silent:!1};for(const i in r)(typeof r[i]=="string"||Object.prototype.toString.apply(r[i])==="[object Array]")&&this.addResource(t,n,i,r[i],{silent:!0});a.silent||this.emit("added",t,n,r)}addResourceBundle(t,n,r,a,i){let o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:{silent:!1},s=[t,n];t.indexOf(".")>-1&&(s=t.split("."),a=r,r=n,n=s[1]),this.addNamespaces(n);let l=Uo(this.data,s)||{};a?qf(l,r,i):l={...l,...r},Hf(this.data,s,l),o.silent||this.emit("added",t,n,r)}removeResourceBundle(t,n){this.hasResourceBundle(t,n)&&delete this.data[t][n],this.removeNamespaces(n),this.emit("removed",t,n)}hasResourceBundle(t,n){return this.getResource(t,n)!==void 0}getResourceBundle(t,n){return n||(n=this.options.defaultNS),this.options.compatibilityAPI==="v1"?{...this.getResource(t,n)}:this.getResource(t,n)}getDataByLanguage(t){return this.data[t]}hasLanguageSomeTranslations(t){const n=this.getDataByLanguage(t);return!!(n&&Object.keys(n)||[]).find(a=>n[a]&&Object.keys(n[a]).length>0)}toJSON(){return this.data}}var Vf={processors:{},addPostProcessor(e){this.processors[e.name]=e},handle(e,t,n,r,a){return e.forEach(i=>{this.processors[i]&&(t=this.processors[i].process(t,n,r,a))}),t}};const Wf={};class Yo extends Lo{constructor(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};super(),d1(["resourceStore","languageUtils","pluralResolver","interpolator","backendConnector","i18nFormat","utils"],t,this),this.options=n,this.options.keySeparator===void 0&&(this.options.keySeparator="."),this.logger=it.create("translator")}changeLanguage(t){t&&(this.language=t)}exists(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{interpolation:{}};if(t==null)return!1;const r=this.resolve(t,n);return r&&r.res!==void 0}extractFromKey(t,n){let r=n.nsSeparator!==void 0?n.nsSeparator:this.options.nsSeparator;r===void 0&&(r=":");const a=n.keySeparator!==void 0?n.keySeparator:this.options.keySeparator;let i=n.ns||this.options.defaultNS||[];const o=r&&t.indexOf(r)>-1,s=!this.options.userDefinedKeySeparator&&!n.keySeparator&&!this.options.userDefinedNsSeparator&&!n.nsSeparator&&!y1(t,r,a);if(o&&!s){const l=t.match(this.interpolator.nestingRegexp);if(l&&l.length>0)return{key:t,namespaces:i};const u=t.split(r);(r!==a||r===a&&this.options.ns.indexOf(u[0])>-1)&&(i=u.shift()),t=u.join(a)}return typeof i=="string"&&(i=[i]),{key:t,namespaces:i}}translate(t,n,r){if(typeof n!="object"&&this.options.overloadTranslationOptionHandler&&(n=this.options.overloadTranslationOptionHandler(arguments)),typeof n=="object"&&(n={...n}),n||(n={}),t==null)return"";Array.isArray(t)||(t=[String(t)]);const a=n.returnDetails!==void 0?n.returnDetails:this.options.returnDetails,i=n.keySeparator!==void 0?n.keySeparator:this.options.keySeparator,{key:o,namespaces:s}=this.extractFromKey(t[t.length-1],n),l=s[s.length-1],u=n.lng||this.language,p=n.appendNamespaceToCIMode||this.options.appendNamespaceToCIMode;if(u&&u.toLowerCase()==="cimode"){if(p){const k=n.nsSeparator||this.options.nsSeparator;return a?{res:`${l}${k}${o}`,usedKey:o,exactUsedKey:o,usedLng:u,usedNS:l}:`${l}${k}${o}`}return a?{res:o,usedKey:o,exactUsedKey:o,usedLng:u,usedNS:l}:o}const m=this.resolve(t,n);let d=m&&m.res;const y=m&&m.usedKey||o,b=m&&m.exactUsedKey||o,x=Object.prototype.toString.apply(d),f=["[object Number]","[object Function]","[object RegExp]"],h=n.joinArrays!==void 0?n.joinArrays:this.options.joinArrays,g=!this.i18nFormat||this.i18nFormat.handleAsObject;if(g&&d&&(typeof d!="string"&&typeof d!="boolean"&&typeof d!="number")&&f.indexOf(x)<0&&!(typeof h=="string"&&x==="[object Array]")){if(!n.returnObjects&&!this.options.returnObjects){this.options.returnedObjectHandler||this.logger.warn("accessing an object - but returnObjects options is not enabled!");const k=this.options.returnedObjectHandler?this.options.returnedObjectHandler(y,d,{...n,ns:s}):`key '${o} (${this.language})' returned an object instead of string.`;return a?(m.res=k,m):k}if(i){const k=x==="[object Array]",C=k?[]:{},S=k?b:y;for(const $ in d)if(Object.prototype.hasOwnProperty.call(d,$)){const T=`${S}${i}${$}`;C[$]=this.translate(T,{...n,joinArrays:!1,ns:s}),C[$]===T&&(C[$]=d[$])}d=C}}else if(g&&typeof h=="string"&&x==="[object Array]")d=d.join(h),d&&(d=this.extendTranslation(d,t,n,r));else{let k=!1,C=!1;const S=n.count!==void 0&&typeof n.count!="string",$=Yo.hasDefaultValue(n),T=S?this.pluralResolver.getSuffix(u,n.count,n):"",j=n.ordinal&&S?this.pluralResolver.getSuffix(u,n.count,{ordinal:!1}):"",O=n[`defaultValue${T}`]||n[`defaultValue${j}`]||n.defaultValue;!this.isValidLookup(d)&&$&&(k=!0,d=O),this.isValidLookup(d)||(C=!0,d=o);const ie=(n.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey)&&C?void 0:d,W=$&&O!==d&&this.options.updateMissing;if(C||k||W){if(this.logger.log(W?"updateKey":"missingKey",u,l,o,W?O:d),i){const pe=this.resolve(o,{...n,keySeparator:!1});pe&&pe.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 st=[];const Ye=this.languageUtils.getFallbackCodes(this.options.fallbackLng,n.lng||this.language);if(this.options.saveMissingTo==="fallback"&&Ye&&Ye[0])for(let pe=0;pe<Ye.length;pe++)st.push(Ye[pe]);else this.options.saveMissingTo==="all"?st=this.languageUtils.toResolveHierarchy(n.lng||this.language):st.push(n.lng||this.language);const qt=(pe,lt,fr)=>{const Ho=$&&fr!==d?fr:ie;this.options.missingKeyHandler?this.options.missingKeyHandler(pe,l,lt,Ho,W,n):this.backendConnector&&this.backendConnector.saveMissing&&this.backendConnector.saveMissing(pe,l,lt,Ho,W,n),this.emit("missingKey",pe,l,lt,d)};this.options.saveMissing&&(this.options.saveMissingPlurals&&S?st.forEach(pe=>{this.pluralResolver.getSuffixes(pe,n).forEach(lt=>{qt([pe],o+lt,n[`defaultValue${lt}`]||O)})}):qt(st,o,O))}d=this.extendTranslation(d,t,n,m,r),C&&d===o&&this.options.appendNamespaceToMissingKey&&(d=`${l}:${o}`),(C||k)&&this.options.parseMissingKeyHandler&&(this.options.compatibilityAPI!=="v1"?d=this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey?`${l}:${o}`:o,k?d:void 0):d=this.options.parseMissingKeyHandler(d))}return a?(m.res=d,m):d}extendTranslation(t,n,r,a,i){var o=this;if(this.i18nFormat&&this.i18nFormat.parse)t=this.i18nFormat.parse(t,{...this.options.interpolation.defaultVariables,...r},a.usedLng,a.usedNS,a.usedKey,{resolved:a});else if(!r.skipInterpolation){r.interpolation&&this.interpolator.init({...r,interpolation:{...this.options.interpolation,...r.interpolation}});const u=typeof t=="string"&&(r&&r.interpolation&&r.interpolation.skipOnVariables!==void 0?r.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables);let p;if(u){const d=t.match(this.interpolator.nestingRegexp);p=d&&d.length}let m=r.replace&&typeof r.replace!="string"?r.replace:r;if(this.options.interpolation.defaultVariables&&(m={...this.options.interpolation.defaultVariables,...m}),t=this.interpolator.interpolate(t,m,r.lng||this.language,r),u){const d=t.match(this.interpolator.nestingRegexp),y=d&&d.length;p<y&&(r.nest=!1)}!r.lng&&this.options.compatibilityAPI!=="v1"&&a&&a.res&&(r.lng=a.usedLng),r.nest!==!1&&(t=this.interpolator.nest(t,function(){for(var d=arguments.length,y=new Array(d),b=0;b<d;b++)y[b]=arguments[b];return i&&i[0]===y[0]&&!r.context?(o.logger.warn(`It seems you are nesting recursively key: ${y[0]} in key: ${n[0]}`),null):o.translate(...y,n)},r)),r.interpolation&&this.interpolator.reset()}const s=r.postProcess||this.options.postProcess,l=typeof s=="string"?[s]:s;return t!=null&&l&&l.length&&r.applyPostProcessor!==!1&&(t=Vf.handle(l,t,n,this.options&&this.options.postProcessPassResolved?{i18nResolved:a,...r}:r,this)),t}resolve(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r,a,i,o,s;return typeof t=="string"&&(t=[t]),t.forEach(l=>{if(this.isValidLookup(r))return;const u=this.extractFromKey(l,n),p=u.key;a=p;let m=u.namespaces;this.options.fallbackNS&&(m=m.concat(this.options.fallbackNS));const d=n.count!==void 0&&typeof n.count!="string",y=d&&!n.ordinal&&n.count===0&&this.pluralResolver.shouldUseIntlApi(),b=n.context!==void 0&&(typeof n.context=="string"||typeof n.context=="number")&&n.context!=="",x=n.lngs?n.lngs:this.languageUtils.toResolveHierarchy(n.lng||this.language,n.fallbackLng);m.forEach(f=>{this.isValidLookup(r)||(s=f,!Wf[`${x[0]}-${f}`]&&this.utils&&this.utils.hasLoadedNamespace&&!this.utils.hasLoadedNamespace(s)&&(Wf[`${x[0]}-${f}`]=!0,this.logger.warn(`key "${a}" for languages "${x.join(", ")}" won't get resolved as namespace "${s}" 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!!!")),x.forEach(h=>{if(this.isValidLookup(r))return;o=h;const g=[p];if(this.i18nFormat&&this.i18nFormat.addLookupKeys)this.i18nFormat.addLookupKeys(g,p,h,f,n);else{let k;d&&(k=this.pluralResolver.getSuffix(h,n.count,n));const C=`${this.options.pluralSeparator}zero`,S=`${this.options.pluralSeparator}ordinal${this.options.pluralSeparator}`;if(d&&(g.push(p+k),n.ordinal&&k.indexOf(S)===0&&g.push(p+k.replace(S,this.options.pluralSeparator)),y&&g.push(p+C)),b){const $=`${p}${this.options.contextSeparator}${n.context}`;g.push($),d&&(g.push($+k),n.ordinal&&k.indexOf(S)===0&&g.push($+k.replace(S,this.options.pluralSeparator)),y&&g.push($+C))}}let w;for(;w=g.pop();)this.isValidLookup(r)||(i=w,r=this.getResource(h,f,w,n))}))})}),{res:r,usedKey:a,exactUsedKey:i,usedLng:o,usedNS:s}}isValidLookup(t){return t!==void 0&&!(!this.options.returnNull&&t===null)&&!(!this.options.returnEmptyString&&t==="")}getResource(t,n,r){let a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};return this.i18nFormat&&this.i18nFormat.getResource?this.i18nFormat.getResource(t,n,r,a):this.resourceStore.getResource(t,n,r,a)}static hasDefaultValue(t){const n="defaultValue";for(const r in t)if(Object.prototype.hasOwnProperty.call(t,r)&&n===r.substring(0,n.length)&&t[r]!==void 0)return!0;return!1}}function Zc(e){return e.charAt(0).toUpperCase()+e.slice(1)}class Gf{constructor(t){this.options=t,this.supportedLngs=this.options.supportedLngs||!1,this.logger=it.create("languageUtils")}getScriptPartFromCode(t){if(t=Xc(t),!t||t.indexOf("-")<0)return null;const n=t.split("-");return n.length===2||(n.pop(),n[n.length-1].toLowerCase()==="x")?null:this.formatLanguageCode(n.join("-"))}getLanguagePartFromCode(t){if(t=Xc(t),!t||t.indexOf("-")<0)return t;const n=t.split("-");return this.formatLanguageCode(n[0])}formatLanguageCode(t){if(typeof t=="string"&&t.indexOf("-")>-1){const n=["hans","hant","latn","cyrl","cans","mong","arab"];let r=t.split("-");return this.options.lowerCaseLng?r=r.map(a=>a.toLowerCase()):r.length===2?(r[0]=r[0].toLowerCase(),r[1]=r[1].toUpperCase(),n.indexOf(r[1].toLowerCase())>-1&&(r[1]=Zc(r[1].toLowerCase()))):r.length===3&&(r[0]=r[0].toLowerCase(),r[1].length===2&&(r[1]=r[1].toUpperCase()),r[0]!=="sgn"&&r[2].length===2&&(r[2]=r[2].toUpperCase()),n.indexOf(r[1].toLowerCase())>-1&&(r[1]=Zc(r[1].toLowerCase())),n.indexOf(r[2].toLowerCase())>-1&&(r[2]=Zc(r[2].toLowerCase()))),r.join("-")}return this.options.cleanCode||this.options.lowerCaseLng?t.toLowerCase():t}isSupportedCode(t){return(this.options.load==="languageOnly"||this.options.nonExplicitSupportedLngs)&&(t=this.getLanguagePartFromCode(t)),!this.supportedLngs||!this.supportedLngs.length||this.supportedLngs.indexOf(t)>-1}getBestMatchFromCodes(t){if(!t)return null;let n;return t.forEach(r=>{if(n)return;const a=this.formatLanguageCode(r);(!this.options.supportedLngs||this.isSupportedCode(a))&&(n=a)}),!n&&this.options.supportedLngs&&t.forEach(r=>{if(n)return;const a=this.getLanguagePartFromCode(r);if(this.isSupportedCode(a))return n=a;n=this.options.supportedLngs.find(i=>{if(i===a)return i;if(!(i.indexOf("-")<0&&a.indexOf("-")<0)&&i.indexOf(a)===0)return i})}),n||(n=this.getFallbackCodes(this.options.fallbackLng)[0]),n}getFallbackCodes(t,n){if(!t)return[];if(typeof t=="function"&&(t=t(n)),typeof t=="string"&&(t=[t]),Object.prototype.toString.apply(t)==="[object Array]")return t;if(!n)return t.default||[];let r=t[n];return r||(r=t[this.getScriptPartFromCode(n)]),r||(r=t[this.formatLanguageCode(n)]),r||(r=t[this.getLanguagePartFromCode(n)]),r||(r=t.default),r||[]}toResolveHierarchy(t,n){const r=this.getFallbackCodes(n||this.options.fallbackLng||[],t),a=[],i=o=>{o&&(this.isSupportedCode(o)?a.push(o):this.logger.warn(`rejecting language code not found in supportedLngs: ${o}`))};return typeof t=="string"&&(t.indexOf("-")>-1||t.indexOf("_")>-1)?(this.options.load!=="languageOnly"&&i(this.formatLanguageCode(t)),this.options.load!=="languageOnly"&&this.options.load!=="currentOnly"&&i(this.getScriptPartFromCode(t)),this.options.load!=="currentOnly"&&i(this.getLanguagePartFromCode(t))):typeof t=="string"&&i(this.formatLanguageCode(t)),r.forEach(o=>{a.indexOf(o)<0&&i(this.formatLanguageCode(o))}),a}}let v1=[{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}],k1={1:function(e){return+(e>1)},2:function(e){return+(e!=1)},3:function(e){return 0},4:function(e){return e%10==1&&e%100!=11?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2},5:function(e){return e==0?0:e==1?1:e==2?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5},6:function(e){return e==1?0:e>=2&&e<=4?1:2},7:function(e){return e==1?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2},8:function(e){return e==1?0:e==2?1:e!=8&&e!=11?2:3},9:function(e){return+(e>=2)},10:function(e){return e==1?0:e==2?1:e<7?2:e<11?3:4},11:function(e){return e==1||e==11?0:e==2||e==12?1:e>2&&e<20?2:3},12:function(e){return+(e%10!=1||e%100==11)},13:function(e){return+(e!==0)},14:function(e){return e==1?0:e==2?1:e==3?2:3},15:function(e){return e%10==1&&e%100!=11?0:e%10>=2&&(e%100<10||e%100>=20)?1:2},16:function(e){return e%10==1&&e%100!=11?0:e!==0?1:2},17:function(e){return e==1||e%10==1&&e%100!=11?0:1},18:function(e){return e==0?0:e==1?1:2},19:function(e){return e==1?0:e==0||e%100>1&&e%100<11?1:e%100>10&&e%100<20?2:3},20:function(e){return e==1?0:e==0||e%100>0&&e%100<20?1:2},21:function(e){return e%100==1?1:e%100==2?2:e%100==3||e%100==4?3:0},22:function(e){return e==1?0:e==2?1:(e<0||e>10)&&e%10==0?2:3}};const w1=["v1","v2","v3"],x1=["v4"],Kf={zero:0,one:1,two:2,few:3,many:4,other:5};function S1(){const e={};return v1.forEach(t=>{t.lngs.forEach(n=>{e[n]={numbers:t.nr,plurals:k1[t.fc]}})}),e}class E1{constructor(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.languageUtils=t,this.options=n,this.logger=it.create("pluralResolver"),(!this.options.compatibilityJSON||x1.includes(this.options.compatibilityJSON))&&(typeof Intl>"u"||!Intl.PluralRules)&&(this.options.compatibilityJSON="v3",this.logger.error("Your environment seems not to be Intl API compatible, use an Intl.PluralRules polyfill. Will fallback to the compatibilityJSON v3 format handling.")),this.rules=S1()}addRule(t,n){this.rules[t]=n}getRule(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(this.shouldUseIntlApi())try{return new Intl.PluralRules(Xc(t),{type:n.ordinal?"ordinal":"cardinal"})}catch{return}return this.rules[t]||this.rules[this.languageUtils.getLanguagePartFromCode(t)]}needsPlural(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const r=this.getRule(t,n);return this.shouldUseIntlApi()?r&&r.resolvedOptions().pluralCategories.length>1:r&&r.numbers.length>1}getPluralFormsOfKey(t,n){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return this.getSuffixes(t,r).map(a=>`${n}${a}`)}getSuffixes(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const r=this.getRule(t,n);return r?this.shouldUseIntlApi()?r.resolvedOptions().pluralCategories.sort((a,i)=>Kf[a]-Kf[i]).map(a=>`${this.options.prepend}${n.ordinal?`ordinal${this.options.prepend}`:""}${a}`):r.numbers.map(a=>this.getSuffix(t,a,n)):[]}getSuffix(t,n){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};const a=this.getRule(t,r);return a?this.shouldUseIntlApi()?`${this.options.prepend}${r.ordinal?`ordinal${this.options.prepend}`:""}${a.select(n)}`:this.getSuffixRetroCompatible(a,n):(this.logger.warn(`no plural rule found for: ${t}`),"")}getSuffixRetroCompatible(t,n){const r=t.noAbs?t.plurals(n):t.plurals(Math.abs(n));let a=t.numbers[r];this.options.simplifyPluralSuffix&&t.numbers.length===2&&t.numbers[0]===1&&(a===2?a="plural":a===1&&(a=""));const i=()=>this.options.prepend&&a.toString()?this.options.prepend+a.toString():a.toString();return this.options.compatibilityJSON==="v1"?a===1?"":typeof a=="number"?`_plural_${a.toString()}`:i():this.options.compatibilityJSON==="v2"||this.options.simplifyPluralSuffix&&t.numbers.length===2&&t.numbers[0]===1?i():this.options.prepend&&r.toString()?this.options.prepend+r.toString():r.toString()}shouldUseIntlApi(){return!w1.includes(this.options.compatibilityJSON)}}function Jf(e,t,n){let r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:".",a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,i=m1(e,t,n);return!i&&a&&typeof n=="string"&&(i=Oo(e,n,r),i===void 0&&(i=Oo(t,n,r))),i}class C1{constructor(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.logger=it.create("interpolator"),this.options=t,this.format=t.interpolation&&t.interpolation.format||(n=>n),this.init(t)}init(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};t.interpolation||(t.interpolation={escapeValue:!0});const n=t.interpolation;this.escape=n.escape!==void 0?n.escape:f1,this.escapeValue=n.escapeValue!==void 0?n.escapeValue:!0,this.useRawValueToEscape=n.useRawValueToEscape!==void 0?n.useRawValueToEscape:!1,this.prefix=n.prefix?mr(n.prefix):n.prefixEscaped||"{{",this.suffix=n.suffix?mr(n.suffix):n.suffixEscaped||"}}",this.formatSeparator=n.formatSeparator?n.formatSeparator:n.formatSeparator||",",this.unescapePrefix=n.unescapeSuffix?"":n.unescapePrefix||"-",this.unescapeSuffix=this.unescapePrefix?"":n.unescapeSuffix||"",this.nestingPrefix=n.nestingPrefix?mr(n.nestingPrefix):n.nestingPrefixEscaped||mr("$t("),this.nestingSuffix=n.nestingSuffix?mr(n.nestingSuffix):n.nestingSuffixEscaped||mr(")"),this.nestingOptionsSeparator=n.nestingOptionsSeparator?n.nestingOptionsSeparator:n.nestingOptionsSeparator||",",this.maxReplaces=n.maxReplaces?n.maxReplaces:1e3,this.alwaysFormat=n.alwaysFormat!==void 0?n.alwaysFormat:!1,this.resetRegExp()}reset(){this.options&&this.init(this.options)}resetRegExp(){const t=`${this.prefix}(.+?)${this.suffix}`;this.regexp=new RegExp(t,"g");const n=`${this.prefix}${this.unescapePrefix}(.+?)${this.unescapeSuffix}${this.suffix}`;this.regexpUnescape=new RegExp(n,"g");const r=`${this.nestingPrefix}(.+?)${this.nestingSuffix}`;this.nestingRegexp=new RegExp(r,"g")}interpolate(t,n,r,a){let i,o,s;const l=this.options&&this.options.interpolation&&this.options.interpolation.defaultVariables||{};function u(b){return b.replace(/\$/g,"$$$$")}const p=b=>{if(b.indexOf(this.formatSeparator)<0){const g=Jf(n,l,b,this.options.keySeparator,this.options.ignoreJSONStructure);return this.alwaysFormat?this.format(g,void 0,r,{...a,...n,interpolationkey:b}):g}const x=b.split(this.formatSeparator),f=x.shift().trim(),h=x.join(this.formatSeparator).trim();return this.format(Jf(n,l,f,this.options.keySeparator,this.options.ignoreJSONStructure),h,r,{...a,...n,interpolationkey:f})};this.resetRegExp();const m=a&&a.missingInterpolationHandler||this.options.missingInterpolationHandler,d=a&&a.interpolation&&a.interpolation.skipOnVariables!==void 0?a.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables;return[{regex:this.regexpUnescape,safeValue:b=>u(b)},{regex:this.regexp,safeValue:b=>this.escapeValue?u(this.escape(b)):u(b)}].forEach(b=>{for(s=0;i=b.regex.exec(t);){const x=i[1].trim();if(o=p(x),o===void 0)if(typeof m=="function"){const h=m(t,i,a);o=typeof h=="string"?h:""}else if(a&&Object.prototype.hasOwnProperty.call(a,x))o="";else if(d){o=i[0];continue}else this.logger.warn(`missed to pass in variable ${x} for interpolating ${t}`),o="";else typeof o!="string"&&!this.useRawValueToEscape&&(o=Bf(o));const f=b.safeValue(o);if(t=t.replace(i[0],f),d?(b.regex.lastIndex+=o.length,b.regex.lastIndex-=i[0].length):b.regex.lastIndex=0,s++,s>=this.maxReplaces)break}}),t}nest(t,n){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a,i,o;function s(l,u){const p=this.nestingOptionsSeparator;if(l.indexOf(p)<0)return l;const m=l.split(new RegExp(`${p}[ ]*{`));let d=`{${m[1]}`;l=m[0],d=this.interpolate(d,o);const y=d.match(/'/g),b=d.match(/"/g);(y&&y.length%2===0&&!b||b.length%2!==0)&&(d=d.replace(/'/g,'"'));try{o=JSON.parse(d),u&&(o={...u,...o})}catch(x){return this.logger.warn(`failed parsing options string in nesting for key ${l}`,x),`${l}${p}${d}`}return delete o.defaultValue,l}for(;a=this.nestingRegexp.exec(t);){let l=[];o={...r},o=o.replace&&typeof o.replace!="string"?o.replace:o,o.applyPostProcessor=!1,delete o.defaultValue;let u=!1;if(a[0].indexOf(this.formatSeparator)!==-1&&!/{.*}/.test(a[1])){const p=a[1].split(this.formatSeparator).map(m=>m.trim());a[1]=p.shift(),l=p,u=!0}if(i=n(s.call(this,a[1].trim(),o),o),i&&a[0]===t&&typeof i!="string")return i;typeof i!="string"&&(i=Bf(i)),i||(this.logger.warn(`missed to resolve ${a[1]} for nesting ${t}`),i=""),u&&(i=l.reduce((p,m)=>this.format(p,m,r.lng,{...r,interpolationkey:a[1].trim()}),i.trim())),t=t.replace(a[0],i),this.regexp.lastIndex=0}return t}}function $1(e){let t=e.toLowerCase().trim();const n={};if(e.indexOf("(")>-1){const r=e.split("(");t=r[0].toLowerCase().trim();const a=r[1].substring(0,r[1].length-1);t==="currency"&&a.indexOf(":")<0?n.currency||(n.currency=a.trim()):t==="relativetime"&&a.indexOf(":")<0?n.range||(n.range=a.trim()):a.split(";").forEach(o=>{if(!o)return;const[s,...l]=o.split(":"),u=l.join(":").trim().replace(/^'+|'+$/g,"");n[s.trim()]||(n[s.trim()]=u),u==="false"&&(n[s.trim()]=!1),u==="true"&&(n[s.trim()]=!0),isNaN(u)||(n[s.trim()]=parseInt(u,10))})}return{formatName:t,formatOptions:n}}function hr(e){const t={};return function(r,a,i){const o=a+JSON.stringify(i);let s=t[o];return s||(s=e(a,i),t[o]=s),s(r)}}class _1{constructor(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.logger=it.create("formatter"),this.options=t,this.formats={number:hr((n,r)=>{const a=new Intl.NumberFormat(n,{...r});return i=>a.format(i)}),currency:hr((n,r)=>{const a=new Intl.NumberFormat(n,{...r,style:"currency"});return i=>a.format(i)}),datetime:hr((n,r)=>{const a=new Intl.DateTimeFormat(n,{...r});return i=>a.format(i)}),relativetime:hr((n,r)=>{const a=new Intl.RelativeTimeFormat(n,{...r});return i=>a.format(i,r.range||"day")}),list:hr((n,r)=>{const a=new Intl.ListFormat(n,{...r});return i=>a.format(i)})},this.init(t)}init(t){const r=(arguments.length>1&&arguments[1]!==void 0?arguments[1]:{interpolation:{}}).interpolation;this.formatSeparator=r.formatSeparator?r.formatSeparator:r.formatSeparator||","}add(t,n){this.formats[t.toLowerCase().trim()]=n}addCached(t,n){this.formats[t.toLowerCase().trim()]=hr(n)}format(t,n,r){let a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};return n.split(this.formatSeparator).reduce((s,l)=>{const{formatName:u,formatOptions:p}=$1(l);if(this.formats[u]){let m=s;try{const d=a&&a.formatParams&&a.formatParams[a.interpolationkey]||{},y=d.locale||d.lng||a.locale||a.lng||r;m=this.formats[u](s,y,{...p,...a,...d})}catch(d){this.logger.warn(d)}return m}else this.logger.warn(`there was no format function for ${u}`);return s},t)}}function j1(e,t){e.pending[t]!==void 0&&(delete e.pending[t],e.pendingCount--)}class P1 extends Lo{constructor(t,n,r){let a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};super(),this.backend=t,this.store=n,this.services=r,this.languageUtils=r.languageUtils,this.options=a,this.logger=it.create("backendConnector"),this.waitingReads=[],this.maxParallelReads=a.maxParallelReads||10,this.readingCalls=0,this.maxRetries=a.maxRetries>=0?a.maxRetries:5,this.retryTimeout=a.retryTimeout>=1?a.retryTimeout:350,this.state={},this.queue=[],this.backend&&this.backend.init&&this.backend.init(r,a.backend,a)}queueLoad(t,n,r,a){const i={},o={},s={},l={};return t.forEach(u=>{let p=!0;n.forEach(m=>{const d=`${u}|${m}`;!r.reload&&this.store.hasResourceBundle(u,m)?this.state[d]=2:this.state[d]<0||(this.state[d]===1?o[d]===void 0&&(o[d]=!0):(this.state[d]=1,p=!1,o[d]===void 0&&(o[d]=!0),i[d]===void 0&&(i[d]=!0),l[m]===void 0&&(l[m]=!0)))}),p||(s[u]=!0)}),(Object.keys(i).length||Object.keys(o).length)&&this.queue.push({pending:o,pendingCount:Object.keys(o).length,loaded:{},errors:[],callback:a}),{toLoad:Object.keys(i),pending:Object.keys(o),toLoadLanguages:Object.keys(s),toLoadNamespaces:Object.keys(l)}}loaded(t,n,r){const a=t.split("|"),i=a[0],o=a[1];n&&this.emit("failedLoading",i,o,n),r&&this.store.addResourceBundle(i,o,r),this.state[t]=n?-1:2;const s={};this.queue.forEach(l=>{p1(l.loaded,[i],o),j1(l,t),n&&l.errors.push(n),l.pendingCount===0&&!l.done&&(Object.keys(l.loaded).forEach(u=>{s[u]||(s[u]={});const p=l.loaded[u];p.length&&p.forEach(m=>{s[u][m]===void 0&&(s[u][m]=!0)})}),l.done=!0,l.errors.length?l.callback(l.errors):l.callback())}),this.emit("loaded",s),this.queue=this.queue.filter(l=>!l.done)}read(t,n,r){let a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:this.retryTimeout,o=arguments.length>5?arguments[5]:void 0;if(!t.length)return o(null,{});if(this.readingCalls>=this.maxParallelReads){this.waitingReads.push({lng:t,ns:n,fcName:r,tried:a,wait:i,callback:o});return}this.readingCalls++;const s=(u,p)=>{if(this.readingCalls--,this.waitingReads.length>0){const m=this.waitingReads.shift();this.read(m.lng,m.ns,m.fcName,m.tried,m.wait,m.callback)}if(u&&p&&a<this.maxRetries){setTimeout(()=>{this.read.call(this,t,n,r,a+1,i*2,o)},i);return}o(u,p)},l=this.backend[r].bind(this.backend);if(l.length===2){try{const u=l(t,n);u&&typeof u.then=="function"?u.then(p=>s(null,p)).catch(s):s(null,u)}catch(u){s(u)}return}return l(t,n,s)}prepareLoading(t,n){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a=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."),a&&a();typeof t=="string"&&(t=this.languageUtils.toResolveHierarchy(t)),typeof n=="string"&&(n=[n]);const i=this.queueLoad(t,n,r,a);if(!i.toLoad.length)return i.pending.length||a(),null;i.toLoad.forEach(o=>{this.loadOne(o)})}load(t,n,r){this.prepareLoading(t,n,{},r)}reload(t,n,r){this.prepareLoading(t,n,{reload:!0},r)}loadOne(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"";const r=t.split("|"),a=r[0],i=r[1];this.read(a,i,"read",void 0,void 0,(o,s)=>{o&&this.logger.warn(`${n}loading namespace ${i} for language ${a} failed`,o),!o&&s&&this.logger.log(`${n}loaded namespace ${i} for language ${a}`,s),this.loaded(t,o,s)})}saveMissing(t,n,r,a,i){let o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:{},s=arguments.length>6&&arguments[6]!==void 0?arguments[6]:()=>{};if(this.services.utils&&this.services.utils.hasLoadedNamespace&&!this.services.utils.hasLoadedNamespace(n)){this.logger.warn(`did not save key "${r}" as the namespace "${n}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!");return}if(!(r==null||r==="")){if(this.backend&&this.backend.create){const l={...o,isUpdate:i},u=this.backend.create.bind(this.backend);if(u.length<6)try{let p;u.length===5?p=u(t,n,r,a,l):p=u(t,n,r,a),p&&typeof p.then=="function"?p.then(m=>s(null,m)).catch(s):s(null,p)}catch(p){s(p)}else u(t,n,r,a,s,l)}!t||!t[0]||this.store.addResource(t[0],n,r,a)}}}function Qf(){return{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:function(t){let n={};if(typeof t[1]=="object"&&(n=t[1]),typeof t[1]=="string"&&(n.defaultValue=t[1]),typeof t[2]=="string"&&(n.tDescription=t[2]),typeof t[2]=="object"||typeof t[3]=="object"){const r=t[3]||t[2];Object.keys(r).forEach(a=>{n[a]=r[a]})}return n},interpolation:{escapeValue:!0,format:(e,t,n,r)=>e,prefix:"{{",suffix:"}}",formatSeparator:",",unescapePrefix:"-",nestingPrefix:"$t(",nestingSuffix:")",nestingOptionsSeparator:",",maxReplaces:1e3,skipOnVariables:!0}}}function Xf(e){return typeof e.ns=="string"&&(e.ns=[e.ns]),typeof e.fallbackLng=="string"&&(e.fallbackLng=[e.fallbackLng]),typeof e.fallbackNS=="string"&&(e.fallbackNS=[e.fallbackNS]),e.supportedLngs&&e.supportedLngs.indexOf("cimode")<0&&(e.supportedLngs=e.supportedLngs.concat(["cimode"])),e}function Fo(){}function N1(e){Object.getOwnPropertyNames(Object.getPrototypeOf(e)).forEach(n=>{typeof e[n]=="function"&&(e[n]=e[n].bind(e))})}const Bo=class extends Lo{constructor(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1?arguments[1]:void 0;if(super(),this.options=Xf(t),this.services={},this.logger=it,this.modules={external:[]},N1(this),n&&!this.isInitialized&&!t.isClone){if(!this.options.initImmediate)return this.init(t,n),this;setTimeout(()=>{this.init(t,n)},0)}}init(){var t=this;let n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1?arguments[1]:void 0;typeof n=="function"&&(r=n,n={}),!n.defaultNS&&n.defaultNS!==!1&&n.ns&&(typeof n.ns=="string"?n.defaultNS=n.ns:n.ns.indexOf("translation")<0&&(n.defaultNS=n.ns[0]));const a=Qf();this.options={...a,...this.options,...Xf(n)},this.options.compatibilityAPI!=="v1"&&(this.options.interpolation={...a.interpolation,...this.options.interpolation}),n.keySeparator!==void 0&&(this.options.userDefinedKeySeparator=n.keySeparator),n.nsSeparator!==void 0&&(this.options.userDefinedNsSeparator=n.nsSeparator);function i(p){return p?typeof p=="function"?new p:p:null}if(!this.options.isClone){this.modules.logger?it.init(i(this.modules.logger),this.options):it.init(null,this.options);let p;this.modules.formatter?p=this.modules.formatter:typeof Intl<"u"&&(p=_1);const m=new Gf(this.options);this.store=new b1(this.options.resources,this.options);const d=this.services;d.logger=it,d.resourceStore=this.store,d.languageUtils=m,d.pluralResolver=new E1(m,{prepend:this.options.pluralSeparator,compatibilityJSON:this.options.compatibilityJSON,simplifyPluralSuffix:this.options.simplifyPluralSuffix}),p&&(!this.options.interpolation.format||this.options.interpolation.format===a.interpolation.format)&&(d.formatter=i(p),d.formatter.init(d,this.options),this.options.interpolation.format=d.formatter.format.bind(d.formatter)),d.interpolator=new C1(this.options),d.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},d.backendConnector=new P1(i(this.modules.backend),d.resourceStore,d,this.options),d.backendConnector.on("*",function(y){for(var b=arguments.length,x=new Array(b>1?b-1:0),f=1;f<b;f++)x[f-1]=arguments[f];t.emit(y,...x)}),this.modules.languageDetector&&(d.languageDetector=i(this.modules.languageDetector),d.languageDetector.init&&d.languageDetector.init(d,this.options.detection,this.options)),this.modules.i18nFormat&&(d.i18nFormat=i(this.modules.i18nFormat),d.i18nFormat.init&&d.i18nFormat.init(this)),this.translator=new Yo(this.services,this.options),this.translator.on("*",function(y){for(var b=arguments.length,x=new Array(b>1?b-1:0),f=1;f<b;f++)x[f-1]=arguments[f];t.emit(y,...x)}),this.modules.external.forEach(y=>{y.init&&y.init(this)})}if(this.format=this.options.interpolation.format,r||(r=Fo),this.options.fallbackLng&&!this.services.languageDetector&&!this.options.lng){const p=this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);p.length>0&&p[0]!=="dev"&&(this.options.lng=p[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(p=>{this[p]=function(){return t.store[p](...arguments)}}),["addResource","addResources","addResourceBundle","removeResourceBundle"].forEach(p=>{this[p]=function(){return t.store[p](...arguments),t}});const l=Na(),u=()=>{const p=(m,d)=>{this.isInitialized&&!this.initializedStoreOnce&&this.logger.warn("init: i18next is already initialized. You should call init just once!"),this.isInitialized=!0,this.options.isClone||this.logger.log("initialized",this.options),this.emit("initialized",this.options),l.resolve(d),r(m,d)};if(this.languages&&this.options.compatibilityAPI!=="v1"&&!this.isInitialized)return p(null,this.t.bind(this));this.changeLanguage(this.options.lng,p)};return this.options.resources||!this.options.initImmediate?u():setTimeout(u,0),l}loadResources(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Fo;const a=typeof t=="string"?t:this.language;if(typeof t=="function"&&(r=t),!this.options.resources||this.options.partialBundledLanguages){if(a&&a.toLowerCase()==="cimode")return r();const i=[],o=s=>{if(!s)return;this.services.languageUtils.toResolveHierarchy(s).forEach(u=>{i.indexOf(u)<0&&i.push(u)})};a?o(a):this.services.languageUtils.getFallbackCodes(this.options.fallbackLng).forEach(l=>o(l)),this.options.preload&&this.options.preload.forEach(s=>o(s)),this.services.backendConnector.load(i,this.options.ns,s=>{!s&&!this.resolvedLanguage&&this.language&&this.setResolvedLanguage(this.language),r(s)})}else r(null)}reloadResources(t,n,r){const a=Na();return t||(t=this.languages),n||(n=this.options.ns),r||(r=Fo),this.services.backendConnector.reload(t,n,i=>{a.resolve(),r(i)}),a}use(t){if(!t)throw new Error("You are passing an undefined module! Please check the object you are passing to i18next.use()");if(!t.type)throw new Error("You are passing a wrong module! Please check the object you are passing to i18next.use()");return t.type==="backend"&&(this.modules.backend=t),(t.type==="logger"||t.log&&t.warn&&t.error)&&(this.modules.logger=t),t.type==="languageDetector"&&(this.modules.languageDetector=t),t.type==="i18nFormat"&&(this.modules.i18nFormat=t),t.type==="postProcessor"&&Vf.addPostProcessor(t),t.type==="formatter"&&(this.modules.formatter=t),t.type==="3rdParty"&&this.modules.external.push(t),this}setResolvedLanguage(t){if(!(!t||!this.languages)&&!(["cimode","dev"].indexOf(t)>-1))for(let n=0;n<this.languages.length;n++){const r=this.languages[n];if(!(["cimode","dev"].indexOf(r)>-1)&&this.store.hasLanguageSomeTranslations(r)){this.resolvedLanguage=r;break}}}changeLanguage(t,n){var r=this;this.isLanguageChangingTo=t;const a=Na();this.emit("languageChanging",t);const i=l=>{this.language=l,this.languages=this.services.languageUtils.toResolveHierarchy(l),this.resolvedLanguage=void 0,this.setResolvedLanguage(l)},o=(l,u)=>{u?(i(u),this.translator.changeLanguage(u),this.isLanguageChangingTo=void 0,this.emit("languageChanged",u),this.logger.log("languageChanged",u)):this.isLanguageChangingTo=void 0,a.resolve(function(){return r.t(...arguments)}),n&&n(l,function(){return r.t(...arguments)})},s=l=>{!t&&!l&&this.services.languageDetector&&(l=[]);const u=typeof l=="string"?l:this.services.languageUtils.getBestMatchFromCodes(l);u&&(this.language||i(u),this.translator.language||this.translator.changeLanguage(u),this.services.languageDetector&&this.services.languageDetector.cacheUserLanguage&&this.services.languageDetector.cacheUserLanguage(u)),this.loadResources(u,p=>{o(p,u)})};return!t&&this.services.languageDetector&&!this.services.languageDetector.async?s(this.services.languageDetector.detect()):!t&&this.services.languageDetector&&this.services.languageDetector.async?this.services.languageDetector.detect.length===0?this.services.languageDetector.detect().then(s):this.services.languageDetector.detect(s):s(t),a}getFixedT(t,n,r){var a=this;const i=function(o,s){let l;if(typeof s!="object"){for(var u=arguments.length,p=new Array(u>2?u-2:0),m=2;m<u;m++)p[m-2]=arguments[m];l=a.options.overloadTranslationOptionHandler([o,s].concat(p))}else l={...s};l.lng=l.lng||i.lng,l.lngs=l.lngs||i.lngs,l.ns=l.ns||i.ns,l.keyPrefix=l.keyPrefix||r||i.keyPrefix;const d=a.options.keySeparator||".";let y;return l.keyPrefix&&Array.isArray(o)?y=o.map(b=>`${l.keyPrefix}${d}${b}`):y=l.keyPrefix?`${l.keyPrefix}${d}${o}`:o,a.t(y,l)};return typeof t=="string"?i.lng=t:i.lngs=t,i.ns=n,i.keyPrefix=r,i}t(){return this.translator&&this.translator.translate(...arguments)}exists(){return this.translator&&this.translator.exists(...arguments)}setDefaultNamespace(t){this.options.defaultNS=t}hasLoadedNamespace(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!this.isInitialized)return this.logger.warn("hasLoadedNamespace: i18next was not initialized",this.languages),!1;if(!this.languages||!this.languages.length)return this.logger.warn("hasLoadedNamespace: i18n.languages were undefined or empty",this.languages),!1;const r=n.lng||this.resolvedLanguage||this.languages[0],a=this.options?this.options.fallbackLng:!1,i=this.languages[this.languages.length-1];if(r.toLowerCase()==="cimode")return!0;const o=(s,l)=>{const u=this.services.backendConnector.state[`${s}|${l}`];return u===-1||u===2};if(n.precheck){const s=n.precheck(this,o);if(s!==void 0)return s}return!!(this.hasResourceBundle(r,t)||!this.services.backendConnector.backend||this.options.resources&&!this.options.partialBundledLanguages||o(r,t)&&(!a||o(i,t)))}loadNamespaces(t,n){const r=Na();return this.options.ns?(typeof t=="string"&&(t=[t]),t.forEach(a=>{this.options.ns.indexOf(a)<0&&this.options.ns.push(a)}),this.loadResources(a=>{r.resolve(),n&&n(a)}),r):(n&&n(),Promise.resolve())}loadLanguages(t,n){const r=Na();typeof t=="string"&&(t=[t]);const a=this.options.preload||[],i=t.filter(o=>a.indexOf(o)<0);return i.length?(this.options.preload=a.concat(i),this.loadResources(o=>{r.resolve(),n&&n(o)}),r):(n&&n(),Promise.resolve())}dir(t){if(t||(t=this.resolvedLanguage||(this.languages&&this.languages.length>0?this.languages[0]:this.language)),!t)return"rtl";const n=["ar","shu","sqr","ssh","xaa","yhd","yud","aao","abh","abv","acm","acq","acw","acx","acy","adf","ads","aeb","aec","afb","ajp","apc","apd","arb","arq","ars","ary","arz","auz","avl","ayh","ayl","ayn","ayp","bbz","pga","he","iw","ps","pbt","pbu","pst","prp","prd","ug","ur","ydd","yds","yih","ji","yi","hbo","men","xmn","fa","jpr","peo","pes","prs","dv","sam","ckb"],r=this.services&&this.services.languageUtils||new Gf(Qf());return n.indexOf(r.getLanguagePartFromCode(t))>-1||t.toLowerCase().indexOf("-arab")>1?"rtl":"ltr"}cloneInstance(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Fo;const r={...this.options,...t,isClone:!0},a=new Bo(r);return(t.debug!==void 0||t.prefix!==void 0)&&(a.logger=a.logger.clone(t)),["store","services","language"].forEach(o=>{a[o]=this[o]}),a.services={...this.services},a.services.utils={hasLoadedNamespace:a.hasLoadedNamespace.bind(a)},a.translator=new Yo(a.services,a.options),a.translator.on("*",function(o){for(var s=arguments.length,l=new Array(s>1?s-1:0),u=1;u<s;u++)l[u-1]=arguments[u];a.emit(o,...l)}),a.init(r,n),a.translator.options=a.options,a.translator.backendConnector.services.utils={hasLoadedNamespace:a.hasLoadedNamespace.bind(a)},a}toJSON(){return{options:this.options,store:this.store,language:this.language,languages:this.languages,resolvedLanguage:this.resolvedLanguage}}};let Ta=Bo;G(Ta,"createInstance",function(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1?arguments[1]:void 0;return new Bo(t,n)});const Zf=Ta.createInstance();Zf.createInstance=Ta.createInstance;var T1=Zf;const I1=T1,eg=["af","bg","ca","cs","da","de","en","eo","es","fi","fr","hr","hu","id","it","ko","mn","ms","nl","no","pl","pt","pt-BR","ro","ru","si","sl","sq","sr","sv","tr","uk","uz","vi","zh","zh-Hant"];Jc.exports=(e="en",t="portal")=>{const n=I1.createInstance();return n.init({lng:e,nsSeparator:!1,keySeparator:!1,returnEmptyString:!1,fallbackLng:!1,ns:t,defaultNS:t,resources:eg.reduce((r,a)=>(r[a]={[t]:l1("/ghost/i18n/lib")(`../locales/${a}/${t}.json`)},r),{})}),n},Jc.exports.SUPPORTED_LOCALES=eg;var D1=Jc.exports,A1=D1;const M1=je(A1),z1={showPopup:!0,site:pr,member:Mo.free,page:"accountEmail",...Q0(),pageData:Lf};function R1({site:e,children:t}){const{portal_sentry:n}=e||{};return n&&n.dsn?c.jsx(Sa,{children:t}):c.jsx(c.Fragment,{children:t})}class L1 extends R.Component{constructor(t){super(t),this.setupCustomTriggerButton(t),this.state={site:null,member:null,page:"loading",showPopup:!1,action:"init:running",initStatus:"running",lastPage:null,customSiteUrl:t.customSiteUrl}}componentDidMount(){this.initSetup()}componentDidUpdate(t,n){var r,a,i;if(n.showPopup!==this.state.showPopup){this.handleCustomTriggerClassUpdate();try{this.state.showPopup?(this.bodyScroll=(i=(a=(r=window.document)==null?void 0:r.body)==null?void 0:a.style)==null?void 0:i.overflow,window.document.body.style.overflow="hidden"):window.document.body.style.overflow=this.bodyScroll||""}catch{}}if(this.state.initStatus==="success"&&n.initStatus!==this.state.initStatus){const{siteUrl:o}=this.props,s=this.getContextFromState();this.sendPortalReadyEvent(),CS({siteUrl:o,site:s.site,member:s.member})}}componentWillUnmount(){clearTimeout(this.timeoutId),this.customTriggerButtons&&this.customTriggerButtons.forEach(t=>{t.removeEventListener("click",this.clickHandler)}),window.removeEventListener("hashchange",this.hashHandler,!1)}sendPortalReadyEvent(){window.self!==window.parent&&window.parent.postMessage({type:"portal-ready",payload:{}},"*")}setupCustomTriggerButton(){this.clickHandler=r=>{r.preventDefault();const a=r.currentTarget,i=a&&a.dataset.portal,{page:o,pageQuery:s}=this.getPageFromLinkPath(i)||{};this.state.initStatus==="success"&&(s&&s!=="free"?this.handleSignupQuery({site:this.state.site,pageQuery:s}):this.dispatchAction("openPopup",{page:o,pageQuery:s}))};const t="[data-portal]",n="gh-portal-close";this.customTriggerButtons=document.querySelectorAll(t)||[],this.customTriggerButtons.forEach(r=>{r.classList.add(n),r.removeEventListener("click",this.clickHandler),r.addEventListener("click",this.clickHandler)})}handleCustomTriggerClassUpdate(){var r;const t="gh-portal-open",n="gh-portal-close";(r=this.customTriggerButtons)==null||r.forEach(a=>{const i=this.state.showPopup?t:n,o=this.state.showPopup?n:t;a.classList.add(i),a.classList.remove(o)})}async initSetup(){try{const{site:t,member:n,page:r,showPopup:a,popupNotification:i,lastPage:o,pageQuery:s,pageData:l}=await this.fetchData(),u=this.props.siteI18nEnabled?t.locale:"en",p=M1(u,"portal"),m={site:t,member:n,page:r,lastPage:o,pageQuery:s,showPopup:a,pageData:l,popupNotification:i,t:p.t,action:"init:success",initStatus:"success"};if(this.handleSignupQuery({site:t,pageQuery:s,member:n}),this.setState(m),this.hashHandler=()=>{this.updateStateForPreviewLinks()},window.addEventListener("hashchange",this.hashHandler,!1),!n){const d=document.querySelectorAll("[data-lexical-signup-form]");d.length>0&&d.forEach(y=>{y.style.display=""})}}catch(t){console.error("[Portal] Failed to initialize:",t),this.setState({action:"init:failed",initStatus:"failed"})}}async fetchData(){const{site:t,member:n}=await this.fetchApiData(),{site:r,...a}=this.fetchDevData(),{site:i,...o}=this.fetchLinkData(),{site:s,...l}=this.fetchPreviewData(),{site:u,...p}=this.fetchNotificationData();return{member:n,page:"",site:{...t,...i,...s,...u,...r,plans:{...(r||{}).plans,...(t||{}).plans,...(s||{}).plans}},...a,...o,...p,...l}}fetchDevData(){return V(["dev"])&&!this.state.customSiteUrl?z1:V(["test"])?{showPopup:this.props.showPopup!==void 0?this.props.showPopup:!0}:{}}fetchOfferQueryStrData(t=""){const n=new URLSearchParams(t),r={};for(let a of n.entries()){const i=a[0],o=decodeURIComponent(a[1]);i==="name"?r.name=o||"":i==="code"?r.code=o||"":i==="display_title"?r.display_title=o||"":i==="display_description"?r.display_description=o||"":i==="type"?r.type=o||"":i==="cadence"?r.cadence=o||"":i==="duration"?r.duration=o||"":i==="duration_in_months"&&!isNaN(Number(o))?r.duration_in_months=Number(o):i==="amount"&&!isNaN(Number(o))?r.amount=Number(o):i==="currency"?r.currency=o||"":i==="status"?r.status=o||"":i==="tier_id"&&(r.tier={id:o||Lf.tier.id})}return{page:"offer",pageData:r}}fetchQueryStrData(t=""){const n=new URLSearchParams(t),r={site:{plans:{}}},a=[];let i,o=null,s,l,u;for(let p of n.entries()){const m=p[0],d=decodeURIComponent(p[1]);if(m==="button")r.site.portal_button=JSON.parse(d);else if(m==="name")r.site.portal_name=JSON.parse(d);else if(m==="isFree"&&JSON.parse(d))a.push("free");else if(m==="isMonthly"&&JSON.parse(d))a.push("monthly");else if(m==="isYearly"&&JSON.parse(d))a.push("yearly");else if(m==="portalPrices")i=d?d.split(","):[];else if(m==="portalProducts")o=d?d.split(","):[];else if(m==="page"&&d)r.page=d;else if(m==="accentColor"&&(d===""||d))r.site.accent_color=d;else if(m==="buttonIcon"&&d)r.site.portal_button_icon=d;else if(m==="signupButtonText")r.site.portal_button_signup_text=d||"";else if(m==="signupTermsHtml")r.site.portal_signup_terms_html=d||"";else if(m==="signupCheckboxRequired")r.site.portal_signup_checkbox_required=JSON.parse(d);else if(m==="buttonStyle"&&d)r.site.portal_button_style=d;else if(m==="monthlyPrice"&&!isNaN(Number(d)))r.site.plans.monthly=Number(d),s=Number(d);else if(m==="yearlyPrice"&&!isNaN(Number(d)))r.site.plans.yearly=Number(d),l=Number(d);else if(m==="currency"&&d){const y=d.toUpperCase();r.site.plans.currency=y,r.site.plans.currency_symbol=ue(y),u=y}else m==="disableBackground"?r.site.disableBackground=JSON.parse(d):m==="allowSelfSignup"?r.site.allow_self_signup=JSON.parse(d):m==="membersSignupAccess"&&d&&(r.site.members_signup_access=d)}return r.site.portal_plans=a,r.site.portal_products=o,i?r.site.portal_plans=i:s&&l&&u&&(r.site.prices=[{id:"monthly",stripe_price_id:"dummy_stripe_monthly",stripe_product_id:"dummy_stripe_product",active:1,nickname:"Monthly",currency:u,amount:s,type:"recurring",interval:"month"},{id:"yearly",stripe_price_id:"dummy_stripe_yearly",stripe_product_id:"dummy_stripe_product",active:1,nickname:"Yearly",currency:u,amount:l,type:"recurring",interval:"year"}]),r}fetchNotificationData(){const{type:t,status:n,duration:r,autoHide:a,closeable:i}=Vh({billingOnly:!0})||{};return["stripe:billing-update"].includes(t)?n==="success"?{showPopup:!0,popupNotification:Q({type:t,status:n,duration:r,closeable:i,autoHide:a,state:this.state,message:n==="success"?"Billing info updated successfully":""})}:{showPopup:!0}:{}}fetchLinkData(){const t=new URLSearchParams(window.location.search);if(t.get("uuid")&&t.get("action")==="unsubscribe")return{showPopup:!0,page:"unsubscribe",pageData:{uuid:t.get("uuid"),newsletterUuid:t.get("newsletter"),comments:t.get("comments")}};const[n,r]=window.location.hash.substr(1).split("?"),a=new URLSearchParams(r??""),i=/^(?:(\w+?))?\/monthly$/,o=/^(?:(\w+?))?\/yearly$/,s=/^offers\/(\w+?)\/?$/,l=/^\/portal\/?(?:\/(\w+(?:\/\w+)*))?\/?$/,u=/^\/feedback\/(\w+?)\/(\w+?)\/?$/;if(n&&u.test(n)&&a.get("uuid")){const[,p,m]=n.match(u),d=parseInt(m);if(d===1||d===0)return{showPopup:!0,page:"feedback",pageData:{uuid:a.get("uuid"),postId:p,score:d}}}if(n&&l.test(n)){const[,p]=n.match(l),{page:m,pageQuery:d}=this.getPageFromLinkPath(p)||{},y=["accountPlan","accountProfile"].includes(m)?"accountHome":null;return{showPopup:!(["monthly","yearly"].includes(d)||i.test(d)||o.test(d)||s.test(d)),...m?{page:m}:{},...d?{pageQuery:d}:{},...y?{lastPage:y}:{}}}return{}}fetchPreviewData(){const[,t]=window.location.hash.substr(1).split("?");if(V(["preview"])){let n={};return V(["offerPreview"])?n=this.fetchOfferQueryStrData(t):n=this.fetchQueryStrData(t),{...n,showPopup:!0}}return{}}getColorOverride(){const t=document.querySelector("script[data-ghost]");return t&&t.dataset.accentColor?t.dataset.accentColor:!1}async fetchApiData(){const{siteUrl:t,customSiteUrl:n,apiUrl:r,apiKey:a}=this.props;try{this.GhostApi=this.props.api||To({siteUrl:t,apiUrl:r,apiKey:a});const{site:i,member:o}=await this.GhostApi.init(),s=this.getColorOverride();return s&&(i.accent_color=s),this.setupFirstPromoter({site:i,member:o}),this.setupSentry({site:i}),{site:i,member:o}}catch(i){if(V(["dev","test"],{customSiteUrl:n}))return{};throw i}}setupSentry({site:t}){if(V(["test"]))return null;const{portal_sentry:n,portal_version:r,version:a}=t,o=`portal@2.33.2|ghost@${a}`;n&&n.dsn&&Zk({dsn:n.dsn,environment:n.env||"development",release:o,beforeSend:s=>bw({event:s})?s:null,allowUrls:[/https?:\/\/((www)\.)?unpkg\.com\/@tryghost\/portal/]})}setupFirstPromoter({site:t,member:n}){if(V(["test"]))return null;const r=Tw({site:t});let a=Rc({site:t});if(a=a==null?void 0:a.replace(/^(\S*\.)?(\S*\.\S*)$/i,".$2"),r&&a){const i=document.createElement("script");i.type="text/javascript",i.async=!0,i.src="https://cdn.firstpromoter.com/fprom.js",i.onload=i.onreadystatechange=function(){let s=this.readyState;if(!s||s==="complete"||s==="loaded")try{if(window.$FPROM.init(r,a),Yw({member:n})){const l=n.email,u=n.uuid;if(window.$FPROM)window.$FPROM.trackSignup({email:l,uid:u});else{const p=window._fprom||[];window._fprom=p,p.push(["event","signup"]),p.push(["email",l]),p.push(["uid",u])}}}catch{}};const o=document.getElementsByTagName("script")[0];o.parentNode.insertBefore(i,o)}}async dispatchAction(t,n){clearTimeout(this.timeoutId),this.setState({action:`${t}:running`});try{const r=await xS({action:t,data:n,state:this.state,api:this.GhostApi});this.setState(r),r&&r.action&&!r.action.includes(":failed")&&(this.timeoutId=setTimeout(()=>{this.setState({action:""})},2e3))}catch(r){const a=Q({type:`${t}:failed`,autoHide:!0,closeable:!0,status:"error",state:this.state,meta:{error:r}});this.setState({action:`${t}:failed`,popupNotification:a})}}updateStateForPreviewLinks(){const{site:t,...n}=this.fetchPreviewData(),{site:r,...a}=this.fetchLinkData(),i={site:{...this.state.site,...r||{},...t||{},plans:{...this.state.site&&this.state.site.plans,...(r||{}).plans,...(t||{}).plans}},...a,...n};this.handleSignupQuery({site:i.site,pageQuery:i.pageQuery}),this.setState(i)}async handleOfferQuery({site:t,offerId:n,member:r=this.state.member}){const{portal_button:a}=t;if(Ic(),!bt({member:r}))try{const i=await this.GhostApi.site.offer({offerId:n}),o=i==null?void 0:i.offers[0];if(zw({site:t,offer:o}))if(a)this.dispatchAction("openPopup",{page:"offer",pageData:i==null?void 0:i.offers[0]});else{const s=or({site:t,productId:o.tier.id}),l=o.cadence==="month"?s.monthlyPrice:s.yearlyPrice;if(this.dispatchAction("openPopup",{page:"loading"}),r){const{tierId:u,cadence:p}=mn({site:t,priceId:l.id});this.dispatchAction("checkoutPlan",{plan:l.id,offerId:n,tierId:u,cadence:p})}else{const{tierId:u,cadence:p}=mn({site:t,priceId:l.id});this.dispatchAction("signup",{plan:l.id,offerId:n,tierId:u,cadence:p})}}}catch{}}handleSignupQuery({site:t,pageQuery:n,member:r}){const a=/^offers\/(\w+?)\/?$/;let i=n;if(a.test(n||"")){const[,s]=n.match(a);this.handleOfferQuery({site:t,offerId:s,member:r});return}Lh({site:t,pageQuery:n})&&(i=Lh({site:t,pageQuery:n}));const o=Cw({site:t,priceId:i});if(n&&n!=="free"){Ic();const s=(o==null?void 0:o.id)||i;s!=="free"&&this.dispatchAction("openPopup",{page:"loading"});const{tierId:l,cadence:u}=mn({site:t,priceId:s});this.dispatchAction("signup",{plan:s,tierId:l,cadence:u})}}getPageFromLinkPath(t){const n=/^signup\/?(?:\/(\w+?))?\/?$/,r=/^signup\/?(?:\/(\w+?))\/monthly\/?$/,a=/^signup\/?(?:\/(\w+?))\/yearly\/?$/;if(/^offers\/(\w+?)\/?$/.test(t))return{pageQuery:t};if(t==="signup")return{page:"signup"};if(r.test(t)){const[,o]=t.match(r);return{page:"signup",pageQuery:`${o}/monthly`}}else if(a.test(t)){const[,o]=t.match(a);return{page:"signup",pageQuery:`${o}/yearly`}}else if(n.test(t)){const[,o]=t.match(n);return{page:"signup",pageQuery:o}}else{if(t==="signup/free")return{page:"signup",pageQuery:"free"};if(t==="signup/monthly")return{page:"signup",pageQuery:"monthly"};if(t==="signup/yearly")return{page:"signup",pageQuery:"yearly"};if(t==="signin")return{page:"signin"};if(t==="account")return{page:"accountHome"};if(t==="account/plans")return{page:"accountPlan"};if(t==="account/profile")return{page:"accountProfile"};if(t==="account/newsletters")return{page:"accountEmail"}}return{}}getAccentColor(){const{accent_color:t}=this.state.site||{};return t}getContextPage({site:t,page:n,member:r}){if(!n){const a=at({site:t})?"signin":"signup";n=r?"accountHome":a}return n==="accountPlan"&&ar({member:r})&&!Ea({member:r})&&(n="accountHome"),Wc({page:n})}getContextMember({page:t,member:n,customSiteUrl:r}){return V(["dev","preview"],{customSiteUrl:r})?q0({page:t})||V0({page:t})?V(["dev"],{customSiteUrl:r})?n||Mo.free:V(["preview"])?Mo.preview:Mo.paid:null:n}getContextFromState(){const{site:t,member:n,action:r,page:a,lastPage:i,showPopup:o,pageQuery:s,pageData:l,popupNotification:u,customSiteUrl:p,t:m}=this.state,d=this.getContextPage({site:t,page:a,member:n}),y=this.getContextMember({page:d,member:n,customSiteUrl:p});return{site:t,action:r,brandColor:this.getAccentColor(),page:d,pageQuery:s,pageData:l,member:y,lastPage:i,showPopup:o,popupNotification:u,customSiteUrl:p,t:m,onAction:(b,x)=>this.dispatchAction(b,x)}}render(){return this.state.initStatus==="success"?c.jsx(R1,{site:this.state.site,children:c.jsxs(N.Provider,{value:this.getContextFromState(),children:[c.jsx(Df,{}),c.jsx(Bh,{}),c.jsx(Gh,{})]})}):null}}const tg="ghost-portal-root";function U1(){const e=document.createElement("div");e.id=tg,document.body.appendChild(e)}function O1(){const e=document.querySelector("script[data-ghost]");if(e){const t=e.dataset.i18n==="true",n=e.dataset.ghost,r=e.dataset.key,a=e.dataset.api;return{siteUrl:n,apiKey:r,apiUrl:a,siteI18nEnabled:t}}return{}}function Y1(){const e=new URL(window.location.href);e.searchParams.get("token")&&(e.searchParams.delete("token"),window.history.replaceState({},document.title,e.href))}function F1({siteUrl:e}){U1(),Y1()}function B1(){const{siteUrl:e,apiKey:t,apiUrl:n,siteI18nEnabled:r}=O1(),a=e||window.location.origin;F1({siteUrl:a}),pb.render(c.jsx(R.StrictMode,{children:c.jsx(L1,{siteUrl:a,customSiteUrl:e,apiKey:t,apiUrl:n,siteI18nEnabled:r})}),document.getElementById(tg))}B1()});
3166
+ `+n;return c.jsxs(c.Fragment,{children:[c.jsx("style",{dangerouslySetInnerHTML:{__html:r}}),c.jsx("meta",{name:"viewport",content:"width=device-width, initial-scale=1, maximum-scale=1"})]})}renderFrameContainer(){const{member:t,site:n,customSiteUrl:r}=this.context,a=Tf({member:t}),i=window.innerWidth<480,o={...a.frame.common};let s="gh-portal-popup-background";return V(["preview"])&&(a.modalContainer.zIndex="3999997"),V(["preview"],{customSiteUrl:r})&&!n.disableBackground&&(s+=" preview"),V(["dev"])&&(s+=" dev"),c.jsx("div",{style:a.modalContainer,children:c.jsxs(jc,{style:o,title:"portal-popup",head:this.renderFrameStyles(),dataTestId:"portal-popup-frame",children:[c.jsx("div",{className:s,onClick:l=>this.handlePopupClose(l)}),c.jsx(If,{isMobile:i})]})})}render(){const{showPopup:t}=this.context;return t?this.renderFrameContainer():null}}G(Df,"contextType",N),Io({products:Kc({numOfProducts:1})});function Se(){return(new Date().getTime()/1e3|0).toString(16)+"xxxxxxxxxxxxxxxx".replace(/[x]/g,function(){return(Math.random()*16|0).toString(16)}).toLowerCase()}function Io({title:e="The Blueprint",description:t="Thoughts, stories and ideas.",logo:n="https://static.ghost.org/v4.0.0/images/ghost-orb-1.png",icon:r="https://static.ghost.org/v4.0.0/images/ghost-orb-1.png",url:a="https://portal.localhost",plans:i={monthly:5e3,yearly:15e4,currency:"USD"},products:o=Kc({numOfProducts:1}),portalProducts:s=o.map($=>$.id),accentColor:l="#45C32E",portalPlans:u=["free","monthly","yearly"],allowSelfSignup:p=!0,membersSignupAccess:m="all",freePriceName:d="Free",freePriceDescription:y="Free preview",isStripeConfigured:b=!0,portalButton:x=!0,portalName:f=!0,portalButtonIcon:h="icon-1",portalButtonSignupText:g="Subscribe now",portalButtonStyle:w="icon-and-text",membersSupportAddress:k="support@example.com",newsletters:C=[],commentsEnabled:S}={}){return{title:e,description:t,logo:n,icon:r,accent_color:l,url:a,plans:i,products:o,portal_products:s,allow_self_signup:p,members_signup_access:m,free_price_name:d,free_price_description:y,is_stripe_configured:b,portal_button:x,portal_name:f,portal_plans:u,portal_button_icon:h,portal_button_signup_text:g,portal_button_style:w,members_support_address:k,comments_enabled:!!S,newsletters:C}}function Af({name:e="Black Friday",code:t="black-friday",displayTitle:n="Black Friday Sale!",displayDescription:r="Special deal for Black Friday. Subscribe now for only $15 per month and get additional benefits like accessing our podcast.",type:a="percent",cadence:i="month",amount:o=50,duration:s="repeating",durationInMonths:l=null,currencyRestriction:u=!1,currency:p=null,status:m="active",tierId:d="",tierName:y="Basic"}={}){return{id:`offer_${Se()}`,name:e,code:t,display_title:n,display_description:r,type:a,cadence:i,amount:o,duration:s,duration_in_months:l,currency_restriction:u,currency:p,status:m,tier:{id:`${d}`,name:y}}}function Je({name:e="Jamie Larson",email:t="jamie@example.com",firstname:n="Jamie",subscriptions:r=[],paid:a=!1,avatarImage:i="",subscribed:o=!0,email_suppression:s={suppressed:!1,info:null}}={}){return{uuid:`member_${Se()}`,email:t,name:e,firstname:n,paid:a,subscribed:o,avatar_image:i,subscriptions:r,email_suppression:s}}function Kc({numOfProducts:e=3}={}){const n=[dr({name:"Bronze",description:"Access to all members articles",monthlyPrice:Oe({interval:"month",amount:700}),yearlyPrice:Oe({interval:"year",amount:7e3}),numOfBenefits:2}),dr({name:"Silver",description:"Access to all members articles and weekly podcast",monthlyPrice:Oe({interval:"month",amount:1200}),yearlyPrice:Oe({interval:"year",amount:12e3}),numOfBenefits:3}),dr({name:"Friends of the Blueprint",description:"Get access to everything and lock in early adopter pricing for life + listen to my podcast",monthlyPrice:Oe({interval:"month",amount:18e3}),yearlyPrice:Oe({interval:"year",amount:17e3}),numOfBenefits:4})].slice(0,e),r=Mf({});return[...n,r]}function dr({type:e="paid",name:t="Basic",description:n="",id:r=`product_${Se()}`,monthlyPrice:a=Oe(),yearlyPrice:i=Oe({interval:"year"}),numOfBenefits:o=2,trialDays:s=null}){return{id:r,name:t,description:n,monthlyPrice:e==="free"?null:a,yearlyPrice:e==="free"?null:i,type:e,benefits:zf({numOfBenefits:o}),trial_days:s}}function Mf({name:e="Free tier",description:t="Free tier description",id:n=`product_${Se()}`,numOfBenefits:r=2}){return{id:n,name:e,type:"free",description:t,benefits:zf({numOfBenefits:r})}}function zf({numOfBenefits:e}){return[Do({name:"Limited early adopter pricing"}),Do({name:"Latest gear reviews"}),Do({name:"Weekly email newsletter"}),Do({name:"Listen to my podcast"})].slice(0,e)}function Do({id:e=`benefit_${Se()}`,name:t="Benefit"}){return{id:e,name:t}}function Oe({interval:e="month",amount:t=e==="month"?500:5e3,nickname:n=e==="month"?"Monthly":"Yearly",description:r=null,currency:a="usd",active:i=!0,id:o=`price_${Se()}`}={}){return{id:o,active:i,nickname:n,currency:a,amount:t,interval:e,description:r,stripe_price_id:`price_${Se()}`,stripe_product_id:`prod_${Se()}`,type:"recurring"}}function hn({id:e=`sub_${Se()}`,status:t="active",currency:n="USD",interval:r="year",amount:a=r==="month"?500:5e3,nickname:i=r==="month"?"Monthly":"Yearly",cardLast4:o="4242",offer:s=J0,priceId:l=`price_${Se()}`,startDate:u="2021-10-05T03:18:30.000Z",currentPeriodEnd:p="2022-10-05T03:18:30.000Z",cancelAtPeriodEnd:m=!1}={}){return{id:e,customer:{id:`cus_${Se()}`,name:"Jamie",email:"jamie@example.com"},plan:{id:`price_${Se()}`,nickname:i,amount:a,interval:r,currency:n},offer:s,status:t,start_date:u,default_payment_card_last4:o,cancel_at_period_end:m,cancellation_reason:null,current_period_end:p,price:{id:`stripe_price_${Se()}`,price_id:l,nickname:i,amount:a,interval:r,type:"recurring",currency:n,product:{id:`stripe_prod_${Se()}`,product_id:`prod_${Se()}`}}}}function Rf(){const e=Kc({numOfProducts:1}),t=e.map(r=>r.id);return Io({products:e,portalPlans:["free","monthly","yearly"],portalProducts:t})}Rf();const K0=Io({products:[dr({numOfBenefits:2,type:"free"})]}),J0=Af({tierId:(ng=K0.products[0])==null?void 0:ng.id});Je(),Je({paid:!0,subscriptions:[hn()]}),Je({paid:!0,subscriptions:[]}),Je({paid:!0,subscriptions:[hn({amount:0})]}),Je({paid:!0,subscriptions:[hn({amount:1500,startDate:"2019-05-01T11:42:40.000Z",currentPeriodEnd:"2021-06-05T11:42:40.000Z"})]}),Rf();const Ao=[Mf({name:"Free",description:"Free tier description which is actually a pretty long description",numOfBenefits:2}),dr({name:"The Blueprint",description:"",monthlyPrice:Oe({interval:"month",amount:500}),yearlyPrice:Oe({interval:"year",amount:5e3}),numOfBenefits:3}),dr({name:"Friends of the Blueprint Silver",description:"Access to all members articles and weekly podcast",monthlyPrice:Oe({interval:"month",amount:1200}),yearlyPrice:Oe({interval:"year",amount:11e3}),numOfBenefits:4})],pr=Io({title:"The Blueprint",description:"Thoughts, stories and ideas.",logo:"https://static.ghost.org/v4.0.0/images/ghost-orb-1.png",icon:"https://static.ghost.org/v4.0.0/images/ghost-orb-1.png",accentColor:"#45C32E",url:"https://portal.localhost",plans:{monthly:5e3,yearly:15e4,currency:"USD"},products:Ao,portalProducts:Ao.map(e=>e.id),allowSelfSignup:!0,membersSignupAccess:"all",freePriceName:"Free",freePriceDescription:"Free preview",isStripeConfigured:!0,portalButton:!0,portalName:!0,portalPlans:["free","monthly","yearly"],portalButtonIcon:"icon-1",portalButtonSignupText:"Subscribe now",portalButtonStyle:"icon-and-text",membersSupportAddress:"support@example.com",commentsEnabled:!0,newsletters:[{id:"weekly",name:"Weekly Rundown",description:"Best of last week",subscribe_on_signup:!0,paid:!0},{id:"daily",name:"Daily Brief",description:"One email every day",subscribe_on_signup:!1,paid:!1}]}),Lf=Af({tierId:(rg=pr.products[1])==null?void 0:rg.id}),Mo={free:Je({name:"Jamie Larson",email:"jamie@example.com",firstname:"Jamie",subscriptions:[],paid:!1,avatarImage:"",subscribed:!0}),paid:Je({paid:!0,subscriptions:[hn({status:"active",currency:"USD",interval:"year",amount:5e3,cardLast4:"4242",startDate:"2021-10-05T03:18:30.000Z",currentPeriodEnd:"2022-10-05T03:18:30.000Z",cancelAtPeriodEnd:!1})]}),complimentary:Je({paid:!0,subscriptions:[]}),complimentaryWithSubscription:Je({paid:!0,subscriptions:[hn({amount:0})]}),preview:Je({paid:!0,subscriptions:[hn({amount:1500,startDate:"2019-05-01T11:42:40.000Z",currentPeriodEnd:"2021-06-05T11:42:40.000Z"})]})};function Q0(){var n;if(!Ao||!Ao[1])return null;let e=(n=pr==null?void 0:pr.products)==null?void 0:n[1].monthlyPrice,t=Je({paid:!0,subscriptions:[hn({offer:null,priceId:e==null?void 0:e.id,status:"active",currency:e==null?void 0:e.currency,interval:e==null?void 0:e.interval,amount:e==null?void 0:e.amount,cardLast4:"4242",startDate:"2021-10-05T03:18:30.000Z",currentPeriodEnd:"2022-10-05T03:18:30.000Z",cancelAtPeriodEnd:!1})]});return{site:pr,member:t}}function X0({data:e,state:t}){return{page:e.page,popupNotification:null,lastPage:e.lastPage||null,pageData:e.pageData||t.pageData}}function Z0({state:e}){return{showPopup:!e.showPopup}}function eS({data:e}){return{showPopup:!0,page:e.page,...e.pageQuery?{pageQuery:e.pageQuery}:{},...e.pageData?{pageData:e.pageData}:{}}}function tS({state:e}){return e.lastPage?{page:e.lastPage}:Uf({state:e})}function Uf({state:e}){return Ic(),{showPopup:!1,lastPage:null,pageQuery:"",popupNotification:null,page:e.page==="magiclink"?"":e.page}}function nS({data:e}){return{showNotification:!0,...e}}function rS({state:e}){return{showNotification:!1}}async function aS({api:e,state:t}){try{return await e.member.signout(),{action:"signout:success"}}catch{return{action:"signout:failed",popupNotification:Q({type:"signout:failed",autoHide:!1,closeable:!0,state:t,status:"error",message:"Failed to log out, please try again"})}}}async function iS({data:e,api:t,state:n}){try{return await t.member.sendMagicLink({...e,emailType:"signin"}),{page:"magiclink",lastPage:"signin"}}catch(r){return{action:"signin:failed",popupNotification:Q({type:"signin:failed",autoHide:!1,closeable:!0,state:n,status:"error",message:vt.getMessageFromError(r,"Failed to log in, please try again")})}}}async function oS({data:e,state:t,api:n}){try{let{plan:r,tierId:a,cadence:i,email:o,name:s,newsletters:l,offerId:u}=e;if(r.toLowerCase()==="free")await n.member.sendMagicLink({emailType:"signup",...e});else return a&&i?await n.member.checkoutPlan({plan:r,tierId:a,cadence:i,email:o,name:s,newsletters:l,offerId:u}):({tierId:a,cadence:i}=mn({site:t==null?void 0:t.site,priceId:r}),await n.member.checkoutPlan({plan:r,tierId:a,cadence:i,email:o,name:s,newsletters:l,offerId:u})),{page:"loading"};return{page:"magiclink",lastPage:"signup"}}catch(r){const a=(r==null?void 0:r.message)||"Failed to sign up, please try again";return{action:"signup:failed",popupNotification:Q({type:"signup:failed",autoHide:!1,closeable:!0,state:t,status:"error",message:a})}}}async function sS({data:e,state:t,api:n}){try{let{plan:r,offerId:a,tierId:i,cadence:o}=e;(!i||!o)&&({tierId:i,cadence:o}=mn({site:t==null?void 0:t.site,priceId:r})),await n.member.checkoutPlan({plan:r,tierId:i,cadence:o,offerId:a,metadata:{checkoutType:"upgrade"}})}catch{return{action:"checkoutPlan:failed",popupNotification:Q({type:"checkoutPlan:failed",autoHide:!1,closeable:!0,state:t,status:"error",message:"Failed to process checkout, please try again"})}}}async function lS({data:e,state:t,api:n}){try{const{plan:r,planId:a,subscriptionId:i,cancelAtPeriodEnd:o}=e,{tierId:s,cadence:l}=mn({site:t==null?void 0:t.site,priceId:a});await n.member.updateSubscription({planName:r,tierId:s,cadence:l,subscriptionId:i,cancelAtPeriodEnd:o,planId:a});const u=await n.member.sessionData(),p="updateSubscription:success";return{action:p,popupNotification:Q({type:p,autoHide:!0,closeable:!0,state:t,status:"success",message:"Subscription plan updated successfully"}),page:"accountHome",member:u}}catch{return{action:"updateSubscription:failed",popupNotification:Q({type:"updateSubscription:failed",autoHide:!1,closeable:!0,state:t,status:"error",message:"Failed to update subscription, please try again"})}}}async function cS({data:e,state:t,api:n}){try{const{subscriptionId:r,cancellationReason:a}=e;return await n.member.updateSubscription({subscriptionId:r,smartCancel:!0,cancellationReason:a}),{action:"cancelSubscription:success",page:"accountHome",member:await n.member.sessionData()}}catch{return{action:"cancelSubscription:failed",popupNotification:Q({type:"cancelSubscription:failed",autoHide:!1,closeable:!0,state:t,status:"error",message:"Failed to cancel subscription, please try again"})}}}async function uS({data:e,state:t,api:n}){try{const{subscriptionId:r}=e;return await n.member.updateSubscription({subscriptionId:r,cancelAtPeriodEnd:!1}),{action:"continueSubscription:success",page:"accountHome",member:await n.member.sessionData()}}catch{return{action:"continueSubscription:failed",popupNotification:Q({type:"continueSubscription:failed",autoHide:!1,closeable:!0,state:t,status:"error",message:"Failed to cancel subscription, please try again"})}}}async function dS({data:e,state:t,api:n}){try{await n.member.editBilling(e)}catch{return{action:"editBilling:failed",popupNotification:Q({type:"editBilling:failed",autoHide:!1,closeable:!0,state:t,status:"error",message:"Failed to update billing information, please try again"})}}}async function pS(){return{popupNotification:null}}async function mS({data:e,state:t}){let{action:n,message:r=""}=e;return n=n||"showPopupNotification:success",{popupNotification:Q({type:n,autoHide:!0,closeable:!0,state:t,status:"success",message:r})}}async function hS({data:e,state:t,api:n}){try{const{newsletters:r,enableCommentNotifications:a}=e;if(!r&&a===void 0)return{};const i={};return r&&(i.newsletters=r),a!==void 0&&(i.enableCommentNotifications=a),{action:"updateNewsletterPref:success",member:await n.member.update(i)}}catch{return{action:"updateNewsletterPref:failed",popupNotification:Q({type:"updateNewsletter:failed",autoHide:!0,closeable:!0,state:t,status:"error",message:"Failed to update newsletter settings"})}}}async function fS({state:e,api:t}){try{return await t.member.deleteSuppression(),{action:"removeEmailFromSuppressionList:success",popupNotification:Q({type:"removeEmailFromSuppressionList:success",autoHide:!0,closeable:!0,state:e,status:"success",message:"You have been successfully resubscribed"})}}catch{return{action:"removeEmailFromSuppressionList:failed",popupNotification:Q({type:"removeEmailFromSuppressionList:failed",autoHide:!0,closeable:!0,state:e,status:"error",message:"Your email has failed to resubscribe, please try again"})}}}async function gS({data:e,state:t,api:n}){try{const{subscribed:r}=e,a=await n.member.update({subscribed:r});if(!a)throw new Error("Failed to update newsletter");const i="updateNewsletter:success";return{action:i,member:a,popupNotification:Q({type:i,autoHide:!0,closeable:!0,state:t,status:"success",message:"Email newsletter settings updated"})}}catch{return{action:"updateNewsletter:failed",popupNotification:Q({type:"updateNewsletter:failed",autoHide:!0,closeable:!0,state:t,status:"error",message:"Failed to update newsletter settings"})}}}async function yS({data:e,state:t,api:n}){const{email:r}=e,a=Nw({member:t.member});if(r!==a)try{return await n.member.updateEmailAddress({email:r}),{success:!0}}catch(i){return{success:!1,error:i}}return null}async function bS({data:e,state:t,api:n}){const{name:r}=e;if(Iw({member:t.member})!==r)try{const i=await n.member.update({name:r});if(!i)throw new Error("Failed to update member");return{member:i,success:!0}}catch(i){return{success:!1,error:i}}return null}async function vS({state:e,api:t}){if(e.member)try{const n=await t.member.sessionData();return n?{member:n,success:!0,action:"refreshMemberData:success"}:null}catch(n){return{success:!1,error:n,action:"refreshMemberData:failed"}}return null}async function kS({data:e,state:t,api:n}){const[r,a]=await Promise.all([bS({data:e,state:t,api:n}),yS({data:e,state:t,api:n})]);if(r&&a){if(a.success)return{action:"updateProfile:success",...r.success?{member:r.member}:{},page:"accountHome",popupNotification:Q({type:"updateProfile:success",autoHide:!0,closeable:!0,status:"success",state:t,message:"Check your inbox to verify email update"})};const i=r.success?"Failed to send verification email":"Failed to update account data";return{action:"updateProfile:failed",...r.success?{member:r.member}:{},popupNotification:Q({type:"updateProfile:failed",autoHide:!0,closeable:!0,status:"error",message:i,state:t})}}else if(r){const i=r.success?"updateProfile:success":"updateProfile:failed",o=r.success?"success":"error",s=r.success?"Account details updated successfully":"Failed to update account details";return{action:i,...r.success?{member:r.member}:{},...r.success?{page:"accountHome"}:{},popupNotification:Q({type:i,autoHide:r.success,closeable:!0,status:o,state:t,message:s})}}else if(a){const i=a.success?"updateProfile:success":"updateProfile:failed",o=a.success?"success":"error",s=a.success?"Check your inbox to verify email update":"Failed to send verification email";return{action:i,...a.success?{page:"accountHome"}:{},popupNotification:Q({type:i,autoHide:a.success,closeable:!0,status:o,state:t,message:s})}}return{action:"updateProfile:success",page:"accountHome",popupNotification:Q({type:"updateProfile:success",autoHide:!0,closeable:!0,status:"success",state:t,message:"Account details updated successfully"})}}const wS={togglePopup:Z0,openPopup:eS,closePopup:Uf,switchPage:X0,openNotification:nS,closeNotification:rS,back:tS,signout:aS,signin:iS,signup:oS,updateSubscription:lS,cancelSubscription:cS,continueSubscription:uS,updateNewsletter:gS,updateProfile:kS,refreshMemberData:vS,clearPopupNotification:pS,editBilling:dS,checkoutPlan:sS,updateNewsletterPreference:hS,showPopupNotification:mS,removeEmailFromSuppressionList:fS};async function xS({action:e,data:t,state:n,api:r}){const a=wS[e];return a?await a({data:t,state:n,api:r})||{}:{}}const nE="";function SS({event:e,form:t,errorEl:n,siteUrl:r,submitHandler:a}){var x;t.removeEventListener("submit",a),e.preventDefault(),n&&(n.innerText=""),t.classList.remove("success","invalid","error");let i=e.target.querySelector("input[data-members-email]"),o=e.target.querySelector("input[data-members-name]"),s=((x=t==null?void 0:t.dataset)==null?void 0:x.membersAutoredirect)||"true",l=i==null?void 0:i.value,u=o&&o.value||void 0,p,m=[],d=e.target.querySelectorAll("input[data-members-label]")||[];for(let f=0;f<d.length;++f)m.push(d[f].value);t.dataset.membersForm&&(p=t.dataset.membersForm),t.classList.add("loading");const y=xo(),b={email:l,emailType:p,labels:m,name:u,autoRedirect:s==="true"};y&&(b.urlHistory=y),fetch(`${r}/members/api/send-magic-link/`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(b)}).then(function(f){if(t.addEventListener("submit",a),t.classList.remove("loading"),f.ok)t.classList.add("success");else return vt.fromApiResponse(f).then(h=>{throw h})}).catch(f=>{n&&(n.innerText=vt.getMessageFromError(f,"There was an error sending the email, please try again")),t.classList.add("error")})}function ES({event:e,el:t,errorEl:n,siteUrl:r,site:a,member:i,clickHandler:o}){t.removeEventListener("click",o),e.preventDefault();let s=t.dataset.membersPlan,l=Ew(a,s.toLowerCase()),u=t.dataset.membersSuccess,p=t.dataset.membersCancel,m,d;u&&(m=new URL(u,window.location.href).href),p&&(d=new URL(p,window.location.href).href),n&&(n.innerText=""),t.classList.add("loading");const y=i?{checkoutType:"upgrade"}:{},b=xo();return b&&(y.urlHistory=b),fetch(`${r}/members/api/session`,{credentials:"same-origin"}).then(function(x){return x.ok?x.text():null}).then(function(x){return fetch(`${r}/members/api/create-stripe-checkout-session/`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...l,identity:x,successUrl:m,cancelUrl:d,metadata:y})}).then(function(f){if(!f.ok)throw new Error("Could not create stripe checkout session");return f.json()})}).then(function(x){return x.url?window.location.assign(x.url):window.Stripe(x.publicKey).redirectToCheckout({sessionId:x.sessionId}).then(function(h){if(h.error)throw new Error(h.error.message)})}).catch(function(x){console.error(x),t.addEventListener("click",o),t.classList.remove("loading"),n&&(n.innerText=x.message),t.classList.add("error")})}function CS({siteUrl:e,site:t,member:n}){e&&(e=e.replace(/\/$/,""),Array.prototype.forEach.call(document.querySelectorAll("form[data-members-form]"),function(r){let a=r.querySelector("[data-members-error]");function i(o){SS({event:o,errorEl:a,form:r,siteUrl:e,submitHandler:i})}r.addEventListener("submit",i)}),Array.prototype.forEach.call(document.querySelectorAll("[data-members-plan]"),function(r){let a=r.querySelector("[data-members-error]");function i(o){ES({el:r,event:o,errorEl:a,member:n,site:t,siteUrl:e,clickHandler:i})}r.addEventListener("click",i)}),Array.prototype.forEach.call(document.querySelectorAll("[data-members-edit-billing]"),function(r){let a=r.querySelector("[data-members-error]"),i=r.dataset.membersSuccess,o=r.dataset.membersCancel,s,l;i&&(s=new URL(i,window.location.href).href),o&&(l=new URL(o,window.location.href).href);function u(p){r.removeEventListener("click",u),p.preventDefault(),a&&(a.innerText=""),r.classList.add("loading"),fetch(`${e}/members/api/session`,{credentials:"same-origin"}).then(function(m){return m.ok?m.text():null}).then(function(m){return fetch(`${e}/members/api/create-stripe-update-session/`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({identity:m,successUrl:s,cancelUrl:l})}).then(function(d){if(!d.ok)throw new Error("Could not create stripe checkout session");return d.json()})}).then(function(m){return window.Stripe(m.publicKey).redirectToCheckout({sessionId:m.sessionId})}).then(function(m){if(m.error)throw new Error(m.error.message)}).catch(function(m){console.error(m),r.addEventListener("click",u),r.classList.remove("loading"),a&&(a.innerText=m.message),r.classList.add("error")})}r.addEventListener("click",u)}),Array.prototype.forEach.call(document.querySelectorAll("[data-members-signout]"),function(r){function a(i){r.removeEventListener("click",a),i.preventDefault(),r.classList.remove("error"),r.classList.add("loading"),fetch(`${e}/members/api/session`,{method:"DELETE"}).then(function(o){o.ok?window.location.replace(e):(r.addEventListener("click",a),r.classList.remove("loading"),r.classList.add("error"))})}r.addEventListener("click",a)}),Array.prototype.forEach.call(document.querySelectorAll("[data-members-cancel-subscription]"),function(r){let a=r.parentElement.querySelector("[data-members-error]");function i(o){r.removeEventListener("click",i),o.preventDefault(),r.classList.remove("error"),r.classList.add("loading");let s=r.dataset.membersCancelSubscription;return a&&(a.innerText=""),fetch(`${e}/members/api/session`,{credentials:"same-origin"}).then(function(l){return l.ok?l.text():null}).then(function(l){return fetch(`${e}/members/api/subscriptions/${s}/`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({identity:l,smart_cancel:!0})})}).then(function(l){l.ok?window.location.reload():(r.addEventListener("click",i),r.classList.remove("loading"),r.classList.add("error"),a&&(a.innerText="There was an error cancelling your subscription, please try again."))})}r.addEventListener("click",i)}),Array.prototype.forEach.call(document.querySelectorAll("[data-members-continue-subscription]"),function(r){let a=r.parentElement.querySelector("[data-members-error]");function i(o){r.removeEventListener("click",i),o.preventDefault(),r.classList.remove("error"),r.classList.add("loading");let s=r.dataset.membersContinueSubscription;return a&&(a.innerText=""),fetch(`${e}/members/api/session`,{credentials:"same-origin"}).then(function(l){return l.ok?l.text():null}).then(function(l){return fetch(`${e}/members/api/subscriptions/${s}/`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({identity:l,cancel_at_period_end:!1})})}).then(function(l){l.ok?window.location.reload():(r.addEventListener("click",i),r.classList.remove("loading"),r.classList.add("error"),a&&(a.innerText="There was an error continuing your subscription, please try again."))})}r.addEventListener("click",i)}))}const $S={"{{amount}} days free":"{{amount}} dae gratis","{{amount}} off":"{{amount}} afslag","{{amount}} off for first {{number}} months.":"{{amount}} afslag vir die eerste {{number}} maande.","{{amount}} off for first {{period}}.":"{{amount}} afslag vir die eerste {{period}}.","{{amount}} off forever.":"{{amount}} afslag vir altyd.","{{discount}}% discount":"{{discount}}% afslag","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"{{memberEmail}} sal nie meer die {{newsletterName}} nuusbrief ontvang nie.","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"{{memberEmail}} sal nie meer e-posse ontvang wanneer iemand op u kommentaar reageer nie.","{{memberEmail}} will no longer receive this newsletter.":"{{memberEmail}} sal nie meer hierdie nuusbrief ontvang nie.","{{trialDays}} days free":"{{trialDays}} dae gratis","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"'n Aanmeldskakel is na u epos gestuur. As dit nie binne 3 minute aankom nie, moet u asseblief u spam-vouer nagaan.",Account:"Rekening","Account settings":"Rekening instellings","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Na afloop van die gratis proeftydperk sal u die vasgestelde pry vir die vlak wat u gekies het, betaal. U kan altyd voor die tyd kanselleer.","Already a member?":"Is u reeds 'n lid?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"Terug","Back to Log in":"Terug na aanmelding","Billing info":"Rekening inligting","Black Friday":"Swart Vrydag","Cancel anytime.":"Kanselleer enige tyd.","Cancel subscription":"Kanselleer inskrywing","Cancellation reason":"Kansellasie rede",Change:"Verander","Check spam & promotions folders":"Kyk in spam & promosie vouers","Check with your mail provider":"Kyk by u e-posverskaffer",Choose:"Kies","Choose a different plan":"Kies 'n ander plan","Choose your newsletters":"Kies u nuusbriefs","Click here to retry":"Kliek hier om weer te probeer",Close:"Sluit",Comments:"Kommentaar",Complimentary:"Komplimentêr",Confirm:"Bevestig","Confirm cancellation":"Bevestig kansellasie","Confirm subscription":"Bevestig inskrywing","Contact support":"Kontak kliëntediens",Continue:"Gaan voort","Continue subscription":"Gaan voort met inskrywing","Could not sign in. Login link expired.":"Kon nie aanmeld nie. Aanmeldskakel het verval.","Could not update email! Invalid link.":"Kon nie e-pos opdateer nie! Ongeldige skakel.","Create a new contact":"Skep 'n nuwe kontak","Current plan":"Huidige plan","Delete account":"Verwyder rekening","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"Het u nie 'n rekening nie?",Edit:"Wysig",Email:"E-pos","Email newsletter":"Epos nuusbrief","Email preference updated.":"E-pos instellings opgedateer.","Email preferences":"E-pos instellings",Emails:"E-posse","Emails disabled":"E-posse afgeskakel","Ends {{offerEndDate}}":"Eindig {{offerEndDate}}",Error:"Fout","Expires {{expiryDate}}":"Verval {{expiryDate}}",Forever:"Verewig","Free Trial – Ends {{trialEnd}}":"Gratis proeftydperk – Eindig {{trialEnd}}","Get help":"Kry hulp","Get in touch for help":"Kontak vir hulp","Get notified when someone replies to your comment":"Ontvang 'n kennisgewing wanneer iemand op u kommentaar reageer","Give feedback on this post":"Gee terugvoering oor hierdie pos","Help! I'm not receiving emails":"Help! Ek ontvang nie e-posse nie","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"As 'n nuusbrief as spam geïdentifiseer word, word e-posse outomaties vir daardie adres afgeskakel om seker te maak dat u geen ongewenste boodskappe meer ontvang nie.","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"As die spam klag per ongeluk was, of as u weer e-posse wil begin ontvang, kan u weer inskryf vir e-posse deur op die knoppie op die vorige skerm te klik.","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"As u nou kanselleer, sal u toegang hê tot {{periodEnd}}.","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"As u 'n korporatiewe of regerings e-posrekening het, kontak u IT-afdeling en vra hulle om e-posse van {{senderEmail}} te ontvang","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"As u weer e-posse wil begin ontvang, is die beste volgende stap om u e-posadres op rekord te kontroleer vir enige probleme en dan weer in te skryf op die vorige skerm.","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"As u nie die e-pos nuusbrief ontvang wat u op ingeteken het nie, is hier 'n paar goed om te kontroleer.","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"As u al hierdie kontroles voltooi het en u steeds nie e-posse ontvang nie, kan u hulp kry deur {{supportAddress}} te kontak.","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"In die geval dat 'n permanente fout ontvang word wanneer 'n nuusbrief gestuur word, sal e-posse op die rekening afgeskakel word.","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"In u e-pos program, voeg {{senderEmail}} by u kontaklys. Dit dui aan u e-posverskaffer aan dat e-posse wat van hierdie adres gestuur word, vertrou moet word.","Less like this":"Minder soos hierdie",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':'Maak seker dat e-posse nie per ongeluk in die Spam of Promosies vouers van u posbus beland nie. As dit wel is, kliek op "Mark as not spam" en/of "Move to inbox".',Manage:"Bestuur",Monthly:"Maandeliks","More like this":"Meer soos hierdie",Name:"Naam","Need more help? Contact support":"Benodig meer hulp? Kontak kliëntediens","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"Nuusbriewe kan op u rekening afgeskakel word vir twee redes: 'n Vorige e-pos is as spam gemerk, of 'n poging om 'n e-pos te stuur het tot 'n permanente fout gelei (bounce).","Not receiving emails?":"Ontvang u nie e-posse nie?","Now check your email!":"Kyk nou u e-pos!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"As u weer ingeskryf is, en u sien steeds nie e-posse in u posbus nie, kontroleer u spam vouer. Sommige posbusverskaffers hou 'n rekord van vorige spam klagtes en sal steeds e-posse merk. As dit gebeur, merk die nuutste nuusbrief as 'Not spam' om dit terug te skuif na u primêre posbus.","Permanent failure (bounce)":"Permanente fout (bounce)",Plan:"Plan","Plan checkout was cancelled.":"Plan afreken is gekanselleer.","Plan upgrade was cancelled.":"Plan opgradering is gekanselleer.","Please fill in required fields":"Vul asseblief die verpligte velde in",Price:"Prys","Re-enable emails":"Her-aktiveer eposse","Renews at {{price}}.":"Hernu teen {{price}}.",Retry:"Probeer weer",Save:"Stoor","Send an email and say hi!":"Stuur 'n epos en sê hallo!","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"Stuur 'n e-pos na {{senderEmail}} en sê hallo. Dit kan ook help om aan u e-posverskaffer aan te dui dat e-posse na en van hierdie adres vertrou moet word.","Sending login link...":"Stuur aanmeldskakel...","Sending...":"Stuur...","Sign in":"Meld aan","Sign out":"Teken uit","Sign up":"Registreer","Signup error: Invalid link":"Aanmelding fout: Ongeldige skakel","Sorry, that didn’t work.":"Jammer, dit het nie gewerk nie.","Spam complaints":"Spam klagtes","Start {{amount}}-day free trial":"Begin {{amount}}-dag gratis proeftydperk","Starting {{startDate}}":"Begin {{startDate}}","Starting today":"Begin vandag","Submit feedback":"Stuur terugvoering",Subscribe:"Teken in",Subscribed:"Ingeteken",Success:"Sukses","Success! Check your email for magic link to sign-in.":"Sukses! Kyk in jou e-pos vir 'n magiese skakel om aan te meld.","Success! Your account is fully activated, you now have access to all content.":"Sukses! U rekening is ten volle geaktiveer, u het nou toegang tot alle inhoud.","Success! Your email is updated.":"Sukses! U e-pos is opgedateer.","Successfully unsubscribed":"Suksesvol afgemeld","Thanks for the feedback!":"Dankie vir die terugvoering!","That didn't go to plan":"Dit het nie volgens plan verloop nie","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"Die epos addres wat ons vir u het is {{memberEmail}} — as dit nie korrek is nie, kan u dit opdateer in u <button>rekeninginstellings area</button>.","There was a problem submitting your feedback. Please try again a little later.":"Daar was 'n probleem om u terugvoering in te dien. Probeer asseblief later weer.","This site is invite-only, contact the owner for access.":"Hierdie webwerf is slegs op uitnodiging, kontak die eienaar vir toegang.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Om die registrasie te voltooi, kliek op die bevestigingskakel in jou inboks. As dit nie binne 3 minute aankom nie, kontroleer asseblief jou spam-vouer!","Try free for {{amount}} days, then {{originalPrice}}.":"Probeer gratis vir {{amount}} dae, dan {{originalPrice}}.","Unlock access to all newsletters by becoming a paid subscriber.":"Ontsluit toegang tot alle nuusbriewe deur 'n betaalde intekenaar te word.","Unsubscribe from all emails":"Meld af van alle e-posse",Unsubscribed:"Afgemeld","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Deur van eposse af te skakel, sal nie u betaalde subskripsie van {{title}} kanselleer nie",Update:"Opdateer","Update your preferences":"Opdateer u voorkeure","Verify your email address is correct":"Bevestig dat u e-posadres korrek is","View plans":"Kyk na planne","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Ons kon u nie afskakel nie, omdat die e-pos adres nie gevind is nie. Kontak asseblief die webwerf eienaar.","Welcome back, {{name}}!":"Welkom terug, {{name}}!","Welcome back!":"Welkom terug!","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"As 'n inboks nie 'n e-pos aanvaar nie, word dit algemeen 'n 'bounce' genoem. In baie gevalle kan dit tydelik wees. In sommige gevalle kan 'n gebotsde e-pos egter as 'n permanente fout teruggekeer word wanneer 'n e-posadres ongeldig of nie-bestaande is nie.","Why has my email been disabled?":"Waarom is my e-pos gedeaktiveer?",Yearly:"Jaarliks","You currently have a free membership, upgrade to a paid subscription for full access.":"U het tans 'n gratis lidmaatskap, opgradeer na 'n betaalde intekening vir volle toegang.","You have been successfully resubscribed":"U is suksesvol heringeskryf","You're currently not receiving emails":"U ontvang tans nie e-posse nie","You're not receiving emails":"U ontvang nie e-posse nie","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"U ontvang nie e-posse nie, omdat u onlangs 'n boodskap as spam gemerk het, of omdat boodskappe nie na die e-pos adres wat u verskaf het gestuur kon word nie.","You've successfully signed in.":"U het suksesvol aangemeld.","Your account":"U rekening","Your input helps shape what gets published.":"U insette help om te bepaal wat gepubliseer word.","Your subscription will expire on {{expiryDate}}":"U intekening sal verval op {{expiryDate}}","Your subscription will renew on {{renewalDate}}":"U intekening sal hernu op {{renewalDate}}","Your subscription will start on {{subscriptionStart}}":"U intekening sal begin op {{subscriptionStart}}"},_S={"{{amount}} days free":"","{{amount}} off":"","{{amount}} off for first {{number}} months.":"","{{amount}} off for first {{period}}.":"","{{amount}} off forever.":"","{{discount}}% discount":"отстъпка {{discount}}%","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"{{trialDays}} дни безплатен достъп","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Връзка за влизане беше изпратена към пощенската Ви кутия. Ако писмото не пристигне до 3 минути, провете дали не е категоризирана като нежелано писмо.",Account:"Вашият акаунт","Account settings":"Настройки на акаунта Ви","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"След прикючване на безплатния достъп ще бъдете таксувани според обявените цени. Можете да се откажете преди изтичането на безплатния достъп.","Already a member?":"Вече сте абонат на сайта?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"Обратно","Back to Log in":"Обратно към формата за влизане","Billing info":"Платежна информация","Black Friday":"Черен петък","Cancel anytime.":"","Cancel subscription":"Откажи абонамент","Cancellation reason":"Причина за отказ",Change:"Промени","Check spam & promotions folders":"","Check with your mail provider":"",Choose:"Избери","Choose a different plan":"Избеи различен план","Choose your newsletters":"Избери твоят бюлетин","Click here to retry":"",Close:"Затвори",Comments:"Коментари",Complimentary:"Подарък",Confirm:"Потвърди","Confirm cancellation":"Потвърдете прекратяването","Confirm subscription":"Потвърдете абонамента","Contact support":"",Continue:"Продължи","Continue subscription":"Продължете абонамента","Could not sign in. Login link expired.":"Не можете да влезете. Връзката за вход е изветряла.","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"Текущ план","Delete account":"Изтрий акаунт","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"Намате акаунт за достъп?",Edit:"Редакция",Email:"Имейл адрес","Email newsletter":"Имейл бюлетин","Email preference updated.":"Имейл настройките са обновени.","Email preferences":"Имейл настройки ",Emails:"Имейли","Emails disabled":"Писмата са преустновени","Ends {{offerEndDate}}":"",Error:"Грешка","Expires {{expiryDate}}":"",Forever:"Завинаги","Free Trial – Ends {{trialEnd}}":"","Get help":"Получете помощ","Get in touch for help":"","Get notified when someone replies to your comment":"Бъдете уведомявани, ако някой отговори на Ваш коментар","Give feedback on this post":"Моля за Вашият отзив за публикацията","Help! I'm not receiving emails":"Помощ! Не получавам имейли","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"По-малко такива",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"Управлявай",Monthly:"Месечно","More like this":"Повече такива",Name:"Име","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"Не получавате поща?","Now check your email!":"Провете си пощенската кутия!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"Цена","Re-enable emails":"Позволете отново изпращането на писма","Renews at {{price}}.":"",Retry:"Отново",Save:"Запиши","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"Изпращане на връзка за влизане...","Sending...":"Изпращане...","Sign in":"Влизане","Sign out":"Изход","Sign up":"Регистриране","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"Започване на {{amount}}-дневен безплатен достъп.","Starting {{startDate}}":"","Starting today":"","Submit feedback":"Изпрати отзив",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"Успешно разабониране","Thanks for the feedback!":"Благодарим за изпратеният отзив!","That didn't go to plan":"Нещо се обърка и не се случи както трябваше","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"Сайтът е само с покани. Свържете се със собственика за да получите достъп.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"За да прикючите вашата регистрация беше изпратена връзка за влизане към пощенската Ви кутия. Ако писмото не пристигне до 3 минути, провете дали не е категоризирана като нежелано писмо.","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"Прекрати изпращането на всякакви писма",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Спирането на изпращането на писма, няма да ти прекрати абонамента и регистрацията в {{title}}",Update:"","Update your preferences":"Обнови твоите предпочитания/настройки","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Този пощенски адрес който опитвате да разабонирате, изглежда невалиден. Моля свържете се със собственика на сайта.","Welcome back, {{name}}!":"Добре дошли отново, {{name}}!","Welcome back!":"Добре дошли отново!","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"Годишно","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"Успешно беше подновен абонаментът","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Не получавате писма защото или пощенският адрес е невалиден, или писмата се класифицират като нежелана поща.","You've successfully signed in.":"","Your account":"Твоята регистрация","Your input helps shape what gets published.":"Вашият принос помага да се оформи това, което се публикува.","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},jS={"{{amount}} days free":"{{amount}} dies gratuïts","{{amount}} off":"{{amount}} de descompte","{{amount}} off for first {{number}} months.":"{{amount}} de descompte pels primers {{number}} mesos","{{amount}} off for first {{period}}.":"{{amount}} de descompte pels primers {{period}}.","{{amount}} off forever.":"{{amount}} de descompte per sempre.","{{discount}}% discount":"{{discount}}% de descompte","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"{{memberEmail}} ja no rebràs cap butlletí de {{newsletterName}}.","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"{{memberEmail}} no rebrà cap correu electrònic quan algú respongui els teus comentaris.","{{memberEmail}} will no longer receive this newsletter.":"{{memberEmail}} ja no rebrà aquest butlletí.","{{trialDays}} days free":"{{trialDays}} dies de franc","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"S'ha enviat un enllaç d'inici de sessió al teu correu electrònic. Si no t'arriba en 3 minuts, reivsa la teva carpeta de correu brossa.",Account:"Compte","Account settings":"Configuració del compte","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Després que finalitzi el període de prova gratuït, se't cobrarà el preu regular del nivell que hagis triat. Sempre pots cancel·lar abans d'això.","Already a member?":"Ja ets membre?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"Un error inesperat ha passat. Si us plau, torneu a provar o <a>contacti amb suport tècnic</a> si l'error persisteix.",Back:"Tornar enrere","Back to Log in":"Tornar al inici de sessió","Billing info":"Dades de facturació","Black Friday":"Divendres negre","Cancel anytime.":"Cancel·la en qualsevol moment.","Cancel subscription":"Cancel·la la subscripció","Cancellation reason":"Motiu de la cancel·lació",Change:"Canvia","Check spam & promotions folders":"Comproveu les carpetes de correu brossa i promocions","Check with your mail provider":"Consulteu amb el vostre proveïdor de correu",Choose:"Tria","Choose a different plan":"Seleccioneu un pla diferent","Choose your newsletters":"Selecciona els teus butlletins","Click here to retry":"Fes clic aquí per tornar a intentar",Close:"Tancar",Comments:"Comentaris",Complimentary:"Complementari",Confirm:"Confirmar","Confirm cancellation":"Confirmar cancel·lació","Confirm subscription":"Confirmar subscripció","Contact support":"Contactar amb suport tècnic",Continue:"Continuar","Continue subscription":"Continuar subscripció","Could not sign in. Login link expired.":"No s'ha pogut iniciar sessió. L'enllaç d'inici de sessió ha expirat.","Could not update email! Invalid link.":"No s'ha pogut actualitzar el correu electrònic! Enllaç no vàlid.","Create a new contact":"Crear un nou contacte","Current plan":"Pla actual","Delete account":"Esborra compte","Didn't mean to do this? Manage your preferences <button>here</button>.":"No volia fer això? Gestioneu les vostres preferències <button>aquí</button>.","Don't have an account?":"No tens un compte?",Edit:"Editar",Email:"Correu electrònic","Email newsletter":"Butlletí informatiu per correu electrònic","Email preference updated.":"Preferència del correu electrònic actualitzada","Email preferences":"Preferència del correu electrònic",Emails:"Correus electrònics","Emails disabled":"Correus electrònics desactivats","Ends {{offerEndDate}}":"Finalitza el {{offerEndDate}}",Error:"Error","Expires {{expiryDate}}":"Expira el {{expiryDate}}",Forever:"per sempre","Free Trial – Ends {{trialEnd}}":"Prova gratuita - Finalitza el {{trialEnd}}","Get help":"Demanar ajuda","Get in touch for help":"Poseu-vos en contacte per obtenir ajuda","Get notified when someone replies to your comment":"Rep notificacions quan algú et respongui al teu comentari","Give feedback on this post":"Enviar comentaris sobre aquesta publicació","Help! I'm not receiving emails":"Ajuda! No rebo correus electrònics","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"Si un butlletí es marca com a correu brossa, els correus electrònics es desactivaran automàticament per a aquesta adreça per assegurar-vos que ja no rebeu cap missatge no desitjat.","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"Si la queixa de correu brossa va ser accidental, o si voleu començar a rebre correus electrònics de nou, podeu tornar a subscriure's als correus electrònics fent clic al botó de la pantalla anterior.","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"Si cancel·leu la vostra subscripció ara, continuareu tenint accés fins al {{periodEnd}}.","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"Si teniu un compte de correu electrònic corporatiu o governamental, poseu-vos en contacte amb el vostre departament de TI i demaneu-los que permetin rebre correus electrònics de {{senderEmail}}","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"Si voleu començar a rebre correus electrònics de nou, els millors passos següents són comprovar si hi ha cap problema a la vostra adreça de correu electrònic al fitxer i, a continuació, feu clic a tornar a subscriure's a la pantalla anterior.","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"Si no rebeu el butlletí electrònic al qual us heu subscrit, aquí teniu algunes coses per comprovar.","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"Si heu completat totes aquestes comprovacions i encara no rebeu correus electrònics, podeu contactar amb {{supportAddress}} per obtenir assistència.","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"En cas que es rebi un error permanent en intentar enviar un butlletí, els correus electrònics es desactivaran al compte.","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"Afegiu {{senderEmail}} al vostre client de correu electrònic a la vostra llista de contactes. Això indica al vostre proveïdor de correu que els correus electrònics enviats des d'aquesta adreça haurien de ser de confiança.","Less like this":"Menys com aquesta",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':`Assegureu-vos que els correus electrònics no acabin accidentalment a les carpetes Correu brossa o Promocions de la vostra safata d'entrada. Si ho són, feu clic a "Marca com a correu brossa" i/o a "Mou a la safata d'entrada".`,Manage:"Gestionar",Monthly:"Mensual","More like this":"Més com aquesta",Name:"Nom","Need more help? Contact support":"Necessites més ajuda? Contacte de suport","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"Els butlletins de notícies es poden desactivar al vostre compte per dos motius: un correu electrònic anterior s'ha marcat com a correu brossa o si s'ha intentat enviar un correu electrònic ha provocat un error permanent (rebot).","Not receiving emails?":"No reps els correus electrònics?","Now check your email!":"Revisar ara el teu correu electrònic!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":`Un cop us torneu a subscriure, si encara no veieu correus electrònics a la vostra safata d'entrada, comproveu la vostra carpeta de correu brossa. Alguns proveïdors de safates d'entrada mantenen un registre de les queixes de correu brossa anteriors i continuaran marcant els correus electrònics. Si això passa, marqueu el darrer butlletí com a "No és correu brossa". ' per tornar-lo a moure a la safata d'entrada principal.`,"Permanent failure (bounce)":"Falla permanent (rebot)",Plan:"Pla","Plan checkout was cancelled.":"S'ha cancel·lat el pagament del pla.","Plan upgrade was cancelled.":"S'ha cancel·lat l'actualització del pla.","Please fill in required fields":"Si us plau, ompliu els camps obligatoris",Price:"Preu","Re-enable emails":"Torna a activar els correus electrònics","Renews at {{price}}.":"Es renova a {{price}}",Retry:"Torna-ho a provar",Save:"Desa","Send an email and say hi!":"Envia un correu electrònic i saluda!","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"Envieu un correu electrònic a {{senderEmail}} i saludeu. Això també pot ajudar a indicar al vostre proveïdor de correu que els correus electrònics d'anada i des d'aquesta adreça haurien de ser de confiança.","Sending login link...":"Enviant enllaç d'inici de sessió...","Sending...":"Enviant","Sign in":"Inici de sessió","Sign out":"Finalitza la sessió","Sign up":"Registrar-se","Signup error: Invalid link":"Error de registre: Enllaç no vàlid","Sorry, that didn’t work.":"Em sap greu, pero no ha funcionat.","Spam complaints":"Queixes de correu brossa","Start {{amount}}-day free trial":"Comença el període de proves de {{amount}} dies","Starting {{startDate}}":"A partir de {{startDate}}","Starting today":"Comença avui","Submit feedback":"Enviar comentaris",Subscribe:"Subscriu-te",Subscribed:"Subscrit",Success:"Amb èxit","Success! Check your email for magic link to sign-in.":"Amb èxit! Comproveu el vostre correu electrònic per trobar l'enllaç màgic per iniciar la sessió.","Success! Your account is fully activated, you now have access to all content.":"Amb èxit! El vostre compte està totalment activat, ara teniu accés a tot el contingut.","Success! Your email is updated.":"Amb èxit! El teu correu electrònic està actualitzat.","Successfully unsubscribed":"T'has donat de baixa correctament","Thanks for the feedback!":"Gràcies pels teus comentaris!","That didn't go to plan":"Això no ha anat com estava previst","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"'adreça electrònica que tenim per a vostè és {{memberEmail}}; si no és correcta, podeu actualitzar-la a l'<button>àrea de configuració del vostre compte</button>.","There was a problem submitting your feedback. Please try again a little later.":"Hi ha hagut un problema en enviar els vostres comentaris. Torneu-ho a provar una mica més tard.","This site is invite-only, contact the owner for access.":"Aquest llog és només per invitació, contacta amb el propietari per obtenir accés.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Per completar el registre, fes clic sobre l'enllaç de confirmació al teu correu electrònic. Si no t'arria en 3 minuts, revisa la teva carpeta de correu brossa!","Try free for {{amount}} days, then {{originalPrice}}.":"Prova gratis durant {{amount}} dies i després {{originalPrice}}.","Unlock access to all newsletters by becoming a paid subscriber.":"Desbloqueja l'accés a tots els butlletins de notícies fent-te un subscriptor de pagament.","Unsubscribe from all emails":"Cancel·la les subscripcions a tots els correus electrònics",Unsubscribed:"S'ha cancel·lat la subscripció","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Cancel·lar la subscripció al teu correu electrònic no cancel·larà la teva subscripció de pagament a {{title}}",Update:"Actualitza","Update your preferences":"Actualitza les preferències","Verify your email address is correct":"Verifica que la teva adreça de correu electrònic és correcta","View plans":"Mostrar plans","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"No hem pogut cancel·lar la teva subscripció ja que no s'ha trobar la direcció de correu electrònic. Si us plau, contacta amb el propietari del lloc web.","Welcome back, {{name}}!":"Benvingut/da de nou, {{name}}!","Welcome back!":"Benvingut/da de noi!","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"Quan una safata d'entrada no accepta un correu electrònic s'anomena habitualment un rebot. En molts casos, això pot ser temporal. Tanmateix, en alguns casos, un correu electrònic rebutjat es pot retornar com a error permanent quan una adreça de correu electrònic no és vàlida o no és vàlida. existent.","Why has my email been disabled?":"Per què s'ha desactivat el meu correu electrònic?",Yearly:"Anual","You currently have a free membership, upgrade to a paid subscription for full access.":"Actualment teniu una subscripció gratuïta, actualitzeu a una subscripció de pagament per accedir-hi.","You have been successfully resubscribed":"T'has tornat a subscribir amb èxit","You're currently not receiving emails":"Actualment no rebeu correus electrònics","You're not receiving emails":"No estàs rebent correus electrònics","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"No estas reben correus electrònics perquè has marcat recentment com SPAM o perque no s'han pogut entregar els missatges a la direcció de correu electrònic proporcionada.","You've successfully signed in.":"Heu iniciat la sessió correctament.","Your account":"El teu copte","Your input helps shape what gets published.":"La teva opinió ajuda a definir el que es publica.","Your subscription will expire on {{expiryDate}}":"La vostra subscripció caducarà el {{expiryDate}}","Your subscription will renew on {{renewalDate}}":"La vostra subscripció es renovarà el {{renewalDate}}","Your subscription will start on {{subscriptionStart}}":"La vostra subscripció començarà el {{subscriptionStart}}"},PS={"{{amount}} days free":"","{{amount}} off":"","{{amount}} off for first {{number}} months.":"","{{amount}} off for first {{period}}.":"","{{amount}} off forever.":"","{{discount}}% discount":"{{discount}}% sleva","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"{{trialDays}} dní zdarma","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Odkaz pro přihlášení byl odeslán do vaší e-mailové schránky. Pokud nepřijde do 3 minut, zkontrolujte prosím svou složku nevyžádaných zpráv (spam).",Account:"Účet","Account settings":"Nastavení účtu","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Po skončení zkušební doby vám bude účtována běžná cena pro vybranou úroveň. Vždy můžete předtím zrušit odběr.","Already a member?":"Již jste členem?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"Zpět","Back to Log in":"Zpět na přihlášení","Billing info":"","Black Friday":"","Cancel anytime.":"","Cancel subscription":"Zrušit odběr","Cancellation reason":"Důvod zrušení",Change:"","Check spam & promotions folders":"","Check with your mail provider":"",Choose:"","Choose a different plan":"Vybrat jiný plán","Choose your newsletters":"Vyberte si newsletter","Click here to retry":"",Close:"Zavřít",Comments:"Komentáře",Complimentary:"",Confirm:"Potvrdit","Confirm cancellation":"","Confirm subscription":"","Contact support":"",Continue:"Pokračovat","Continue subscription":"","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"","Delete account":"Smazat účet","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"Nemáte účet?",Edit:"",Email:"E-mail","Email newsletter":"","Email preference updated.":"Předvolby e-mailu byly aktualizovány.","Email preferences":"Předvolby e-mailu",Emails:"E-maily","Emails disabled":"E-maily vypnuty","Ends {{offerEndDate}}":"",Error:"","Expires {{expiryDate}}":"",Forever:"","Free Trial – Ends {{trialEnd}}":"","Get help":"Získat pomoc","Get in touch for help":"","Get notified when someone replies to your comment":"Dostávat upozornění, když někdo odpoví na váš komentář","Give feedback on this post":"Dát zpětnou vazbu k tomuto příspěvku","Help! I'm not receiving emails":"","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"Méně podobných",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"Spravovat",Monthly:"Měsíčně","More like this":"Víc podobných",Name:"Jméno","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"Nepřicházejí vám e-maily?","Now check your email!":"Zkontrolujte svou e-mailovou schránku!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"Cena","Re-enable emails":"Znovu povolit e-maily","Renews at {{price}}.":"",Retry:"Zkusit znovu",Save:"Uložit","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"Odesílání přihlašovacího odkazu...","Sending...":"Odesílání...","Sign in":"Přihlásit se","Sign out":"","Sign up":"Registrovat se","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"Začít {{amount}}denní zkušební verzi zdarma","Starting {{startDate}}":"","Starting today":"","Submit feedback":"Odeslat zpětnou vazbu",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"Úspěšné odhlášení","Thanks for the feedback!":"Děkujeme za zpětnou vazbu!","That didn't go to plan":"Něco se nepovedlo","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"Tento web je pouze pro pozvané, kontaktujte provozovatele pro přístup.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Pro dokončení registrace klikněte na potvrzovací odkaz ve vaší e-mailové schránce. Pokud nepřijde do 3 minut, zkontrolujte prosím složku nevyžádaných zpráv (spam)!","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"Odhlásit se od všech e-mailů",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Odhlášení ze newsletterů nezruší váš placený odběr {{title}}",Update:"","Update your preferences":"Aktualizovat předvolby","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Nemohli jsme vás odhlásit, protože e-mailová adresa nebyla nalezena. Kontaktujte prosím provozovatele webu.","Welcome back, {{name}}!":"","Welcome back!":"","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"Ročně","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"Úspěšně jste se opět přihlásili k odběru","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Nepřicházejí vám e-maily, protože jste buď označili nedávnou zprávu jako spam, nebo doručování zpráv na vámi zadaný e-mail nefunguje.","You've successfully signed in.":"","Your account":"Váš účet","Your input helps shape what gets published.":"Vaše připomínky pomáhají spoluvytvářet obsah webu.","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},NS={"{{amount}} days free":"{{amount}} dage gratis","{{amount}} off":"{{amount}} rabat","{{amount}} off for first {{number}} months.":"{{amount}} rabat for de første {{number}} måneder.","{{amount}} off for first {{period}}.":"{{amount}} rabat for den/det første {{period}}.","{{amount}} off forever.":"{{amount}} rabat for evigt","{{discount}}% discount":"{{discount}}% rabat","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"{{memberEmail}} vil ikke længere modtage {{newsletterName}} nyhedsbrev.","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"{{memberEmail}} vil ikke længere modtage e-mails når nogen svarer på dine kommentarer.","{{memberEmail}} will no longer receive this newsletter.":"{{memberEmail}} vil ikke længere modtage dette nyhedsbrev.","{{trialDays}} days free":"{{trialDays}} dage gratis","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Der er blevet sendt en link til din email, du kan bruge til at logge ind med. Hvis det ikke kommer frem indenfor 3 minutter, så tjek din spam mappe.",Account:"Konto","Account settings":"Kontoindstillinger","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Når din gratis prøveperiode udløber, vil du blive opkrævet den normale pris for det abonnement du har valgt. Du kan selvfølgelig altid annullere dit abonnement inden.","Already a member?":"Er du allerede medlem?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"Der opstod en uventet fejl. Prøv venligst igen eller <a>kontakt support</a> hvis fejlen fortsætter.",Back:"Tilbage","Back to Log in":"Tilbage til log ind","Billing info":"Faktureringsoplysninger","Black Friday":"Black Friday","Cancel anytime.":"Annuller når som helst.","Cancel subscription":"Annuller abonnement","Cancellation reason":"Årsag til annullering",Change:"Skift","Check spam & promotions folders":"Tjek spam og kampagner mapper","Check with your mail provider":"Tjek med din e-mailudbyder",Choose:"Vælg","Choose a different plan":"Vælg et andet abonnement","Choose your newsletters":"Hvilke nyhedsbreve ønsker du","Click here to retry":"Klik her for at prøve igen",Close:"Luk",Comments:"Kommentarer",Complimentary:"Gratis",Confirm:"Bekræft","Confirm cancellation":"Bekræft annullering","Confirm subscription":"Bekræft abonnement","Contact support":"Kontakt support",Continue:"Fortsæt","Continue subscription":"Fortsæt tilmelding","Could not sign in. Login link expired.":"Kunne ikke log ind. Log ind link udløbet.","Could not update email! Invalid link.":"Kunne ikke opdatere e-mail! Ugyldigt link.","Create a new contact":"Opret ny kontakt","Current plan":"Nuværende abonnement","Delete account":"Slet konto","Didn't mean to do this? Manage your preferences <button>here</button>.":"Var det ikke dette du ønskede at gøre? Administrer dine præferencer <button>her</button>.","Don't have an account?":"Har du ikke en konto?",Edit:"Rediger",Email:"E-mail","Email newsletter":"E-mail nyhedsbrev","Email preference updated.":"E-mail præferencer blev opdateret.","Email preferences":"E-mail præferencer",Emails:"E-mails","Emails disabled":"E-mails deaktiveret","Ends {{offerEndDate}}":"Udløber {{offerEndDate}}",Error:"Fejl","Expires {{expiryDate}}":"Udløber {{expiryDate}}",Forever:"For evigt","Free Trial – Ends {{trialEnd}}":"Gratis prøveperiode - Udløber {{trialEnd}}","Get help":"Få hjælp","Get in touch for help":"Tag kontakt for at få hjælp","Get notified when someone replies to your comment":"Bliv notificeret når nogen svarer på din kommentar","Give feedback on this post":"Giv feedback til dette indlæg","Help! I'm not receiving emails":"Hjælp! Jeg modtager ikke e-mails","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"Hvis et nyhedsbrev er markeret som spam, deaktiveres e-mails automatisk for den adresse så du ikke længere modtage uønskede beskeder.","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"Hvis spamklagen var utilsigtet, eller du gerne vil begynde at modtage e-mails igen, kan du abonnere igen på e-mails ved at klikke på knappen på det forrige skærmbillede.","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"Hvis du annullere dit abonnement nu, vil du fortsat have adgang indtil {{periodEnd}}.","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"Hvis du har en virksomheds- eller statslig e-mailkonto, skal du kontakte din it-afdeling og bede dem om at tillade, at e-mails modtages fra {{senderEmail}}","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"Hvis du gerne vil begynde at modtage e-mails igen, er de bedste næste trin at tjekke din registreret e-mailadresse for eventuelle problemer og derefter klikke på gentilmeld på den forrige skærmbillede.","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"Hvis du ikke modtager det e-mailnyhedsbrev, du har tilmeldt dig, er der et par ting, du skal tjekke.","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"Hvis du har gennemført alle disse checks, og du stadig ikke modtager e-mails, kan du kontakte {{supportAddress}} for at få hjælp.","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"I tilfælde af, at der modtages en permanent fejl ved forsøg på at sende et nyhedsbrev, vil e-mails blive deaktiveret på kontoen.","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"Tilføj {{senderEmail}} til din kontaktliste i din e-mailklient. Dette signalerer til din e-mailudbyder, at e-mails sendt fra denne adresse skal være tillid til.","Less like this":"Mindre af dette",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':'Sørg for, at e-mails ikke ender i Spam eller Kampagner mapper i din indbakke. Hvis de gør, skal du klikke på "Markér som ikke spam" og/eller "Flyt til indbakke".',Manage:"Administrer",Monthly:"Månedlig","More like this":"Mere af dette",Name:"Navn","Need more help? Contact support":"Brug for hjælp? Kontakt support","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"Nyhedsbreve kan deaktiveres på din konto af to årsager: En tidligere e-mail blev markeret som spam, eller forsøg på at sende en e-mail resulterede i en permanent fejl (bounce).","Not receiving emails?":"Modtager du ikke e-mails?","Now check your email!":"Tjek din e-mail!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"Når du har tilmeldt dig igen, hvis du stadig ikke kan se e-mails i din indbakke, skal du tjekke din spam-mappe. Nogle e-mailudbydere registrerer tidligere spam-klager og vil blive ved med at markere e-mails. Hvis dette sker, skal du markere det seneste nyhedsbrev som 'Ikke spam' for at flytte det tilbage til din primære indbakke.","Permanent failure (bounce)":"Permanent fejl (bounce)",Plan:"Abonnement","Plan checkout was cancelled.":"Abonnementsbetaling blev aflyst.","Plan upgrade was cancelled.":"Opgradering af abonnement blev aflyst.","Please fill in required fields":"Udfyld venligst påkrævede felter",Price:"Pris","Re-enable emails":"Genaktiver e-mails","Renews at {{price}}.":"Bliver fornyet til {{price}}.",Retry:"Prøv igen",Save:"Gem","Send an email and say hi!":"Send en e-mail og sig hej!","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"Send en e-mail til {{senderEmail}} og sig hej. Dette kan også hjælpe med at signalere til din e-mailudbyder, at e-mails til og fra denne adresse skal være tillid til.","Sending login link...":"Sender link til log ind","Sending...":"Sender","Sign in":"Log ind","Sign out":"","Sign up":"Bliv medlem","Signup error: Invalid link":"Tilmeldingsfejl: Ugyldigt link","Sorry, that didn’t work.":"Beklager, det virkede ikke.","Spam complaints":"Spam klager","Start {{amount}}-day free trial":"Start {{amount}}-dages gratis prøveperiode","Starting {{startDate}}":"Fra {{startDate}}","Starting today":"Fra i dag","Submit feedback":"Send feedback",Subscribe:"Tilmeld",Subscribed:"Tilmeldt",Success:"Succes","Success! Check your email for magic link to sign-in.":"Sådan! Tjek din indbakke for et magisk link til at logge ind.","Success! Your account is fully activated, you now have access to all content.":"Sådan! Din konto er fuldt aktiveret, du har nu adgang til alt indhold.","Success! Your email is updated.":"Sådan! Din e-mail er opdateret.","Successfully unsubscribed":"Du er nu afmeldt","Thanks for the feedback!":"Tak for din feedback!","That didn't go to plan":"Det gik ikke helt efter planen","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"Den e-mailadresse, vi har på dig, er {{memberEmail}} – hvis det ikke er korrekt, kan du opdatere den i dit <button>kontoindstillingsområde</button>.","There was a problem submitting your feedback. Please try again a little later.":"Der opstod et problem med at sende din feedback. Prøv venligst igen lidt senere.","This site is invite-only, contact the owner for access.":"Denne sider kræver at du skal være inviteret. Kontakt ejeres for at få adgang.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"For at gennemføre oprettelsen af din konto, skal du klikke på bekræftelseslinket i din e-mail indbakke. Hvis det ikke kommer indenfor 3 minutter, så tjek venligst din spam mappe!","Try free for {{amount}} days, then {{originalPrice}}.":"Prøv gratis i {{amount}} dage, derefter {{original Price}}.","Unlock access to all newsletters by becoming a paid subscriber.":"Lås op for adgang til alle nyhedsbreve ved at blive en betalingsabonnent.","Unsubscribe from all emails":"Afmeld alle e-mails",Unsubscribed:"Afmeldt","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Du annullerer ikke dit abonnement på {{title}} ved at afmelde dig fra alle e-mails",Update:"Opdater","Update your preferences":"Opdater dine præferencer","Verify your email address is correct":"Tjek om din e-mailadresse er korrekt","View plans":"Se abonnementer","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Vi kunne ikke afmelde dig, da e-mailen ikke blev fundet. Kontakt venligst ejeren af siden.","Welcome back, {{name}}!":"Velkommen tilbage, {{name}}!","Welcome back!":"Velkommen tilbage!","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"Når en indbakke ikke accepterer en e-mail, kaldes det almindeligvis en bounce. I mange tilfælde kan dette være midlertidigt. Men i nogle tilfælde kan en afvist e-mail returneres som en permanent fejl, når en e-mailadresse er ugyldig eller ikke eksisterer.","Why has my email been disabled?":"Hvorfor er min e-mail blevet deaktiveret?",Yearly:"Årlig","You currently have a free membership, upgrade to a paid subscription for full access.":"Du har i øjeblikket et gratis medlemskab, opgrader til et betalt abonnement for fuld adgang.","You have been successfully resubscribed":"Du er nu tilmeldt igen","You're currently not receiving emails":"Du modtager ikke e-mails i øjeblikket","You're not receiving emails":"Du modtager ikke e-mails","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Du modtager ikke e-mails fordi du enten har markeret en af de seneste mails som spam, eller fordi e-mails ikke kunne leveres til den oplyste e-mailadresse.","You've successfully signed in.":"Du er logget ind.","Your account":"Din konto","Your input helps shape what gets published.":"Dit input hjælper med at forme det der bliver publiceret.","Your subscription will expire on {{expiryDate}}":"Dit abonnement udløber {{expiryDate}}","Your subscription will renew on {{renewalDate}}":"Dit abonnement fornyes {{renewalDate}}","Your subscription will start on {{subscriptionStart}}":"Dit abonnement starter {{subscriptionStart}}"},TS={"{{amount}} days free":"","{{amount}} off":"","{{amount}} off for first {{number}} months.":"","{{amount}} off for first {{period}}.":"","{{amount}} off forever.":"","{{discount}}% discount":"{{discount}}% Rabatt","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"{{trialDays}} Tage kostenlos","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Ein Login-Link wurde an Deine E-Mail-Adresse gesendet. Falls die E-Mail nicht innerhalb von 3 Minuten ankommt, überprüfe bitte Deinen Spam-Ordner.",Account:"Benutzerkonto","Account settings":"Benutzerkonto-Einstellungen","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Wenn das kostenlose Testabo endet, wirst Du den regulären Preis für den gewählten Tarif bezahlen. Du kannst das Abonnement jederzeit kündigen.","Already a member?":"Bereits Mitglied?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"Zurück","Back to Log in":"Zurück zur Anmeldung","Billing info":"","Black Friday":"","Cancel anytime.":"","Cancel subscription":"Abonnierung kündigen","Cancellation reason":"Kündigungsgrund",Change:"","Check spam & promotions folders":"","Check with your mail provider":"",Choose:"","Choose a different plan":"Wähle einen anderen Plan","Choose your newsletters":"Wähle Deine Newsletter","Click here to retry":"",Close:"Schließen",Comments:"Kommentare",Complimentary:"",Confirm:"Bestätigen","Confirm cancellation":"","Confirm subscription":"","Contact support":"",Continue:"Weiter","Continue subscription":"","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"","Delete account":"Konto löschen","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"Noch kein Konto?",Edit:"",Email:"Email","Email newsletter":"","Email preference updated.":"Email Einstellungen aktualisiert.","Email preferences":"Email Einstellungen",Emails:"Emails","Emails disabled":"Emails deaktiviert","Ends {{offerEndDate}}":"",Error:"","Expires {{expiryDate}}":"",Forever:"","Free Trial – Ends {{trialEnd}}":"","Get help":"Hilfe erhalten","Get in touch for help":"","Get notified when someone replies to your comment":"Erhalte eine Benachrichtigung, wenn jemand auf Deinen Kommentar antwortet","Give feedback on this post":"Gebe Feedback zu diesem Beitrag","Help! I'm not receiving emails":"","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"Weniger davon",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"Verwalten",Monthly:"Monatlich","More like this":"Mehr davon",Name:"Name","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"Keine Emails erhalten?","Now check your email!":"Überprüfe jetzt Deine E-Mails!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"Preis","Re-enable emails":"Emails wieder aktivieren","Renews at {{price}}.":"",Retry:"Nochmals versuchen",Save:"Speichern","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"Sende Login-Link...","Sending...":"Sende...","Sign in":"Einloggen","Sign out":"","Sign up":"Registrieren","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"Starte {{amount}}-tägiges kostenloses Testabo","Starting {{startDate}}":"","Starting today":"","Submit feedback":"Feedback senden",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"Erfolgreich abgemeldet","Thanks for the feedback!":"Danke für das Feedback!","That didn't go to plan":"Das verlief nicht nach Plan","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"Diese Seite ist nur nach Einladung zugänglich. Bitte kontaktiere den Seitenbetreiber.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Um die Registrierung abzuschließen, klicke auf den Bestätigungslink in Deinem E-Mail Postfach. Falls die E-Mail nicht innerhalb von 3 Minuten ankommt, überprüfe bitte Deinen Spam-Ordner!","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"Von allen Emails abmelden",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Wenn Du Dich von Emails abmeldest, wird Dein bezahltes Abonnement bei {{title}} nicht gekündigt",Update:"","Update your preferences":"Aktualisiere Deine Einstellungen","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Wir konnten Dich nicht abmelden, da die E-Mail-Adresse nicht gefunden wurde. Bitte kontaktiere den Seitenbetreiber.","Welcome back, {{name}}!":"","Welcome back!":"","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"Jährlich","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"Du wurdest erfolgreich wieder angemeldet","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Du erhältst keine Emails, da Du entweder eine kürzlich empfangene Nachricht als Spam markiert hast oder weil Nachrichten nicht an Deine angegebene E-Mail-Adresse zugestellt werden konnten.","You've successfully signed in.":"","Your account":"Dein Konto","Your input helps shape what gets published.":"Deine Eingaben helfen dabei, was veröffentlicht wird.","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},IS={"{{amount}} days free":"","{{amount}} off":"","{{amount}} off for first {{number}} months.":"","{{amount}} off for first {{period}}.":"","{{amount}} off forever.":"","{{discount}}% discount":"","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"",Account:"","Account settings":"","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"","Already a member?":"","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"","Back to Log in":"","Billing info":"","Black Friday":"","Cancel anytime.":"","Cancel subscription":"","Cancellation reason":"",Change:"","Check spam & promotions folders":"","Check with your mail provider":"",Choose:"","Choose a different plan":"","Choose your newsletters":"","Click here to retry":"",Close:"",Comments:"",Complimentary:"",Confirm:"","Confirm cancellation":"","Confirm subscription":"","Contact support":"",Continue:"","Continue subscription":"","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"","Delete account":"","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"",Edit:"",Email:"","Email newsletter":"","Email preference updated.":"","Email preferences":"",Emails:"","Emails disabled":"","Ends {{offerEndDate}}":"",Error:"","Expires {{expiryDate}}":"",Forever:"","Free Trial – Ends {{trialEnd}}":"","Get help":"","Get in touch for help":"","Get notified when someone replies to your comment":"","Give feedback on this post":"","Help! I'm not receiving emails":"","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"",Monthly:"","More like this":"",Name:"","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"","Now check your email!":"","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"","Re-enable emails":"","Renews at {{price}}.":"",Retry:"",Save:"","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"","Sending...":"","Sign in":"","Sign out":"","Sign up":"","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"","Starting {{startDate}}":"","Starting today":"","Submit feedback":"",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"","Thanks for the feedback!":"","That didn't go to plan":"","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"",Update:"","Update your preferences":"","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"","Welcome back, {{name}}!":"","Welcome back!":"","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"","You've successfully signed in.":"","Your account":"","Your input helps shape what gets published.":"","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},DS={"{{amount}} days free":"","{{amount}} off":"","{{amount}} off for first {{number}} months.":"","{{amount}} off for first {{period}}.":"","{{amount}} off forever.":"","{{discount}}% discount":"{{discount}}% rabato","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"{{trialDays}} tagoj senpagaj","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Sendis ensalutan ligilon al via enirkesto. Se ĝi ne alvenas post 3 minutoj, nepre kontrolu vian trudmesaĝdosieron.",Account:"Konto","Account settings":"Kontagordoj","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Post senpaga provo finiĝos, vi pagos la regulan prezon por la nivelo, kiun vi elektis. Vi ĉiam povas nuligi antaŭ tiam.","Already a member?":"Ĉu membro jam?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"Reen","Back to Log in":"Reen al Ensaluto","Billing info":"","Black Friday":"","Cancel anytime.":"","Cancel subscription":"Nuligu abonon","Cancellation reason":"Nuliga kialo",Change:"","Check spam & promotions folders":"","Check with your mail provider":"",Choose:"","Choose a different plan":"Elektu alian planon","Choose your newsletters":"Elektu viajn bultenojn","Click here to retry":"",Close:"Fermu",Comments:"Komentoj",Complimentary:"",Confirm:"Konfirmu","Confirm cancellation":"","Confirm subscription":"","Contact support":"",Continue:"Daŭrigu","Continue subscription":"","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"","Delete account":"Forigu konton","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"Ĉu ne havas konton?",Edit:"",Email:"Retadreso","Email newsletter":"","Email preference updated.":"Retpoŝta agordo ĝisdatigita.","Email preferences":"Retpoŝtaj agordoj",Emails:"Retpoŝtoj","Emails disabled":"Retpoŝtoj malŝaltitaj","Ends {{offerEndDate}}":"",Error:"","Expires {{expiryDate}}":"",Forever:"","Free Trial – Ends {{trialEnd}}":"","Get help":"Ricevi helpon","Get in touch for help":"","Get notified when someone replies to your comment":"Estu sciiga kiam iu respondos al via komento","Give feedback on this post":"Donu komentojn pri ĉi tiu afiŝo","Help! I'm not receiving emails":"","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"Malpli tiel",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"Administru",Monthly:"Monate","More like this":"Pli kiel ĉi tio",Name:"Nomo","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"","Now check your email!":"Bonvolu kontroli vian retpoŝton nun!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"Kosto","Re-enable emails":"Reŝalti retpoŝtojn","Renews at {{price}}.":"",Retry:"Reprovu",Save:"Konservi","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"Sendanta ensaluta ligilo...","Sending...":"Sendante...","Sign in":"Ensalutu","Sign out":"","Sign up":"Aliĝu","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"Komencu senpaga {{amount}}-taga provo","Starting {{startDate}}":"","Starting today":"","Submit feedback":"Sendu rimarkojn",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"Sukcese malabonita","Thanks for the feedback!":"Dankon pro la rimarkoj!","That didn't go to plan":"Tio ne iris laŭ la intenco","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"Ĉi tiu retejo estas nur por invitiĝuloj, kontaktu la proprietulo por alireblo.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Por kompletigi aliĝon, premu la konfirman ligilon en via enirkesto. Se ĝi ne alvenas ene de 3 minutoj, kontrolu vian trudmesaĝdosieron!","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"Malabonu de ĉiuj retpoŝtoj",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Malabonigi de retpoŝtoj ne nuligos vian pagitan abonon al {{title}}",Update:"","Update your preferences":"Ĝisdatigu viajn agordojn","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Ni ne povis malaboni vin ĉar la retadreso ne estis trovita. Bonvolu kontakti la proprietulo de la retejo","Welcome back, {{name}}!":"","Welcome back!":"","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"Jare","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"Vi sukcese reaboniĝis","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Vi ne ricevas retpoŝtojn ĉar vi aŭ markis lastatempan mesaĝon kiel trudmesaĝo, aŭ ĉar mesaĝoj ne povis liveri al via provizita retadreso.","You've successfully signed in.":"","Your account":"Via konto","Your input helps shape what gets published.":"Via enigo helpas formi kio estas aperigita.","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},AS={"{{amount}} days free":"{{amount}} días gratis","{{amount}} off":"{{amount}} de descuento","{{amount}} off for first {{number}} months.":"{{amount}} de descuento por los primeros {{number}} meses.","{{amount}} off for first {{period}}.":"{{amount}} de descuento por los primeros {{period}}.","{{amount}} off forever.":"{{amount}} de descuento para siempre.","{{discount}}% discount":"{{discount}}% de descuento","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"{{memberEmail}} ya no va a recibir boletines de {{newsletterName}}.","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"{{memberEmail}} ya no va a recibir correos electrónicos cuando alguien responde a sus comentarios.","{{memberEmail}} will no longer receive this newsletter.":"{{memberEmail}} ya no va a recibir este bolentin.","{{trialDays}} days free":"{{trialDays}} días gratis","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Se ha enviado un enlace de inicio de sesión a tu correo. Si no llega en 3 minutos, revisa tu carpeta de spam.",Account:"Cuenta","Account settings":"Configuración de la cuenta","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Después de que finalice el período de prueba gratuito, se te cobrará el precio regular del nivel que hayas elegido. Siempre puedes cancelar antes de eso.","Already a member?":"¿Ya eres miembro?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"Un error inesperado ha ocurrido. Por favor intente de nuevo o <a>contacte soporte técnico</a> si el error persiste.",Back:"Atrás","Back to Log in":"Volver al inicio de sesión","Billing info":"Informacion de pago","Black Friday":"Viernes negro","Cancel anytime.":"Cancelacion en cualquier momento.","Cancel subscription":"Cancelar suscripción","Cancellation reason":"Razón de cancelación",Change:"Cambiar","Check spam & promotions folders":"Compruebe la carpeta de correo basura y promociones","Check with your mail provider":"Compruebe con su proveedor de correo",Choose:"elija","Choose a different plan":"Elige un plan diferente","Choose your newsletters":"Elige tus boletines","Click here to retry":"Haga click aqui para reintentar",Close:"Cerrar",Comments:"Comentarios",Complimentary:"Complementario",Confirm:"Confirmar","Confirm cancellation":"Confirmar cancelación","Confirm subscription":"Confirmar suscripción","Contact support":"Contacte soporte técnico",Continue:"Continuar","Continue subscription":"Continuar suscripción","Could not sign in. Login link expired.":"No se pudo iniciar sesion. El enlace de inicio ha expirado.","Could not update email! Invalid link.":"No se pudo actualizar el email! Enlace inválido.","Create a new contact":"Crea un nuevo contacto","Current plan":"Plan actual","Delete account":"Eliminar cuenta","Didn't mean to do this? Manage your preferences <button>here</button>.":"¿No quisiste hacer esto? Puedes gestionar tus preferencias <button>acá</button>.","Don't have an account?":"¿No tienes una cuenta?",Edit:"Editar",Email:"Correo electrónico","Email newsletter":"Boletín informativo por correo electrónico","Email preference updated.":"Preferencia de correo electrónico actualizada.","Email preferences":"Preferencias de correo electrónico",Emails:"Correos electrónicos","Emails disabled":"Correos electrónicos desactivados","Ends {{offerEndDate}}":"Termina el {{offerEndDate}}",Error:"Error","Expires {{expiryDate}}":"Expira {{expiryDate}}",Forever:"para siempre","Free Trial – Ends {{trialEnd}}":"Prueba gratis - Termina el {{trialEnd}}","Get help":"Obtener ayuda","Get in touch for help":"Póngase en contacto para obtener ayuda","Get notified when someone replies to your comment":"Recibe notificaciones cuando alguien responda a tu comentario","Give feedback on this post":"Envía comentarios sobre esta publicación","Help! I'm not receiving emails":"¡Ayuda! No estoy recibiendo correos electronicos","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"Si un correo es marcado como spam, los correos electrónicos son automáticamente deshabilitados para esa dirección de correo para asegurarse que usted no reciba ningún correo indeseado.","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"Si la denuncia de spam fue accidental, o si quiere recibir los correos electrónicos de nuevo, puede volver a suscribirse a los correos haciendo click en el botón de la pantalla anterior.","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"Si cancela su suscripción ahora, continuara con acceso hasta el {{periodEnd}}.","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"Si usted tiene un correo electrónico de una corporación o del gobierno, puede contactarse con el departamento de TI y solicitar que se le permita recibir correos de {{senderEmail}}","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"Si no estas recibiendo los boletines informativos a los que se suscribió, estas son algunas cosas que puede revisar.","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"Si ha comprobado todo y aun así no esta recibiendo los correos electrónicos, puede comunicarse con soporte técnico contactando {{supportAddress}}.","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"Menos como esto",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':'Asegúrese de que los correos electrónicos no terminen accidentalmente en las carpetas de correo no deseado o promociones de su bandeja de entrada. Si lo son, haga clic en "Mark as not spam" y/o "Move to inbox".',Manage:"Administrar",Monthly:"Mensual","More like this":"Más como esto",Name:"Nombre","Need more help? Contact support":"Necesitas más ayuda? Contacta la manutención","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"Los boletines se pueden deshabilitar en su cuenta por dos razones: Un correo electrónico anterior se marcó como correo no deseado o el intento de enviar un correo electrónico resultó en una falla permanente (bounce).","Not receiving emails?":"¿No recibes correos electrónicos?","Now check your email!":"¡Ahora revisa tu correo electrónico!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"Una vez que se haya vuelto a suscribir, si aún no ve los correos electrónicos en su bandeja de entrada, verifique su carpeta de correo no deseado. Algunos proveedores de bandejas de entrada mantienen un registro de quejas de spam anteriores y continuarán marcando los correos electrónicos. Si esto sucede, marque el último boletín como 'No es spam' para moverlo nuevamente a su bandeja de entrada principal.","Permanent failure (bounce)":"Falla permanente (bounce)",Plan:"Plan","Plan checkout was cancelled.":"El pago de plan fue cancelado.","Plan upgrade was cancelled.":"La actualización de plan fue cancelado.","Please fill in required fields":"Por favor llene los campos requridos.",Price:"Precio","Re-enable emails":"Reactivar correos electrónicos","Renews at {{price}}.":"Se renueva en {{price}}.",Retry:"Reintentar",Save:"Guardar","Send an email and say hi!":"¡Envía un correo electronico y saluda!","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"¡Envia un correo electronico a {{senderEmail}} y saluda! Esto también puede ayudar a indicarle a su proveedor de correo que se debe confiar en los correos electrónicos hacia y desde esta dirección.","Sending login link...":"Enviando enlace de inicio de sesión...","Sending...":"Enviando...","Sign in":"Iniciar sesión","Sign out":"Terminar sesión","Sign up":"Registrarse","Signup error: Invalid link":"Error de registro: Enlace inválido","Sorry, that didn’t work.":"Lo siento, eso no funcionó.","Spam complaints":"Quejas de spam","Start {{amount}}-day free trial":"Comienza el período de prueba gratuito de {{amount}} días","Starting {{startDate}}":"A partir de {{startDate}}","Starting today":"A partir de hoy","Submit feedback":"Enviar comentarios",Subscribe:"Suscribir",Subscribed:"Suscrito",Success:"Éxito","Success! Check your email for magic link to sign-in.":"¡Éxito! Revise su correo electrónico para ver el enlace mágico para iniciar sesión.","Success! Your account is fully activated, you now have access to all content.":"¡Éxito! Su cuenta está completamente activada, ahora tiene acceso a todo el contenido.","Success! Your email is updated.":"¡Éxito! Su correo electrónico está actualizado.","Successfully unsubscribed":"Te has dado de baja correctamente","Thanks for the feedback!":"¡Gracias por tus comentarios!","That didn't go to plan":"Eso no salió según lo planeado","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"La dirección de correo electrónico que tenemos para usted es {{memberEmail}} - si eso no es correcto, puede actualizarlo en su <button> área de configuracion de la cuenta <button>.","There was a problem submitting your feedback. Please try again a little later.":"Hubo un problema al enviar sus comentarios. Vuelva a intentarlo un poco más tarde.","This site is invite-only, contact the owner for access.":"Este sitio es solo por invitación, contacta al propietario para obtener acceso.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Para completar el registro, haz clic en el enlace de confirmación en tu correo electrónico. Si no llega en 3 minutos, ¡revisa tu carpeta de spam!","Try free for {{amount}} days, then {{originalPrice}}.":"Prueba gratis por {{amount}} dias, luego {{originalPrice}}.","Unlock access to all newsletters by becoming a paid subscriber.":"Desbloquee el acceso a todos los boletines convirtiéndose en un suscriptor pago.","Unsubscribe from all emails":"Cancelar suscripción a todos los correos electrónicos",Unsubscribed:"Dado de baja","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Cancelar la suscripción a los correos electrónicos no cancelará tu suscripción de pago a {{title}}",Update:"Actualizar","Update your preferences":"Actualiza tus preferencias","Verify your email address is correct":"Verifique que su dirección de correo electrónico sea correcta","View plans":"Ver planes","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"No pudimos cancelar tu suscripción ya que no se encontró la dirección de correo electrónico. Por favor, contacta al propietario del sitio.","Welcome back, {{name}}!":"¡Bienvenido de nuevo, {{name}}!","Welcome back!":"¡Bienvenido de nuevo!","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"Cuando una bandeja de entrada no acepta un correo electrónico, comúnmente se le llama rebote. En muchos casos, esto puede ser temporal. Sin embargo, en algunos casos, un correo electrónico rebotado puede devolverse como una falla permanente cuando una dirección de correo electrónico no es válida o no existe.","Why has my email been disabled?":"¿Por qué mi correo electronico ha sido desabilitado.",Yearly:"Anual","You currently have a free membership, upgrade to a paid subscription for full access.":"Usted tiene una membresía gratuita, actualice a una suscripción paga para obtener acceso completo.","You have been successfully resubscribed":"Te has vuelto a suscribir con éxito","You're currently not receiving emails":"Actualmente no estás recibiendo correos electrónicos","You're not receiving emails":"No estás recibiendo correos electrónicos","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"No estás recibiendo correos electrónicos porque marcaste un mensaje reciente como spam o porque no se pudieron entregar los mensajes a la dirección de correo electrónico proporcionada.","You've successfully signed in.":"Has iniciado sesión correctamente.","Your account":"Tu cuenta","Your input helps shape what gets published.":"Tu opinión ayuda a definir lo que se publica.","Your subscription will expire on {{expiryDate}}":"Su suscripción caducará el {{expiryDate}} ","Your subscription will renew on {{renewalDate}}":"Su suscripción se renovará el {{renewalDate}}","Your subscription will start on {{subscriptionStart}}":"Su suscripción comenzará el {{subscriptionStart}}"},MS={"{{amount}} days free":"{{amount}} päivää ilmaiseksi","{{amount}} off":"{{amount}} pois","{{amount}} off for first {{number}} months.":"{{amount}} pois ensimmäisestä {{number}} kuukaudesta","{{amount}} off for first {{period}}.":"{{amount}} pois ensimmäisestä {{period}}","{{amount}} off forever.":"{{amount}} pois ikuisesti","{{discount}}% discount":"{{discount}}% alennus","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"{{memberEmail}} ei enää jatkossa saa {{newsletterName}} uutiskirjettä.","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"{{memberEmail}} ei lähetetä enää jatkossa sähköpostia jos joku vastaa kommenttiisi.","{{memberEmail}} will no longer receive this newsletter.":"{{memberEmail}} ei enää lähetetä tätä uutiskirjettä.","{{trialDays}} days free":"{{trialDays}} päivää ilmaiseksi","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Kirjautumislinkki on lähetetty sähköpostiisi. Jos se ei tule 3 minuutin kuluessa, muista katsoa spam-kansiosi.",Account:"Oma tili","Account settings":"Tilin asetukset","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Kun ilmainen kokeilusi loppuu, sinulta veloitetaan valitsemasi tilauksen kuukausimaksu. Voit aina peruuttaa tilauksesi ennen tätä.","Already a member?":"Oletko jo jäsen?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"Odottamaton virhe syntyi, yritäthän uudestaan tai <a>contact support</a> jos ongelma jatkuu.",Back:"Takaisin","Back to Log in":"Takaisin kirjautumiseen","Billing info":"Maksutiedot","Black Friday":"Black Friday","Cancel anytime.":"Peruuta milloin vain","Cancel subscription":"Peruuta tilaus","Cancellation reason":"Syy peruutukselle",Change:"Vaihda","Check spam & promotions folders":"Katso spam & promotions kansiot","Check with your mail provider":"Tarkista sähköpostitarjoajaltasi",Choose:"Valitse","Choose a different plan":"Valitse toinen tilaus","Choose your newsletters":"Valitse uutiskirjeesi","Click here to retry":"Klikkaa tästä kokeillaksesi uudestaan",Close:"Sulje",Comments:"Kommentit",Complimentary:"Ilmainen",Confirm:"Vahvista","Confirm cancellation":"Vahvista peruutus","Confirm subscription":"Vahvista tilaus","Contact support":"Ota yhteyttä tukeen",Continue:"Jatka","Continue subscription":"Jatka tilaustasi","Could not sign in. Login link expired.":"Kirjautuminen epäonnistui. Kirjautumislinkki on vanhentunut.","Could not update email! Invalid link.":"Sähköpostia ei pystytty päivittämään! Linkki ei toimi.","Create a new contact":"Luo uusi kontakti","Current plan":"Nykyinen tilaus","Delete account":"Poista tilisi","Didn't mean to do this? Manage your preferences <button>here</button>.":"Etkö tarkoittanut tehdä näin? Muokkaa valintojasi <button>here</button>","Don't have an account?":"Eikö sinulla ole tiliä?",Edit:"Muokkaa",Email:"Sähköposti","Email newsletter":"Uutiskirje sähköpostiin","Email preference updated.":"Sähköpostiasetukset päivitetty","Email preferences":"Sähköpostiasetukset",Emails:"Sähköpostit","Emails disabled":"Sähköpostit pois käytöstä","Ends {{offerEndDate}}":"Loppuu {{offerEndDate}}",Error:"Virhe","Expires {{expiryDate}}":"Vanhenee {{expiryDate}}",Forever:"Ikuisesti","Free Trial – Ends {{trialEnd}}":"Ilmainen kokeilu – Loppuu {{trialEnd}}","Get help":"Pyydä apua","Get in touch for help":"Ota yhteyttä saadaksesi apua","Get notified when someone replies to your comment":"Saa viesti kun joku vastaa kommenttiisi","Give feedback on this post":"Anna palautetta tähän postaukseen","Help! I'm not receiving emails":"Apua! En saa sähköposteja","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"Jos uutiskirje on merkitty spammiksi, sähköpostit tähän osoitteeseen on estetty, jotta et enää vastaanota viestejä osoitteeseen","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"Jos spam-valitus oli aiheeton, tai haluaisit saada taas viestejä, voit uudelleen ilmoittautua sähköposteihin painamalla nappia edellisellä sivulla.","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"Jos haluat perua tilauksesi nyt, sinulla on vielä oikeus materiaaliin {{periodEnd}} asti","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"Jos sinulla on yritys- tai valtion sähköposti, pyydä IT-osastoa hyväksymään sähköpostit lähettäjältä {{senderEmail}}","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"Jos haluat saada taas sähköposteja, paras tapa jatkaa on tarkistaa sähköpostiosoitteesi ja sitten klikata uudelleen uutiskirjeeseen osallistumista edellisellä sivulla.","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"Jos et saa uutiskirjettä sähköpostiisi, tässä on muutama asia tarkistettavaksi:","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"Jos et vieläkään saa uutiskirjeitä, ota yhteyttä {{supportAddress}}","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"Jos uutiskirjeen lähetyksessä tapahtuu pysyvä ongelma, sähköpostien lähetys keskeytetään.","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"Sähköpostiasetuksissasi lisää {{senderEmail}} kontakteihisi. Tämä antaa viestin sähköpostitarjoajalle, että viestit tästä osoitteesta ovat hyväksyttäviä.","Less like this":"Vähemmän tämän kaltaisia",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':'Varmista, että sähköpostit eivät mene Spam- tai roskapostikansioihin, Jos näin käy, klikkaa "Mark as not spam" ja/tai "Move to inbox".',Manage:"Hallitse",Monthly:"Kuukausittainen","More like this":"Lisää tämän kaltaista",Name:"Nimi","Need more help? Contact support":"Tarvitsetko lisää apua? Ota yhteyttä tukeen","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"Uutiskirjeet sähköpostiisi voivat peruuntua kahdesta syystä: edellinen sähköposti oli merkattu spammiksi, tai sähköpostin lähetyksestä tuli bounce.","Not receiving emails?":"Etkö saa sähköposteja?","Now check your email!":"Nyt tarkista sähköpostisi","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"Kun olet tilannut sähköpostit uudelleen ja et vieläkään saa posteja, katso ensimmäiseksi spam-kansio. Jotkut tarjoajat pitävät listaa ennen merkityistä viesteistä ja estävät niitä jatkossakin. Jos näin tapahtuu, merkitse viesti Not Spam ja siirrä se postilaatikkoosi.","Permanent failure (bounce)":"Pysyvä virhe (bounce)",Plan:"Tilaus","Plan checkout was cancelled.":"Tilauksen checkout on peruttu","Plan upgrade was cancelled.":"Tilauksen korotus on peruttu","Please fill in required fields":"Täytä tarvittavat kentät",Price:"Hinta","Re-enable emails":"Uudelleen hyväksy sähköpostit","Renews at {{price}}.":"Tilaus päivittyy hinnalla {{price}}.",Retry:"Kokeile uudestaan",Save:"Tallenna","Send an email and say hi!":"Lähetä sähköposti ja sano moi!","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"Lähetä sähköposti osoitteeseen {{senderEmail}} ja sano hei. Tämä viestii tarjoajalle, että osoite on hyväksytty.","Sending login link...":"Lähetetään kirjautumislinkkiä...","Sending...":"Lähetetään...","Sign in":"Kirjaudu sisään","Sign out":"Kirjaudu ulos","Sign up":"Rekisteröidy","Signup error: Invalid link":"Virhe rekisteröinnissä: Linkki ei toimi","Sorry, that didn’t work.":"Anteeksi, tämä ei onnistunut","Spam complaints":"Spam-valitukset","Start {{amount}}-day free trial":"Aloita {{amount}}-päivän kokeilu","Starting {{startDate}}":"Aloitetaan {{startDate}}","Starting today":"Alkaa tänään","Submit feedback":"Anna palautetta",Subscribe:"Tilaa",Subscribed:"Tilaus onnistunut",Success:"Onnistunut","Success! Check your email for magic link to sign-in.":"Onnistui! Katso sähköpostisi kirjautumislinkkiä varten","Success! Your account is fully activated, you now have access to all content.":"Onnistui! Tilisi on aktivoitu ja sinulla on pääsy sisältöihin","Success! Your email is updated.":"Onnistui! Sähköpostisi on päivitetty","Successfully unsubscribed":"Tilauksen peruutus onnistui","Thanks for the feedback!":"Kiitos palautteestasi!","That didn't go to plan":"Tämä ei mennyt suunnitelmien mukaan","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"Meillä oli ongelma palautteesi lähetyksen kanssa. Kokeleithan myöhemmin uudestaan.","This site is invite-only, contact the owner for access.":"Tämä sivu on vain kutsutuille, ota yhteyttä omistajaan saadaksesi pääsyoikeuden.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Viimeistelläksesi rekisteröitymisen, klikkaa vahvistuslinkkiä sähköpostissasi. Jos sitä ei saavu 3 minuutin kuluessa, tarkista roskapostikansiosi!","Try free for {{amount}} days, then {{originalPrice}}.":"Kokeile ilmaiseksi {{amount}} päivää, sen jälkeen hinta on {{originalPrice}}.","Unlock access to all newsletters by becoming a paid subscriber.":"Avaa pääsy kaikkiin uutiskirjeisiin maksullisella tilauksella.","Unsubscribe from all emails":"Peruuta kaikki sähköpostit",Unsubscribed:"Tilaus peruutettu","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Sähköpostien peruuttaminen ei peruuta maksullista tilaustasi {{title}}",Update:"Päivitä","Update your preferences":"Päivitä asetuksesi","Verify your email address is correct":"Vahvista sähköpostiosoitteesi oikeellisuus","View plans":"Katso tilausvaihtoehtoja","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Emme voineet peruuttaa tilaustasi, koska sähköpostiosoitetta ei löytynyt. Ota yhteyttä sivuston omistajaan.","Welcome back, {{name}}!":"Tervetuloa takaisin, {{name}}!","Welcome back!":"Tervetuloa takaisin!","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"ksissa “bounssannut” sähköposti voi kuitenkin palautua pysyvänä virheenä, kun sähköpostiosoite on virheellinen tai sitä ei ole olemassa.","Why has my email been disabled?":"Miksi sähköpostini on poistettu käytöstä?",Yearly:"Vuosittainen","You currently have a free membership, upgrade to a paid subscription for full access.":"Sinulla on tällä hetkellä ilmainen jäsenyys, päivitä maksulliseksi tilaukseksi saadaksesi täyden pääsyn.","You have been successfully resubscribed":"Olet tilannut uudelleen onnistuneesti","You're currently not receiving emails":"Et tällä hetkellä ole saamassa sähköposteja","You're not receiving emails":"Et saa sähköposteja","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Et saa sähköposteja siksi, että joko merkitsit äskettäisen viestin roskapostiksi tai siksi, että viestejä ei voitu toimittaa antamaasi sähköpostiosoitteeseen.","You've successfully signed in.":"Olet kirjautunut sisään onnistuneesti","Your account":"Tilisi","Your input helps shape what gets published.":"Antamasi palautteen avulla muokataan julkaistavaa sisältöä","Your subscription will expire on {{expiryDate}}":"Tilauksesi päättyy {{expiryDate}}","Your subscription will renew on {{renewalDate}}":"Tilauksesi uusiutuu {{renewalDate}}","Your subscription will start on {{subscriptionStart}}":"Tilauksesi alkaa {{subscriptionStart}}"},zS={"{{amount}} days free":"{{amount}} jours gratuits","{{amount}} off":"{{amount}} de réduction","{{amount}} off for first {{number}} months.":"{{amount}} de réduction pour les {{number}} premiers mois.","{{amount}} off for first {{period}}.":"{{amount}} de réduction pour le/la premier/ère {{period}}.","{{amount}} off forever.":"{{amount}} de réduction permanente.","{{discount}}% discount":"{{discount}}% de réduction","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"{{memberEmail}} ne recevra plus la newsletter {{newsletterName}}.","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"{{memberEmail}} ne recevra plus d'e-mails lorsque quelqu'un répond à vos commentaires.","{{memberEmail}} will no longer receive this newsletter.":"{{memberEmail}} ne recevra plus cette newsletter.","{{trialDays}} days free":"{{trialDays}} jours gratuits","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Un lien de connexion a été envoyé dans votre boîte de réception. S’il n’arrive pas dans les 3 minutes, vérifiez votre dossier spam.",Account:"Compte","Account settings":"Paramètres du compte","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"À la fin de la période d’essai gratuite, le prix normal de l’abonnement choisi sera facturé. Vous pouvez toujours annuler d’ici là.","Already a member?":"Déjà membre ?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"Une erreur inattendue s'est produite. Veuillez réessayer ou <a>contacter le support</a> si l'erreur persiste.",Back:"Retour","Back to Log in":"Retour à Connexion","Billing info":"Informations sur la facturation","Black Friday":"Black Friday","Cancel anytime.":"Annuler à tout moment.","Cancel subscription":"Annuler l’abonnement","Cancellation reason":"Raison de l’annulation",Change:"Changer","Check spam & promotions folders":"Vérifiez les dossiers de spam et de promotion","Check with your mail provider":"Vérifiez auprès de votre fournisseur d'e-mail",Choose:"Choisir","Choose a different plan":"Choisir un autre abonnement","Choose your newsletters":"Choisir les newsletters","Click here to retry":"Cliquez ici pour réessayer",Close:"Fermer",Comments:"Commentaires",Complimentary:"Offert",Confirm:"Confirmer","Confirm cancellation":"Confirmer l'annulation","Confirm subscription":"Confirmer l'abonnement","Contact support":"Contacter le support",Continue:"Continuer","Continue subscription":"Continuer l'abonnement","Could not sign in. Login link expired.":"Impossible de se connecter. Le lien de connexion a expiré.","Could not update email! Invalid link.":"Impossible de mettre à jour l'e-mail ! Lien invalide.","Create a new contact":"Créer un nouveau contact","Current plan":"Abonnement actuel","Delete account":"Supprimer le compte","Didn't mean to do this? Manage your preferences <button>here</button>.":"Vous ne vouliez pas faire ça ? Gérez vos préférences <button>ici</button>.","Don't have an account?":"Vous n’avez pas encore de compte ?",Edit:"Modifier",Email:"E-mail","Email newsletter":"E-mail de la newsletter","Email preference updated.":"Préférences d’e-mail mises à jour.","Email preferences":"Préférences d’e-mail",Emails:"E-mails","Emails disabled":"E-mails désactivés","Ends {{offerEndDate}}":"Se termine le {{offerEndDate}}",Error:"Erreur","Expires {{expiryDate}}":"Expire le {{expiryDate}}",Forever:"Permanent","Free Trial – Ends {{trialEnd}}":"Essai gratuit - Se termine le {{trialEnd}}","Get help":"Obtenir de l’aide","Get in touch for help":"Contactez-nous pour obtenir de l'aide","Get notified when someone replies to your comment":"Recevez une notification lorsque quelqu’un répond à votre commentaire","Give feedback on this post":"Donnez votre avis sur cet article","Help! I'm not receiving emails":"À l'aide ! Je ne reçois pas d'e-mails","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"Si une newsletter est signalée comme étant du spam, les e-mails sont automatiquement désactivés pour cette adresse afin que vous ne receviez plus de messages indésirables.","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"Si le signalement spam était accidentel, ou si vous voulez de nouveau recevoir les e-mails, vous pouvez vous réinscrire aux e-mails en cliquant sur le bouton sur la page précédente.","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"Si vous annulez votre abonnement maintenant, vous continuerez à y avoir accès jusqu'au {{periodEnd}}.","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"Si vous avez un compte e-mail d'entreprise ou gouvernenmental, contactez votre service informatique et demandez leur d'autoriser les e-mails provenant de {{senderEmail}}","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"Si vous voulez à nouveau recevoir les e-mails, la meilleure chose à faire est de vérifier votre toute erreur liée à l'adresse e-mail renseignée, puis de cliquer sur réinscription sur la page précédente.","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"Si vous ne recevez pas la newsletter par e-mail à laquelle vous vous êtes abonné, voici quelques points à vérifier.","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"Si vous avez complété toutes ces étapes et ne recevez toujours pas d'e-mails, vous pouvez nous contacter à {{supportAddress}} pour obtenir de l'aide.","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"Si une erreur persistante est reçue lors de la tentative d'envoi de la newsletter, les e-mails seront désactivés pour le compte.","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"Dans votre client de messagerie, ajoutez {{senderEmail} à votre liste de contacts. Cela signale à votre fournisseur de messagerie que les e-mails provenant de cette adresse doivent être considérés comme dignes de confiance.","Less like this":"Moins de contenu similaire",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':`Assurez-vous que les e-mails ne finissent pas accidentellement dans le dossier Spam ou Promotions de votre boîte de réception. Si c'est le cas, cliquez sur "Marquer en tant que non-indésirable" et/ou "Déplacer vers la boîte de réception".`,Manage:"Gérer",Monthly:"Mensuel","More like this":"Plus de contenu similaire",Name:"Nom","Need more help? Contact support":"Besoin d'aide? Contactez le support","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"Les newsletters peuvent être désactivés pour votre compte pour deux raisons : un précédent e-mail a été marqué en tant que spam, ou une tentative d'envoi d'e-mail a résulté en une erreur persistante (renvoi).","Not receiving emails?":"Vous n’avez pas reçu d’e-mails ?","Now check your email!":"Veuillez maintenant vérifier votre boite de réception.","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"Une fois réinscrit, si vous ne voyez toujours pas d'e-mails dans votre boîte de réception, vérifiez votre dossier spam. Certains fournisseurs garde en mémoire les précédents signalements spams et continue de marquer les e-mails comme tels. Si tel est le cas, marquez la dernière newsletter comme 'non-indésirable' et déplacez-là vers votre boîte de réception.","Permanent failure (bounce)":"Erreur persistante (renvoi)",Plan:"Abonnement","Plan checkout was cancelled.":"Le paiement de l'abonnement a été annulé.","Plan upgrade was cancelled.":"La mise à niveau de l'abonnement a été annulée.","Please fill in required fields":"Veuillez remplir les champs requis",Price:"Prix","Re-enable emails":"Ré-activer les e-mails","Renews at {{price}}.":"Renouvellement pour {{price}}.",Retry:"Réesayer",Save:"Sauvegarder","Send an email and say hi!":"Envoyez un e-mail et dites bonjour !","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"Envoyez un e-mail à {{senderEmail}} et dites bonjour ! Cela devrait également signaler à votre fournisseur de messagerie que les e-mails depuis/vers cette adresse doivent être considérés comme dignes de confiance.","Sending login link...":"Envoi du lien de connexion…","Sending...":"Envoi…","Sign in":"Se connecter","Sign out":"Se déconnecter","Sign up":"S’inscrire","Signup error: Invalid link":"Erreur d'inscription : lien invalide","Sorry, that didn’t work.":"Désolé, cela n'a pas fonctionné.","Spam complaints":"Signalements pour spam","Start {{amount}}-day free trial":"Commencer l’essai gratuit de {{amount}} jours","Starting {{startDate}}":"À partir du {{startDate}}","Starting today":"À partir d'aujourd'hui","Submit feedback":"Envoyez votre avis",Subscribe:"S'abonner",Subscribed:"Abonné(e)",Success:"Succès","Success! Check your email for magic link to sign-in.":"Succès ! Vérifiez votre boîte de réception pour le lien de connexion.","Success! Your account is fully activated, you now have access to all content.":"Succès ! Votre compte est entièrement activé, et vous avez désormais accès à tout le contenu.","Success! Your email is updated.":"Succès ! Votre adresse e-mail a été mise à jour.","Successfully unsubscribed":"Désabonnement réussi","Thanks for the feedback!":"Merci pour votre avis !","That didn't go to plan":"Cela n’a pas fonctionné comme prévu","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"L'adresse e-mail qui vous est associée est {{memberEmail}} — Si celle-ci est incorrecte, vous pouvez la modifier dans votre <button>espace paramètres de compte</button>","There was a problem submitting your feedback. Please try again a little later.":"Un problème est survenu lors de la soumission de votre commentaire. Veuillez réessayer un peu plus tard.","This site is invite-only, contact the owner for access.":"Ce site est réservé aux invités, contactez le propriétaire pour y accéder.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Pour confirmer votre inscription, cliquez sur le lien de confirmation envoyé dans votre boite de réception. S’il ne vous parvient pas dans les 3 minutes, vérifiez votre dossier spam.","Try free for {{amount}} days, then {{originalPrice}}.":"Essayez gratuitement pendant {{amount}} jours, puis {{originalPrice}}.","Unlock access to all newsletters by becoming a paid subscriber.":"Débloquez l'accès à toutes les newsletters en devenant un abonné payant.","Unsubscribe from all emails":"Se désinscrire de tous les e-mails",Unsubscribed:"Désabonné(e)","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"La désinscription des e-mails n’annulera pas votre abonnement payant à {{title}}",Update:"Mise à jour","Update your preferences":"Mettez à jour vos préférences","Verify your email address is correct":"Vérifiez que votre adresse e-mail est correcte","View plans":"Voir les abonnements","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"La désinscription n’a pas fonctionné car votre adresse e-mail n’a pas été trouvée. Veuillez contacter le propriétaire du site.","Welcome back, {{name}}!":"Bon retour parmi nous, {{name}} !","Welcome back!":"Bon retour parmi nous !","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"Lorsqu'une boîte de réception n'accepte pas un e-mail, on parle communément d'un renvoi. Dans beaucoup de cas, cela peut être temporaire. Cependant, dans certains cas, un e-mail renvoyé peut être accompagné d'une erreur persistante, lorsqu'une adresse e-mail est invalide ou inexistante.","Why has my email been disabled?":"Pourquoi mon e-mail a-t-il été désactivé ?",Yearly:"Annuel","You currently have a free membership, upgrade to a paid subscription for full access.":"Vous avez actuellement un abonnement gratuit, passez à un abonnement payant pour un accès complet.","You have been successfully resubscribed":"Vous avez été réinscrit avec succès","You're currently not receiving emails":"Vous ne recevez actuellement pas d'e-mails","You're not receiving emails":"Vous ne recevez pas d'e-mails","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Vous ne recevez pas d’e-mails parce que vous avez marqué un message récent comme spam, ou parce que les messages n’ont pas pu être livrés à l’adresse e-mail que vous aviez indiquée.","You've successfully signed in.":"Vous vous êtes connecté avec succès.","Your account":"Votre compte","Your input helps shape what gets published.":"Votre avis aide à améliorer ce qui est publié.","Your subscription will expire on {{expiryDate}}":"Votre abonnement expirera le {{expiryDate}}","Your subscription will renew on {{renewalDate}}":"Votre abonnement sera renouvelé le {{renewalDate}}","Your subscription will start on {{subscriptionStart}}":"Votre abonnement débutera le {{subscriptionStart}}"},RS={"{{amount}} days free":"","{{amount}} off":"","{{amount}} off for first {{number}} months.":"","{{amount}} off for first {{period}}.":"","{{amount}} off forever.":"","{{discount}}% discount":"{{discount}}% popust","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"{{trialDays}} dana besplatno","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Link za prijavu je poslan na Vašu email adresu. Ako ne stigne za 3 minute provjerite spam folder.",Account:"Račun","Account settings":"Podešavanje korisničkog računa","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Nakon što probni period istekne, izvršit će se naplata za plan koji ste izabrali. Uvijek možete otkazati pretplatu prije toga.","Already a member?":"Već ste član?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"Natrag","Back to Log in":"Natrag na prijavu","Billing info":"","Black Friday":"","Cancel anytime.":"","Cancel subscription":"Otkaži pretplatu","Cancellation reason":"Razlog za otkazivanje",Change:"","Check spam & promotions folders":"","Check with your mail provider":"",Choose:"","Choose a different plan":"Izaberi drugi plan","Choose your newsletters":"Izaberi ","Click here to retry":"",Close:"Zatvori",Comments:"Komentari",Complimentary:"",Confirm:"Potvrdi","Confirm cancellation":"","Confirm subscription":"","Contact support":"",Continue:"Nastavi","Continue subscription":"","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"","Delete account":"Obriši račun","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"Nemate račun?",Edit:"",Email:"Email","Email newsletter":"","Email preference updated.":"Email podešavanja su sačuvana.","Email preferences":"Email podešavanja",Emails:"Email-ovi","Emails disabled":"Isključeni email-ovi","Ends {{offerEndDate}}":"",Error:"","Expires {{expiryDate}}":"",Forever:"","Free Trial – Ends {{trialEnd}}":"","Get help":"Potražite pomoć","Get in touch for help":"","Get notified when someone replies to your comment":"Obavijesti me ako netko odgovori na moj komentar:","Give feedback on this post":"Ostavite komentar na ovaj post","Help! I'm not receiving emails":"","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"Manje sadržaja kao što je ovaj",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"Podešavanja",Monthly:"Mjesečno","More like this":"Više sadržaja kao što je ovaj",Name:"Ime","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"Ne dobivate e-poštu?","Now check your email!":"Provjerite Vaš email!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"Cijena","Re-enable emails":"Ponovo omogući email adrese","Renews at {{price}}.":"",Retry:"Pokušaj opet",Save:"Sačuvaj","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"Link za prijavu se šalje...","Sending...":"Slanje...","Sign in":"Prijava","Sign out":"","Sign up":"Registracija","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"Počni besplatnu probu {{amount}} dana","Starting {{startDate}}":"","Starting today":"","Submit feedback":"Pošalji povratne informacije",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"Uspješna odjava","Thanks for the feedback!":"Hvala na povratnim informacijama!","That didn't go to plan":"Nešto nije kako treba","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"Ovaj sajt je samo za članove, kontaktirajte vlasnika kako biste dobili pristup.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Kliknite na link da biste završili registraciju. Ukoliko ne stigne za 3 minute provjerite spam folder!","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"Odjavite se sa svih email-ova",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Odjavljivanjem sa email-ova nećete prekinuti Vašu pretplatu na {{title}}",Update:"","Update your preferences":"Izmijenite Vaše postavke","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Nismo uspjeli odjaviti email. Molimo Vas kontaktirajte vlasnika sajta.","Welcome back, {{name}}!":"","Welcome back!":"","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"Godišnje","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"Uspješno ste se ponovo prijavili","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Ne primate e-poruke zato što ste nedavnu poruku označili kao nepoželjnu ili zato što se poruke nisu mogle isporučiti na adresu e-pošte koju ste naveli.","You've successfully signed in.":"","Your account":"Vaš korisnički račun","Your input helps shape what gets published.":"Vaš doprinos pomaže u oblikovanju onoga što se objavljuje.","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},LS={"{{amount}} days free":"","{{amount}} off":"","{{amount}} off for first {{number}} months.":"","{{amount}} off for first {{period}}.":"","{{amount}} off forever.":"","{{discount}}% discount":"{{discount}}% kedvezmény","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"{{trialDays}} nap ingyen","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"A bejelentkezéshez szükséges linket elküldtük a megadott email címre. Ha nem érkezne meg 3 percen belül, kérjük ellenőrizze a spam mappát!",Account:"Fiók","Account settings":"Fiók beállítások","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Az ingyenes próbaidőszak lejárta után a kiválasztott csomag normál díját fogjuk felszámolni. A feliratkozás bármikor ingyenesen lemondható a próbaidőszak alatt.","Already a member?":"Már van fiókja?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"Vissza","Back to Log in":"Vissza a bejelentkezéshez","Billing info":"","Black Friday":"","Cancel anytime.":"","Cancel subscription":"Feliratkozás megszűntetése","Cancellation reason":"A megszűntetés oka",Change:"","Check spam & promotions folders":"","Check with your mail provider":"",Choose:"","Choose a different plan":"Válasszon másik csomagot","Choose your newsletters":"Válassza ki a hírleveleket","Click here to retry":"",Close:"Bezár",Comments:"Kommentek",Complimentary:"",Confirm:"Jóváhgyás","Confirm cancellation":"","Confirm subscription":"","Contact support":"",Continue:"Folytatás","Continue subscription":"","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"","Delete account":"Fiók törlése","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"Még nincs fiókja?",Edit:"",Email:"Email","Email newsletter":"","Email preference updated.":"Email beállítások elmentve","Email preferences":"Email beállítások",Emails:"Email-ek","Emails disabled":"Email-ek kikapcsolva","Ends {{offerEndDate}}":"",Error:"","Expires {{expiryDate}}":"",Forever:"","Free Trial – Ends {{trialEnd}}":"","Get help":"Kérjen segítséget","Get in touch for help":"","Get notified when someone replies to your comment":"Értesítést kérek ha valaki válaszol a kommentemre","Give feedback on this post":"Hogy tetszett ez a cikk?","Help! I'm not receiving emails":"","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"Kevesebb ilyet",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"Kezelés",Monthly:"Havi","More like this":"Több ilyet",Name:"Név","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"Nem érkeznek meg az email-ek?","Now check your email!":"Ellenőrizze az postafiókját","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"Ár","Re-enable emails":"Email-ek aktiválása","Renews at {{price}}.":"",Retry:"Újra",Save:"Mentés","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"Bejelenkezési link küldése...","Sending...":"Küldés...","Sign in":"Bejelentkezés","Sign out":"","Sign up":"Regisztráció","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"{{amount}} napos próbaidőszak kezdése","Starting {{startDate}}":"","Starting today":"","Submit feedback":"Visszajelzés küldése",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"Sikeres leiratkozás","Thanks for the feedback!":"Köszönjük a visszajelzést","That didn't go to plan":"Hiba történt","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"A website csak meghívóval látogatható. Meghívóért lépjen kapcsolatba az oldal tulajdonosával!","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"A regisztráció befejezéséhez kérjük kattintson az email-ben kapott linkre. Ha a link nem érkezne meg 3 percen belül kérjük ellenőrizze a spam mappát.","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"Leiratkozás minden email-ről",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Az email-ről történő leiratkozás nem szűnteti meg a fiókját",Update:"","Update your preferences":"Beállítások mentése","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Ehhez az email-hez nem tartozik fiók. Kérjük lépjen kapcsolatba az oldal tulajdonosával.","Welcome back, {{name}}!":"","Welcome back!":"","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"Éves","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"Sikeres feliratkozás","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Azért nem kap email-t mert vagy spam-nek jelölt egy tőlünk kapott hírlevelet, vagy azért mert a megadott email cím nem tud üzeneteket fogadni.","You've successfully signed in.":"","Your account":"Fiók","Your input helps shape what gets published.":"A visszajelzése segít abban, hogy mit publikáljunk","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},US={"{{amount}} days free":"Gratis {{amount}} hari","{{amount}} off":"Diskon {{amount}}","{{amount}} off for first {{number}} months.":"Diskon {{amount}} untuk {{number}} bulan pertama.","{{amount}} off for first {{period}}.":"Diskon {{amount}} untuk {{period}} pertama.","{{amount}} off forever.":"Diskon {{amount}} selamanya.","{{discount}}% discount":"Diskon {{discount}}%","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"{{memberEmail}} tidak akan menerima buletin {{newsletterName}} lagi.","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"{{memberEmail}} tidak akan lagi menerima email ketika seseorang membalas komentar Anda.","{{memberEmail}} will no longer receive this newsletter.":"{{memberEmail}} tidak akan menerima buletin ini lagi.","{{trialDays}} days free":"Gratis {{trialDays}} hari","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Tautan masuk telah dikirimkan ke kotak masuk Anda. Jika tidak diterima dalam waktu 3 menit, pastikan untuk memeriksa folder spam Anda.",Account:"Akun","Account settings":"Pengaturan akun","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Setelah percobaan gratis berakhir, Anda akan dikenai biaya harga normal untuk tingkatan yang Anda pilih. Anda selalu dapat membatalkannya sebelum itu.","Already a member?":"Sudah menjadi anggota?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"Terjadi kesalahan tak terduga. Harap coba lagi atau <a>hubungi layanan dukungan</a> jika kesalahan tetap berlanjut.",Back:"Kembali","Back to Log in":"Kembali ke Masuk","Billing info":"Info pembayaran","Black Friday":"Black Friday","Cancel anytime.":"Batalkan kapan saja.","Cancel subscription":"Batalkan langganan","Cancellation reason":"Alasan pembatalan",Change:"Ubah","Check spam & promotions folders":"Periksa folder spam & promosi","Check with your mail provider":"Hubungi penyedia layanan email Anda",Choose:"Pilih","Choose a different plan":"Pilih paket yang berbeda","Choose your newsletters":"Pilih buletin Anda","Click here to retry":"Klik di sini untuk mencoba lagi",Close:"Tutup",Comments:"Komentar",Complimentary:"Pemberian gratis",Confirm:"Konfirmasi","Confirm cancellation":"Konfirmasi pembatalan","Confirm subscription":"Konfirmasi langganan","Contact support":"Hubungi layanan dukungan",Continue:"Lanjutkan","Continue subscription":"Lanjutkan berlangganan","Could not sign in. Login link expired.":"Tidak dapat masuk. Tautan untuk masuk telah kedaluwarsa.","Could not update email! Invalid link.":"Tidak dapat memperbarui email! Tautan tidak valid.","Create a new contact":"Buat kontak baru","Current plan":"Paket saat ini","Delete account":"Hapus akun","Didn't mean to do this? Manage your preferences <button>here</button>.":"Tidak bermaksud melakukan ini? Kelola preferensi Anda <button>di sini</button>.","Don't have an account?":"Belum punya akun?",Edit:"Edit",Email:"Email","Email newsletter":"Buletin email","Email preference updated.":"Preferensi email diperbarui.","Email preferences":"Preferensi email.",Emails:"Email","Emails disabled":"Email dinonaktifkan","Ends {{offerEndDate}}":"Berakhir {{offerEndDate}}",Error:"Eror","Expires {{expiryDate}}":"kedaluwarsa {{expiryDate}}",Forever:"Selamanya","Free Trial – Ends {{trialEnd}}":"Percobaan Gratis – Berakhir {{trialEnd}}","Get help":"Dapatkan bantuan","Get in touch for help":"Hubungi untuk mednapatkan bantuan","Get notified when someone replies to your comment":"Dapatkan pemberitahuan ketika seseorang menjawab komentar Anda","Give feedback on this post":"Berikan masukan pada postingan ini","Help! I'm not receiving emails":"Tolong! Saya tidak menerima email","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"Jika buletin ditandai sebagai spam, email secara otomatis dinonaktifkan untuk alamat tersebut guna memastikan Anda tidak lagi menerima pesan yang tidak diinginkan.","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"Jika keluhan spam tersebut tidak disengaja, atau Anda ingin mulai menerima email lagi, Anda dapat berlangganan kembali untuk menerima email dengan mengklik tombol di layar sebelumnya.","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"Jika Anda membatalkan langganan sekarang, Anda akan tetap memiliki akses hingga {{periodEnd}}.","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"Jika Anda memiliki akun email perusahaan atau pemerintah, hubungi departemen IT Anda dan mintalah mereka untuk mengizinkan pengiriman email dari {{senderEmail}} diterima.","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"Jika Anda ingin mulai menerima email lagi, langkah-langkah terbaik selanjutnya adalah memeriksa alamat email Anda pada data yang tersimpan untuk memastikan tidak ada masalah, kemudian klik tombol 'berlangganan kembali' pada layar sebelumnya.","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"Jika Anda tidak menerima buletin email langganan Anda, berikut adalah beberapa hal yang perlu diperiksa.","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"Jika Anda telah melakukan semua pemeriksaan tersebut dan masih belum menerima email, Anda dapat menghubungi kami melalui kontak {{supportAddress}} untuk mendapatkan bantuan.","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"Jika terjadi kegagalan permanen saat mencoba mengirim buletin, email akan dinonaktifkan pada akun tersebut.","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"Pada klien email Anda, tambahkan {{senderEmail}} ke daftar kontak Anda. Hal ini akan memberikan sinyal kepada layanan email Anda bahwa email yang dikirim dari alamat ini harus dipercaya.","Less like this":"Kurangi yang seperti ini",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':'Pastikan email tidak berakhir di kotak masuk Spam atau Promosi Anda secara tidak sengaja. Jika ya, klik "Tandai sebagai bukan spam" dan/atau "Pindahkan ke kotak masuk".',Manage:"Kelola",Monthly:"Bulanan","More like this":"Lebih banyak yang seperti ini",Name:"Nama","Need more help? Contact support":"Perlu bantuan lebih lanjut? Hubungi layanan dukungan","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"Buletin dapat dinonaktifkan pada akun Anda dengan dua alasan: Email sebelumnya ditandai sebagai spam, atau percobaan pengiriman email menghasilkan kegagalan permanen (bounce).","Not receiving emails?":"Tidak menerima email?","Now check your email!":"Sekarang periksa email Anda!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"Setelah berlangganan kembali, jika Anda masih tidak melihat email di kotak masuk Anda, periksa folder spam. Beberapa penyedia layanan kotak masuk menyimpan catatan keluhan spam sebelumnya dan akan terus menandai email tersebut. Jika hal ini terjadi, tandai buletin terbaru sebagai 'Bukan spam' untuk memindahkannya kembali ke kotak masuk utama Anda.","Permanent failure (bounce)":"Kegagalan permanen (bounce)",Plan:"Paket","Plan checkout was cancelled.":"Pembayaran paket dibatalkan.","Plan upgrade was cancelled.":"Peningkatan paket dibatalkan.","Please fill in required fields":"Harap isi kolom yang wajib diisi",Price:"Harga","Re-enable emails":"Aktifkan kembali email","Renews at {{price}}.":"Perpanjang dengan harga {{price}}",Retry:"Coba lagi",Save:"Simpan","Send an email and say hi!":"Kirimkan email dan ucapan hai!","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"Kirim email ke {{senderEmail}} dan ucapan halo. Hal ini juga dapat membantu memberi sinyal kepada penyedia layanan email Anda bahwa email yang dikirim ke dan dari alamat ini harus dipercaya.","Sending login link...":"Mengirim tautan masuk...","Sending...":"Mengirim...","Sign in":"Masuk","Sign out":"Keluar","Sign up":"Daftar","Signup error: Invalid link":"Kesalahan pendaftaran: Tautan tidak valid","Sorry, that didn’t work.":"Maaf, itu tidak berhasil.","Spam complaints":"Keluhan spam","Start {{amount}}-day free trial":"Mulai percobaan gratis selama {{amount}} hari","Starting {{startDate}}":"Dimulai pada {{startDate}}.","Starting today":"Dimulai hari ini","Submit feedback":"Kirim masukan",Subscribe:"Berlangganan",Subscribed:"Telah berlangganan",Success:"Berhasil","Success! Check your email for magic link to sign-in.":"Berhasil! Periksa email Anda untuk mendapatkan tautan ajaib untuk masuk.","Success! Your account is fully activated, you now have access to all content.":"Berhasil! Akun Anda telah diaktifkan sepenuhnya, sekarang Anda memiliki akses ke semua konten.","Success! Your email is updated.":"Berhasil! Email Anda telah diperbarui.","Successfully unsubscribed":"Berhasil berhenti berlangganan","Thanks for the feedback!":"Terima kasih atas masukannya!","That didn't go to plan":"Itu tidak berjalan sesuai rencana","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"Alamat email Anda yang kami miliki adalah {{memberEmail}} — jika itu tidak benar, Anda dapat memperbarui di <button>area pengaturan akun</button> Anda.","There was a problem submitting your feedback. Please try again a little later.":"Terjadi masalah saat mengirimkan masukan Anda. Coba lagi nanti.","This site is invite-only, contact the owner for access.":"Situs ini hanya untuk yang diundang, hubungi pemiliknya untuk mendapatkan akses.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Untuk menyelesaikan pendaftaran, klik tautan konfirmasi di kotak masuk Anda. Jika tidak diterima dalam waktu 3 menit, pastikan untuk memeriksa folder spam Anda!","Try free for {{amount}} days, then {{originalPrice}}.":"Coba gratis selama {{amount}} hari, kemudian {{originalPrice}}.","Unlock access to all newsletters by becoming a paid subscriber.":"Buka akses ke semua buletin dengan menjadi pelanggan berbayar.","Unsubscribe from all emails":"Berhenti berlangganan dari semua email",Unsubscribed:"Tidak berlangganan","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Berhenti berlangganan dari email tidak akan membatalkan langganan berbayar Anda ke {{title}}",Update:"Perbarui","Update your preferences":"Perbarui preferensi Anda","Verify your email address is correct":"Verifikasi bahwa alamat email Anda benar","View plans":"Lihat paket","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Kami tidak dapat menghentikan langganan Anda karena alamat email tidak ditemukan. Harap hubungi pemilik situs.","Welcome back, {{name}}!":"Selamat datang kembali, {{name}}!","Welcome back!":"Selamat datang kembali!","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"Ketika sebuah kotak masuk gagal menerima sebuah email, hal tersebut umumnya disebut sebagai bounce. Dalam banyak kasus, ini bisa bersifat sementara. Namun, dalam beberapa kasus, email yang terbounce dapat dikembalikan sebagai kegagalan permanen ketika alamat email yang dituju tidak valid atau tidak ada.","Why has my email been disabled?":"Mengapa email saya dinonaktifkan?",Yearly:"Tahunan","You currently have a free membership, upgrade to a paid subscription for full access.":"Saat ini Anda memiliki keanggotaan gratis, tingkatkan ke langganan berbayar untuk akses penuh","You have been successfully resubscribed":"Anda telah berhasil berlangganan kembali","You're currently not receiving emails":"Anda saat ini tidak menerima email.","You're not receiving emails":"Anda tidak menerima email.","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Anda tidak menerima email karena Anda telah menandai pesan terbaru sebagai spam, atau karena pesan tidak dapat dikirimkan ke alamat email yang Anda berikan.","You've successfully signed in.":"Anda telah berhasil masuk.","Your account":"Akun Anda","Your input helps shape what gets published.":"Masukan Anda membantu membentuk apa yang dipublikasikan.","Your subscription will expire on {{expiryDate}}":"Langganan Anda akan berakhir pada {{expiryDate}}","Your subscription will renew on {{renewalDate}}":"Langganan Anda akan diperpanjang pada {{renewalDate}}","Your subscription will start on {{subscriptionStart}}":"Langganan Anda akan dimulai pada {{subscriptionStart}}"},OS={"{{amount}} days free":"{{amount}} giorni gratis","{{amount}} off":"{{amount}} in meno","{{amount}} off for first {{number}} months.":"{{amount}} in meno per i primi {{number}} mesi.","{{amount}} off for first {{period}}.":"{{amount}} in meno per il primo {{period}}.","{{amount}} off forever.":"{{amount}} in meno per sempre.","{{discount}}% discount":"{{discount}}% di sconto","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"La newsletter {{newsletterName}} non verrà più inviata a {{memberEmail}}.","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"Non riceverà più email a {{memberEmail}} quando qualcuno risponde ai tuoi commenti.","{{memberEmail}} will no longer receive this newsletter.":"La newsletter non verrà più inviata a {{memberEmail}}.","{{trialDays}} days free":"{{trialDays}} giorni gratis","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Un link di accesso è stato inviato alla tua casella di posta. Se non lo ricevi entro 3 minuti, controlla nello spam.",Account:"Account","Account settings":"Impostazioni account","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Al termine della prova gratuita, ti verrà addebitato il prezzo regolare del piano scelto. Puoi annullare in qualsiasi momento prima della scadenza.","Already a member?":"Sei già iscritto?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"Si è verificato un errore imprevisto. <a>Contatta l'assistenza</a> se l'errore persiste.",Back:"Indietro","Back to Log in":"Torna alla pagina d'accesso","Billing info":"Informazioni di fatturazione","Black Friday":"Black friday","Cancel anytime.":"Cancella in qualsiasi momento.","Cancel subscription":"Cancella l'abbonamento","Cancellation reason":"Motivo della cancellazione",Change:"Cambia","Check spam & promotions folders":"Controlla nello spam","Check with your mail provider":"Contatta il tuo provider di posta elettronica",Choose:"Scegli","Choose a different plan":"Scegli un piano differente","Choose your newsletters":"Scegli la tua newsletter","Click here to retry":"Clicca qui per riprovare",Close:"Chiudi",Comments:"Commenti",Complimentary:"Omaggio",Confirm:"Conferma","Confirm cancellation":"Conferma cancellazione","Confirm subscription":"Conferma abbonamento","Contact support":"Contatta l'assistenza",Continue:"Continua","Continue subscription":"Riabbonati","Could not sign in. Login link expired.":"Accesso non effettuato. Il link è scaduto.","Could not update email! Invalid link.":"Email non aggiornata! Link non valido.","Create a new contact":"Crea un nuovo contatto","Current plan":"Piano attuale","Delete account":"Elimina account","Didn't mean to do this? Manage your preferences <button>here</button>.":"Non era tua intenzione? Gestisti <button>qui</button> le tue preferenze.","Don't have an account?":"Non hai un account?",Edit:"Modifica",Email:"Email","Email newsletter":"Newsletter","Email preference updated.":"Preferenze email aggiornate.","Email preferences":"Preferenze email",Emails:"Email","Emails disabled":"Email disattivate","Ends {{offerEndDate}}":"Finisce il {{offerEndDate}}",Error:"Errore","Expires {{expiryDate}}":"Scade il {{offerEndDate}}",Forever:"Per sempre","Free Trial – Ends {{trialEnd}}":"Prova gratuita – finisce il {{trialEnd}}","Get help":"Chiedi aiuto","Get in touch for help":"Richiedere assistenza","Get notified when someone replies to your comment":"Ricevi una notifica quando qualcuno risponde ad un tuo commento","Give feedback on this post":"Manda un feedback per questo post","Help! I'm not receiving emails":"Aiuto! Non ricevo le email","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"Se una newsletter viene segnalata come spam, le email per quell'indirizzo vengono disabilitate automaticamente, in modo che tu non riceva nessun messaggio indesiderato.","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"Se il reclamo per spam è stato commesso per errore, o nel caso tu voglia nuovamente ricevere le email, puoi iscriverti nuovamente cliccando il bottone nella schermata precedente.","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"Se annulli ora il tuo abbonamento, continuerai ad avere accesso fino al {{periodEnd}}.","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"Se possiedi un account email aziendale o governativo, contatta il reparto IT e chiedi di consentire la ricezione delle email da parte di {{senderEmail}}","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":'Se desideri ricevere nuovamente le email, la cosa migliore da fare è controllare che non ci siano problemi con il tuo indirizzo di posta e poi cliccare su "Reiscriviti" nella schermata precedente.',"If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"Se non ricevi la newsletter a cui sei iscritto, ecco alcuni passaggi da controllare.","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"Se avete completato tutti i passaggi e ancora non ricevete nessuna email, potete contattare l'assistenza a {{supportAddress}}.","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"Nel caso in cui si verifichi un fallimento permanente durante l'invio di una newsletter, le email saranno disabilitate per quell'account.","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"Nel tuo client di posta aggiungi {{senderEmail}} ai tuoi contatti. Questo fa si che il tuo provider riconosca l'indirizzo come attendibile.","Less like this":"Meno come questo",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':'Assicurati che le email non finiscano per sbaglio nello spam. Se ve ne sono, clicca su "Segnala come non spam" e/o "Sposta nella cartella Posta in arrivo".',Manage:"Gestisci",Monthly:"Mensile","More like this":"Più come questo",Name:"Nome","Need more help? Contact support":"Hai ancora bisogno di aiuto? Contatta l'assistenza","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"Le newsletter possono essere disabilitate nel tuo account per due ragioni: un'email precedente è stata segnalata come spam, o l'invio di un'email ha restituito un fallimento permanente (rimbalzo).","Not receiving emails?":"Non ricevi le email?","Now check your email!":"Ora controlla la tua email!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":`Se ancora non vedi le email una volta reiscritto, controlla nello spam. Alcuni provider tengono nota dei reclami e continuano a segnalare le email. Se questo dovesse succedere, segnala l'ultima email ricevuta come "non spam" e spostala nella tua posta in arrivo.`,"Permanent failure (bounce)":"Fallimento permanente (rimbalzo)",Plan:"Piano","Plan checkout was cancelled.":"Il pagamento del piano è stato annullato.","Plan upgrade was cancelled.":"L'aggiornamento del piano è stato annullato.","Please fill in required fields":"Si prega di compilare i campi obbligatori",Price:"Prezzo","Re-enable emails":"Riattiva le email","Renews at {{price}}.":"Rinnova a {{price}}.",Retry:"Riprova",Save:"Salva","Send an email and say hi!":"Invia un'email di saluti!","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"Invia un'email di saluti a {{senderEmail}}. Questo potrebbe aiutare a segnalare al tuo provider che le email da e verso questo indirizzo possono essere considerate attendibili.","Sending login link...":"Invio link di accesso...","Sending...":"Invio...","Sign in":"Accedi","Sign out":"Esci","Sign up":"Iscriviti","Signup error: Invalid link":"Errore di accesso: link invalido","Sorry, that didn’t work.":"Mi dispiace, non ha funzionato.","Spam complaints":"Reclami per spam","Start {{amount}}-day free trial":"Inizia i {{amount}} giorni di prova gratuita","Starting {{startDate}}":"Inizia il {{startDate}}","Starting today":"Inizia oggi","Submit feedback":"Invia feedback",Subscribe:"Abbonati",Subscribed:"Abbonato",Success:"Fatto","Success! Check your email for magic link to sign-in.":"Fatto! Controlla la tua email per il magico link d'accesso.","Success! Your account is fully activated, you now have access to all content.":"Fatto! Il tuo account è stato attivato, ora hai accesso a tutti i contenuti.","Success! Your email is updated.":"Fatto! La tua email è stata aggiornata.","Successfully unsubscribed":"Disiscrizione effettuata con successo","Thanks for the feedback!":"Grazie per il feedback!","That didn't go to plan":"Questo non era previsto","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"L'indirizzo email registrato è {{memberEmail}} — se non è corretto, puoi modificarlo nelle tue <button>impostazioni dell'account</button>.","There was a problem submitting your feedback. Please try again a little later.":"C'è stato un errore durante l'invio del tuo feedback. Si prega di riprovare più tardi.","This site is invite-only, contact the owner for access.":"Questo sito è accessibile solo su invito, contatta il proprietario per poter accedere.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Per completare l'iscrizione, clicca il link di conferma inviato alla tua email. Se non lo ricevi entro 3 minuti, controlla nello spam!","Try free for {{amount}} days, then {{originalPrice}}.":"Prova gratis per {{amount}} giorni, poi {{originalPrice}}.","Unlock access to all newsletters by becoming a paid subscriber.":"Abbonati per sbloccare l'accesso a tutte le newsletter.","Unsubscribe from all emails":"Disiscriviti da tutte le email",Unsubscribed:"Disiscritto","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"La disiscrizione dalle email non annullerà l'abbonamento a {{title}}",Update:"Aggiorna","Update your preferences":"Aggiorna le tue preferenze","Verify your email address is correct":"Controlla che il tuo indirizzo email sia corretto","View plans":"Vedi piani","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Non è stato possibile disiscriverti poiché l'indirizzo email non è stato trovato. Si prega di contattare il proprietario del sito.","Welcome back, {{name}}!":"È bello rivederti, {{name}}!","Welcome back!":"Bentornato!","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":`Quando una casella fallisce l'accettazione di un'email, questo viene normalmente chiamato "rimbalzo". In molti casi questo è temporaneo. Tuttavia, in alcuni casi un'email potrebbe tornare come un fallimento permanente se l'indirizzo è sbagliato o inesistente.`,"Why has my email been disabled?":"Perché la mia email è stata disattivata?",Yearly:"Annuale","You currently have a free membership, upgrade to a paid subscription for full access.":"Attualmente hai un piano gratuito, abbonati per ottenere l'accesso completo.","You have been successfully resubscribed":"Reiscrizione effettuata con successo","You're currently not receiving emails":"Al momento non ricevi nessuna email","You're not receiving emails":"Non ricevi nessuna email","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Non ricevi email perché hai contrassegnato un messaggio recente come spam, o perché non è stato possibile recapitare i messaggi all'indirizzo email fornito.","You've successfully signed in.":"Accesso effettuato.","Your account":"Il tuo account","Your input helps shape what gets published.":"Il tuo contributo aiuta a dare forma a ciò che viene pubblicato.","Your subscription will expire on {{expiryDate}}":"Il tuo abbonamento scadrà il {{expiryDate}}","Your subscription will renew on {{renewalDate}}":"Il tuo abbonamento verrà rinnovato il {{renewalDate}}","Your subscription will start on {{subscriptionStart}}":"Il tuo abbonamento inizierà il {{subscriptionStart}}"},FS={"{{amount}} days free":"","{{amount}} off":"","{{amount}} off for first {{number}} months.":"","{{amount}} off for first {{period}}.":"","{{amount}} off forever.":"","{{discount}}% discount":"{{discount}}% 할인","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"{{trialDays}}일 무료","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"로그인 링크가 이메일로 전송되었습니다. 3분 내에 도착하지 않으면 스팸 폴더를 확인해주세요.",Account:"계정","Account settings":"계정 설정","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"무료 체험이 종료되면 선택한 요금제의 정상 가격이 청구됩니다. 그 전에 언제든지 취소할 수 있습니다.","Already a member?":"이미 회원이신가요?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"뒤로","Back to Log in":"로그인으로 돌아가기","Billing info":"","Black Friday":"","Cancel anytime.":"","Cancel subscription":"구독 취소","Cancellation reason":"취소 사유",Change:"","Check spam & promotions folders":"","Check with your mail provider":"",Choose:"","Choose a different plan":"다른 요금제 선택","Choose your newsletters":"뉴스레터 선택","Click here to retry":"",Close:"닫기",Comments:"댓글",Complimentary:"",Confirm:"확인","Confirm cancellation":"","Confirm subscription":"","Contact support":"",Continue:"계속","Continue subscription":"","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"","Delete account":"계정 삭제","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"계정이 없으신가요?",Edit:"",Email:"이메일","Email newsletter":"","Email preference updated.":"이메일 기본 설정이 업데이트되었습니다.","Email preferences":"이메일 설정",Emails:"이메일","Emails disabled":"이메일 사용 중지됨","Ends {{offerEndDate}}":"",Error:"","Expires {{expiryDate}}":"",Forever:"","Free Trial – Ends {{trialEnd}}":"","Get help":"도움말 받기","Get in touch for help":"","Get notified when someone replies to your comment":"댓글에 대한 답변이 올라오면 알림 받기","Give feedback on this post":"이 게시물에 대한 의견 제공하기","Help! I'm not receiving emails":"","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"비슷한 게시물 줄이기",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"관리",Monthly:"월간","More like this":"비슷한 게시물 더 보기",Name:"이름","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"이메일을 받지 못하고 계신가요?","Now check your email!":"지금 이메일을 확인해주세요!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"가격","Re-enable emails":"이메일 재활성화","Renews at {{price}}.":"",Retry:"다시 시도",Save:"저장","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"로그인 링크 전송 중...","Sending...":"전송 중...","Sign in":"로그인","Sign out":"","Sign up":"가입하기","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"{{amount}}일 동안의 무료 체험 시작","Starting {{startDate}}":"","Starting today":"","Submit feedback":"의견 제출",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"구독이 성공적으로 취소되었습니다","Thanks for the feedback!":"의견을 보내주셔서 감사합니다!","That didn't go to plan":"계획대로 진행되지 않았습니다","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"위 사이트는 초대된 사용자만 사용이 가능합니다. 접근을 위해서는 관리자에게 연락하세요.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"가입을 완료하려면 이메일의 확인 링크를 클릭하세요. 3분 이내에 도착하지 않으면 스팸 폴더를 확인해주세요!","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"모든 이메일 구독 취소",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"이메일 구독 취소는 {{title}}에 대한 유료 구독을 취소하지 않습니다",Update:"","Update your preferences":"설정 업데이트","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"이메일 주소를 찾을 수 없어 구독을 취소할 수 없습니다. 사이트 관리자에게 문의하세요.","Welcome back, {{name}}!":"","Welcome back!":"","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"연간","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"성공적으로 재구독되었습니다","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"최근 메시지를 스팸으로 표시했거나 메시지를 제공된 이메일 주소로 전달할 수 없어 이메일을 받지 못하고 계십니다.","You've successfully signed in.":"","Your account":"계정","Your input helps shape what gets published.":"귀하의 의견은 게시물을 제공하기 위해 큰 도움이 됩니다.","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},YS={"{{amount}} days free":"","{{amount}} off":"","{{amount}} off for first {{number}} months.":"","{{amount}} off for first {{period}}.":"","{{amount}} off forever.":"","{{discount}}% discount":"{{discount}}% хямдрал","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"{{trialDays}} өдөр үнэгүй","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Таны имэйл рүү нэвтрэх холбоосыг илгээлээ. Хэрвээ 3 минутын дотор ирэхгүй бол спамаа шалгана уу.",Account:"Бүртгэл","Account settings":"Бүртгэлийн тохиргоо","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Үнэгүй туршилтын хугацаа дуусахад таны данснаас сонгосон багцын үнэ хасагдана. Гэвч та өмнө нь цуцлах боломжтой.","Already a member?":"Бүртгэлтэй юу?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"Буцах","Back to Log in":"Нэвтрэх хэсэг рүү буцах","Billing info":"","Black Friday":"","Cancel anytime.":"","Cancel subscription":"Захиалгаа цуцлах","Cancellation reason":"Цуцалсан шалтгаан",Change:"","Check spam & promotions folders":"","Check with your mail provider":"",Choose:"","Choose a different plan":"Өөр багц сонгох","Choose your newsletters":"Товхимолоо сонгох","Click here to retry":"",Close:"Хаах",Comments:"Сэтгэгдлүүд",Complimentary:"",Confirm:"Баталгаажуулах","Confirm cancellation":"","Confirm subscription":"","Contact support":"",Continue:"Үргэлжлүүлэх","Continue subscription":"","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"","Delete account":"Бүртгэлээ устгах","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"Бүргэлгүй юу?",Edit:"",Email:"Имэйл","Email newsletter":"","Email preference updated.":"Имэйлийн тохиргоо шинэчлэгдлээ.","Email preferences":"Имэйлийн тохиргоо",Emails:"Имэйлүүд","Emails disabled":"Имэйлийг идэхгүй болгосон","Ends {{offerEndDate}}":"",Error:"","Expires {{expiryDate}}":"",Forever:"","Free Trial – Ends {{trialEnd}}":"","Get help":"Тусламж","Get in touch for help":"","Get notified when someone replies to your comment":"Хэн нэгэн таны сэтгэгдэлд хариу бичих үед мэдэгдэх","Give feedback on this post":"Энэ нийтлэлд саналаа өгөх","Help! I'm not receiving emails":"","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"Таалагдсангүй",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"Удирдах",Monthly:"Сарын","More like this":"Таалагдлаа",Name:"Нэр","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"Имэйл ирээгүй юу?","Now check your email!":"Одоо имэйлээ шалгана уу!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"Үнэ","Re-enable emails":"Имэйлийг дахин идэвхжүүлэх","Renews at {{price}}.":"",Retry:"Дахин оролдох",Save:"Хадгалах","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"Нэвтрэх холбоосыг илгээж байна...","Sending...":"Илгээж байна...","Sign in":"Нэвтрэх","Sign out":"","Sign up":"Бүртгүүлэх","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"{{amount}} өдрийн үнэгүй туршилтыг эхлүүлэх","Starting {{startDate}}":"","Starting today":"","Submit feedback":"Саналаа илгээх",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"Захиалгыг амжилттай цуцаллаа","Thanks for the feedback!":"Саналаа илгээсэнд баярлалаа!","That didn't go to plan":"","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"Энэхүү сайт руу зөвхөн урилгаар нэвтрэх боломжтой тул та админд нь хандана уу.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Тан руу илгээсэн баталгаажуулах холбоос дээр дарж бүртгэлээ дуусгана уу. Хэрвээ 3 минутын дотор ирэхгүй бол спамаа шалгана уу!","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"Бүх имэйлийг зогсоох",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Имэйлийг зогсоосон ч таны {{title}} төлбөртэй захиалга цуцлагдахгүй",Update:"","Update your preferences":"Тохиргоогоо шинэчлэх","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Энэхүү имэйл хаяг олдоогүй учир захиалгыг цуцлах боломжгүй. Та сайтын админд хандана уу.","Welcome back, {{name}}!":"","Welcome back!":"","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"Жилийн","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"Таны захиалга амжилттай дахин идэвхжлээ","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Таны имэйл хүлээж авахгүй байгаа шалтгаан нь нэг бол та аль нэг имэйлийг спам гэж тэмдэглэсэн, эсвэл таны хаяг имэйл хүлээж авах боломжгүй байна.","You've successfully signed in.":"","Your account":"Таны бүртгэл","Your input helps shape what gets published.":"Таны санал дараа дараагийн нийтлэлийг илүү чанартай болгоход туслана","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},BS={"{{amount}} days free":"Percuma {{amount}} hari","{{amount}} off":"","{{amount}} off for first {{number}} months.":"{{amount}} potongan untuk {{number}} bulan pertama.","{{amount}} off for first {{period}}.":"{{amount}} potongan untuk {{period}} pertama.","{{amount}} off forever.":"{{amount}} potongan selama-lamanya.","{{discount}}% discount":"{{discount}}% diskaun","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"{{memberEmail}} tidak akan menerima newsletter {{newsletterName}} lagi.","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"{{memberEmail}} tidak akan menerima email apabila seseorang membalas komen anda.","{{memberEmail}} will no longer receive this newsletter.":"{{memberEmail}} tidak akan menerima newsletter ini lagi.","{{trialDays}} days free":"Percuma {{trialDays}} hari","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Pautan log masuk telah dihantar ke peti masuk anda. Jika ia tidak sampai dalam masa 3 minit, pastikan anda menyemak folder spam anda.",Account:"Akaun","Account settings":"Tetapan akaun","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Selepas tempoh percubaan percuma tamat, anda akan dicaj harga biasa untuk peringkat yang anda pilih. Anda sentiasa boleh membatalkan sebelum itu.","Already a member?":"Sudah menjadi ahli?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"Ralat yang tidak dijangka berlaku. Sila cuba lagi atau <a>hubungi sokongan</a> jika ralat berterusan.",Back:"Kembali","Back to Log in":"Kembali ke Log masuk","Billing info":"Maklumat bil","Black Friday":"","Cancel anytime.":"Batalkan bila-bila masa.","Cancel subscription":"Batalkan langganan","Cancellation reason":"Alasan pembatalan",Change:"Ubah","Check spam & promotions folders":"Semak folder spam & promosi","Check with your mail provider":"Semak dengan pembekal mel anda",Choose:"Pilih","Choose a different plan":"Pilih pelan yang berbeza","Choose your newsletters":"Pilih newsletter anda","Click here to retry":"Klik di sini untuk cuba semula",Close:"Tutup",Comments:"Komen",Complimentary:"",Confirm:"Sahkan","Confirm cancellation":"Sahkan pembatalan","Confirm subscription":"Sahkan langganan","Contact support":"Hubungi sokongan",Continue:"Teruskan","Continue subscription":"Teruskan langganan","Could not sign in. Login link expired.":"Tidak dapat log masuk. Pautan log masuk tamat tempoh.","Could not update email! Invalid link.":"Tidak dapat mengemas kini e-mel! Pautan tidak sah.","Create a new contact":"Cipta kenalan baru","Current plan":"Pelam semasa","Delete account":"Padam akaun","Didn't mean to do this? Manage your preferences <button>here</button>.":"Tidak bermaksud untuk melakukan ini? Urus pilihan anda <butang>di sini</button>.","Don't have an account?":"Tiada akaun?",Edit:"Sunting",Email:"E-mel","Email newsletter":"Newsletter e-mel","Email preference updated.":"Emel pilihan dikemas kini.","Email preferences":"Emel pilihan",Emails:"E-mel","Emails disabled":"E-mel dilumpuhkan","Ends {{offerEndDate}}":"Tamat pada {{offerEndDate}}",Error:"Ralat","Expires {{expiryDate}}":"Luput pada {{expiryDate}}",Forever:"Selamanya","Free Trial – Ends {{trialEnd}}":"Percubaan Percuma – Tamat {{trialEnd}}","Get help":"Dapatkan bantuan","Get in touch for help":"Hubungi untuk mendapatkan bantuan","Get notified when someone replies to your comment":"Dapatkan pemberitahuan apabila seseorang membalas komen anda","Give feedback on this post":"Berikan maklum balas mengenai pos ini","Help! I'm not receiving emails":"Tolong! Saya tidak menerima e-mel","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"Jika newsletter ditanda sebagai spam, e-mel akan dilumpuhkan secara automatik untuk alamat tersebut untuk memastikan anda tidak lagi menerima sebarang mesej yang tidak diingini.","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"Jika aduan spam itu tidak disengajakan, atau anda ingin mula menerima e-mel semula, anda boleh melanggan semula e-mel dengan mengklik butang pada skrin sebelumnya.","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"Jika anda membatalkan langganan anda sekarang, anda akan terus mendapat akses sehingga {{periodEnd}}.","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"Jika anda mempunyai akaun e-mel korporat atau kerajaan, hubungi jabatan IT anda dan minta mereka membenarkan e-mel diterima daripada {{senderEmail}}","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"Jika anda ingin mula menerima e-mel semula, langkah terbaik seterusnya ialah menyemak alamat e-mel anda pada fail untuk sebarang isu dan kemudian klik langgan semula pada skrin sebelumnya.","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"Jika anda tidak menerima newsletter e-mel yang anda langgan, berikut adalah beberapa perkara untuk diperiksa.","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"Jika anda telah menyelesaikan semua semakan ini dan anda masih tidak menerima e-mel, anda boleh menghubungi untuk mendapatkan sokongan dengan menghubungi {{supportAddress}}.","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"Sekiranya kegagalan kekal diterima semasa cuba menghantar newsletter, e-mel akan dilumpuhkan pada akaun.","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"Dalam klien e-mel anda tambah {{senderEmail}} pada senarai kenalan anda. Ini memberi isyarat kepada pembekal mel anda bahawa e-mel yang dihantar dari alamat ini harus dipercayai.","Less like this":"Kurang macam ni",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':'Pastikan e-mel tidak tiba-tiba masuk ke dalam folder Spam atau Promosi peti masuk anda. Jika ya, klik pada "Tandakan sebagai bukan spam" dan/atau "Alih ke peti masuk".',Manage:"Urus",Monthly:"Bulanan","More like this":"Lebih seperti ini",Name:"Nama","Need more help? Contact support":"Perlukan bantuan lagi? Hubungi sokongan","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"Newsletter boleh dilumpuhkan pada akaun anda atas dua sebab: E-mel sebelumnya telah ditandakan sebagai spam atau percubaan menghantar e-mel mengakibatkan kegagalan kekal (bounce).","Not receiving emails?":"Tidak menerima e-mel?","Now check your email!":"Semak e-mel anda sekarang!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"Setelah melanggan semula, jika anda masih tidak melihat e-mel dalam peti masuk anda, semak folder spam anda. Sesetengah pembekal peti masuk menyimpan rekod aduan spam sebelumnya dan akan terus membenderakan e-mel. Jika ini berlaku, tandakan surat berita terkini sebagai 'Bukan spam' untuk mengalihkannya kembali ke peti masuk utama anda.","Permanent failure (bounce)":"Kegagalan kekal (bounce)",Plan:"Pelan","Plan checkout was cancelled.":"Daftar keluar pelan telah dibatalkan.","Plan upgrade was cancelled.":"Naik taraf pelan telah dibatalkan.","Please fill in required fields":"Sila isikan medan yang diperlukan",Price:"Harga","Re-enable emails":"Membolehkan semula e-mel","Renews at {{price}}.":"Perbaharui pada {{price}}.",Retry:"Cuba semula",Save:"Simpan","Send an email and say hi!":"Hantar e-mel dan katakan hai!","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"Hantar e-mel kepada {{senderEmail}} dan katakan hai. Ini juga boleh membantu memberi isyarat kepada pembekal mel anda bahawa e-mel ke dan dari alamat ini harus dipercayai.","Sending login link...":"Menghantar pautan log masuk...","Sending...":"Menghantar...","Sign in":"Log masuk","Sign out":"Log keluar","Sign up":"Daftar","Signup error: Invalid link":"Ralat daftar: Pautan tidak sah","Sorry, that didn’t work.":"Maaf, itu tidak berfungsi.","Spam complaints":"Aduan spam","Start {{amount}}-day free trial":"Mulakan percubaan percuma {{amount}} hari","Starting {{startDate}}":"Mulai {{startDate}}","Starting today":"Mulai hari ini","Submit feedback":"Serahkan maklum balas",Subscribe:"Langgan",Subscribed:"Dilanggan",Success:"Berjaya","Success! Check your email for magic link to sign-in.":"Berjaya! Semak e-mel anda untuk magic link untuk log masuk.","Success! Your account is fully activated, you now have access to all content.":"Berjaya! Akaun anda telah diaktifkan sepenuhnya, anda kini mempunyai akses ke semua kandungan.","Success! Your email is updated.":"Berjaya! E-mel anda dikemas kini.","Successfully unsubscribed":"Pemberhentian langganan berjaya","Thanks for the feedback!":"Terima kasih atas maklum balas!","That didn't go to plan":"Itu tidak berjalan sesuai dengan rancangan","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"Alamat e-mel yang kami miliki untuk anda adalah {{memberEmail}} — jika itu tidak betul, anda boleh mengemas kini di <button>ruang tetapan akaun</button> anda.","There was a problem submitting your feedback. Please try again a little later.":"Terdapat masalah menghantar maklum balas anda. Sila cuba sebentar lagi.","This site is invite-only, contact the owner for access.":"Laman web ini hanya untuk jemputan, hubungi pemilik untuk akses.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Untuk melengkapkan pendaftaran, klik pautan pengesahan di peti masuk anda. Jika ia tidak tiba dalam masa 3 minit, semak folder spam anda!","Try free for {{amount}} days, then {{originalPrice}}.":"Cuba secara percuma selama {{amount}} hari, kemudian {{originalPrice}}.","Unlock access to all newsletters by becoming a paid subscriber.":"Buka akses ke semua newsletter dengan menjadi pelanggan berbayar.","Unsubscribe from all emails":"Berhenti langganan dari semua e-mel",Unsubscribed:"Langganan diberhentikan","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Memberhentikan langganan dari e-mel tidak akan membatalkan langganan berbayar anda ke {{title}}",Update:"Kemas kini","Update your preferences":"Kemas kini keutamaan anda","Verify your email address is correct":"Sahkan jika alamat e-mel anda betul","View plans":"Lihat pelan","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Kami tidak dapat membatalkan langganan anda kerana alamat e-mel tidak ditemui. Sila hubungi pemilik laman web.","Welcome back, {{name}}!":"Selamat kembali, {{name}}!","Welcome back!":"Selamat kembali!","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"Apabila peti masuk gagal menerima e-mel, ia biasanya disebut sebagai bounce. Dalam banyak kes, ini hanya sementara. Walau bagaimanapun, dalam beberapa kes, e-mel bounce boleh dikembalikan sebagai kegagalan kekal apabila alamat e-mel tidak sah atau tidak wujud.","Why has my email been disabled?":"Mengapa e-mel saya telah dilumpuhkan?",Yearly:"Tahunan","You currently have a free membership, upgrade to a paid subscription for full access.":"Anda kini mempunyai keahlian percuma, naik taraf ke langganan berbayar untuk akses penuh.","You have been successfully resubscribed":"Anda telah berjaya melanggan semula","You're currently not receiving emails":"Anda kini tidak menerima e-mel","You're not receiving emails":"Anda tidak menerima e-mel","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Anda tidak menerima e-mel kerana anda sama ada menandai mesej terkini sebagai spam, atau kerana mesej tidak dapat dihantar ke alamat e-mel yang diberikan.","You've successfully signed in.":"Anda telah berjaya log masuk.","Your account":"Akaun anda","Your input helps shape what gets published.":"Input anda membantu membentuk apa yang diterbitkan.","Your subscription will expire on {{expiryDate}}":"Langganan anda akan tamat tempoh pada {{expiryDate}}","Your subscription will renew on {{renewalDate}}":"Langganan anda akan diperbaharui pada {{renewalDate}}","Your subscription will start on {{subscriptionStart}}":"Langganan anda akan bermula pada {{subscriptionStart}}"},HS={"{{amount}} days free":"{{amount}} dagen gratis","{{amount}} off":"{{amount}} korting","{{amount}} off for first {{number}} months.":"{{amount}} korting voor de eerste {{number}} maanden.","{{amount}} off for first {{period}}.":"{{amount}} korting voor de eerste {{period}}.","{{amount}} off forever.":"{{amount}} korting voor altijd.","{{discount}}% discount":"{{discount}}% korting","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"{{trialDays}} dagen gratis","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Je hebt een email met een login link ontvangen. Check je spamfolder als hij niet binnen de 3 minuten aankomt.",Account:"Account","Account settings":"Gegevens","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Na de proefperiode zal het normale tarief in rekening worden gebracht voor het door jou gekozen abonnement.","Already a member?":"Al lid?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"Terug","Back to Log in":"Terug naar inloggen","Billing info":"Betaalgegevens","Black Friday":"Black Friday","Cancel anytime.":"Altijd opzegbaar.","Cancel subscription":"Abonnement opzeggen","Cancellation reason":"Reden voor opzegging",Change:"Wijzigen","Check spam & promotions folders":"Check je spam folders","Check with your mail provider":"Check bij je e-mail provider",Choose:"Kies","Choose a different plan":"Kies een ander abonnement","Choose your newsletters":"Kies jouw nieuwsbrieven","Click here to retry":"Click hier om opnieuw te proberen",Close:"Sluiten",Comments:"Reacties",Complimentary:"Gratis",Confirm:"Bevestigen","Confirm cancellation":"Bevestig opzegging","Confirm subscription":"Bevestig abonnement","Contact support":"",Continue:"Doorgaan","Continue subscription":"","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"Huidig abonnement","Delete account":"Account verwijderen","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"Heb je nog geen account?",Edit:"Bewerken",Email:"E-mail","Email newsletter":"Nieuwsbrief","Email preference updated.":"E-mailinstellingen aanpassen","Email preferences":"E-mailinstellingen",Emails:"E-mails","Emails disabled":"E-mails zijn uitgeschakeld","Ends {{offerEndDate}}":"Eindigt op {{offerEndDate}}",Error:"Fout","Expires {{expiryDate}}":"Verloopt op {{expiryDate}}",Forever:"Voor altijd","Free Trial – Ends {{trialEnd}}":"","Get help":"Lees meer","Get in touch for help":"Neem contact op voor hulp","Get notified when someone replies to your comment":"Blijf op de hoogte als iemand op jouw reactie reageert","Give feedback on this post":"Deel je mening over dit artikel","Help! I'm not receiving emails":"","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"Minder hiervan",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"Beheer",Monthly:"Maandelijks","More like this":"Meer hiervan",Name:"Naam","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"Ontvang je geen e-mails?","Now check your email!":"Check nu je e-mail!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"Prijs","Re-enable emails":"E-mails weer inschakelen","Renews at {{price}}.":"",Retry:"Opnieuw proberen",Save:"Opslaan","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"Inloglink versturen...","Sending...":"Versturen...","Sign in":"Inloggen","Sign out":"","Sign up":"Registreren","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"Start gratis je {{amount}}-daagse proefperiode","Starting {{startDate}}":"","Starting today":"","Submit feedback":"Deel je feedback",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"Succesvol uitgeschreven","Thanks for the feedback!":"Bedankt voor je feedback!","That didn't go to plan":"Er ging iets mis","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"Deze site is alleen toegankelijk op uitnodiging, neem contact op met de eigenaar.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Klik op de bevestigingslink in de e-mail om je registratie af te ronden. Check ook je spamfolder als hij niet binnen de 3 minuten aankomt.","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"Uitschrijven voor alles",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Je betaalde abonnement voor {{title}} wordt niet geannuleerd als je je uitschrijft voor e-mails",Update:"","Update your preferences":"Voorkeuren aanpassen","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Het is niet gelukt om je uit te schrijven, omdat je e-mailadres niet is gevonden. Neem contact met ons op.","Welcome back, {{name}}!":"","Welcome back!":"","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"Jaarlijks","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"Je bent weer succesvol geabonneerd","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Je ontvangt geen e-mails omdat je ofwel een recent bericht als spam had gemarkeerd, of omdat de berichten niet verzonden konden worden naar jouw e-mailadres.","You've successfully signed in.":"","Your account":"Jouw account","Your input helps shape what gets published.":"Jouw mening helpt bepalen wat er gepubliceerd wordt.","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},qS={"{{amount}} days free":"","{{amount}} off":"","{{amount}} off for first {{number}} months.":"","{{amount}} off for first {{period}}.":"","{{amount}} off forever.":"","{{discount}}% discount":"{{discount}}% rabatt","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"{{trialDays}} dager gratis","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"En påloggingslenke har blitt sendt til innboksen din. Hvis den ikke kommer innen 3 minutter, må du sjekke søppelposten din.",Account:"Konto","Account settings":"Kontoinnstillinger","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Etter at en gratis prøveperiode er over, vil du bli belastet den vanlige prisen for nivået du har valgt. Du kan alltid avbryte før det.","Already a member?":"Allerede medlem?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"Tilbake","Back to Log in":"Tilbake til innlogging","Billing info":"","Black Friday":"","Cancel anytime.":"","Cancel subscription":"Avbryt abonnement","Cancellation reason":"Grunn til avbryting",Change:"","Check spam & promotions folders":"","Check with your mail provider":"",Choose:"","Choose a different plan":"Velg et annet nivå","Choose your newsletters":"Velg dine nyhetsbrev","Click here to retry":"",Close:"Lukk",Comments:"Kommentarer",Complimentary:"",Confirm:"Bekreft","Confirm cancellation":"","Confirm subscription":"","Contact support":"",Continue:"Fortsett","Continue subscription":"","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"","Delete account":"Slett konto","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"Har du ikke konto?",Edit:"",Email:"Epost","Email newsletter":"","Email preference updated.":"Innstillinger for epost oppdatert","Email preferences":"Innstillinger for epost",Emails:"Epost","Emails disabled":"Epost deaktivert","Ends {{offerEndDate}}":"",Error:"","Expires {{expiryDate}}":"",Forever:"","Free Trial – Ends {{trialEnd}}":"","Get help":"Få hjelp","Get in touch for help":"","Get notified when someone replies to your comment":"Få varsel dersom noen svarer på kommentaren din","Give feedback on this post":"Gi tilbakemelding på dette innlegget","Help! I'm not receiving emails":"","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"Mindre som dette",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"Administrer",Monthly:"Månedlig","More like this":"Mer som dette",Name:"Navn","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"Mottar du ikke epost?","Now check your email!":"Sjekk eposten din!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"Pris","Re-enable emails":"Re-aktiver epost","Renews at {{price}}.":"",Retry:"Prøv på nytt",Save:"Lagre","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"Sender påloggingslenke","Sending...":"Sender...","Sign in":"Logg inn","Sign out":"","Sign up":"Opprett bruker","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"Start gratis prøveperiode på {{amount}} dager","Starting {{startDate}}":"","Starting today":"","Submit feedback":"Send tilbakemelding",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"Avmelding vellykket","Thanks for the feedback!":"Takk for tilbakemeldingen!","That didn't go to plan":"Det gikk ikke som planlagt","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"Denne siten er kun fo inviterte. Kontakt eieren for invitasjon.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"For å fullføre registreringen, klikk på bekreftelseslenken i innboksen din. Hvis den ikke kommer innen 3 minutter, må du sjekke søppelposten din!","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"Meld deg av mottak av all epost",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Å melde seg av e-poster vil ikke avbryte abonnementet ditt på {{title}}",Update:"","Update your preferences":"Oppdater dine valg","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Vi kunne ikke melde deg av siden e-postadressen ikke ble funnet. Vennligst kontakt nettstedseieren.","Welcome back, {{name}}!":"","Welcome back!":"","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"Årlig","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"Du har blitt meldt på igjen","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Du mottar ikke e-post fordi du enten nylig har merket en melding som spam, eller fordi meldinger ikke kunne leveres til den oppgitte e-postadressen din.","You've successfully signed in.":"","Your account":"Din konto","Your input helps shape what gets published.":"Din tilbakemelding bidrar til å forme hva som blir publisert.","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},VS={"{{amount}} days free":"","{{amount}} off":"","{{amount}} off for first {{number}} months.":"","{{amount}} off for first {{period}}.":"","{{amount}} off forever.":"","{{discount}}% discount":"Rabat {{discount}}%","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"{{trialDays}} darmowych dni","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Link do logowania został wysłany do twojej skrzynki odbiorczej. Jeśli nie dotrze w ciągu 3 minut, sprawdź swój folder spamu.",Account:"Konto","Account settings":"Ustawienia konta","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Po zakończeniu okresu próbnego zostanie naliczona regularna opłata za wybrany poziom subskrypcji. Zawsze możesz anulować subskrypcję zanim to nastąpi.","Already a member?":"Masz już konto?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"Wstecz","Back to Log in":"Wróć do logowania","Billing info":"","Black Friday":"","Cancel anytime.":"","Cancel subscription":"Anuluj subskrypcję","Cancellation reason":"Powód anulowania",Change:"","Check spam & promotions folders":"","Check with your mail provider":"",Choose:"","Choose a different plan":"Wybierz inny plan","Choose your newsletters":"Wybierz swoje newslettery","Click here to retry":"",Close:"Zamknij",Comments:"Komentarze",Complimentary:"",Confirm:"Potwierdź","Confirm cancellation":"","Confirm subscription":"","Contact support":"",Continue:"Dalej","Continue subscription":"","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"","Delete account":"Skasuj konto","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"Nie masz jeszcze konta?",Edit:"",Email:"Email","Email newsletter":"","Email preference updated.":"Ustawienia email zaktualizowane","Email preferences":"Ustawienia email",Emails:"Emaile","Emails disabled":"Wysyłanie emaili zablokowane","Ends {{offerEndDate}}":"",Error:"","Expires {{expiryDate}}":"",Forever:"","Free Trial – Ends {{trialEnd}}":"","Get help":"Uzyskaj pomoc","Get in touch for help":"","Get notified when someone replies to your comment":"Otrzymaj powiadomienie gdy ktoś odpowie na twój komentarz","Give feedback on this post":"Oceń ten wpis","Help! I'm not receiving emails":"","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"Mniej podobnych",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"Zarządzaj",Monthly:"Miesięcznie","More like this":"Więcej podobnych",Name:"Imię i nazwisko","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"Nie dostajesz emaili?","Now check your email!":"Teraz sprawdź swoją pocztę!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"Cena","Re-enable emails":"Włącz ponownie emaile","Renews at {{price}}.":"",Retry:"Powtórz",Save:"Zapisz","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"Wysyłanie linku do logowania...","Sending...":"Wysyłanie...","Sign in":"Zaloguj się","Sign out":"","Sign up":"Zarejestruj się","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"Rozpocznij {{amount}}-dniowy okres próbny","Starting {{startDate}}":"","Starting today":"","Submit feedback":"Wyślij ocenę",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"Wypisanie udane","Thanks for the feedback!":"Dziękujemy za ocenę!","That didn't go to plan":"Coś poszło nie tak","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"Ta strona jest tylko na zaproszenie, skontaktuj się z właścicielem aby uzyskać dostęp.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Aby dokończyć rejestrację, kliknij w link przesłany na twoją skrzynkę pocztową. Jeśli nie dotrze on w ciągu 3 minut, sprawdź folder spamu!","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"Wypisz się w wszystkich emaili",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Wypisanie się z otrzymywania emaili nie powoduje anulowania płatnej subskrypcji {{title}}",Update:"","Update your preferences":"Zaktualizuj preferencje","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Nie udało się wypisać, bo nie znaleziono adresu email. Skontaktuj się w właścicielem strony.","Welcome back, {{name}}!":"","Welcome back!":"","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"Rocznie","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"Zostałeś ponownie zapisany","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Nie otrzymujesz powiadomień email, ponieważ oznaczyłeś ostatnią wiadomość jako spam lub nie udało się dostarczyć wiadomości na podany adres email.","You've successfully signed in.":"","Your account":"Twoje konto","Your input helps shape what gets published.":"Twoja ocena pomoże nam lepiej kształtować nasz publikacje.","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},WS={"{{amount}} days free":"","{{amount}} off":"","{{amount}} off for first {{number}} months.":"","{{amount}} off for first {{period}}.":"","{{amount}} off forever.":"","{{discount}}% discount":"{{discount}}% de desconto","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"{{trialDays}} dias grátis","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Um link de acesso foi enviado para o teu email. Se o email não chegar dentro de 3 minutos, verifica a pasta de spam/lixo do teu email.",Account:"Conta","Account settings":"Definições de conta","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Após o fim do teste grátis, será cobrado o valor normal para o nível escolhido. Podes sempre cancelar até esse momento para evitar ser cobrado.","Already a member?":"Já és membro?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"Voltar","Back to Log in":"Voltar ao login","Billing info":"","Black Friday":"","Cancel anytime.":"","Cancel subscription":"Cancelar subscrição","Cancellation reason":"Motivo para o cancelamento",Change:"","Check spam & promotions folders":"","Check with your mail provider":"",Choose:"","Choose a different plan":"Escolhe um plano diferente","Choose your newsletters":"Escolhe as tuas newsletters","Click here to retry":"",Close:"Fechar",Comments:"Comentários",Complimentary:"",Confirm:"Confirmar","Confirm cancellation":"","Confirm subscription":"","Contact support":"",Continue:"Continuar","Continue subscription":"","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"","Delete account":"Eliminar a conta","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"Não tens conta?",Edit:"",Email:"Email","Email newsletter":"","Email preference updated.":"Preferências de email atualizadas.","Email preferences":"Preferências de email",Emails:"Emails","Emails disabled":"Email desativado","Ends {{offerEndDate}}":"",Error:"","Expires {{expiryDate}}":"",Forever:"","Free Trial – Ends {{trialEnd}}":"","Get help":"Obter ajuda","Get in touch for help":"","Get notified when someone replies to your comment":"Ser notificado quando alguém responde a um comentário teu","Give feedback on this post":"Dar feedback a este artigo","Help! I'm not receiving emails":"","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"Menos como este",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"Gerir",Monthly:"Mensalmente","More like this":"Mais como este",Name:"Nome","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"Não recebes os emails?","Now check your email!":"Verifica o teu email agora!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"Preço","Re-enable emails":"Reativar emails","Renews at {{price}}.":"",Retry:"Tentar novamente",Save:"Guardar","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"A enviar link de acesso...","Sending...":"A enviar...","Sign in":"Entrar","Sign out":"","Sign up":"Registar","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"Iniciar teste de {{amount}} dias","Starting {{startDate}}":"","Starting today":"","Submit feedback":"Enviar feedback",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"Subscrição cancelada com sucesso","Thanks for the feedback!":"Obrigado pelo teu feedback!","That didn't go to plan":"Algo não correu como planeado","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"O acesso a este site é feito apenas por convite. Entra em contacto com o proprietário para teres acesso.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Para completar o registo, clica no link de confirmação enviado para o teu email. Se não o receberes dentro de 3 minutos, verifica a pasta de spam/lixo do teu email!","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"Cancelar subscrição de todos os emails",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Cancelar a subscrição dos emails não irá cancelar a tua subscrição paga em {{title}}",Update:"","Update your preferences":"Atualizar as tuas preferências","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Não conseguimos cancelar a tua subscrição, uma vez que o endereço de email não foi encontrado. Por favor contacta o proprietário do site.","Welcome back, {{name}}!":"","Welcome back!":"","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"Anualmente","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"A tua subscrição foi renovada com sucesso","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Não estás a receber emails porque marcaste recentemente uma das nossas mensagens como spam, ou porque as mensagens não puderam ser entregues no endereço de email indicado.","You've successfully signed in.":"","Your account":"A tua conta","Your input helps shape what gets published.":"O teu feedback ajuda a decidir o conteúdo que será publicado no futuro.","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},GS={"{{amount}} days free":"{{amount}} dias grátis","{{amount}} off":"{{amount}} de desconto","{{amount}} off for first {{number}} months.":"{{amount}} de desconto nos primeiros {{number}} meses.","{{amount}} off for first {{period}}.":"{{amount}} de desconto nos primeiros {{period}}.","{{amount}} off forever.":"{{amount}} de desconto para sempre.","{{discount}}% discount":"{{discount}}% de desconto","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"{{memberEmail}} não receberá mais a newsletter {{newsletterName}}.","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"{{memberEmail}} não receberá mais e-mails quando alguém responder seus comentários.","{{memberEmail}} will no longer receive this newsletter.":"{{memberEmail}} não receberá mais esta newsletter.","{{trialDays}} days free":"{{trialDays}} dias grátis","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Um link de acesso foi enviado para o seu e-mail. Se a mensagem não chegar dentro de 3 minutos, verifique sua pasta de spam.",Account:"Conta","Account settings":"Configurações de conta","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Quando o teste grátis acabar, será cobrado o preço normal do plano que você escolheu. Você sempre pode cancelar antes.","Already a member?":"Já é membro?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"Ocorreu um erro inesperado. Tente novamente ou <a>entre em contato com o suporte</a> se o erro persistir.",Back:"Voltar","Back to Log in":"Voltar para login","Billing info":"Informações de cobrança","Black Friday":"Black Friday","Cancel anytime.":"Cancele quando quiser.","Cancel subscription":"Cancelar inscrição","Cancellation reason":"Motivo do cancelamento",Change:"Alterar","Check spam & promotions folders":"Verificar pastas de spam e promoções","Check with your mail provider":"Verificar com seu provedor de e-mail",Choose:"Escolher","Choose a different plan":"Escolher um plano diferente","Choose your newsletters":"Escolher suas newsletters","Click here to retry":"Clique aqui para tentar novamente",Close:"Fechar",Comments:"Comentários",Complimentary:"Cortesia",Confirm:"Confirmar","Confirm cancellation":"Confirmar cancelamento","Confirm subscription":"Confirmar inscrição","Contact support":"Contatar suporte",Continue:"Continuar","Continue subscription":"Continuar inscrição","Could not sign in. Login link expired.":"Não foi possível fazer login. O link de acesso expirou.","Could not update email! Invalid link.":"Não foi possível atualizar o e-mail! Link inválido.","Create a new contact":"Criar um novo contato","Current plan":"Plano atual","Delete account":"Excluir conta","Didn't mean to do this? Manage your preferences <button>here</button>.":"Não era isso que você queria? Gerencie suas preferências <button>aqui</button>.","Don't have an account?":"Não tem uma conta?",Edit:"Editar",Email:"E-mail","Email newsletter":"Newsletter por e-mail","Email preference updated.":"Preferências de e-mail atualizadas.","Email preferences":"Preferências de e-mail",Emails:"E-mails","Emails disabled":"E-mails desativados","Ends {{offerEndDate}}":"Termina em {{offerEndDate}}",Error:"Erro","Expires {{expiryDate}}":"Expira em {{expiryDate}}",Forever:"Para sempre","Free Trial – Ends {{trialEnd}}":"Teste grátis – Termina em {{trialEnd}}","Get help":"Obter ajuda","Get in touch for help":"Entre em contato para obter ajuda","Get notified when someone replies to your comment":"Receber notificação quando alguém responder seu comentário","Give feedback on this post":"Enviar feedback sobre esta postagem","Help! I'm not receiving emails":"Ajuda! Não estou recebendo e-mails","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"Se uma newsletter for marcada como spam, os e-mails são automaticamente desativados para esse endereço para garantir que você não receba mais mensagens indesejadas.","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"Se a reclamação de spam foi acidental ou se você deseja começar a receber e-mails novamente, pode se inscrever novamente para receber e-mails clicando no botão na tela anterior.","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"Se você cancelar sua inscrição agora, continuará tendo acesso até {{periodEnd}}.","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"Se você tiver uma conta de e-mail corporativa ou governamental, entre em contato com o departamento de TI e peça para permitir que os e-mails sejam recebidos de {{senderEmail}}","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"Se você deseja começar a receber e-mails novamente, os próximos passos são verificar seu endereço de e-mail no arquivo para verificar se há problemas e, em seguida, clicar em se inscrever novamente na tela anterior.","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"Se você não estiver recebendo a newsletter por e-mail à qual se inscreveu, verifique algumas coisas.","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"Se você concluiu todas essas verificações e ainda não está recebendo e-mails, pode entrar em contato para obter suporte entrando em contato com {{supportAddress}}.","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"No caso de uma falha permanente ser recebida ao tentar enviar uma newsletter, os e-mails serão desativados na conta.","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"No seu cliente de e-mail, adicione {{senderEmail}} à sua lista de contatos. Isso sinaliza ao seu provedor de e-mail que os e-mails enviados deste endereço devem ser confiáveis.","Less like this":"Menos como este",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':'Verifique se os e-mails não estão indo parar acidentalmente nas pastas Spam ou Promoções da sua caixa de entrada. Se estiverem, clique em "Marcar como não spam" e/ou "Mover para a caixa de entrada".',Manage:"Gerenciar",Monthly:"Mensal","More like this":"Relacionados",Name:"Nome","Need more help? Contact support":"Precisa de mais ajuda? Contate o suporte","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"As newsletters podem ser desativadas na sua conta por dois motivos: um e-mail anterior foi marcado como spam ou a tentativa de enviar um e-mail resultou em uma falha permanente (bounce).","Not receiving emails?":"Não está recebendo e-mails?","Now check your email!":"Agora veja seu e-mail!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"Depois de se inscrever novamente, se você ainda não vir e-mails na sua caixa de entrada, verifique sua pasta de spam. Alguns provedores de caixa de entrada mantêm um registro de reclamações anteriores de spam e continuarão a sinalizar e-mails. Se isso acontecer, marque a newsletter mais recente como 'Não é spam' para movê-la de volta para sua caixa de entrada principal.","Permanent failure (bounce)":"Falha permanente (bounce)",Plan:"Plano","Plan checkout was cancelled.":"Plano de checkout foi cancelado.","Plan upgrade was cancelled.":"Upgrade de plano foi cancelado.","Please fill in required fields":"Preencha os campos obrigatórios",Price:"Preço","Re-enable emails":"Reativar e-mails","Renews at {{price}}.":"Renova por {{price}}",Retry:"Tentar de novo",Save:"Salvar","Send an email and say hi!":"Envie um e-mail e diga oi!","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"Envie um e-mail para {{senderEmail}} e diga olá. Isso também pode ajudar a sinalizar ao seu provedor de e-mail que os e-mails de e para este endereço devem ser confiáveis.","Sending login link...":"Enviando link de acesso...","Sending...":"Enviando...","Sign in":"Entrar","Sign out":"Sair","Sign up":"Cadastrar","Signup error: Invalid link":"Erro de inscrição: link inválido","Sorry, that didn’t work.":"Desculpe, isso não funcionou.","Spam complaints":"Reclamações de spam","Start {{amount}}-day free trial":"Começar teste grátis de {{amount}} dias","Starting {{startDate}}":"Começando {{startDate}}","Starting today":"Começando hoje","Submit feedback":"Enviar avaliação",Subscribe:"Inscrever-se",Subscribed:"Inscrito",Success:"Sucesso","Success! Check your email for magic link to sign-in.":"Sucesso! Verifique seu e-mail para o link mágico de acesso.","Success! Your account is fully activated, you now have access to all content.":"Sucesso! Sua conta está totalmente ativada, agora você tem acesso a todo o conteúdo.","Success! Your email is updated.":"Sucesso! Seu e-mail foi atualizado.","Successfully unsubscribed":"Inscrição cancelada com sucesso","Thanks for the feedback!":"Obrigado pela avaliação!","That didn't go to plan":"Algo não saiu como planejado","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"O endereço de e-mail que temos para você é {{memberEmail}} — se isso não estiver correto, você pode atualizá-lo na sua <button>área de configurações da conta</button>.","There was a problem submitting your feedback. Please try again a little later.":"Houve um problema ao enviar sua avaliação. Tente novamente mais tarde.","This site is invite-only, contact the owner for access.":"Este site é apenas para convidados. Contate o proprietário para obter acesso.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Para completar o cadastro, clique no link de confirmação enviado para sua caixa de entrada. Se o link não chegar detro de 3 minutos, confira a pasta de spam!","Try free for {{amount}} days, then {{originalPrice}}.":"Experimente grátis por {{amount}} dias, depois {{originalPrice}}.","Unlock access to all newsletters by becoming a paid subscriber.":"Desbloqueie o acesso a todas as newsletters se tornando um assinante pago.","Unsubscribe from all emails":"Cancelar inscrição em todos os e-mails",Unsubscribed:"Cancelado","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Cancelar a inscrição nos e-mails não cancelará sua assinatura paga em {{title}}",Update:"atualizar","Update your preferences":"Atualizar preferências","Verify your email address is correct":"Verifique se o endereço de e-mail está correto","View plans":"Ver planos","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Não conseguimos cancelar sua inscrição já que o e-mail não foi encontrado. Por favor, entre em contato com o proprietário do site.","Welcome back, {{name}}!":"Bem-vindo de volta, {{name}}!","Welcome back!":"Bem-vindo de volta!","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"Quando uma caixa de entrada falha ao aceitar um e-mail, isso é comumente chamado de bounce. Em muitos casos, isso pode ser temporário. No entanto, em alguns casos, um e-mail com falha pode ser retornado como uma falha permanente quando um endereço de e-mail é inválido ou não existe.","Why has my email been disabled?":"Por que meu e-mail foi desativado?",Yearly:"Anualmente","You currently have a free membership, upgrade to a paid subscription for full access.":"Você atualmente tem uma assinatura gratuita, faça um upgrade para uma assinatura paga para ter acesso completo.","You have been successfully resubscribed":"Você foi reinscrito com sucesso","You're currently not receiving emails":"Você não está recebendo e-mails no momento","You're not receiving emails":"Você não está recebendo e-mails","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Você não está recebendo e-mails porque, ou classificou uma mensagem recente como spam, ou as mensagens não puderam ser entregues no endereço de e-mail que você forneceu.","You've successfully signed in.":"Você entrou com sucesso.","Your account":"Sua conta","Your input helps shape what gets published.":"Sua resposta ajuda a moldar o que será publicado.","Your subscription will expire on {{expiryDate}}":"Sua assinatura expirará em {{expiryDate}}","Your subscription will renew on {{renewalDate}}":"Sua assinatura será renovada em {{renewalDate}}","Your subscription will start on {{subscriptionStart}}":"Sua assinatura começará em {{subscriptionStart}}"},KS={"{{amount}} days free":"","{{amount}} off":"","{{amount}} off for first {{number}} months.":"","{{amount}} off for first {{period}}.":"","{{amount}} off forever.":"","{{discount}}% discount":"Reducere de {{discount}}%","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"{{trialDays}} zile gratuite","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Un link de autentificare a fost trimis în inbox-ul tău. Dacă nu ajunge în 3 minute, asigură-te că verifici folderul de spam.",Account:"Cont","Account settings":"Setări cont","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"După ce expiră perioada de încercare gratuită, vei fi taxat la prețul obișnuit pentru nivelul pe care l-ai ales. Poți anula în orice moment înainte de aceasta.","Already a member?":"Ești deja membru?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"Înapoi","Back to Log in":"Înapoi la Autentificare","Billing info":"","Black Friday":"","Cancel anytime.":"","Cancel subscription":"Anulează abonamentul","Cancellation reason":"Motivul anulării",Change:"","Check spam & promotions folders":"","Check with your mail provider":"",Choose:"","Choose a different plan":"Alege un plan diferit","Choose your newsletters":"Alege-ți newsletterele","Click here to retry":"",Close:"Închide",Comments:"Comentarii",Complimentary:"",Confirm:"Confirmă","Confirm cancellation":"","Confirm subscription":"","Contact support":"",Continue:"Continuă","Continue subscription":"","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"","Delete account":"Șterge contul","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"Nu ai un cont?",Edit:"",Email:"Email","Email newsletter":"","Email preference updated.":"Preferințele de email au fost actualizate.","Email preferences":"Preferințe de email",Emails:"Emailuri","Emails disabled":"Emailuri dezactivate","Ends {{offerEndDate}}":"",Error:"","Expires {{expiryDate}}":"",Forever:"","Free Trial – Ends {{trialEnd}}":"","Get help":"Obține ajutor","Get in touch for help":"","Get notified when someone replies to your comment":"Primește notificare când cineva răspunde la comentariul tău","Give feedback on this post":"Oferă feedback despre acest articol","Help! I'm not receiving emails":"","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"Mai puțin de genul acesta",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"Administrează",Monthly:"Lunar","More like this":"Mai multe de genul acesta",Name:"Nume","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"Nu primești emailuri?","Now check your email!":"Acum verifică-ți emailul!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"Preț","Re-enable emails":"Activează din nou emailurile","Renews at {{price}}.":"",Retry:"Reîncearcă",Save:"Salvează","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"Se trimite link-ul de autentificare...","Sending...":"Se trimite...","Sign in":"Autentificare","Sign out":"","Sign up":"Înregistrare","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"Începe perioada gratuită de {{amount}} zile","Starting {{startDate}}":"","Starting today":"","Submit feedback":"Trimite feedback",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"Dezabonare realizată cu succes","Thanks for the feedback!":"Mulțumim pentru feedback!","That didn't go to plan":"Asta nu a mers conform planului","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"Acest site este disponibil doar pe bază de invitație, contactează proprietarul pentru acces.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Pentru a finaliza înregistrarea, apasă pe link-ul de confirmare din inbox-ul tău. Dacă nu ajunge în 3 minute, verifică folderul de spam!","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"Dezabonează-te de la toate emailurile",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Dezabonarea de la emailuri nu va anula abonamentul plătit la {{title}}",Update:"","Update your preferences":"Actualizează-ți preferințele","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Nu am putut să te dezabonăm deoarece adresa de email nu a fost găsită. Te rugăm să contactezi proprietarul site-ului.","Welcome back, {{name}}!":"","Welcome back!":"","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"Anual","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"Te-ai reabonat cu succes","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Nu primești emailuri deoarece fie ai marcat un mesaj recent ca spam, fie pentru că mesajele nu pot fi livrate la adresa ta de email furnizată.","You've successfully signed in.":"","Your account":"Contul tău","Your input helps shape what gets published.":"Contribuția ta ajută la conturarea a ceea ce se publică.","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},JS={"{{amount}} days free":"","{{amount}} off":"","{{amount}} off for first {{number}} months.":"","{{amount}} off for first {{period}}.":"","{{amount}} off forever.":"","{{discount}}% discount":"Скидка {{discount}}%","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"{{trialDays}} дня(-ей) бесплатно","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Ссылка для входа была отправлена вам на email. Если письмо долго не приходит, проверьте папку Спам.",Account:"Аккаунт","Account settings":"Настройки аккаунта","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"После окончания бесплатного периода с вас будут взиматься регулярные платежи по выбранному тарифу. До этого момента вы можете отменить подписку в любое время.","Already a member?":"Уже есть аккаунт?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"Назад","Back to Log in":"Вернуться ко входу","Billing info":"","Black Friday":"","Cancel anytime.":"","Cancel subscription":"Отменить подписку","Cancellation reason":"Причина отмены",Change:"","Check spam & promotions folders":"","Check with your mail provider":"",Choose:"","Choose a different plan":"Выберите другой план","Choose your newsletters":"Выберите рассылки","Click here to retry":"",Close:"Закрыть",Comments:"Комментарии",Complimentary:"",Confirm:"Подтвердить","Confirm cancellation":"","Confirm subscription":"","Contact support":"",Continue:"Продолжить","Continue subscription":"","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"","Delete account":"Удалить аккаунт","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"У вас нет аккаунта?",Edit:"",Email:"Email","Email newsletter":"","Email preference updated.":"Настройки электронной почты обновлены.","Email preferences":"Настройки электронной почты",Emails:"Письма","Emails disabled":"Письма отключены","Ends {{offerEndDate}}":"",Error:"","Expires {{expiryDate}}":"",Forever:"","Free Trial – Ends {{trialEnd}}":"","Get help":"Получить помощь","Get in touch for help":"","Get notified when someone replies to your comment":"Оповещать, когда кто-то отвечает на ваш комментарий","Give feedback on this post":"Оставить отзыв на эту публикацию","Help! I'm not receiving emails":"","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"Меньше подобного",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"Управление",Monthly:"Ежемесячно","More like this":"Больше подобного",Name:"Имя","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"Не получаете письма?","Now check your email!":"Теперь проверьте свою электронную почту!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"Цена","Re-enable emails":"Снова включить письма","Renews at {{price}}.":"",Retry:"Повторить попытку",Save:"Сохранить","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"Отправка ссылки для входа...","Sending...":"Отправка...","Sign in":"Войти","Sign out":"","Sign up":"Зарегистрироваться","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"Начать {{amount}}-дневный пробный период","Starting {{startDate}}":"","Starting today":"","Submit feedback":"Отправить отзыв",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"Подписка успешно отменена","Thanks for the feedback!":"Спасибо за отзыв!","That didn't go to plan":"Что-то пошло не так","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"Этот сайт доступен только по приглашениям, свяжитесь с владельцем для получения доступа.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Чтобы завершить регистрацию, нажмите на ссылку подтверждения в вашем почтовом ящике. Если она не придет в течение 3 минут, проверьте папку Спам!","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"Отписаться от всех писем",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Отключение рассылки не отменит вашу платную подписку на {{title}}",Update:"","Update your preferences":"Обновить настройки","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Мы не смогли отменить вашу подписку, так как адрес электронной почты не найден. Пожалуйста, свяжитесь с владельцем сайта.","Welcome back, {{name}}!":"","Welcome back!":"","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"Ежегодно","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"Вы снова подписаны на рассылку","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Вы не получаете письма, так как либо вы пометили недавнее сообщение как спам, либо сообщения не могут быть доставлены на указанный вами email.","You've successfully signed in.":"","Your account":"Ваш аккаунт","Your input helps shape what gets published.":"Ваш отзыв поможет решить, что будет опубликовано дальше.","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},QS={"{{amount}} days free":"දින {{amount}} ක් නොමිලයේ","{{amount}} off":"{{amount}} ක වට්ටමක්","{{amount}} off for first {{number}} months.":"පළමු මාස {{number}} සඳහා {{amount}} ක වට්ටමක්","{{amount}} off for first {{period}}.":"පළමු {{period}} සඳහා {{amount}} ක වට්ටමක්","{{amount}} off forever.":"හැමදාටම {{amount}} ක වට්ටමක්","{{discount}}% discount":"{{discount}}% ක වට්ටමක්","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"{{memberEmail}} වෙත තවදුරටත් {{newsletterName}} newsletter නොලැබෙනු ඇත.","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"ඔබගේ comments සඳහා කිසිවෙකු reply කළ විට {{memberEmail}} වෙත තවදුරටත් email මඟින් දැනුම්දීමක් නොකෙරෙනු ඇත.","{{memberEmail}} will no longer receive this newsletter.":"මෙම newsletter එක {{memberEmail}} වෙත තවදුරටත් නොලැබෙනු ඇත.","{{trialDays}} days free":"දින {{trialDays}} ක් දක්වා නොමිලේ","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"වෙබ් අඩවියට පිවිසීම සඳහා link එකක් ඔබගේ email ලිපිනය වෙත යවා ඇත. එය විනාඩි 3ක් ඇතුළත නොපැමිණියේ නම් spam ෆෝල්ඩරය පරීක්ෂා කරන්න.",Account:"ගිණුම","Account settings":"ගිණුම් සැකසුම්","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"නොමිලයේ ලබාදෙන අත්හදාබැලීමේ කාලය අවසන් වූ පසුව, ඔබ තෝරාගන්නා ලද tier එක අනුව එහි සාමාන්‍යය මිල ගණන් අය වනු ඇත. ඊට පෙර ඕනෑම අවස්ථාවක මෙය අවලංගු කිරීමට ඔබට හැකියාව ඇත.","Already a member?":"දැනටමත් සාමාජිකයෙක්ද?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"එම උත්සාහය අසාර්ථක විය. තව ටික වේලාවකින් නැවත උත්සාහ කරන්න, මෙම ගැටළුව තවදුරටත් පවතින්නේ නම්, <a>සහායක අංශය සම්බන්ධ කරගන්න</a>.",Back:"ආපසු","Back to Log in":"ලොග් වීම සඳහා ආපසු","Billing info":"බිල්පත් පිළිබඳ තොරතුරු","Black Friday":"","Cancel anytime.":"ඕනෑම අවස්ථාවකදී අවලංගු කළ හැක.","Cancel subscription":"Subscription එක අවලංගු කරන්න","Cancellation reason":"අවලංගු කිරිමට හේතුව",Change:"වෙනස් කරන්න","Check spam & promotions folders":"Spam සහ promotions folders පරීක්ෂා කරන්න","Check with your mail provider":"ඔබගේ email සේවා සපයන්නා සමඟින් පරීක්ෂා කර බලන්න",Choose:"තෝරන්න","Choose a different plan":"වෙනත් plan එකක් තෝරන්න","Choose your newsletters":"ඔබගේ newsletter වර්ගය තෝරන්න","Click here to retry":"නැවත උත්සාහ කිරීම සඳහා මෙහි click කරන්න",Close:"වසන්න",Comments:"ප්‍රතිචාර",Complimentary:"ස්තුතිපූර්වක",Confirm:"තහවුරු කරන්න","Confirm cancellation":"අවලංගු කිරීම තහවුරු කරන්න","Confirm subscription":"subscribe කිරීම තහවුරු කරන්න","Contact support":"සහායක අංශය සම්බන්ධ කරගන්න",Continue:"ඉදිරියට යන්න","Continue subscription":"Subscription එක පවත්වාගෙන යන්න","Could not sign in. Login link expired.":"Sign in වීමට නොහැකි විය. Login link එක කල් ඉකුත් වී ඇත.","Could not update email! Invalid link.":"Email ලිපිනය update කළ නොහැකි විය. වැරදි link එකකි.","Create a new contact":"අලුත් contact එකක් නිර්මාණය කරන්න","Current plan":"දැනට පවතින plan එක","Delete account":"ගිණුම Delete කරන්න","Didn't mean to do this? Manage your preferences <button>here</button>.":"මෙය සිදු කිරීමට අදහස් නොකලේ ද? <button>මේ හරහා</button> ඔබගේ preferences manage කරගන්න.","Don't have an account?":"ගිණුමක් නොමැතිද?",Edit:"Edit කරන්න",Email:"Email","Email newsletter":"Email newsletter","Email preference updated.":"Email preference update කරන ලදී.","Email preferences":"Email preferences",Emails:"ඊමේල්","Emails disabled":"Emails නවත්වා ඇත","Ends {{offerEndDate}}":"{{offerEndDate}} දී අවසන් වනු ඇත",Error:"Error එකක්","Expires {{expiryDate}}":"{{expiryDate}} දින අවසන් වෙයි",Forever:"හැමදාටම","Free Trial – Ends {{trialEnd}}":"අත්හදාබැලීමේ කාලසීමාව {{trialEnd}} දින අවසන් වෙයි","Get help":"සහාය ලබාගන්න","Get in touch for help":"සහාය ලබාගැනීම සඳහා සම්බන්ධ වෙන්න","Get notified when someone replies to your comment":"ඔබේ ප්‍රතිචාරයට යම් අයෙකු පිළිතුරු දුන් විට දැනුම් දෙන්න","Give feedback on this post":"මෙම post එකට ඔබේ අදහස එක් කරන්න","Help! I'm not receiving emails":"සහාය අවශ්‍යයයි! මට emails ලැබෙන්නේ නැහැ.","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"Newsletter එකක් spam ලෙස flag වුවහොත්, එම email ලිපිනයට emails ලැබීම ස්ව්‍යංක්‍රීයවම අක්‍රීය කිරීම හරහා ඔබට අනව්‍යශ්‍යය messages ලැබීම නතර වන බව සහතික කෙරෙනු ඇත.","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"Spam සඳහා කළ පැමිණිල්ල අත්වැරදීමකින් සිදු වූවක් හෝ, ඔබ නැවතත් emails ලබාගැනීමට කැමැත්තෙන් සිටින්නේ නම්, පෙර screen එකේ ඇති button එක හරහා emails වලට නැවත subscribe කිරීමේ හැකියාව ඇත.","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"ඔබගේ subscription එක මෙම මොහොතේ cancel කළහොත්, {{periodEnd}} දක්වා ඔබ‍ගේ access නොවෙනස්ව පවතිනු ඇත.","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"ඔබ ව්‍යාපාරික හෝ රාජ්‍යය email ලිපිනයක් භාවිතා කරන්නේ නම්, {{senderEmail}} ලිපිනයෙන් එන emails allow කරන ලෙස ඔබගේ IT department එකට දැනුම් දීමට කටයුතු කරන්න.","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"ඔබ නැවත emails ලබාගැනීමට කැමති නම්, වඩාත්ම සුදුසු මීළඟ පියවර වන්නේ ‍ඔබ භාවිතා කරන email ලිපිනයෙහි යම්කිසි ගැටළුවක් ඇත්දැයි පරීක්ෂා කිරීමෙන් අනතුරුව, පෙර screen එක හරහා resubscribe මත click කිරීමයි.","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"ඔබ subscribe කළ newsletters ඔබට නොලැබෙන්නේ නම්, මේ දේවල් පරීක්ෂා කර බලන්න.","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"මෙහි සඳහන් සියළුම දේ පරීක්ෂා කිරීමෙන් අනතුරුවත් ඔබට emails නොලැබෙන්නේ නම්, {{supportAddress}} සම්බන්ධ කරගනිමින් සහාය ඉල්ලා සිටින්න.","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"Newsletter එකක් යැවීමේ අවස්ථාවකදී permanent failure එකක් වාර්ථා වුවහොත්, මෙම ගිණුමෙහි emails අක්‍රීය කෙරෙනු ඇත.","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"ඔබගේ email client එකෙහි contact list එකට {{senderEmail}} ලිපිනය add කරගන්න. මෙම ලිපිනය හරහා ලැබෙන emails විශ්වාසදායී බව මේ හරහා ඔබගේ emailසේවා සපයන්නාට සංඥා කෙරෙනු ඇත.","Less like this":"මෙවැනි දෑ අඩුවෙන් පෙන්වන්න",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':'Spam හෝ inbox එකෙහි ඇති Promotions folder වලට emails අත්වැරදීමකින් හෝ ළඟා වන්නේ ද යන්න සහතික කරගන්න. එසේ වන්නේ නම්, "Mark as not spam" සහ/හෝ "Move to inbox" යන්නෙහි click කරන්න.',Manage:"කළමනාකරණය කරන්න",Monthly:"මාසිකව","More like this":"මෙවැනි දෑ වැඩියෙන් පෙන්වන්න",Name:"නම","Need more help? Contact support":"තවදුරටත් සහාය අවශ්‍යයි ද? සහායක සේවාව සම්බන්ධ කරගන්න","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"ඔබගේ ගිණුමෙහි newsletters අක්‍රීය වීමට හේතු දෙකක් දැක්විය හැකිය: පෙර යවන ලද email එකක් spam ලෙස සටහන් කිරීම, හෝ email එකක් යැවීමට උත්සාහ කිරීමේදී permenent faulure (bounce) එකක් වීමක් වාර්ථා වීම.","Not receiving emails?":"Emails ලැබෙන්නේ නැද්ද?","Now check your email!":"දැන් ඔබගේ email එක පරික්ෂා කරන්න!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"නැවත subscribe කළ විටත් ඔබගේ inbox එකට email ලැබෙන්නේ නැතිනම්, spam folder එක පරීක්ෂා කරන්න. ඇතැම් සේවා සපයන්නන් මීට පෙර spam සම්බන්ධව ලැබුණු පැමිණිලි පාදක කරගෙන තවදුරටත් emails spam ලෙස ලකුණු කරනු ලබනවා. එසේ වී ඇත්නම්, අලුතින්ම ලැබුණු newsletter එක ඔබගේ primary inbox එකට යැවීමට 'Not spam' ලෙස සළකුනු කරන්න.","Permanent failure (bounce)":"Permanent failure (bounce) එකක්",Plan:"Plan එක","Plan checkout was cancelled.":"Plan එක checkout කිරීම අවලංගු කරන ලදී.","Plan upgrade was cancelled.":"Plan එක upgrade කිරීම අවලංගු කරන ලදී.","Please fill in required fields":"කරුණාකර required files පිරවීමට කටයුතු කරන්න",Price:"මිල","Re-enable emails":"ඉමේල් නැවත සක්‍රීය කරන්න","Renews at {{price}}.":"{{price}} ක මුදලකට renew වනු ඇත.",Retry:"නැවත උත්සහකරන්න",Save:"Save කරන්න","Send an email and say hi!":"Email එකක් send කරමින් hi! කියන්න","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"{{senderEmail}} වෙත hello ලෙස සඳහන් කරමින් email එකක් එවන්න. මේ හරහා එම email ලිපිනයෙන් ලැබෙන සහ ලිපිනයට යවන emails විශ්වාසදායී බව ඔබගේ email සේවා සපයන්නාට සංඥා කෙරෙනු ඇත.","Sending login link...":"පිවිසුම් සබැඳිය යවමින්...","Sending...":"යවමින්...","Sign in":"ලොග් වෙන්න","Sign out":"Sign out වෙන්න","Sign up":"ලියාපදිංචි වෙන්න","Signup error: Invalid link":"Signup වීම අසාර්ථකයි: වැරදි link එකකි","Sorry, that didn’t work.":"සමාවෙන්න, නමුත් එය සාර්ථක වූයේ නැත.","Spam complaints":"Spam සඳහා වන පැමිණිලි","Start {{amount}}-day free trial":"{{amount}}-day free trial එක ආරම්භකරන්න","Starting {{startDate}}":"{{startDate}} සිට ආරම්භ වෙයි","Starting today":"අද සිට ආරම්භ වෙයි","Submit feedback":"ප්‍රතිචාරය යොමුකරන්න",Subscribe:"Subscribe කරන්න",Subscribed:"Subscribe කරන ලදී",Success:"සාර්ථකයි","Success! Check your email for magic link to sign-in.":"සාර්ථකයි! sign-in වීමේ magic link එක සඳහා ඔබ‍ෙගේ emails පරීක්ෂා කරන්න.","Success! Your account is fully activated, you now have access to all content.":"සාර්ථකයි! ඔබගේ ගිණුම සම්පූර්ණයෙන්ම activate කර ඇති අතර, දැන් ඔබට සියළුම content සඳහා access ලැබී තිබෙනවා.","Success! Your email is updated.":"සාර්ථකයි! ඔබගේ email ලිපිනය update කරන ලදී.","Successfully unsubscribed":"සාර්ථකව unsubscribed කර ඇත","Thanks for the feedback!":"ප්‍රතිචාරය සඳහා ස්තූතියි!","That didn't go to plan":"ඒය සැලැස්මට අනුකූලව සිදු වුණේ නෑ","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"ඔබගේ email ලිපිනය ලෙස අප සතුව තිබෙන්නේ {{memberEmail}} යන email ලිපිනයයි - මෙය වැරදියි නම්, ඔබගේ <button>account settings area එක</button> හරහා update කළ හැක.","There was a problem submitting your feedback. Please try again a little later.":"ඔබගේ feedback එක යොමු කිරීමේදී ගැටළුවක් ඇති විය. තව ටික වේලාවකින් නැවත උත්සාහ කරන්න.","This site is invite-only, contact the owner for access.":"මෙම වෙබ් අඩවිය ආරාධිතයන් සඳහා පමණි, ප්‍රවේශ වීම සඳහා හිමිකරු අමතන්න.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Signup වීම සම්පූර්ණ කිරීම සඳහා, ඔබ‍ගේ inbox එකට ලැබුණු email එකෙහි ඇති confirmation link එක click කරන්න. එය මිනිත්තු 3ක් ඇතුලත නොපැමිණියේ නම්, spam folder එක පරීක්ෂා කරන්න!","Try free for {{amount}} days, then {{originalPrice}}.":"දින {{amount}}ක් නොමිලයේ භාවිතා කරන්න, ඉන් පසුව {{originalPrice}}ක් පමණි.","Unlock access to all newsletters by becoming a paid subscriber.":"Paid subscriber කෙනෙකු වීම හරහා සියළුම newsletters වලට access ලබාගන්න.","Unsubscribe from all emails":"සියළුම email වලින් unsubscribe කරන්න",Unsubscribed:"Unsubscribe කරන ලදී","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Email වලින් unsubscribe වීමෙන්, {{title}} සඳහා වන ඔබගේ paid subscription එක අවලංගු නොවනු ඇත",Update:"Update කරන්න","Update your preferences":"ඔබගේ preferences update කරන්න","Verify your email address is correct":"ඔබගේ email ලිපිනය නිවැරදි බව තහවුරු කරන්න","View plans":"Plans පෙන්වන්න","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"ඔබගේ email ලිපිනය හමු නොවීම නිසාවෙන් ඔබව unsubscribe කරවීමට නොහැකි විය. කරුණාකර වෙබ් අඩවියෙහි හිමිකරු සම්බන්ධ කරගන්න.","Welcome back, {{name}}!":"{{name}}, ඔබව සාදරයෙන් පිළිගන්නවා!","Welcome back!":"ඔබව සාදරයෙන් පිළිගන්නවා!","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"යම් අවස්ථාවකදී email එකක් අදාල email ලිපිනයට ලබාගත නොහැකි නම්, එය පොදුවේ bounce ලෙස හඳුන්වනු ලබනවා. මෙය තාවකාලික තත්ත්වයක් විය හැකයි. කෙසේ නමුත්, ඇතැම් අවස්ථා වලදී අදාල email ලිපිනය වැරදි නම් හෝ එවැනි email ලිපිනයක් නොමැති නම්, bounce email එකක් permanent failure එකක් ලෙස නැවත හරවා යවනු ලැබෙනවා.","Why has my email been disabled?":"මගේ emails අක්‍රීය කර ඇත්තේ ඇයි?",Yearly:"වාර්ෂිකව","You currently have a free membership, upgrade to a paid subscription for full access.":"ඔබ සතුව දැනට ඇත්තේ free membership එකකි. සම්පූර්ණ access ලබාගැනීම සඳහා එය Paid membership එකකට upgrade කරන්න.","You have been successfully resubscribed":"ඔබ සාර්ථකව නැවත subscribe කර ඇත","You're currently not receiving emails":"මේ වන විට ඔබට email ලැබෙන්නේ නැත","You're not receiving emails":"ඔබට email ලැබෙන්නේ නැත","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"මෑතකදී ලැබුණු email පණිවිඩයක් spam ලෙස සටහන් කිරීම නිසා හෝ ඔබ ලබාදී ඇති email ලිපිනයට email පණිවිඩ යැවිය නොහැකි නිසාවෙන් ඔබට email ලැබෙන්නේ නැත.","You've successfully signed in.":"ඔබ සාර්ථකව sign in වන ලදී.","Your account":"ඔබගේ ගිණුම","Your input helps shape what gets published.":"ඔබගේ අදහස් ඉදිරියේදී සිදු කරන පළකිරීම් වැඩිදියුණු කිරීමට උදව් කරනු ඇත.","Your subscription will expire on {{expiryDate}}":"ඔබගේ subscription එක {{expiryDate}} වැනි දින කල් ඉකුත් වනු ඇත","Your subscription will renew on {{renewalDate}}":"ඔබගේ subscription එක {{expiryDate}} වැනි දින renew වනු ඇත","Your subscription will start on {{subscriptionStart}}":"ඔබගේ subscription එක {{expiryDate}} වැනි දින ආරම්භ වනු ඇත"},XS={"{{amount}} days free":"","{{amount}} off":"","{{amount}} off for first {{number}} months.":"","{{amount}} off for first {{period}}.":"","{{amount}} off forever.":"","{{discount}}% discount":"{{discount}}% popust","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"{{trialDays}} dni brezplačno","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Povezava za prijavo je bila poslana na vašo e-pošto. Če ne prispe v treh minutah, preverite mapo za neželeno pošto.",Account:"Račun","Account settings":"Nastavitve računa","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Po koncu brezplačnega preizkusa se vam zaračuna redna cena za izbrano stopnjo. Pred tem jo lahko vedno prekličete.","Already a member?":"Ste že član?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"Nazaj","Back to Log in":"Nazaj na prijavo","Billing info":"","Black Friday":"","Cancel anytime.":"","Cancel subscription":"Prekliči naročnino","Cancellation reason":"Razlog za preklic",Change:"","Check spam & promotions folders":"","Check with your mail provider":"",Choose:"","Choose a different plan":"Izberite drug načrt","Choose your newsletters":"Izberite svoje novice","Click here to retry":"",Close:"Zapri",Comments:"Komentarji",Complimentary:"",Confirm:"Potrdi","Confirm cancellation":"","Confirm subscription":"","Contact support":"",Continue:"Nadaljuj","Continue subscription":"","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"","Delete account":"Izbriši račun","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"Nimate računa?",Edit:"",Email:"E-pošta","Email newsletter":"","Email preference updated.":"E-poštne nastavitve posodobljene","Email preferences":"Nastavitve e-pošte",Emails:"E-pošta","Emails disabled":"E-pošta onemogočena","Ends {{offerEndDate}}":"",Error:"","Expires {{expiryDate}}":"",Forever:"","Free Trial – Ends {{trialEnd}}":"","Get help":"Pomoč","Get in touch for help":"","Get notified when someone replies to your comment":"Prejmite obvestilo, ko nekdo odgovori na vaš komentar","Give feedback on this post":"Podajte povratne informacije o tej objavi","Help! I'm not receiving emails":"","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"Ni mi všeč",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"Upravljanje",Monthly:"Mesečno","More like this":"Všeč mi je",Name:"Ime","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"Ne prejemate e-poštnih sporočil?","Now check your email!":"Preverite e-pošto!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"Cena","Re-enable emails":"Ponovna vključitev e-poštnih sporočil","Renews at {{price}}.":"",Retry:"Cena",Save:"Shrani","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"Pošiljanje povezave za prijavo...","Sending...":"Pošiljanje...","Sign in":"Prijava","Sign out":"","Sign up":"Registracija","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"Začetek {{amount}}-dnevnega brezplačnega preizkusa","Starting {{startDate}}":"","Starting today":"","Submit feedback":"Pošljite povratno informacijo",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"Uspešno ste se odjavili","Thanks for the feedback!":"Hvala za povratne informacije!","That didn't go to plan":"To ni šlo po načrtu","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"To spletno mesto je dostopno samo s povabilom, obrnite se na lastnika.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Dokončatje prijavo s klikom na povezavo, ki ste jo dobili na vaš e-poštni naslov. Če je ne prejmete v treh minutah, preverite mapo za neželeno pošto!","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"Odjava od vseh e-poštnih sporočil",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Odjava od e-poštnih sporočil ne bo preklicala vaše plačane naročnine na {{title}}",Update:"","Update your preferences":"Posodobite svoje nastavitve","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Nismo vas mogli odjaviti, ker e-poštnega naslova nismo našli. Prosimo, da se obrnete na lastnika spletnega mesta.","Welcome back, {{name}}!":"","Welcome back!":"","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"Letno","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"Uspešno ste bili ponovno naročeni","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Ne prejemate e-poštnih sporočil, ker ste naše sporočilo nedavno označili kot neželeno pošto ali, ker sporočil ni bilo mogoče dostaviti na vaš e-poštni naslov.","You've successfully signed in.":"","Your account":"Vaš račun","Your input helps shape what gets published.":"Vaš prispevek se nam pomaga odločati, kaj objavimo.","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},ZS={"{{amount}} days free":"{{amount}} dite falas","{{amount}} off":"{{amount}} zbritje","{{amount}} off for first {{number}} months.":"{{amount}} zbritje në {{number}} muajt e parë","{{amount}} off for first {{period}}.":"{{amount}} zbritje per {{period}} e parë","{{amount}} off forever.":"{{amount}} zbritje pergjithmone.","{{discount}}% discount":"{{discount}}% zbritje","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"{{memberEmail}} nuk do te marre me buletinin e {{newsletterName}}","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"{{memberEmail}} nuk do të marrë më email kur dikush u përgjigjet komenteve tuaja.","{{memberEmail}} will no longer receive this newsletter.":"{{memberEmail}} nuk do te marre me kete buletin.","{{trialDays}} days free":"{{trialDays}} dite falas","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Një lidhje identifikimi është dërguar në kutinë tuaj hyrëse. Nëse nuk arrin për 3 minuta, sigurohuni që të kontrolloni dosjen tuaj të postës së padëshiruar.",Account:"Llogaria","Account settings":"Cilësimet e llogarisë","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Pasi të përfundojë një provë falas, ju do të tarifoheni me çmimin e rregullt për nivelin që keni zgjedhur. Mund të anuloni gjithmonë përpara kësaj.","Already a member?":"Tashme nje antar?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"Ndodhi një gabim i papritur. Provo sërish ose <a>kontakto mbështetjen</a> nëse gabimi vazhdon.",Back:"Kthehu","Back to Log in":"Kthehu tek identifikimi","Billing info":"Te dhenat e faturimit","Black Friday":"E premtja e zeze","Cancel anytime.":"Anullo ne cdo kohe.","Cancel subscription":"Anullo abonimin","Cancellation reason":"Arsyeja e anullimit",Change:"Ndrysho","Check spam & promotions folders":"Kontrolloni dosjet e postës së padëshiruar dhe promovimeve ","Check with your mail provider":"Kontrolloni me ofruesin tuaj të postës",Choose:"Zgjidh","Choose a different plan":"Zgjidh nje plan ndryshe","Choose your newsletters":"Zgjidh buletinin tend","Click here to retry":"Kliko ketu per te provuar perseri",Close:"Mbyll",Comments:"Komentet",Complimentary:"Pa pagesë",Confirm:"Konfirmo","Confirm cancellation":"Konfirmo anullimin","Confirm subscription":"Konfirmo abonimin","Contact support":"Kontakto suportin",Continue:"Vazhdoni","Continue subscription":"Vazhdoni abonimin","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"Shto nje kontakt te ri","Current plan":"Plani aktual","Delete account":"Fshini llogarine","Didn't mean to do this? Manage your preferences <button>here</button>.":"Nuk doje ta bëje këtë? Menaxho preferencat e tua <button>këtu</button>.","Don't have an account?":"Nuk keni nje llogari?",Edit:"Modifiko",Email:"Email","Email newsletter":"Buletini i emailit","Email preference updated.":"Preferenca e emailit u përditësua.","Email preferences":"Preferenat e emailit",Emails:"Emailet","Emails disabled":"Emailet e çaktivizuara","Ends {{offerEndDate}}":"Perfundon {{offerEndDate}}",Error:"Gabim","Expires {{expiryDate}}":"Mbaron",Forever:"Pergjithmone","Free Trial – Ends {{trialEnd}}":"Prova falas – mbaron {{trialEnd}}","Get help":"Merr ndihme","Get in touch for help":"Kontaktoni për ndihmë","Get notified when someone replies to your comment":"","Give feedback on this post":"Ler nje koment ne kete post","Help! I'm not receiving emails":"Ndihme! Nuk po marr emaile","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"Nëse një buletin shënohet si i padëshiruar, emailet çaktivizohen automatikisht për atë adresë për t'u siguruar që nuk do të merrni më mesazhe të padëshiruara.","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"Nëse ankesa për postën e padëshiruar ishte aksidentale, ose dëshironi të filloni të merrni përsëri email, mund të regjistroheni përsëri në email duke klikuar butonin në ekranin e mëparshëm.","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"Nëse e anuloni abonimin tuaj tani, do të vazhdoni të keni akses deri në {{periodEnd}}.","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"Nëse keni një llogari të postës elektronike të korporatës ose të qeverisë, kontaktoni departamentin tuaj të IT dhe kërkojuni që të lejojnë marrjen e emaileve nga {{senderEmail}}","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"Nëse dëshironi të filloni të merrni përsëri emaile, hapat më të mirë të metejshem janë të kontrolloni adresën tuaj të emailit në dosje për ndonjë problem dhe më pas klikoni Ri-abonohu në ekranin e mëparshëm.","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"Nëse nuk po merrni buletinin me email në të cilin jeni abonuar, këtu janë disa gjëra për të kontrolluar.","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"Nëse i keni përfunduar të gjitha këto kontrolle dhe ende nuk po merrni email, mund të kontaktoni për të marrë mbështetje duke kontaktuar {{supportAddress}}.","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"Në rast se merret një dështim i përhershëm gjatë përpjekjes për të dërguar një buletin, emailet do të çaktivizohen në llogari.","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"Në klientin tuaj të postës elektronike shtoni {{senderEmail}} në listën tuaj të kontakteve. Kjo i sinjalizon ofruesit tuaj të postës elektronike që emailet e dërguara nga kjo adresë duhet të jenë të besueshme.","Less like this":"Me pak si kjo",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':'Sigurohuni që emailet të mos përfundojnë aksidentalisht në dosjet e postës së padëshiruar ose të promovimeve të kutisë suaj hyrëse. Nëse janë, klikoni në "Shëno si jo të padëshiruar" dhe/ose "Lëviz te kutia hyrëse".',Manage:"Menaxho",Monthly:"Mujore","More like this":"Me shume si kjo",Name:"Emri","Need more help? Contact support":"Te duhet me shume ndihme? Kontakto suportin","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"Buletinet mund të çaktivizohen në llogarinë tuaj për dy arsye: Një email i mëparshëm u shënua si i padëshiruar, ose përpjekja për të dërguar një email rezultoi në një dështim të përhershëm (kercim).","Not receiving emails?":"Nuk po merr emaile?","Now check your email!":"Kontrollo emailin tend tani!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"Pasi të regjistroheni përsëri, nëse ende nuk i shihni emailet në kutinë tuaj hyrëse, kontrolloni dosjen tuaj të postës së padëshiruar. Disa ofrues të kutisë hyrëse mbajnë një regjistër të ankesave të mëparshme të postës së padëshiruar dhe do të vazhdojnë të raportojnë emailet. Nëse kjo ndodh, shëno buletinin më të fundit si 'Jo e padëshiruar' për ta zhvendosur atë në kutinë hyrëse kryesore.","Permanent failure (bounce)":"Deshtim i perhershem (kercim)",Plan:"Plani","Plan checkout was cancelled.":"Pagesa e planit u anullua.","Plan upgrade was cancelled.":"Përmirësimi i planit u anullua.","Please fill in required fields":"Ju lutem plotesoni fushat e kerkuara",Price:"Çmimi","Re-enable emails":"Ri-aktivizo emailet","Renews at {{price}}.":"Rinovohet per {{price}} ",Retry:"Provo perseri",Save:"Ruaj","Send an email and say hi!":"Dergo nje email dhe thuaj pershendetje!","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"Dërgo një email te {{senderEmail}} dhe thuaj përshëndetje. Kjo mund të ndihmojë gjithashtu t'i sinjalizojë ofruesit tuaj të postës elektronike se emailet drejt-dhe-nga kjo adresë duhet të jenë të besueshme.","Sending login link...":"Duke derguar linkun e identifikimit...","Sending...":"Duke derguar...","Sign in":"Hyr","Sign out":"Dil","Sign up":"Rregjistrohu","Signup error: Invalid link":"Gabim ne rregjistrim: Link i pavlefshem","Sorry, that didn’t work.":"Na vjen keq, kjo nuk funksionoi.","Spam complaints":"Ankesat për mesazhe të padëshiruara","Start {{amount}}-day free trial":"","Starting {{startDate}}":"Duke filluar {{startDate}}","Starting today":"Duke filluar nga sot","Submit feedback":"Dergo komente",Subscribe:"Abonohu",Subscribed:"Abonuar",Success:"Sukses","Success! Check your email for magic link to sign-in.":"Sukses! Kontrollo emailin tend per linkun magjik te indentifikimit.","Success! Your account is fully activated, you now have access to all content.":"Sukses! Llogaria jote eshte plotesisht e aktivizuar, tashme ju keni akses ne te githe kontentin","Success! Your email is updated.":"Sukses! Emaili yt eshte rifreskuar","Successfully unsubscribed":"Çabonuar me sukses","Thanks for the feedback!":"Faleminderit per komentin!","That didn't go to plan":"Kjo nuk shkoi sipas planit","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"Pati një problem me dërgimin e komenteve tuaja. Ju lutemi provoni sërish pak më vonë.","This site is invite-only, contact the owner for access.":"Kjo faqe eshte vetem me ftesa, kontaktoni zoteruesin per akses.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Për të përfunduar regjistrimin, klikoni lidhjen e konfirmimit në kutinë tuaj hyrëse. Nëse nuk arrin brenda 3 minutash, kontrolloni dosjen tuaj të postës elektronike!","Try free for {{amount}} days, then {{originalPrice}}.":"Provo falas per {{amount}} dite, pastaj {{originalPrice}}.","Unlock access to all newsletters by becoming a paid subscriber.":"Zhbllokoni aksesin per te gjitha buletinet duke u bere nje abonues me pagese.","Unsubscribe from all emails":"Çregjistrohu nga të gjitha emailet",Unsubscribed:"I çabonuar","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Çregjistrimi nga emailet nuk do ta anulojë abonimin tuaj me pagesë në {{title}}",Update:"Rifresko","Update your preferences":"Përditësoni preferencat tuaja","Verify your email address is correct":"Verifikoni që adresa juaj e emailit është e saktë","View plans":"Shiko planet","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"","Welcome back, {{name}}!":"Mire se erdhe, {{name}}!","Welcome back!":"Mire se erdhe!","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"Kur një kuti hyrëse dështon të pranojë një email, zakonisht quhet kthim. Në shumë raste, kjo mund të jetë e përkohshme. Megjithatë, në disa raste, një email i kthyer mund të kthehet si një dështim i përhershëm kur një adresë emaili është e pavlefshme ose nuk ekziston.","Why has my email been disabled?":"Pse është çaktivizuar emaili im?",Yearly:"Vjetore","You currently have a free membership, upgrade to a paid subscription for full access.":"Ju keni aktualisht nje antaresim falas, beni abonimin me pagese per akses te plote. ","You have been successfully resubscribed":"Ju jeni ri-abonuar me sukses","You're currently not receiving emails":"Aktualisht nuk po merrni emaile","You're not receiving emails":"Ju nuk po merrni emaile","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Ju nuk po merrni email sepse ose keni shënuar një mesazh të fundit si të padëshiruar, ose sepse mesazhet nuk mund të dërgoheshin në adresën tuaj të emailit të dhënë.","You've successfully signed in.":"Ju jeni identifikuar me sukses.","Your account":"Llogaria juar","Your input helps shape what gets published.":"Të dhënat tuaja ndihmojnë në formimin e asaj që publikohet.","Your subscription will expire on {{expiryDate}}":"Abonimi juaj do te skadoje ne {{expiryDate}}","Your subscription will renew on {{renewalDate}}":"Abonimi juaj to te rinovohet ne {{renewalDate}}","Your subscription will start on {{subscriptionStart}}":"Abonimi juaj do te filloje ne {{subscriptionStart}}"},e1={"{{amount}} days free":"","{{amount}} off":"","{{amount}} off for first {{number}} months.":"","{{amount}} off for first {{period}}.":"","{{amount}} off forever.":"","{{discount}}% discount":"{{discount}}% popust","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"{{trialDays}} dana besplatno","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Link za logovanje je poslat na Vašu email adresu. Ukoliko ne stigne za 3 minuta proverite spam folder.",Account:"Nalog","Account settings":"Podešavanja naloga","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Nakon što probni period istekne, izvršiće se naplata za plan koji ste izabrali. Uvek možete da otkažete pretplatu pre toga.","Already a member?":"Već ste član?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"Nazad","Back to Log in":"Nazad na logovanje","Billing info":"","Black Friday":"","Cancel anytime.":"","Cancel subscription":"Otkaži pretplatu","Cancellation reason":"Razlog za otkazivanje",Change:"","Check spam & promotions folders":"","Check with your mail provider":"",Choose:"","Choose a different plan":"Izaberi drugi plan","Choose your newsletters":"Izaberi ","Click here to retry":"",Close:"Zatvori",Comments:"Komentari",Complimentary:"",Confirm:"Potvrdi","Confirm cancellation":"","Confirm subscription":"","Contact support":"",Continue:"Nastavi","Continue subscription":"","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"","Delete account":"Obriši nalog","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"Nemate nalog?",Edit:"",Email:"Email","Email newsletter":"","Email preference updated.":"Email podešavanja su sačuvana.","Email preferences":"Email podešavanja",Emails:"Email-ovi","Emails disabled":"Isključeni email-ovi","Ends {{offerEndDate}}":"",Error:"","Expires {{expiryDate}}":"",Forever:"","Free Trial – Ends {{trialEnd}}":"","Get help":"Potražite pomoć","Get in touch for help":"","Get notified when someone replies to your comment":"Obavestite me ako neko odgovori na moj komentar:","Give feedback on this post":"Ostavite komentar na ovaj post","Help! I'm not receiving emails":"","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"Manje sadržaja kao ovaj",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"Podešavanja",Monthly:"Mesečno","More like this":"Više sadržaja kao ovaj",Name:"Ime","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"Ne dobijate e-poštu?","Now check your email!":"Proverite Vaš email!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"Cena","Re-enable emails":"Omogući email adrese ponovo","Renews at {{price}}.":"",Retry:"Pokušaj opet",Save:"Snimi","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"Link za logovanje se šalje...","Sending...":"Slanje...","Sign in":"Prijava","Sign out":"","Sign up":"Registracija","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"Počni {{amount}} dana besplatnu probu","Starting {{startDate}}":"","Starting today":"","Submit feedback":"Pošalji povratne informacije",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"Uspešna odjava","Thanks for the feedback!":"Hvala za povratne informacije!","That didn't go to plan":"Nešto nije kako treba","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"Ovaj sajt je samo za članove, kontaktirajte vlasnika kako bi dobili pristup.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Kliknite na link da biste završili registraciju. Ukoliko ne stigne za 3 minuta proverite spam folder!","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"Odjavite se sa svih email-ova",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Odjavljivanjem sa email-ova nećete prekinuti Vašu pretplatu na {{title}}",Update:"","Update your preferences":"Izmenite Vaša podešavanja","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Nismo uspeli da odjavimo email. Molimo Vas kontaktirajte vlasnika sajta.","Welcome back, {{name}}!":"","Welcome back!":"","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"Godišnje","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"Uspešno ste se prijavili ponovo","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Ne primate e-poruke zato što ste nedavnu poruku označili kao nepoželjnu ili zato što poruke nisu mogle da se isporuče na adresu e-pošte koju ste naveli.","You've successfully signed in.":"","Your account":"Vaš nalog","Your input helps shape what gets published.":"Vaš doprinos pomaže u oblikovanju onoga što se objavljuje.","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},t1={"{{amount}} days free":"{{amount}} gratisdagar","{{amount}} off":"{{amount}} i rabatt","{{amount}} off for first {{number}} months.":"{{amount}} i rabatt de första {{number}} månaderna.","{{amount}} off for first {{period}}.":"{{amount}} i rabatt under första {{period}}.","{{amount}} off forever.":"{{amount}} i rabatt tills vidare","{{discount}}% discount":"{{discount}}% rabatt","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"{{memberEmail}} kommer inte längre få utskicket {{newsletterName}}","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"{{memberEmail}} kommer inte längre att få meddelanden när någon svarar på din kommentar","{{memberEmail}} will no longer receive this newsletter.":"{{memberEmail}} kommer inte längre att få det här nyhetsbrevet","{{trialDays}} days free":"{{trialDays}} dagar gratis","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"En inloggningslänk har skickats till din inkorg. Om den inte anländer inom 3 minuter, kontrollera din skräppostmapp.",Account:"Konto","Account settings":"Kontoinställningar","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Efter att en gratis provperiod avslutas debiteras du det ordinarie priset för den nivå du har valt. Du kan alltid avbryta innan dess.","Already a member?":"Redan medlem?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"Ett oväntat fel inträffade. Försök igen eller <a>kontakta administratören</a> om felet kvarstår.",Back:"Tillbaka","Back to Log in":"Tillbaka till inloggning","Billing info":"Betalningsinformation","Black Friday":"Black Friday","Cancel anytime.":"Avsluta när som helst","Cancel subscription":"Avbryt prenumeration","Cancellation reason":"Anledning till avslut",Change:"Ändra","Check spam & promotions folders":"Titta i skräppostmappen","Check with your mail provider":"Verifirera att e-posten fungerar för ditt konto",Choose:"Välj","Choose a different plan":"Välj en annan prenumeration","Choose your newsletters":"Välj dina nyhetsbrev","Click here to retry":"Klicka här för att försöka igen",Close:"Stäng",Comments:"Kommentarer",Complimentary:"Kostnadsfri",Confirm:"Bekräfta","Confirm cancellation":"Bekräfta uppsägning","Confirm subscription":"Bekräfta prenumeration","Contact support":"Kontakta supporten",Continue:"Fortsätt","Continue subscription":"Förläng prenumeration","Could not sign in. Login link expired.":"Kunde inte logga in. Inloggningslänken har slutat gälla.","Could not update email! Invalid link.":"Kunde inte uppdatera e-postadressen. Länken fungerande inte.","Create a new contact":"Skapa en ny kontakt","Current plan":"Nuvarande prenumeration","Delete account":"Radera konto","Didn't mean to do this? Manage your preferences <button>here</button>.":"Ville du inte göra det här? Ändra dina inställningar <button>här</button>","Don't have an account?":"Har du inget konto?",Edit:"Editera",Email:"E-post","Email newsletter":"Nyhetsbrev via e-post","Email preference updated.":"Inställningar för e-post uppdaterade.","Email preferences":"E-postinställningar",Emails:"E-postmeddelanden","Emails disabled":"E-post inaktiverad","Ends {{offerEndDate}}":"Avslutas {{offerEndDate}}",Error:"Fel","Expires {{expiryDate}}":"Utgår {{expiryDate}}",Forever:"Tillsvidare","Free Trial – Ends {{trialEnd}}":"Gratispepriod – slutar {{trialEnd}}","Get help":"Få hjälp","Get in touch for help":"Kontakta oss för hjälp","Get notified when someone replies to your comment":"Få en avisering när någon svarar på din kommentar","Give feedback on this post":"Ge feedback på det här inlägget","Help! I'm not receiving emails":"Hjälp! Jag får inte e-posten","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"Om ett nyhetsbrev markeras som skräppost, stängs utskicken till den e-postadressen av automatiskt för att det inte skall skickas ovälkomna meddelanden.","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"Om nyhetsbrevet av misstag markerades som skräppost och du vill återuppta utskicken kan du aktivera nyhetsbrevet på föregående sida.","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"Om du säger upp prenumerationen nu kommer du att ha tillgång till {{periodEnd}}.","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"Om din organisations e-postlösning blockerar utskicken kan du be administratören att tillåta e-post från adressen {{senderEmail}}","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"Om du vill börja ta emot utskicken igen, verifiera att du angett korrekt e-postadress och sedan klickar du på återaktivera utskick på förra sidan.","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"Om du inte får e-postutskicken från oss finns det några saker du kan göra.","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"Om det fortfarande inte fungerar efter att du undersökt allt kan du kontakta oss på {{supportAddress}}.","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"Om e-postutskick till din adress resulterar i ett permanent fel kommer utskicksförsök att upphöra.","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"Spara {{senderEmail}} som en kontakt i ditt e-postprogram. Det signalerar till din e-postleverantör att e-post från denna är adress är viktig.","Less like this":"Mindre sånt här",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':'Verifiera att e-postmeddelandena inte hamnat i skräppostmappen. Om de gjort det, flytta dem till inkorgen och/eller markera som "Ej skräppost".',Manage:"Hantera",Monthly:"Månadsvis","More like this":"Mer sånt här",Name:"Namn","Need more help? Contact support":"Behöver du mer hjälp? Kontakta administratören.","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"Nyhetsbrev kan inaktiveras på ditt konto av två anledningar: ett tidigare utskick markerades som spam, eller ett försök att skicka ett e-postmeddelande resulterade i ett permanent fel.","Not receiving emails?":"Får du inga e-postmeddelanden?","Now check your email!":"Kolla nu din e-post!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"Om du fortfarande inte ser e-post i din inkorg efter att du återaktiverat utskicken, kontrollera din skräppostmapp. Vissa e-postleverantörer behåller en historik över tidigare spamklagomål och fortsätter att markera e-post som spam. Om detta händer, markera det senaste nyhetsbrevet som 'Inte spam' för att flytta tillbaka det till din huvudsakliga inkorg.","Permanent failure (bounce)":"Permanent fel vid e-postutsskick (studs)",Plan:"Prenumerationen","Plan checkout was cancelled.":"Köp av prenumeration avbrutet","Plan upgrade was cancelled.":"Uppgradering av prenunmeration avbruten","Please fill in required fields":"Fyll i alla obligatoriska fält",Price:"Pris","Re-enable emails":"Återaktivera e-post","Renews at {{price}}.":"Förnyas till priset {{price}}",Retry:"Försök igen",Save:"Spara","Send an email and say hi!":"Skicka e-post och säg hej!","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"Skicka ett e-postmeddelande till {{senderEmail}} och säj hej. Detta blir en signal till din e-postleverantör meddelanden till/från {{senderEmail}} är viktiga.","Sending login link...":"Skickar inloggningslänk...","Sending...":"Skickar...","Sign in":"Logga in","Sign out":"Logga ut","Sign up":"Få uppdateringar","Signup error: Invalid link":"Registreringsfel. Länken fungerade inte.","Sorry, that didn’t work.":"Tyvärr, det fungerande inte.","Spam complaints":"Skräppostrapporter","Start {{amount}}-day free trial":"Starta {{amount}}-dagars gratis testprenumeration","Starting {{startDate}}":"Startar {{startDate}}","Starting today":"Startar idag","Submit feedback":"Skicka feedback",Subscribe:"Anmäl dig",Subscribed:"Anmäld",Success:"Det gick bra","Success! Check your email for magic link to sign-in.":"Det gick bra. Titta i din e-post efter ett meddelande från oss med en inloggningslänk.","Success! Your account is fully activated, you now have access to all content.":"Det gick bra! Ditt konto är uppdaterat och du har tillgång till allt material.","Success! Your email is updated.":"Det gick bra! Din e-postadress är uppdaterad.","Successfully unsubscribed":"Prenumerationen avslutades framgångsrikt","Thanks for the feedback!":"Tack för din feedback!","That didn't go to plan":"Det där fungerade inte som tänkt","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"E-postadressen vi har för dig är {{memberEmail}} — om det inte stämmer kan du uppdatera den i <button>kontoinställningar</button>.","There was a problem submitting your feedback. Please try again a little later.":"Det fungerande inte att skicka in din feedbak. Försök igen lite senare.","This site is invite-only, contact the owner for access.":"Den här sidan är endast för inbjudna, kontakta ägaren för åtkomst.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"För att slutföra registreringen, klicka på bekräftelselänken i din inkorg. Om den inte kommer fram inom 3 minuter, kolla din skräppostmapp!","Try free for {{amount}} days, then {{originalPrice}}.":"Prova gratis i {{amount}} dagar, sen betalar du {{originalPrice}}.","Unlock access to all newsletters by becoming a paid subscriber.":"Få tillgång till alla nyhetsbrev genom att bli betalande prenumerant","Unsubscribe from all emails":"Avregistrera från alla e-postutskick",Unsubscribed:"Avregistrerad","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Avregistrering från e-postmeddelanden kommer inte att avbryta din betalda prenumeration på {{title}}",Update:"Uppdatera","Update your preferences":"Uppdatera dina inställningar","Verify your email address is correct":"Kontrollera att e-postadressen är korrekt","View plans":"Visa prenumerationsalternativ","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Vi kunde inte avsluta kontot eftersom e-postadressen inte hittades. Vänligen kontakta webbplatsens ägare.","Welcome back, {{name}}!":"Välkommen tillbaka, {{name}}!","Welcome back!":"Välkommen tillbaka!","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"När en mottagare inte kan ta emot ett e-postmeddelande kallas det vanligtvis för att ett mejl studsar. I många fall kan detta vara tillfälligt. Dock kan i vissa fall ett studsande mejl returneras som ett permanent fel när en e-postadress är ogiltig eller inte existerar.","Why has my email been disabled?":"Varför har e-postutskicken stängts av?",Yearly:"Årligen","You currently have a free membership, upgrade to a paid subscription for full access.":"Du har för närvarande ett gratiskonto. Uppgradera till en betald prenumeration för att full tillgång.","You have been successfully resubscribed":"Du är nu anmäld ","You're currently not receiving emails":"Du tar för närvarande inte emot e-post","You're not receiving emails":"Du tar inte emot e-post","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Du får inte e-postmeddelanden eftersom du antingen markerade ett nyligt meddelande som skräppost, eller för att meddelanden inte kunde levereras till din angivna e-postadress.","You've successfully signed in.":"Du är nu inloggad.","Your account":"Ditt konto","Your input helps shape what gets published.":"Din åsikt hjälper till att forma vad som publiceras.","Your subscription will expire on {{expiryDate}}":"Din prenumeration avslutas {{expiryDate}}","Your subscription will renew on {{renewalDate}}":"Din prenumeration förnyas {{renewalDate}}","Your subscription will start on {{subscriptionStart}}":"Din prenumeration startar {{subscriptionStart}}"},n1={"{{amount}} days free":"{{amount}} gün ücretsiz","{{amount}} off":"{{amount}} indirim","{{amount}} off for first {{number}} months.":"İlk {{number}} ay için {{amount}} indirim.","{{amount}} off for first {{period}}.":"İlk {{period}} için {{amount}} indirim.","{{amount}} off forever.":"Sonsuza kadar {{amount}} indirim.","{{discount}}% discount":"%{{discount}} indirim","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"{{memberEmail}} artık {{newsletterName}} haber bülteni almayacak.","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"{{memberEmail}}, yorumlarınıza yanıt verildiğinde artık e-posta almayacak.","{{memberEmail}} will no longer receive this newsletter.":"{{memberEmail}} artık bu haber bültenini almayacak.","{{trialDays}} days free":"{{trialDays}} gün ücretsiz","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Gelen kutuna bir giriş linki gönderildi. Eğer 3 dakika içinde ulaşmazsa spam klasörünü kontrol ettiğinden emin ol.",Account:"Hesap","Account settings":"Hesap ayarları","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Ücretsiz deneme süresi bittikten sonra seçtiğin kategorinin normal fiyatından ücretlendirileceksin. O zamana kadar her an iptal edebilirsin.","Already a member?":"Zaten üye misin?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"Beklenmeyen bir hata oluştu. Lütfen tekrar deneyin veya hata devam ederse <a>destek ile iletişime geçin</a>.",Back:"Geri dön","Back to Log in":"Giriş ekranına geri dön","Billing info":"Fatura bilgisi","Black Friday":"Muhteşem Cuma","Cancel anytime.":"İstediğiniz zaman iptal edin.","Cancel subscription":"Aboneliği iptal et","Cancellation reason":"İptal sebebi",Change:"Değiştir","Check spam & promotions folders":"Spam ve promosyonlar klasörlerini kontrol edin","Check with your mail provider":"Posta sağlayıcınızla kontrol edin",Choose:"Seç","Choose a different plan":"Farklı bir plan seç","Choose your newsletters":"Haber e-postanı seç","Click here to retry":"Tekrar denemek için buraya tıkla",Close:"Kapat",Comments:"Yorumlar",Complimentary:"",Confirm:"Onayla","Confirm cancellation":"İptal İşlemini Onayla","Confirm subscription":"Aboneliği onayla","Contact support":"Desteğe başvurun",Continue:"Devam et","Continue subscription":"Aboneliğe devam et","Could not sign in. Login link expired.":"Oturum açılamadı. Oturum açma bağlantısının süresi doldu.","Could not update email! Invalid link.":"E-posta güncellenemedi! Geçersiz link.","Create a new contact":"Yeni bir kullanıcı oluştur","Current plan":"Mevcut plan","Delete account":"Hesabı sil","Didn't mean to do this? Manage your preferences <button>here</button>.":"Bunu yapmak istemedin mi? Tercihlerinizi <button>buradan</button> yönetin.","Don't have an account?":"Hesabın yok mu?",Edit:"Düzenle",Email:"E-posta","Email newsletter":"E-posta bülteni","Email preference updated.":"E-posta tercihi güncellendi.","Email preferences":"E-posta tercihleri",Emails:"E-postalar","Emails disabled":"E-postalar devre dışı","Ends {{offerEndDate}}":"{{offerEndDate}} tarihinde bitiyor",Error:"Hata","Expires {{expiryDate}}":"{{expiryDate}} tarihinde sona eriyor",Forever:"Süresiz","Free Trial – Ends {{trialEnd}}":"Ücretsiz Deneme – {{trialEnd}} tarihinde sona erer","Get help":"Yardım al","Get in touch for help":"Yardım için iletişime geçin","Get notified when someone replies to your comment":"Birisi yorumuna cevap yazdığında bildirim al","Give feedback on this post":"Gönderiye geri bildirim ver","Help! I'm not receiving emails":"Yardım! e-postası alamıyorum","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"Bir haber bülteni spam olarak işaretlenirse, artık istenmeyen mesaj almadığınızdan emin olmak için bu adres için e-postalar otomatik olarak devre dışı bırakılır.","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"Spam şikayeti yanlışlıkla olduysa veya tekrar e-posta almaya başlamak istiyorsanız, önceki ekrandaki düğmeyi tıklayarak e-postalara yeniden abone olabilirsiniz.","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"Aboneliğinizi şimdi iptal ederseniz, {{periodEnd}} tarihine kadar erişiminiz devam edecek.","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"Kurumsal veya devlet e-posta hesabınız varsa BT departmanınıza ulaşın ve {{senderEmail}} adresinden e-posta alınmasına izin vermelerini isteyin.","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"Tekrar e-posta almaya başlamak istiyorsanız, bundan sonraki en iyi adım, dosyadaki e-posta adresinizde herhangi bir sorun olup olmadığını kontrol etmek ve ardından önceki ekranda yeniden abone ol'u tıklamaktır.","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"Abone olduğunuz e-posta bültenini almıyorsanız, kontrol etmeniz gereken birkaç şey var.","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"Tüm bu kontrolleri tamamlamanıza rağmen hala e-posta almıyorsanız, {{supportAddress}} ile iletişime geçerek destek almak için ulaşabilirsiniz.","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"Haber bülteni göndermeye çalışırken kalıcı bir hata alınması durumunda, hesapta e-postalar devre dışı bırakılır.","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"E-posta istemcinizde {{senderEmail}} adresini kişi listenize ekleyin. Bu, posta sağlayıcınıza bu adresten gönderilen e-postaların güvenilir olması gerektiğini bildirir.","Less like this":"Bunun gibi daha az",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':'E-postaların yanlışlıkla gelen kutunuzun Spam veya Promosyonlar klasörlerine düşmediğinden emin olun. Varsa, "Spam değil olarak işaretle" ve/veya "Gelen kutusuna taşı"yı tıklayın.',Manage:"Yönet",Monthly:"Aylık","More like this":"Bunun gibi daha fazla",Name:"İsim","Need more help? Contact support":"Daha fazla yardıma mı ihtiyacınız var? Desteğe başvurun","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"Bültenler, hesabınızda iki nedenden dolayı devre dışı bırakılabilir: Önceki bir e-posta istenmeyen posta olarak işaretlendi veya bir e-posta gönderilmeye çalışıldığında kalıcı bir başarısızlıkla (geri dönme) sonuçlandı.","Not receiving emails?":"E-posta almıyor musun?","Now check your email!":"Şimdi e-posta kutunu kontrol et!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"Yeniden abone olduktan sonra, gelen kutunuzda hala e-posta göremiyorsanız spam klasörünüzü kontrol edin. Bazı gelen kutusu sağlayıcıları, önceki spam şikayetlerinin kaydını tutar ve e-postaları işaretlemeye devam eder. Böyle bir durumda, birincil gelen kutunuza geri taşımak için en son haber bültenini 'Spam değil' olarak işaretleyin.","Permanent failure (bounce)":"Kalıcı başarısızlık (sıçra)",Plan:"Plan","Plan checkout was cancelled.":"Plan ödemesi iptal edildi.","Plan upgrade was cancelled.":"Plan yükseltme iptal edildi.","Please fill in required fields":"Lütfen gerekli alanları doldurunuz",Price:"Fiyat","Re-enable emails":"E-postaları yeniden etkinleştir","Renews at {{price}}.":"{{price}} karşılığında yenilenir.",Retry:"Tekrar dene",Save:"Kaydet","Send an email and say hi!":"Bir e-posta gönderin ve merhaba deyin!","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"{{senderEmail}} adresine bir e-posta gönderin ve merhaba deyin. Bu, posta sağlayıcınıza bu adresten gelen ve bu adresten gelen e-postalara güvenilmesi gerektiğinin sinyalini de verebilir.","Sending login link...":"Giriş linki gönderiliyor...","Sending...":"Gönderiliyor...","Sign in":"Giriş yap","Sign out":"Çıkış yap","Sign up":"Kayıt ol","Signup error: Invalid link":"Kayıt hatası: Geçersiz bağlantı","Sorry, that didn’t work.":"Üzgünüm, bu işe yaramadı.","Spam complaints":"Spam şikayetleri","Start {{amount}}-day free trial":"{{amount}} gün ücretsiz deneme süresini başlat","Starting {{startDate}}":"{{startDate}} tarihinden itibaren","Starting today":"Bugün başlıyor","Submit feedback":"Geri bildirim gönder",Subscribe:"Abone",Subscribed:"Abone olundu",Success:"Başarılı","Success! Check your email for magic link to sign-in.":"Başarılı! Oturum açmak için sihirli bağlantı için e-postanızı kontrol edin.","Success! Your account is fully activated, you now have access to all content.":"Başarılı! Hesabınız tamamen etkinleştirildi, artık tüm içeriğe erişebilirsiniz.","Success! Your email is updated.":"Başarılı! E-postanız güncellendi.","Successfully unsubscribed":"Abonelikten başarıyla çıkıldı","Thanks for the feedback!":"Geri bildirim için teşekkürler!","That didn't go to plan":"Bir şeyler ters gitti","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"Geri bildiriminiz gönderilirken bir sorun oluştu. Lütfen biraz sonra tekrar deneyin.","This site is invite-only, contact the owner for access.":"Bu site sadece davetiyesi olanlar içindir, erişim için site sahibiyle iletişime geç.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Kaydını tamamlamak için gelen kutuna gönderilen onay linkine tıkla. Eğer 3 dakika içinde ulaşmazsa spam klasörünü kontrol et!","Try free for {{amount}} days, then {{originalPrice}}.":"{{amount}} gün ücretsiz deneyin, ardından {{originalPrice}}.","Unlock access to all newsletters by becoming a paid subscriber.":"Ücretli bir abone olarak tüm haber bültenlerine erişimin kilidini açın.","Unsubscribe from all emails":"Tüm e-postaların aboneliğinden çık",Unsubscribed:"Abonelikten çıkıldı","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"E-postaların aboneliğinden çıkmak, {{title}} sitesine olan ücretli aboneliğini iptal etmeyecek",Update:"Güncelle","Update your preferences":"Tercihlerini güncelle","Verify your email address is correct":"E-posta adresinizin doğru olduğunu doğrulayın","View plans":"Planları göster","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"E-posta adresi bulunamadığı için seni abonelikten çıkaramıyoruz. Lütfen site sahibiyle iletişime geç.","Welcome back, {{name}}!":"Tekrar hoş geldin {{name}}!","Welcome back!":"Tekrar hoşgeldiniz!","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"Bir gelen kutusu bir e-postayı kabul edemediğinde buna genellikle geri dönen denir. Çoğu durumda, bu geçici olabilir. Bununla birlikte, bazı durumlarda, bir e-posta adresi geçersiz olduğunda veya mevcut olmadığında, geri dönen bir e-posta kalıcı bir başarısızlık olarak döndürülebilir.","Why has my email been disabled?":"E-postam neden devre dışı bırakıldı?",Yearly:"Yıllık","You currently have a free membership, upgrade to a paid subscription for full access.":"Şu anda ücretsiz üyeliğiniz var, tam erişim için ücretli aboneliğe yükseltin.","You have been successfully resubscribed":"Başarıyla yeniden abone oldun","You're currently not receiving emails":"Şu anda e-posta almıyorsunuz","You're not receiving emails":"E-posta almıyorsunuz","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"E-postaları almıyorsun çünkü yakınlarda gönderilen bir mesajı spam olarak işaretledin ya da mesajlar verilen e-posta adresine teslim edilemedi.","You've successfully signed in.":"Başarıyla oturum açtınız.","Your account":"Hesabın","Your input helps shape what gets published.":"Yorumun yayımlanan içeriklerin şekillenmesine yardımcı olur.","Your subscription will expire on {{expiryDate}}":"Aboneliğiniz {{expiryDate}} tarihinde sona erecek","Your subscription will renew on {{renewalDate}}":"Aboneliğiniz {{renewalDate}} tarihinde yenilenecek","Your subscription will start on {{subscriptionStart}}":"Aboneliğiniz {{subscriptionStart}} tarihinde başlayacak"},r1={"{{amount}} days free":"","{{amount}} off":"","{{amount}} off for first {{number}} months.":"","{{amount}} off for first {{period}}.":"","{{amount}} off forever.":"","{{discount}}% discount":"Знижка {{discount}}%","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"Безплатно {{trialDays}} дні(-в)","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Посилання для входу було надіслано на твою пошту. Якщо воно не прийде протягом 3 хвилин, перевірь папку спам.",Account:"Oбліковий запис","Account settings":"Налаштування облікового запису","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Після закінчення безплатного періоду, з тебе буде стягнена вартість за обраний тариф. Ти завжди можеш скасувати послугу до цього часу.","Already a member?":"Вже зареєстрований?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"Назад","Back to Log in":"Повернутись до входу","Billing info":"","Black Friday":"","Cancel anytime.":"","Cancel subscription":"Скасуй підписку","Cancellation reason":"Причина скасування",Change:"","Check spam & promotions folders":"","Check with your mail provider":"",Choose:"","Choose a different plan":"Вибари інший план","Choose your newsletters":"Вибери свої підписки","Click here to retry":"",Close:"Закрий",Comments:"Коментарі",Complimentary:"",Confirm:"Підтвердь","Confirm cancellation":"","Confirm subscription":"","Contact support":"",Continue:"Далі","Continue subscription":"","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"","Delete account":"Видалити обліковий запис","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"Не маєш облікового запису?",Edit:"",Email:"Електронна пошта","Email newsletter":"","Email preference updated.":"Налаштування електронної пошти оновлені.","Email preferences":"Налаштування електронної пошти",Emails:"Електронні листи","Emails disabled":"Електронна пошта вимкнена","Ends {{offerEndDate}}":"",Error:"","Expires {{expiryDate}}":"",Forever:"","Free Trial – Ends {{trialEnd}}":"","Get help":"Отримати допомогу","Get in touch for help":"","Get notified when someone replies to your comment":"Повідомляй коли хтось відповість на твій коментар","Give feedback on this post":"Дати відгук на цю публікацію","Help! I'm not receiving emails":"","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"Менше подібних",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"Управління",Monthly:"Місячно","More like this":"Більше подібних",Name:"Ім'я","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"Не приходять листи?","Now check your email!":"А тепер перевір свою пошту!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"Ціна","Re-enable emails":"Знову включити пошту","Renews at {{price}}.":"",Retry:"Повтори спробу",Save:"Збережи","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"Відправляється посилання для входу...","Sending...":"Відправляється...","Sign in":"Вхід","Sign out":"","Sign up":"Реєстрація","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"Почни {{amount}}-денний безплатний період","Starting {{startDate}}":"","Starting today":"","Submit feedback":"Вишли відгук",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"Підписку успішно скасовано","Thanks for the feedback!":"Дякуємо за відгук!","That didn't go to plan":"Щось пішло не так","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"Цей сайт доступний тільки за запрошенням, звернись до власника сайта для доступу.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Щоб завершити реєстрацію, натисни посилання в своїй електронній пошті для підтвердження. Якщо електронний лист не прийде протягом 3 хвилин, перевір папку спам!","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"Відписатись від усіх листів",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Відписка від листів не скасує твою платну підписку на {{title}}",Update:"","Update your preferences":"Онови свої налаштування","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Ми не можемо відписати тебе, оскільки адреса електронної пошти не знайдена. Будь ласка, зв'яжись з власником сайту.","Welcome back, {{name}}!":"","Welcome back!":"","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"Річно","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"Тебе успішно підписано знову","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Не приходять листи, оскільки останній отриманий лист був тобою позначений як спам, або листи не можуть бути доставлені на твою адресу електронної пошти.","You've successfully signed in.":"","Your account":"Твій обліковий запис","Your input helps shape what gets published.":"Твій відгук допоможе вирішити що публікувати далі.","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},a1={"{{amount}} days free":"","{{amount}} off":"","{{amount}} off for first {{number}} months.":"","{{amount}} off for first {{period}}.":"","{{amount}} off forever.":"","{{discount}}% discount":"{{discount}}% chegirma","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"","{{memberEmail}} will no longer receive this newsletter.":"","{{trialDays}} days free":"{{trialDays}} kun bepul","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Kirish havolasi email pochtangizga yuborildi. Agar u 3 daqiqada kelmasa, spam bo'limini tekshiring",Account:"Hisob","Account settings":"Hisob sozlamalari","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Bepul sinov muddati tugagandan so'ng, siz tanlagan daraja uchun odatdagi narxdan undiriladi. Undan oldin istalgan vaqtda bekor qilishingiz mumkin.","Already a member?":"Allaqachon a'zomisiz?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"",Back:"Orqaga","Back to Log in":"Kirish sahifasiga qaytish","Billing info":"","Black Friday":"","Cancel anytime.":"","Cancel subscription":"Obunani bekor qilish","Cancellation reason":"Bekor qilish sababi",Change:"","Check spam & promotions folders":"","Check with your mail provider":"",Choose:"","Choose a different plan":"Boshqa rejani tanlang","Choose your newsletters":"Pochta xabarlarini tanlang","Click here to retry":"",Close:"Yopmoq",Comments:"Izohlar",Complimentary:"",Confirm:"Tasdiqlamoq","Confirm cancellation":"","Confirm subscription":"","Contact support":"",Continue:"Davom etmoq","Continue subscription":"","Could not sign in. Login link expired.":"","Could not update email! Invalid link.":"","Create a new contact":"","Current plan":"","Delete account":"Hisobni o'chirmoq","Didn't mean to do this? Manage your preferences <button>here</button>.":"","Don't have an account?":"Hisobingiz yoqmi?",Edit:"",Email:"Email","Email newsletter":"","Email preference updated.":"Email sozlamalari yangilandi.","Email preferences":"Email sozlamalari",Emails:"Elektron xatlar","Emails disabled":"Elektron pochta xabarlari o‘chirilgan","Ends {{offerEndDate}}":"",Error:"","Expires {{expiryDate}}":"",Forever:"","Free Trial – Ends {{trialEnd}}":"","Get help":"Yordam olmoq","Get in touch for help":"","Get notified when someone replies to your comment":"Kimdir sharhingizga javob bersa, bildirishnoma oling","Give feedback on this post":"Ushbu post haqida fikr bildiring","Help! I'm not receiving emails":"","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"","Less like this":"Bu kabi kamroq",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"",Manage:"Boshqarmoq",Monthly:"Oylik","More like this":"Ko'proq shunga o'xshash",Name:"Ism","Need more help? Contact support":"","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"","Not receiving emails?":"Elektron xatlar olmayapsizmi?","Now check your email!":"Endi elektron pochtangizni tekshiring!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"","Permanent failure (bounce)":"",Plan:"","Plan checkout was cancelled.":"","Plan upgrade was cancelled.":"","Please fill in required fields":"",Price:"Narx","Re-enable emails":"Elektron pochta xabarlarini qayta yoqing","Renews at {{price}}.":"",Retry:"Qayta urinmoq",Save:"Saqlamoq","Send an email and say hi!":"","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"","Sending login link...":"Kirish havolasi yuborilmoqda...","Sending...":"Yuborilmoqda...","Sign in":"Kirish","Sign out":"","Sign up":"Ro'yxatdan o'tmoq","Signup error: Invalid link":"","Sorry, that didn’t work.":"","Spam complaints":"","Start {{amount}}-day free trial":"{{amount}}-kun sinov muddatini boshlang","Starting {{startDate}}":"","Starting today":"","Submit feedback":"Izoh yuboring",Subscribe:"",Subscribed:"",Success:"","Success! Check your email for magic link to sign-in.":"","Success! Your account is fully activated, you now have access to all content.":"","Success! Your email is updated.":"","Successfully unsubscribed":"Obuna muvaffaqiyatli bekor qilindi","Thanks for the feedback!":"Izoh uchun rahmat!","That didn't go to plan":"Bu rejaga mos kelmadi","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"","This site is invite-only, contact the owner for access.":"Bu saytda faqat taklif qilinadi, kirish uchun egasiga murojaat qiling.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Ro‘yxatdan o‘tishni yakunlash uchun pochta qutingizdagi tasdiqlash havolasini bosing. Agar u 3 daqiqada kelmasa, spam jildini tekshiring!","Try free for {{amount}} days, then {{originalPrice}}.":"","Unlock access to all newsletters by becoming a paid subscriber.":"","Unsubscribe from all emails":"Barcha elektron pochta xabarlariga obunani bekor qiling",Unsubscribed:"","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Elektron pochtalarga obunani bekor qilish {{title}}ga pulli obunanu bekor qilmaydi",Update:"","Update your preferences":"Sozlamalarni yangilash","Verify your email address is correct":"","View plans":"","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Email manzili topilmagani uchun obunangizni bekor qila olmadik. Iltimos, sayt egasi bilan bog'laning.","Welcome back, {{name}}!":"","Welcome back!":"","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"","Why has my email been disabled?":"",Yearly:"Yillik","You currently have a free membership, upgrade to a paid subscription for full access.":"","You have been successfully resubscribed":"Siz muvaffaqiyatli qayta obuna bo'ldingiz","You're currently not receiving emails":"","You're not receiving emails":"","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Siz e-pochta xabarlarini olmayapsiz, chunki siz oxirgi xabarni spam deb belgilagansiz yoki xabarlar taqdim etilgan elektron pochta manzilingizga yetkazilmagan.","You've successfully signed in.":"","Your account":"Sizning hisobingiz","Your input helps shape what gets published.":"","Your subscription will expire on {{expiryDate}}":"","Your subscription will renew on {{renewalDate}}":"","Your subscription will start on {{subscriptionStart}}":""},i1={"{{amount}} days free":"{{amount}} ngày đọc thử","{{amount}} off":"Giảm {{amount}}","{{amount}} off for first {{number}} months.":"Giảm {{amount}} cho {{number}} tháng đầu tiên.","{{amount}} off for first {{period}}.":"Giảm {{amount}} cho {{period}} đầu tiên.","{{amount}} off forever.":"Giảm {{amount}} vĩnh viễn.","{{discount}}% discount":"Giảm {{discount}}%","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"{{memberEmail}} sẽ không còn được nhận bản tin {{newsletterName}}.","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"{{memberEmail}} sẽ không còn được nhận email khi ai đó trả lời phản hồi của bạn.","{{memberEmail}} will no longer receive this newsletter.":"{{memberEmail}} sẽ không còn được nhận bản tin này.","{{trialDays}} days free":"{{trialDays}} ngày đọc thử miễn phí","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"Liên kết đăng nhập đã được gửi đến hộp thư của bạn. Sau 3 phút mà chưa thấy, hãy kiểm tra thư hộp thư spam.",Account:"Tài khoản","Account settings":"Cài đặt","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"Sau khi hết thời gian đọc thử miễn phí, sẽ áp dụng giá của gói theo dõi mà bạn đã chọn. Bạn có thể hủy trước khi hết thời gian đọc thử.","Already a member?":"Bạn đã là thành viên?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"Xảy ra lỗi chưa biết. Hãy thử lại hoặc <a>liên hệ hỗ trợ</a> nếu vẫn tiếp tục lỗi.",Back:"Quay về","Back to Log in":"Quay về đăng nhập","Billing info":"Thông tin thanh toán","Black Friday":"Ưu Đãi","Cancel anytime.":"Hủy bất cứ lúc nào.","Cancel subscription":"Hủy gói","Cancellation reason":"Lý do hủy gói",Change:"Thay đổi","Check spam & promotions folders":"Kiểm tra hộp thư spam & quảng cáo","Check with your mail provider":"Yêu cầu nhà cung cấp dịch vụ email hỗ trợ",Choose:"Chọn","Choose a different plan":"Chọn gói khác","Choose your newsletters":"Chọn bản tin bạn muốn nhận","Click here to retry":"Nhấn vào đây thử lại",Close:"Đóng",Comments:"Bình luận",Complimentary:"Khen tặng",Confirm:"Xác nhận","Confirm cancellation":"Xác nhận hủy","Confirm subscription":"Xác nhận theo dõi","Contact support":"Liên hệ hỗ trợ",Continue:"Tiếp tục","Continue subscription":"Tiếp tục theo dõi","Could not sign in. Login link expired.":"Không đăng nhập được. Liên kết đăng nhập hết hạn.","Could not update email! Invalid link.":"Không cập nhật email được. Liên kết không hợp lệ.","Create a new contact":"Tạo liên hệ mới","Current plan":"Gói hiện tại","Delete account":"Xóa tài khoản","Didn't mean to do this? Manage your preferences <button>here</button>.":"Không muốn như vậy? Quản lý thiết lập <button>ở đây</button>.","Don't have an account?":"Bạn chưa có tài khoản?",Edit:"Chỉnh sửa",Email:"Email","Email newsletter":"Email bản tin","Email preference updated.":"Đã cập nhật email.","Email preferences":"Thiết lập email",Emails:"Emails","Emails disabled":"Vô hiệu hóa email","Ends {{offerEndDate}}":"Kết thúc vào {{offerEndDate}}",Error:"Lỗi","Expires {{expiryDate}}":"Hết hạn vào {{expiryDate}}",Forever:"Vĩnh viễn","Free Trial – Ends {{trialEnd}}":"Dùng Thử – Hết hạn vào {{trialEnd}}","Get help":"Trợ giúp","Get in touch for help":"Yêu cầu nhận trợ giúp","Get notified when someone replies to your comment":"Nhận thông báo khi có ai đó trả lời bình luận","Give feedback on this post":"Phản hồi bài viết này","Help! I'm not receiving emails":"Giúp tôi! Tôi không nhận được email","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"Nếu một bản tin bị gắn nhãn thư rác, email sẽ tự động bị vô hiệu hóa đối với địa chỉ đó để đảm bảo bạn không còn nhận được bất kỳ email không mong muốn nào nữa.","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"Nếu khiếu nại về thư rác là vô tình hoặc bạn muốn bắt đầu nhận lại email, bạn có thể đăng ký lại email bằng cách nhấp vào nút trên màn hình trước đó.","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"Nếu bạn hủy đăng ký ngay bây giờ, bạn sẽ tiếp tục có quyền truy cập cho đến {{periodEnd}}.","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"Nếu bạn dùng tài khoản email của công ty hoặc chính phủ, hãy liên hệ với bộ phận IT và yêu cầu họ cho phép nhận email từ {{senderEmail}}","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"Nếu bạn muốn bắt đầu nhận lại email, tốt nhất là kiểm tra địa chỉ email của bạn trong hồ sơ xem có vấn đề gì không và sau đó nhấn vào đăng ký lại trên màn hình trước đó.","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"Nếu bạn không nhận được bản tin email mà bạn đã đăng ký, đây là một số việc cần kiểm tra.","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"Nếu bạn đã hoàn thành tất cả các bước kiểm tra này mà vẫn không nhận được email, hãy liên hệ với {{supportAddress}} để được hỗ trợ.","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"Trong trường hợp nhận được lỗi vĩnh viễn khi cố gắng gửi bản tin, email sẽ bị vô hiệu hóa trên tài khoản.","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"Trong ứng dụng email của bạn, hãy thêm {{senderEmail}} vào danh sách liên hệ của bạn. Điều này báo hiệu cho nhà cung cấp dịch vụ email của bạn rằng các email được gửi từ địa chỉ này là đáng tin cậy.","Less like this":"Không thích lắm",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':'Hãy chắc rằng email không đang trong hộp thư Spam hoặc Quảng cáo. Nếu đang vậy, chọn "Đánh dấu không phải spam" hoặc "Chuyển tới Hộp thư đến".',Manage:"Quản lý",Monthly:"Hàng tháng","More like this":"Thích bài viết như này",Name:"Tên","Need more help? Contact support":"Cần giúp đỡ? Liên hệ hỗ trợ","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"Bản tin có thể bị vô hiệu hóa trên tài khoản của bạn vì hai lý do: Email trước đó đã bị đánh dấu là thư rác hoặc lỗi thất bại vĩnh viễn (thư trả lại).","Not receiving emails?":"Bạn không nhận được email?","Now check your email!":"Kiểm tra hộp thư ngay!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"Sau khi đăng ký lại, nếu bạn vẫn không thấy email trong hộp thư đến của mình, hãy kiểm tra mục thư rác. Một số nhà cung cấp email lưu giữ hồ sơ về các khiếu nại thư rác trước đây và sẽ tiếp tục gắn nhãn email. Nếu điều này xảy ra, hãy đánh dấu bản tin mới nhất là 'Không phải thư rác' để chuyển nó trở lại hộp thư đến chính của bạn.","Permanent failure (bounce)":"Thất bại vĩnh viễn (thư bị trả lại)",Plan:"Gói","Plan checkout was cancelled.":"Đã hủy thanh toán.","Plan upgrade was cancelled.":"Đã hủy nâng cấp gói.","Please fill in required fields":"Vui lòng điền các mục bắt buộc",Price:"Giá","Re-enable emails":"Kích hoạt lại email","Renews at {{price}}.":"Gia hạn giá {{price}}.",Retry:"Thử lại",Save:"Lưu","Send an email and say hi!":"Gửi một email và nói xin chào!","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"Gửi email tới {{senderEmail}} và gửi lời chào. Điều này cũng có thể giúp báo hiệu cho nhà cung cấp dịch vụ email của bạn rằng các email đến và đi từ địa chỉ này là đáng tin cậy.","Sending login link...":"Đang gửi liên kết đăng nhập...","Sending...":"Đang gửi...","Sign in":"Đăng nhập","Sign out":"Đăng xuất","Sign up":"Đăng ký","Signup error: Invalid link":"Lỗi đăng ký: Liên kết không hợp lệ","Sorry, that didn’t work.":"Rất tiếc, không dùng được.","Spam complaints":"Than phiền","Start {{amount}}-day free trial":"Bắt đầu đọc thử {{amount}} ngày","Starting {{startDate}}":"Bắt đầu vào {{startDate}}","Starting today":"Bắt đầu hôm nay","Submit feedback":"Gửi phản hồi",Subscribe:"Theo dõi",Subscribed:"Đã theo dõi",Success:"Thành công","Success! Check your email for magic link to sign-in.":"Xong! Kiểm tra hộp thư để nhận liên kết đăng nhập.","Success! Your account is fully activated, you now have access to all content.":"Xong! Đã kích hoạt tài khoản, giờ bạn có toàn quyền truy cập nội dung.","Success! Your email is updated.":"Xong! Đã cập nhật email của bạn.","Successfully unsubscribed":"Đã hủy theo dõi thành công","Thanks for the feedback!":"Cám ơn phản hồi của bạn!","That didn't go to plan":"Không thực hiện được","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"Địa chỉ email của bạn là {{memberEmail}} — nếu sai, bạn có thể đổi trong <button>cài đặt tài khoản</button>.","There was a problem submitting your feedback. Please try again a little later.":"Có vấn đề khi gửi phản hồi. Xin thử lại sau.","This site is invite-only, contact the owner for access.":"Trang web này chỉ dành cho những người được mời, hãy liên hệ với chủ sở hữu để cấp quyền truy cập.","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"Để hoàn tất đăng ký, nhấn vào liên kết xác nhận trong hộp thư đến của bạn. Sau 3 phút mà không thấy, hãy kiểm tra hộp thư spam của bạn!","Try free for {{amount}} days, then {{originalPrice}}.":"Đọc thử {{amount}} ngày, phí sau đọc thử là {{originalPrice}}.","Unlock access to all newsletters by becoming a paid subscriber.":"Trở thành thành viên trả phí để mở khóa truy cập toàn bộ bản tin.","Unsubscribe from all emails":"Hủy theo dõi tất cả email",Unsubscribed:"Đã hủy theo dõi","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"Việc hủy theo dõi qua email sẽ không hủy gói đăng ký trả phí của bạn đối với {{title}}",Update:"Cập nhật","Update your preferences":"Cập nhật thiết lập","Verify your email address is correct":"Xác minh địa chỉ mail của bạn là đúng","View plans":"Xem các gói","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"Chúng tôi không thể hủy theo dõi vì không tìm thấy địa chỉ email. Vui lòng liên hệ với chủ sở hữu trang web.","Welcome back, {{name}}!":"Chào mừng trở lại, {{name}}!","Welcome back!":"Chào mừng trở lại!","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"Khi hộp thư đến không nhận được email, nó thường được gọi là email bị trả lại. Điều này có thể là tạm thời. Tuy nhiên, trong một số trường hợp, email bị trả lại có thể là lỗi vĩnh viễn nếu địa chỉ email không hợp lệ hoặc không tồn tại.","Why has my email been disabled?":"Tại sao email của tôi bị vô hiệu hóa?",Yearly:"Hàng năm","You currently have a free membership, upgrade to a paid subscription for full access.":"Bạn đang là thành viên thường, hãy nâng cấp gói trả phí để có toàn quyền truy cập.","You have been successfully resubscribed":"Bạn đã theo dõi lại thành công","You're currently not receiving emails":"Những email bạn không nhận được gần đây","You're not receiving emails":"Bạn không nhận được email","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"Bạn không nhận được email vì bạn đã đánh dấu một email gần đây là thư rác, hoặc vì không thể gửi đến địa chỉ email bạn đã cung cấp.","You've successfully signed in.":"Bạn đã đăng nhập.","Your account":"Tài khoản của bạn","Your input helps shape what gets published.":"Thông tin của bạn giúp định hình nội dung được xuất bản.","Your subscription will expire on {{expiryDate}}":"Gói của bạn sẽ hết hạn vào {{expiryDate}}","Your subscription will renew on {{renewalDate}}":"Gói của bạn sẽ tự động gia hạn vào {{renewalDate}}","Your subscription will start on {{subscriptionStart}}":"Gói của bạn bắt đầu có hiệu lực vào {{subscriptionStart}}"},o1={"{{amount}} days free":"{{amount}}天免费","{{amount}} off":"减免{{amount}}","{{amount}} off for first {{number}} months.":"前{{number}}月减免{{amount}}","{{amount}} off for first {{period}}.":"首{{period}}减免{{amount}}","{{amount}} off forever.":"永久减免{{amount}}","{{discount}}% discount":"{{discount}}% 折扣","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"{{memberEmail}}将不会再收到{{newsletterName}}的刊物。","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"{{memberEmail}}将不会再收到评论回复提醒邮件。","{{memberEmail}} will no longer receive this newsletter.":"{{memberEmail}}将不会再收到本刊物。","{{trialDays}} days free":"{{trialDays}} 天免费试用","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"登录链接已经发送到您的收件箱。如果在3分钟内还没有收到,请务必检查您的垃圾邮件文件夹。",Account:"账户","Account settings":"账户设置","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"免费试用结束后,您将被收取所选套餐的标定价格。在此之前,您可以随时取消。","Already a member?":"已经是会员了?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"遇到意外错误。请重试,若持续出现请<a>联系支持服务</a>。",Back:"返回","Back to Log in":"返回登录","Billing info":"账单信息","Black Friday":"黑五促销","Cancel anytime.":"随时取消","Cancel subscription":"取消订阅","Cancellation reason":"取消原因",Change:"变更","Check spam & promotions folders":"检查垃圾邮件与促销邮件目录","Check with your mail provider":"与您的邮件服务商确认",Choose:"选择","Choose a different plan":"选择其他订阅方案","Choose your newsletters":"选择您的刊物","Click here to retry":"请点此处重试",Close:"关闭",Comments:"评论",Complimentary:"赠送",Confirm:"确认","Confirm cancellation":"确认取消","Confirm subscription":"确认订阅","Contact support":"联系支持服务",Continue:"继续","Continue subscription":"继续订阅","Could not sign in. Login link expired.":"无法登录。登录链接已过期。","Could not update email! Invalid link.":"无法更新电子邮件!链接无效。","Create a new contact":"创建新联系","Current plan":"当前订阅","Delete account":"删除账户","Didn't mean to do this? Manage your preferences <button>here</button>.":"误操作?在<button>这里</button>管理您的配置。","Don't have an account?":"还没有账户吗?",Edit:"编辑",Email:"电子邮件","Email newsletter":"电子邮件快报","Email preference updated.":"电子邮件偏好已更新。","Email preferences":"电子邮件偏好设置",Emails:"电子邮件列表","Emails disabled":"关闭电子邮件列表","Ends {{offerEndDate}}":"于{{offerEndDate}}结束",Error:"错误","Expires {{expiryDate}}":"于{{expiryDate}}过期",Forever:"永久","Free Trial – Ends {{trialEnd}}":"免费试用 - {{trialEnd}}结束","Get help":"获取帮助","Get in touch for help":"联系以获取帮助","Get notified when someone replies to your comment":"当有人回复您的评论时,将会收到通知","Give feedback on this post":"对这篇文章提供建议","Help! I'm not receiving emails":"求助!我没有收到电子邮件","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"如果有快报被标记为垃圾邮件,则自动拒绝该地址的邮件以确保后续不再接收不想要的消息。","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"如果误标记为垃圾邮件,或者您希望再次开启邮件接收,您可以通过点击上一页的按钮重新订阅。","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"如果现在取消订阅,当前订阅在{{periodEnd}}依旧有效。","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"如果您使用公司或者政府邮件账户,请联系相应IT部门以允许从{{senderEmail}}接收邮件。","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"如果您希望重新开始接收邮件,接下来最好先检查存档的电子邮件地址,然后在之前的页面点击重新订阅。","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"如果没有收到订阅快报,请检查以下事项。","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"如果您已经完成全部检查项目却依旧没有收到邮件,您可以联系{{supportAddress}}获取支持。","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"当尝试发送快报时遇到永久错误,向该账户的发送邮件的功能将被禁用。","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"在您的电子邮件客户端将 {{senderEmail}} 加入联系人列表。这将向您的邮件供应商表明来自该地址的邮件是可信的。","Less like this":"不喜欢",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"确保邮件没有被意外标记为垃圾或者促销邮件。如果是,点击“非垃圾邮件”或者“移动到收件箱”。",Manage:"管理",Monthly:"月付","More like this":"喜欢",Name:"名字","Need more help? Contact support":"需要更多帮助?联系支持服务","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"您账户的快报被禁用的可能原因有两个:先前的电子邮件被标记为垃圾邮件,或者发送邮件遇到永久错误 (bounce)","Not receiving emails?":"无法收到电子邮件?","Now check your email!":"现在请检查您的电子邮件!","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"重新订阅后在收件箱依旧没有看到邮件,请检查您的垃圾邮件箱。一些服务商会保留之前的垃圾邮件记录并持续标记。如果是这样,请将最新的快报标记为“非垃圾邮件”并将其移动到收件箱。","Permanent failure (bounce)":"永久错误 (bounce)",Plan:"订阅计划","Plan checkout was cancelled.":"订阅付款已取消。","Plan upgrade was cancelled.":"订阅升级已取消。","Please fill in required fields":"请填写必须项目",Price:"价格","Re-enable emails":"重启电子邮件","Renews at {{price}}.":"以{{price}}的价格续费。",Retry:"重试",Save:"保存","Send an email and say hi!":"发送邮件问好!","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"发送邮件到{{senderEmail}}问好。这有助于您的邮件服务商将该地址的往来邮件判定为可信邮件。","Sending login link...":"正在发送登录链接...","Sending...":"发送中...","Sign in":"登录","Sign out":"退出","Sign up":"注册","Signup error: Invalid link":"注册错误:链接无效","Sorry, that didn’t work.":"抱歉,该操作无法完成。","Spam complaints":"垃圾邮件","Start {{amount}}-day free trial":"开始 {{amount}}-天免费试用","Starting {{startDate}}":"从{{startDate}}开始","Starting today":"从今天开始","Submit feedback":"提交建议",Subscribe:"订阅",Subscribed:"已订阅",Success:"成功","Success! Check your email for magic link to sign-in.":"成功!检查您的电子邮箱以获取登录链接。","Success! Your account is fully activated, you now have access to all content.":"成功!您的账户已经完全激活,您现在可以访问全部内容了。","Success! Your email is updated.":"成功!您的电子邮件已更新。","Successfully unsubscribed":"成功取消订阅","Thanks for the feedback!":"感谢您的建议!","That didn't go to plan":"似乎出错了","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"","There was a problem submitting your feedback. Please try again a little later.":"提交您的反馈时遇到错误。请稍后重试。","This site is invite-only, contact the owner for access.":"此网站仅限邀请,联系所有者以获取访问","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"要完成注册,请点击您收件箱中的确认链接。如果在3分钟内没有收到,请检查一下您的垃圾邮件文件夹!","Try free for {{amount}} days, then {{originalPrice}}.":"{{amount}}天免费试用,之后{{originalPrice}}。","Unlock access to all newsletters by becoming a paid subscriber.":"成为付费订阅用户以解锁全部快报。","Unsubscribe from all emails":"取消所有邮件订阅",Unsubscribed:"取消订阅","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"取消邮件订阅不会取消您对 {{title}} 的付费订阅。",Update:"更新","Update your preferences":"更新您的偏好设置","Verify your email address is correct":"确认您的电子邮件地址是正确的","View plans":"查阅订阅计划","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"我们无法取消您的订阅,因为找不到该电子邮件地址。请联系网站所有者。","Welcome back, {{name}}!":"欢迎回来,{{name}}!","Welcome back!":"欢迎回来!","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"收件箱无法接收邮件时称为“反弹”。大多数时候这是临时的。但是某些情况下,无效或者不存在的邮件地址反弹的邮件会被认定为永久错误。","Why has my email been disabled?":"为什么我的邮件功能被禁用了?",Yearly:"年付","You currently have a free membership, upgrade to a paid subscription for full access.":"您当前为免费用户,升级为付费订阅以获取全部内容。","You have been successfully resubscribed":"您已成功重新订阅","You're currently not receiving emails":"您当前不会接收电子邮件。","You're not receiving emails":"您当前不会接收电子邮件。","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"您收不到电子邮件是因为您可能将最近的某个消息标记为垃圾邮件,或者无法将消息发送到您提供的电子邮件地址。","You've successfully signed in.":"您已成功登录。","Your account":"您的账户","Your input helps shape what gets published.":"您的建议将使我们变得更好。","Your subscription will expire on {{expiryDate}}":"您的订阅将在{{expiryDate}}到期","Your subscription will renew on {{renewalDate}}":"您的订阅将在{{renewalDate}}续费","Your subscription will start on {{subscriptionStart}}":"您的订阅将于{{subscriptionStart}}开始"},s1={"{{amount}} days free":"{{amount}} 天免費","{{amount}} off":"{{amount}} 元優惠","{{amount}} off for first {{number}} months.":"前 {{number}} 個月有 {{amount}} 元折扣優惠","{{amount}} off for first {{period}}.":"首{{period}}享 {{amount}} 元折扣優惠","{{amount}} off forever.":"永久享 {{amount}} 元折扣優惠","{{discount}}% discount":"{{discount}}% 折扣","{{memberEmail}} will no longer receive {{newsletterName}} newsletter.":"{{memberEmail}} 將不再收到{{newsletterName}}的電子報。","{{memberEmail}} will no longer receive emails when someone replies to your comments.":"{{memberEmail}} 將不再收到他人回覆您的評論時的通知。","{{memberEmail}} will no longer receive this newsletter.":"{{memberEmail}} 將不再收到此電子報。","{{trialDays}} days free":"{{trialDays}} 天免費試用","A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.":"登入連結已經發送到您的收件匣。如果在 3 分鐘內未收到,請務必檢查您的垃圾郵件。",Account:"帳號","Account settings":"帳號設定","After a free trial ends, you will be charged the regular price for the tier you've chosen. You can always cancel before then.":"免費試用結束後,您將支付所選方案的定價金額。在此之前,您可以隨時取消。","Already a member?":"已經是會員了?","An unexpected error occured. Please try again or <a>contact support</a> if the error persists.":"發生了意外錯誤,請再試一次。如果錯誤持續出現,請<a>聯繫客服</a>。",Back:"返回上一頁","Back to Log in":"返回登入畫面","Billing info":"帳單內容","Black Friday":"黑色星期五促銷","Cancel anytime.":"隨時取消","Cancel subscription":"取消訂閱","Cancellation reason":"取消原因",Change:"變更","Check spam & promotions folders":"檢查垃圾郵件或促銷郵件","Check with your mail provider":"請向您的電子信箱服務提供商確認",Choose:"選擇","Choose a different plan":"選擇其他訂閱方案","Choose your newsletters":"選擇您的電子報","Click here to retry":"點擊重試",Close:"關閉",Comments:"留言",Complimentary:"贈送",Confirm:"確認","Confirm cancellation":"確認取消","Confirm subscription":"確認訂閱","Contact support":"聯繫客服",Continue:"繼續","Continue subscription":"繼續訂閱","Could not sign in. Login link expired.":"無法登入。登入連結已過期。","Could not update email! Invalid link.":"無法更新 email。連結無效。","Create a new contact":"建立新的聯絡人","Current plan":"目前方案","Delete account":"刪除帳號","Didn't mean to do this? Manage your preferences <button>here</button>.":"不小心按到?在<button>這裡</button>可以變更您的偏好設定。","Don't have an account?":"還沒有帳號嗎?",Edit:"編輯",Email:"email","Email newsletter":"電子報","Email preference updated.":"email 偏好已更新。","Email preferences":"email 偏好設定",Emails:"電子報","Emails disabled":"已停止接收電子報","Ends {{offerEndDate}}":"於 {{offerEndDate}} 結束",Error:"錯誤","Expires {{expiryDate}}":"於 {{expiryDate}} 過期",Forever:"永久","Free Trial – Ends {{trialEnd}}":"免費試用──於 {{trialEnd}} 结束","Get help":"取得協助","Get in touch for help":"聯繫以取得協助","Get notified when someone replies to your comment":"當有人回覆我的留言時通知我","Give feedback on this post":"為這篇文章提供意見","Help! I'm not receiving emails":"求救!我沒有收到 email","If a newsletter is flagged as spam, emails are automatically disabled for that address to make sure you no longer receive any unwanted messages.":"如果有電子報被標記為垃圾郵件,您的 email 地址將自動停止接收該電子報,以確保您不再收到任何不需要的訊息。","If the spam complaint was accidental, or you would like to begin receiving emails again, you can resubscribe to emails by clicking the button on the previous screen.":"如果您不小心將電子報標示成垃圾郵件,或者您希望重新開始接收電子報,您可以點擊前一個畫面上的按鈕以重新訂閱電子報。","If you cancel your subscription now, you will continue to have access until {{periodEnd}}.":"如果現在取消訂閱,您在 {{periodEnd}} 之前仍可存取內容。","If you have a corporate or government email account, reach out to your IT department and ask them to allow emails to be received from {{senderEmail}}":"如果您有企業或政府郵件帳戶,請聯繫相關 IT 部門,要求他們允許來自 {{senderEmail}} 的郵件。","If you would like to start receiving emails again, the best next steps are to check your email address on file for any issues and then click resubscribe on the previous screen.":"如果您希望重新開始接收郵件,最好的方法是檢查您註冊的 email 地址是否正常運作,然後在前一個畫面點擊重新訂閱。","If you're not receiving the email newsletter you've subscribed to, here are few things to check.":"如果您沒有收到您訂閱的電子報,請檢查以下幾個事項。","If you've completed all these checks and you're still not receiving emails, you can reach out to get support by contacting {{supportAddress}}.":"如果您已經完成了上述所有檢查項目,但仍然沒有收到電子報,您可以透過聯繫 {{supportAddress}} 取得協助。","In the event a permanent failure is received when attempting to send a newsletter, emails will be disabled on the account.":"要是系統發送電子報時遇到永久失敗的情形,該帳號將停止接收電子報。","In your email client add {{senderEmail}} to your contacts list. This signals to your mail provider that emails sent from this address should be trusted.":"在您的 email 系統中將 {{senderEmail}} 加入您的聯絡人列表中。如此一來,您的 email 系統就會知道可以信任從該地址發送的郵件。","Less like this":"不感興趣",'Make sure emails aren\'t accidentally ending up in the Spam or Promotions folders of your inbox. If they are, click on "Mark as not spam" and/or "Move to inbox".':"請確保郵件沒有意外地被歸類為垃圾郵件或促銷郵件。如果發生這類情形,請點擊「標記為非垃圾郵件」或「移至收件匣」。",Manage:"管理",Monthly:"每月","More like this":"感興趣",Name:"名字","Need more help? Contact support":"需要更多協助?聯繫客服","Newsletters can be disabled on your account for two reasons: A previous email was marked as spam, or attempting to send an email resulted in a permanent failure (bounce).":"您的帳號可能會因為兩個原因而停止接收電子報:先前的郵件被標記為垃圾郵件,或者嘗試發送郵件時出現永久失敗(郵件遭到退回)。","Not receiving emails?":"沒有收到 email?","Now check your email!":"立即檢查您的 email。","Once resubscribed, if you still don't see emails in your inbox, check your spam folder. Some inbox providers keep a record of previous spam complaints and will continue to flag emails. If this happens, mark the latest newsletter as 'Not spam' to move it back to your primary inbox.":"重新訂閱後,如果您在收件夾中仍然看不到郵件,請檢查您的垃圾郵件匣。一些 email 服務商會保留先前的垃圾郵件記錄並持續標記此類郵件。如果發生這種情況,請將最新的電子報標記為「非垃圾郵件」,將其移回您的主要收件匣。","Permanent failure (bounce)":"永久錯誤 (郵件遭到退回)",Plan:"訂閱方案","Plan checkout was cancelled.":"訂閱付款已取消。","Plan upgrade was cancelled.":"訂閱升級已取消。","Please fill in required fields":"請填寫必填項目",Price:"價格","Re-enable emails":"重新啟用 email","Renews at {{price}}.":"以 {{price}} 的價格續約。",Retry:"重試",Save:"儲存","Send an email and say hi!":"發送 email 問好!","Send an email to {{senderEmail}} and say hello. This can also help signal to your mail provider that emails to-and-from this address should be trusted.":"向 {{senderEmail}} 發送 email 並問好。這也有助於讓您的 email 供應商了解這個地址的往來郵件應該受到信任。","Sending login link...":"正在發送登入連結...","Sending...":"發送中...","Sign in":"登入","Sign out":"登出","Sign up":"註冊","Signup error: Invalid link":"註冊錯誤:連結無效","Sorry, that didn’t work.":"抱歉,該操作無法完成。","Spam complaints":"垃圾郵件","Start {{amount}}-day free trial":"開始 {{amount}} 天免費試用","Starting {{startDate}}":"從 {{startDate}} 開始","Starting today":"從今天開始","Submit feedback":"提交意見",Subscribe:"訂閱",Subscribed:"已訂閱",Success:"成功","Success! Check your email for magic link to sign-in.":"成功了!請檢查您的 email 以取得快速登入連結。","Success! Your account is fully activated, you now have access to all content.":"成功了!您的帳號已完全啟用,您現在可以存取所有內容。","Success! Your email is updated.":"成功了!您的 email 已更新。","Successfully unsubscribed":"成功取消訂閱","Thanks for the feedback!":"感謝您的意見!","That didn't go to plan":"發生錯誤","The email address we have for you is {{memberEmail}} — if that's not correct, you can update it in your <button>account settings area</button>.":"就我們所知,您的 email 地址是 {{memberEmail}}。如果有誤,您可以在<button>帳號設定區塊</button>進行更新。","There was a problem submitting your feedback. Please try again a little later.":"提交您的意見時遇到問題。請稍後再試。","This site is invite-only, contact the owner for access.":"此網站僅限受邀請者觀看,請聯繫網站擁有者取得存取權限。","To complete signup, click the confirmation link in your inbox. If it doesn't arrive within 3 minutes, check your spam folder!":"要完成註冊,請點擊您收件匣中的確認連結。如果在 3 分鐘內沒有收到,請檢查您的垃圾郵件。","Try free for {{amount}} days, then {{originalPrice}}.":"免費試用 {{amount}} 天,然後以 {{originalPrice}} 開始訂閱。","Unlock access to all newsletters by becoming a paid subscriber.":"成為付費會員以解鎖所有電子報內容。","Unsubscribe from all emails":"取消所有電子報訂閱",Unsubscribed:"未訂閱","Unsubscribing from emails will not cancel your paid subscription to {{title}}":"取消接收電子報不會取消您對 {{title}} 的付費訂閱。",Update:"更新","Update your preferences":"更新您的偏好設定","Verify your email address is correct":"確認你的 email 地址無誤","View plans":"查詢訂閱方案","We couldn't unsubscribe you as the email address was not found. Please contact the site owner.":"我們無法取消您的訂閱,因為找不到該 email 地址。請聯繫網站擁有者。","Welcome back, {{name}}!":"歡迎回來,{{name}}!","Welcome back!":"歡迎回來!","When an inbox fails to accept an email it is commonly called a bounce. In many cases, this can be temporary. However, in some cases, a bounced email can be returned as a permanent failure when an email address is invalid or non-existent.":"當收件匣無法接收郵件時,通常稱之為退信。在許多情況下,這可能是暫時的。然而,在某些情況下,當郵件地址無效或不存在時,退回的郵件可能會被視為永久失敗。","Why has my email been disabled?":"為什麼我的 email 被停用了?",Yearly:"年付","You currently have a free membership, upgrade to a paid subscription for full access.":"您目前是免費會員,升級至付費訂閱以獲得完整存取權。","You have been successfully resubscribed":"您已成功重新訂閱","You're currently not receiving emails":"您目前無法接收郵件。","You're not receiving emails":"您無法接收郵件。","You're not receiving emails because you either marked a recent message as spam, or because messages could not be delivered to your provided email address.":"您無法接收郵件,可能是因為您最近將某個郵件標記為垃圾郵件,或者郵件無法發送到您提供的 email 地址。","You've successfully signed in.":"您已成功登入。","Your account":"您的帳號","Your input helps shape what gets published.":"您的建議有助於改善我們的內容。","Your subscription will expire on {{expiryDate}}":"您的訂閱將於 {{expiryDate}} 到期","Your subscription will renew on {{renewalDate}}":"您的訂閱將於 {{renewalDate}} 自動續訂","Your subscription will start on {{subscriptionStart}}":"您的訂閱將於 {{subscriptionStart}} 開始"};var Of;function Ff(){return Of||(Of={"/ghost/i18n/locales/af/portal.json":function(){return $S},"/ghost/i18n/locales/bg/portal.json":function(){return _S},"/ghost/i18n/locales/ca/portal.json":function(){return jS},"/ghost/i18n/locales/cs/portal.json":function(){return PS},"/ghost/i18n/locales/da/portal.json":function(){return NS},"/ghost/i18n/locales/de/portal.json":function(){return TS},"/ghost/i18n/locales/en/portal.json":function(){return IS},"/ghost/i18n/locales/eo/portal.json":function(){return DS},"/ghost/i18n/locales/es/portal.json":function(){return AS},"/ghost/i18n/locales/fi/portal.json":function(){return MS},"/ghost/i18n/locales/fr/portal.json":function(){return zS},"/ghost/i18n/locales/hr/portal.json":function(){return RS},"/ghost/i18n/locales/hu/portal.json":function(){return LS},"/ghost/i18n/locales/id/portal.json":function(){return US},"/ghost/i18n/locales/it/portal.json":function(){return OS},"/ghost/i18n/locales/ko/portal.json":function(){return FS},"/ghost/i18n/locales/mn/portal.json":function(){return YS},"/ghost/i18n/locales/ms/portal.json":function(){return BS},"/ghost/i18n/locales/nl/portal.json":function(){return HS},"/ghost/i18n/locales/no/portal.json":function(){return qS},"/ghost/i18n/locales/pl/portal.json":function(){return VS},"/ghost/i18n/locales/pt/portal.json":function(){return WS},"/ghost/i18n/locales/pt-BR/portal.json":function(){return GS},"/ghost/i18n/locales/ro/portal.json":function(){return KS},"/ghost/i18n/locales/ru/portal.json":function(){return JS},"/ghost/i18n/locales/si/portal.json":function(){return QS},"/ghost/i18n/locales/sl/portal.json":function(){return XS},"/ghost/i18n/locales/sq/portal.json":function(){return ZS},"/ghost/i18n/locales/sr/portal.json":function(){return e1},"/ghost/i18n/locales/sv/portal.json":function(){return t1},"/ghost/i18n/locales/tr/portal.json":function(){return n1},"/ghost/i18n/locales/uk/portal.json":function(){return r1},"/ghost/i18n/locales/uz/portal.json":function(){return a1},"/ghost/i18n/locales/vi/portal.json":function(){return i1},"/ghost/i18n/locales/zh/portal.json":function(){return o1},"/ghost/i18n/locales/zh-Hant/portal.json":function(){return s1}})}function l1(e){function t(n){var r=Yf(n,e);if(r!==null)return Ff()[r]();throw new Error('Could not dynamically require "'+n+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}return t.resolve=function(n){var r=Yf(n,e);return r!==null?r:require.resolve(n)},t}function Yf(e,t){var n=c1(e);e=zo(e);var r;e[0]==="/"&&(t="");for(var a=Ff(),i=["",".js",".json"];n?r=zo(t+"/node_modules/"+e):r=zo(t+"/"+e),!r.endsWith("/..");){for(var o=0;o<i.length;o++){var s=r+i[o];if(a[s])return s}if(!n)break;var l=zo(t+"/..");if(l===t)break;t=l}return null}function c1(e){var t=e[0];if(t==="/"||t==="\\")return!1;var n=e[1],r=e[2];return!(t==="."&&(!n||n==="/"||n==="\\")||t==="."&&n==="."&&(!r||r==="/"||r==="\\")||n===":"&&(r==="/"||r==="\\"))}function zo(e){e=e.replace(/\\/g,"/");for(var t=e.split("/"),n=t[0]==="",r=1;r<t.length;r++)(t[r]==="."||t[r]==="")&&t.splice(r--,1);for(var r=1;r<t.length;r++)t[r]===".."&&r>0&&t[r-1]!==".."&&t[r-1]!=="."&&(t.splice(--r,2),r--);return e=t.join("/"),n&&e[0]!=="/"?e="/"+e:e.length===0&&(e="."),e}var Jc={exports:{}};const u1={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 Ro{constructor(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.init(t,n)}init(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.prefix=n.prefix||"i18next:",this.logger=t||u1,this.options=n,this.debug=n.debug}log(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return this.forward(n,"log","",!0)}warn(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return this.forward(n,"warn","",!0)}error(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return this.forward(n,"error","")}deprecate(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return this.forward(n,"warn","WARNING DEPRECATED: ",!0)}forward(t,n,r,a){return a&&!this.debug?null:(typeof t[0]=="string"&&(t[0]=`${r}${this.prefix} ${t[0]}`),this.logger[n](t))}create(t){return new Ro(this.logger,{prefix:`${this.prefix}:${t}:`,...this.options})}clone(t){return t=t||this.options,t.prefix=t.prefix||this.prefix,new Ro(this.logger,t)}}var it=new Ro;class Lo{constructor(){this.observers={}}on(t,n){return t.split(" ").forEach(r=>{this.observers[r]=this.observers[r]||[],this.observers[r].push(n)}),this}off(t,n){if(this.observers[t]){if(!n){delete this.observers[t];return}this.observers[t]=this.observers[t].filter(r=>r!==n)}}emit(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),a=1;a<n;a++)r[a-1]=arguments[a];this.observers[t]&&[].concat(this.observers[t]).forEach(o=>{o(...r)}),this.observers["*"]&&[].concat(this.observers["*"]).forEach(o=>{o.apply(o,[t,...r])})}}function Na(){let e,t;const n=new Promise((r,a)=>{e=r,t=a});return n.resolve=e,n.reject=t,n}function Bf(e){return e==null?"":""+e}function d1(e,t,n){e.forEach(r=>{t[r]&&(n[r]=t[r])})}function Qc(e,t,n){function r(o){return o&&o.indexOf("###")>-1?o.replace(/###/g,"."):o}function a(){return!e||typeof e=="string"}const i=typeof t!="string"?[].concat(t):t.split(".");for(;i.length>1;){if(a())return{};const o=r(i.shift());!e[o]&&n&&(e[o]=new n),Object.prototype.hasOwnProperty.call(e,o)?e=e[o]:e={}}return a()?{}:{obj:e,k:r(i.shift())}}function Hf(e,t,n){const{obj:r,k:a}=Qc(e,t,Object);r[a]=n}function p1(e,t,n,r){const{obj:a,k:i}=Qc(e,t,Object);a[i]=a[i]||[],r&&(a[i]=a[i].concat(n)),r||a[i].push(n)}function Uo(e,t){const{obj:n,k:r}=Qc(e,t);if(n)return n[r]}function m1(e,t,n){const r=Uo(e,n);return r!==void 0?r:Uo(t,n)}function qf(e,t,n){for(const r in t)r!=="__proto__"&&r!=="constructor"&&(r in e?typeof e[r]=="string"||e[r]instanceof String||typeof t[r]=="string"||t[r]instanceof String?n&&(e[r]=t[r]):qf(e[r],t[r],n):e[r]=t[r]);return e}function mr(e){return e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}var h1={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","/":"&#x2F;"};function f1(e){return typeof e=="string"?e.replace(/[&<>"'\/]/g,t=>h1[t]):e}const g1=[" ",",","?","!",";"];function y1(e,t,n){t=t||"",n=n||"";const r=g1.filter(o=>t.indexOf(o)<0&&n.indexOf(o)<0);if(r.length===0)return!0;const a=new RegExp(`(${r.map(o=>o==="?"?"\\?":o).join("|")})`);let i=!a.test(e);if(!i){const o=e.indexOf(n);o>0&&!a.test(e.substring(0,o))&&(i=!0)}return i}function Oo(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:".";if(!e)return;if(e[t])return e[t];const r=t.split(n);let a=e;for(let i=0;i<r.length;++i){if(!a||typeof a[r[i]]=="string"&&i+1<r.length)return;if(a[r[i]]===void 0){let o=2,s=r.slice(i,i+o).join(n),l=a[s];for(;l===void 0&&r.length>i+o;)o++,s=r.slice(i,i+o).join(n),l=a[s];if(l===void 0)return;if(l===null)return null;if(t.endsWith(s)){if(typeof l=="string")return l;if(s&&typeof l[s]=="string")return l[s]}const u=r.slice(i+o).join(n);return u?Oo(l,u,n):void 0}a=a[r[i]]}return a}function Xc(e){return e&&e.indexOf("_")>0?e.replace("_","-"):e}class b1 extends Lo{constructor(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{ns:["translation"],defaultNS:"translation"};super(),this.data=t||{},this.options=n,this.options.keySeparator===void 0&&(this.options.keySeparator="."),this.options.ignoreJSONStructure===void 0&&(this.options.ignoreJSONStructure=!0)}addNamespaces(t){this.options.ns.indexOf(t)<0&&this.options.ns.push(t)}removeNamespaces(t){const n=this.options.ns.indexOf(t);n>-1&&this.options.ns.splice(n,1)}getResource(t,n,r){let a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};const i=a.keySeparator!==void 0?a.keySeparator:this.options.keySeparator,o=a.ignoreJSONStructure!==void 0?a.ignoreJSONStructure:this.options.ignoreJSONStructure;let s=[t,n];r&&typeof r!="string"&&(s=s.concat(r)),r&&typeof r=="string"&&(s=s.concat(i?r.split(i):r)),t.indexOf(".")>-1&&(s=t.split("."));const l=Uo(this.data,s);return l||!o||typeof r!="string"?l:Oo(this.data&&this.data[t]&&this.data[t][n],r,i)}addResource(t,n,r,a){let i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:{silent:!1};const o=i.keySeparator!==void 0?i.keySeparator:this.options.keySeparator;let s=[t,n];r&&(s=s.concat(o?r.split(o):r)),t.indexOf(".")>-1&&(s=t.split("."),a=n,n=s[1]),this.addNamespaces(n),Hf(this.data,s,a),i.silent||this.emit("added",t,n,r,a)}addResources(t,n,r){let a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{silent:!1};for(const i in r)(typeof r[i]=="string"||Object.prototype.toString.apply(r[i])==="[object Array]")&&this.addResource(t,n,i,r[i],{silent:!0});a.silent||this.emit("added",t,n,r)}addResourceBundle(t,n,r,a,i){let o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:{silent:!1},s=[t,n];t.indexOf(".")>-1&&(s=t.split("."),a=r,r=n,n=s[1]),this.addNamespaces(n);let l=Uo(this.data,s)||{};a?qf(l,r,i):l={...l,...r},Hf(this.data,s,l),o.silent||this.emit("added",t,n,r)}removeResourceBundle(t,n){this.hasResourceBundle(t,n)&&delete this.data[t][n],this.removeNamespaces(n),this.emit("removed",t,n)}hasResourceBundle(t,n){return this.getResource(t,n)!==void 0}getResourceBundle(t,n){return n||(n=this.options.defaultNS),this.options.compatibilityAPI==="v1"?{...this.getResource(t,n)}:this.getResource(t,n)}getDataByLanguage(t){return this.data[t]}hasLanguageSomeTranslations(t){const n=this.getDataByLanguage(t);return!!(n&&Object.keys(n)||[]).find(a=>n[a]&&Object.keys(n[a]).length>0)}toJSON(){return this.data}}var Vf={processors:{},addPostProcessor(e){this.processors[e.name]=e},handle(e,t,n,r,a){return e.forEach(i=>{this.processors[i]&&(t=this.processors[i].process(t,n,r,a))}),t}};const Wf={};class Fo extends Lo{constructor(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};super(),d1(["resourceStore","languageUtils","pluralResolver","interpolator","backendConnector","i18nFormat","utils"],t,this),this.options=n,this.options.keySeparator===void 0&&(this.options.keySeparator="."),this.logger=it.create("translator")}changeLanguage(t){t&&(this.language=t)}exists(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{interpolation:{}};if(t==null)return!1;const r=this.resolve(t,n);return r&&r.res!==void 0}extractFromKey(t,n){let r=n.nsSeparator!==void 0?n.nsSeparator:this.options.nsSeparator;r===void 0&&(r=":");const a=n.keySeparator!==void 0?n.keySeparator:this.options.keySeparator;let i=n.ns||this.options.defaultNS||[];const o=r&&t.indexOf(r)>-1,s=!this.options.userDefinedKeySeparator&&!n.keySeparator&&!this.options.userDefinedNsSeparator&&!n.nsSeparator&&!y1(t,r,a);if(o&&!s){const l=t.match(this.interpolator.nestingRegexp);if(l&&l.length>0)return{key:t,namespaces:i};const u=t.split(r);(r!==a||r===a&&this.options.ns.indexOf(u[0])>-1)&&(i=u.shift()),t=u.join(a)}return typeof i=="string"&&(i=[i]),{key:t,namespaces:i}}translate(t,n,r){if(typeof n!="object"&&this.options.overloadTranslationOptionHandler&&(n=this.options.overloadTranslationOptionHandler(arguments)),typeof n=="object"&&(n={...n}),n||(n={}),t==null)return"";Array.isArray(t)||(t=[String(t)]);const a=n.returnDetails!==void 0?n.returnDetails:this.options.returnDetails,i=n.keySeparator!==void 0?n.keySeparator:this.options.keySeparator,{key:o,namespaces:s}=this.extractFromKey(t[t.length-1],n),l=s[s.length-1],u=n.lng||this.language,p=n.appendNamespaceToCIMode||this.options.appendNamespaceToCIMode;if(u&&u.toLowerCase()==="cimode"){if(p){const k=n.nsSeparator||this.options.nsSeparator;return a?{res:`${l}${k}${o}`,usedKey:o,exactUsedKey:o,usedLng:u,usedNS:l}:`${l}${k}${o}`}return a?{res:o,usedKey:o,exactUsedKey:o,usedLng:u,usedNS:l}:o}const m=this.resolve(t,n);let d=m&&m.res;const y=m&&m.usedKey||o,b=m&&m.exactUsedKey||o,x=Object.prototype.toString.apply(d),f=["[object Number]","[object Function]","[object RegExp]"],h=n.joinArrays!==void 0?n.joinArrays:this.options.joinArrays,g=!this.i18nFormat||this.i18nFormat.handleAsObject;if(g&&d&&(typeof d!="string"&&typeof d!="boolean"&&typeof d!="number")&&f.indexOf(x)<0&&!(typeof h=="string"&&x==="[object Array]")){if(!n.returnObjects&&!this.options.returnObjects){this.options.returnedObjectHandler||this.logger.warn("accessing an object - but returnObjects options is not enabled!");const k=this.options.returnedObjectHandler?this.options.returnedObjectHandler(y,d,{...n,ns:s}):`key '${o} (${this.language})' returned an object instead of string.`;return a?(m.res=k,m):k}if(i){const k=x==="[object Array]",C=k?[]:{},S=k?b:y;for(const $ in d)if(Object.prototype.hasOwnProperty.call(d,$)){const T=`${S}${i}${$}`;C[$]=this.translate(T,{...n,joinArrays:!1,ns:s}),C[$]===T&&(C[$]=d[$])}d=C}}else if(g&&typeof h=="string"&&x==="[object Array]")d=d.join(h),d&&(d=this.extendTranslation(d,t,n,r));else{let k=!1,C=!1;const S=n.count!==void 0&&typeof n.count!="string",$=Fo.hasDefaultValue(n),T=S?this.pluralResolver.getSuffix(u,n.count,n):"",j=n.ordinal&&S?this.pluralResolver.getSuffix(u,n.count,{ordinal:!1}):"",O=n[`defaultValue${T}`]||n[`defaultValue${j}`]||n.defaultValue;!this.isValidLookup(d)&&$&&(k=!0,d=O),this.isValidLookup(d)||(C=!0,d=o);const ie=(n.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey)&&C?void 0:d,W=$&&O!==d&&this.options.updateMissing;if(C||k||W){if(this.logger.log(W?"updateKey":"missingKey",u,l,o,W?O:d),i){const pe=this.resolve(o,{...n,keySeparator:!1});pe&&pe.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 st=[];const Fe=this.languageUtils.getFallbackCodes(this.options.fallbackLng,n.lng||this.language);if(this.options.saveMissingTo==="fallback"&&Fe&&Fe[0])for(let pe=0;pe<Fe.length;pe++)st.push(Fe[pe]);else this.options.saveMissingTo==="all"?st=this.languageUtils.toResolveHierarchy(n.lng||this.language):st.push(n.lng||this.language);const qt=(pe,lt,fr)=>{const Ho=$&&fr!==d?fr:ie;this.options.missingKeyHandler?this.options.missingKeyHandler(pe,l,lt,Ho,W,n):this.backendConnector&&this.backendConnector.saveMissing&&this.backendConnector.saveMissing(pe,l,lt,Ho,W,n),this.emit("missingKey",pe,l,lt,d)};this.options.saveMissing&&(this.options.saveMissingPlurals&&S?st.forEach(pe=>{this.pluralResolver.getSuffixes(pe,n).forEach(lt=>{qt([pe],o+lt,n[`defaultValue${lt}`]||O)})}):qt(st,o,O))}d=this.extendTranslation(d,t,n,m,r),C&&d===o&&this.options.appendNamespaceToMissingKey&&(d=`${l}:${o}`),(C||k)&&this.options.parseMissingKeyHandler&&(this.options.compatibilityAPI!=="v1"?d=this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey?`${l}:${o}`:o,k?d:void 0):d=this.options.parseMissingKeyHandler(d))}return a?(m.res=d,m):d}extendTranslation(t,n,r,a,i){var o=this;if(this.i18nFormat&&this.i18nFormat.parse)t=this.i18nFormat.parse(t,{...this.options.interpolation.defaultVariables,...r},a.usedLng,a.usedNS,a.usedKey,{resolved:a});else if(!r.skipInterpolation){r.interpolation&&this.interpolator.init({...r,interpolation:{...this.options.interpolation,...r.interpolation}});const u=typeof t=="string"&&(r&&r.interpolation&&r.interpolation.skipOnVariables!==void 0?r.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables);let p;if(u){const d=t.match(this.interpolator.nestingRegexp);p=d&&d.length}let m=r.replace&&typeof r.replace!="string"?r.replace:r;if(this.options.interpolation.defaultVariables&&(m={...this.options.interpolation.defaultVariables,...m}),t=this.interpolator.interpolate(t,m,r.lng||this.language,r),u){const d=t.match(this.interpolator.nestingRegexp),y=d&&d.length;p<y&&(r.nest=!1)}!r.lng&&this.options.compatibilityAPI!=="v1"&&a&&a.res&&(r.lng=a.usedLng),r.nest!==!1&&(t=this.interpolator.nest(t,function(){for(var d=arguments.length,y=new Array(d),b=0;b<d;b++)y[b]=arguments[b];return i&&i[0]===y[0]&&!r.context?(o.logger.warn(`It seems you are nesting recursively key: ${y[0]} in key: ${n[0]}`),null):o.translate(...y,n)},r)),r.interpolation&&this.interpolator.reset()}const s=r.postProcess||this.options.postProcess,l=typeof s=="string"?[s]:s;return t!=null&&l&&l.length&&r.applyPostProcessor!==!1&&(t=Vf.handle(l,t,n,this.options&&this.options.postProcessPassResolved?{i18nResolved:a,...r}:r,this)),t}resolve(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r,a,i,o,s;return typeof t=="string"&&(t=[t]),t.forEach(l=>{if(this.isValidLookup(r))return;const u=this.extractFromKey(l,n),p=u.key;a=p;let m=u.namespaces;this.options.fallbackNS&&(m=m.concat(this.options.fallbackNS));const d=n.count!==void 0&&typeof n.count!="string",y=d&&!n.ordinal&&n.count===0&&this.pluralResolver.shouldUseIntlApi(),b=n.context!==void 0&&(typeof n.context=="string"||typeof n.context=="number")&&n.context!=="",x=n.lngs?n.lngs:this.languageUtils.toResolveHierarchy(n.lng||this.language,n.fallbackLng);m.forEach(f=>{this.isValidLookup(r)||(s=f,!Wf[`${x[0]}-${f}`]&&this.utils&&this.utils.hasLoadedNamespace&&!this.utils.hasLoadedNamespace(s)&&(Wf[`${x[0]}-${f}`]=!0,this.logger.warn(`key "${a}" for languages "${x.join(", ")}" won't get resolved as namespace "${s}" 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!!!")),x.forEach(h=>{if(this.isValidLookup(r))return;o=h;const g=[p];if(this.i18nFormat&&this.i18nFormat.addLookupKeys)this.i18nFormat.addLookupKeys(g,p,h,f,n);else{let k;d&&(k=this.pluralResolver.getSuffix(h,n.count,n));const C=`${this.options.pluralSeparator}zero`,S=`${this.options.pluralSeparator}ordinal${this.options.pluralSeparator}`;if(d&&(g.push(p+k),n.ordinal&&k.indexOf(S)===0&&g.push(p+k.replace(S,this.options.pluralSeparator)),y&&g.push(p+C)),b){const $=`${p}${this.options.contextSeparator}${n.context}`;g.push($),d&&(g.push($+k),n.ordinal&&k.indexOf(S)===0&&g.push($+k.replace(S,this.options.pluralSeparator)),y&&g.push($+C))}}let w;for(;w=g.pop();)this.isValidLookup(r)||(i=w,r=this.getResource(h,f,w,n))}))})}),{res:r,usedKey:a,exactUsedKey:i,usedLng:o,usedNS:s}}isValidLookup(t){return t!==void 0&&!(!this.options.returnNull&&t===null)&&!(!this.options.returnEmptyString&&t==="")}getResource(t,n,r){let a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};return this.i18nFormat&&this.i18nFormat.getResource?this.i18nFormat.getResource(t,n,r,a):this.resourceStore.getResource(t,n,r,a)}static hasDefaultValue(t){const n="defaultValue";for(const r in t)if(Object.prototype.hasOwnProperty.call(t,r)&&n===r.substring(0,n.length)&&t[r]!==void 0)return!0;return!1}}function Zc(e){return e.charAt(0).toUpperCase()+e.slice(1)}class Gf{constructor(t){this.options=t,this.supportedLngs=this.options.supportedLngs||!1,this.logger=it.create("languageUtils")}getScriptPartFromCode(t){if(t=Xc(t),!t||t.indexOf("-")<0)return null;const n=t.split("-");return n.length===2||(n.pop(),n[n.length-1].toLowerCase()==="x")?null:this.formatLanguageCode(n.join("-"))}getLanguagePartFromCode(t){if(t=Xc(t),!t||t.indexOf("-")<0)return t;const n=t.split("-");return this.formatLanguageCode(n[0])}formatLanguageCode(t){if(typeof t=="string"&&t.indexOf("-")>-1){const n=["hans","hant","latn","cyrl","cans","mong","arab"];let r=t.split("-");return this.options.lowerCaseLng?r=r.map(a=>a.toLowerCase()):r.length===2?(r[0]=r[0].toLowerCase(),r[1]=r[1].toUpperCase(),n.indexOf(r[1].toLowerCase())>-1&&(r[1]=Zc(r[1].toLowerCase()))):r.length===3&&(r[0]=r[0].toLowerCase(),r[1].length===2&&(r[1]=r[1].toUpperCase()),r[0]!=="sgn"&&r[2].length===2&&(r[2]=r[2].toUpperCase()),n.indexOf(r[1].toLowerCase())>-1&&(r[1]=Zc(r[1].toLowerCase())),n.indexOf(r[2].toLowerCase())>-1&&(r[2]=Zc(r[2].toLowerCase()))),r.join("-")}return this.options.cleanCode||this.options.lowerCaseLng?t.toLowerCase():t}isSupportedCode(t){return(this.options.load==="languageOnly"||this.options.nonExplicitSupportedLngs)&&(t=this.getLanguagePartFromCode(t)),!this.supportedLngs||!this.supportedLngs.length||this.supportedLngs.indexOf(t)>-1}getBestMatchFromCodes(t){if(!t)return null;let n;return t.forEach(r=>{if(n)return;const a=this.formatLanguageCode(r);(!this.options.supportedLngs||this.isSupportedCode(a))&&(n=a)}),!n&&this.options.supportedLngs&&t.forEach(r=>{if(n)return;const a=this.getLanguagePartFromCode(r);if(this.isSupportedCode(a))return n=a;n=this.options.supportedLngs.find(i=>{if(i===a)return i;if(!(i.indexOf("-")<0&&a.indexOf("-")<0)&&i.indexOf(a)===0)return i})}),n||(n=this.getFallbackCodes(this.options.fallbackLng)[0]),n}getFallbackCodes(t,n){if(!t)return[];if(typeof t=="function"&&(t=t(n)),typeof t=="string"&&(t=[t]),Object.prototype.toString.apply(t)==="[object Array]")return t;if(!n)return t.default||[];let r=t[n];return r||(r=t[this.getScriptPartFromCode(n)]),r||(r=t[this.formatLanguageCode(n)]),r||(r=t[this.getLanguagePartFromCode(n)]),r||(r=t.default),r||[]}toResolveHierarchy(t,n){const r=this.getFallbackCodes(n||this.options.fallbackLng||[],t),a=[],i=o=>{o&&(this.isSupportedCode(o)?a.push(o):this.logger.warn(`rejecting language code not found in supportedLngs: ${o}`))};return typeof t=="string"&&(t.indexOf("-")>-1||t.indexOf("_")>-1)?(this.options.load!=="languageOnly"&&i(this.formatLanguageCode(t)),this.options.load!=="languageOnly"&&this.options.load!=="currentOnly"&&i(this.getScriptPartFromCode(t)),this.options.load!=="currentOnly"&&i(this.getLanguagePartFromCode(t))):typeof t=="string"&&i(this.formatLanguageCode(t)),r.forEach(o=>{a.indexOf(o)<0&&i(this.formatLanguageCode(o))}),a}}let v1=[{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}],k1={1:function(e){return+(e>1)},2:function(e){return+(e!=1)},3:function(e){return 0},4:function(e){return e%10==1&&e%100!=11?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2},5:function(e){return e==0?0:e==1?1:e==2?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5},6:function(e){return e==1?0:e>=2&&e<=4?1:2},7:function(e){return e==1?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2},8:function(e){return e==1?0:e==2?1:e!=8&&e!=11?2:3},9:function(e){return+(e>=2)},10:function(e){return e==1?0:e==2?1:e<7?2:e<11?3:4},11:function(e){return e==1||e==11?0:e==2||e==12?1:e>2&&e<20?2:3},12:function(e){return+(e%10!=1||e%100==11)},13:function(e){return+(e!==0)},14:function(e){return e==1?0:e==2?1:e==3?2:3},15:function(e){return e%10==1&&e%100!=11?0:e%10>=2&&(e%100<10||e%100>=20)?1:2},16:function(e){return e%10==1&&e%100!=11?0:e!==0?1:2},17:function(e){return e==1||e%10==1&&e%100!=11?0:1},18:function(e){return e==0?0:e==1?1:2},19:function(e){return e==1?0:e==0||e%100>1&&e%100<11?1:e%100>10&&e%100<20?2:3},20:function(e){return e==1?0:e==0||e%100>0&&e%100<20?1:2},21:function(e){return e%100==1?1:e%100==2?2:e%100==3||e%100==4?3:0},22:function(e){return e==1?0:e==2?1:(e<0||e>10)&&e%10==0?2:3}};const w1=["v1","v2","v3"],x1=["v4"],Kf={zero:0,one:1,two:2,few:3,many:4,other:5};function S1(){const e={};return v1.forEach(t=>{t.lngs.forEach(n=>{e[n]={numbers:t.nr,plurals:k1[t.fc]}})}),e}class E1{constructor(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.languageUtils=t,this.options=n,this.logger=it.create("pluralResolver"),(!this.options.compatibilityJSON||x1.includes(this.options.compatibilityJSON))&&(typeof Intl>"u"||!Intl.PluralRules)&&(this.options.compatibilityJSON="v3",this.logger.error("Your environment seems not to be Intl API compatible, use an Intl.PluralRules polyfill. Will fallback to the compatibilityJSON v3 format handling.")),this.rules=S1()}addRule(t,n){this.rules[t]=n}getRule(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(this.shouldUseIntlApi())try{return new Intl.PluralRules(Xc(t),{type:n.ordinal?"ordinal":"cardinal"})}catch{return}return this.rules[t]||this.rules[this.languageUtils.getLanguagePartFromCode(t)]}needsPlural(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const r=this.getRule(t,n);return this.shouldUseIntlApi()?r&&r.resolvedOptions().pluralCategories.length>1:r&&r.numbers.length>1}getPluralFormsOfKey(t,n){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return this.getSuffixes(t,r).map(a=>`${n}${a}`)}getSuffixes(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const r=this.getRule(t,n);return r?this.shouldUseIntlApi()?r.resolvedOptions().pluralCategories.sort((a,i)=>Kf[a]-Kf[i]).map(a=>`${this.options.prepend}${n.ordinal?`ordinal${this.options.prepend}`:""}${a}`):r.numbers.map(a=>this.getSuffix(t,a,n)):[]}getSuffix(t,n){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};const a=this.getRule(t,r);return a?this.shouldUseIntlApi()?`${this.options.prepend}${r.ordinal?`ordinal${this.options.prepend}`:""}${a.select(n)}`:this.getSuffixRetroCompatible(a,n):(this.logger.warn(`no plural rule found for: ${t}`),"")}getSuffixRetroCompatible(t,n){const r=t.noAbs?t.plurals(n):t.plurals(Math.abs(n));let a=t.numbers[r];this.options.simplifyPluralSuffix&&t.numbers.length===2&&t.numbers[0]===1&&(a===2?a="plural":a===1&&(a=""));const i=()=>this.options.prepend&&a.toString()?this.options.prepend+a.toString():a.toString();return this.options.compatibilityJSON==="v1"?a===1?"":typeof a=="number"?`_plural_${a.toString()}`:i():this.options.compatibilityJSON==="v2"||this.options.simplifyPluralSuffix&&t.numbers.length===2&&t.numbers[0]===1?i():this.options.prepend&&r.toString()?this.options.prepend+r.toString():r.toString()}shouldUseIntlApi(){return!w1.includes(this.options.compatibilityJSON)}}function Jf(e,t,n){let r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:".",a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,i=m1(e,t,n);return!i&&a&&typeof n=="string"&&(i=Oo(e,n,r),i===void 0&&(i=Oo(t,n,r))),i}class C1{constructor(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.logger=it.create("interpolator"),this.options=t,this.format=t.interpolation&&t.interpolation.format||(n=>n),this.init(t)}init(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};t.interpolation||(t.interpolation={escapeValue:!0});const n=t.interpolation;this.escape=n.escape!==void 0?n.escape:f1,this.escapeValue=n.escapeValue!==void 0?n.escapeValue:!0,this.useRawValueToEscape=n.useRawValueToEscape!==void 0?n.useRawValueToEscape:!1,this.prefix=n.prefix?mr(n.prefix):n.prefixEscaped||"{{",this.suffix=n.suffix?mr(n.suffix):n.suffixEscaped||"}}",this.formatSeparator=n.formatSeparator?n.formatSeparator:n.formatSeparator||",",this.unescapePrefix=n.unescapeSuffix?"":n.unescapePrefix||"-",this.unescapeSuffix=this.unescapePrefix?"":n.unescapeSuffix||"",this.nestingPrefix=n.nestingPrefix?mr(n.nestingPrefix):n.nestingPrefixEscaped||mr("$t("),this.nestingSuffix=n.nestingSuffix?mr(n.nestingSuffix):n.nestingSuffixEscaped||mr(")"),this.nestingOptionsSeparator=n.nestingOptionsSeparator?n.nestingOptionsSeparator:n.nestingOptionsSeparator||",",this.maxReplaces=n.maxReplaces?n.maxReplaces:1e3,this.alwaysFormat=n.alwaysFormat!==void 0?n.alwaysFormat:!1,this.resetRegExp()}reset(){this.options&&this.init(this.options)}resetRegExp(){const t=`${this.prefix}(.+?)${this.suffix}`;this.regexp=new RegExp(t,"g");const n=`${this.prefix}${this.unescapePrefix}(.+?)${this.unescapeSuffix}${this.suffix}`;this.regexpUnescape=new RegExp(n,"g");const r=`${this.nestingPrefix}(.+?)${this.nestingSuffix}`;this.nestingRegexp=new RegExp(r,"g")}interpolate(t,n,r,a){let i,o,s;const l=this.options&&this.options.interpolation&&this.options.interpolation.defaultVariables||{};function u(b){return b.replace(/\$/g,"$$$$")}const p=b=>{if(b.indexOf(this.formatSeparator)<0){const g=Jf(n,l,b,this.options.keySeparator,this.options.ignoreJSONStructure);return this.alwaysFormat?this.format(g,void 0,r,{...a,...n,interpolationkey:b}):g}const x=b.split(this.formatSeparator),f=x.shift().trim(),h=x.join(this.formatSeparator).trim();return this.format(Jf(n,l,f,this.options.keySeparator,this.options.ignoreJSONStructure),h,r,{...a,...n,interpolationkey:f})};this.resetRegExp();const m=a&&a.missingInterpolationHandler||this.options.missingInterpolationHandler,d=a&&a.interpolation&&a.interpolation.skipOnVariables!==void 0?a.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables;return[{regex:this.regexpUnescape,safeValue:b=>u(b)},{regex:this.regexp,safeValue:b=>this.escapeValue?u(this.escape(b)):u(b)}].forEach(b=>{for(s=0;i=b.regex.exec(t);){const x=i[1].trim();if(o=p(x),o===void 0)if(typeof m=="function"){const h=m(t,i,a);o=typeof h=="string"?h:""}else if(a&&Object.prototype.hasOwnProperty.call(a,x))o="";else if(d){o=i[0];continue}else this.logger.warn(`missed to pass in variable ${x} for interpolating ${t}`),o="";else typeof o!="string"&&!this.useRawValueToEscape&&(o=Bf(o));const f=b.safeValue(o);if(t=t.replace(i[0],f),d?(b.regex.lastIndex+=o.length,b.regex.lastIndex-=i[0].length):b.regex.lastIndex=0,s++,s>=this.maxReplaces)break}}),t}nest(t,n){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a,i,o;function s(l,u){const p=this.nestingOptionsSeparator;if(l.indexOf(p)<0)return l;const m=l.split(new RegExp(`${p}[ ]*{`));let d=`{${m[1]}`;l=m[0],d=this.interpolate(d,o);const y=d.match(/'/g),b=d.match(/"/g);(y&&y.length%2===0&&!b||b.length%2!==0)&&(d=d.replace(/'/g,'"'));try{o=JSON.parse(d),u&&(o={...u,...o})}catch(x){return this.logger.warn(`failed parsing options string in nesting for key ${l}`,x),`${l}${p}${d}`}return delete o.defaultValue,l}for(;a=this.nestingRegexp.exec(t);){let l=[];o={...r},o=o.replace&&typeof o.replace!="string"?o.replace:o,o.applyPostProcessor=!1,delete o.defaultValue;let u=!1;if(a[0].indexOf(this.formatSeparator)!==-1&&!/{.*}/.test(a[1])){const p=a[1].split(this.formatSeparator).map(m=>m.trim());a[1]=p.shift(),l=p,u=!0}if(i=n(s.call(this,a[1].trim(),o),o),i&&a[0]===t&&typeof i!="string")return i;typeof i!="string"&&(i=Bf(i)),i||(this.logger.warn(`missed to resolve ${a[1]} for nesting ${t}`),i=""),u&&(i=l.reduce((p,m)=>this.format(p,m,r.lng,{...r,interpolationkey:a[1].trim()}),i.trim())),t=t.replace(a[0],i),this.regexp.lastIndex=0}return t}}function $1(e){let t=e.toLowerCase().trim();const n={};if(e.indexOf("(")>-1){const r=e.split("(");t=r[0].toLowerCase().trim();const a=r[1].substring(0,r[1].length-1);t==="currency"&&a.indexOf(":")<0?n.currency||(n.currency=a.trim()):t==="relativetime"&&a.indexOf(":")<0?n.range||(n.range=a.trim()):a.split(";").forEach(o=>{if(!o)return;const[s,...l]=o.split(":"),u=l.join(":").trim().replace(/^'+|'+$/g,"");n[s.trim()]||(n[s.trim()]=u),u==="false"&&(n[s.trim()]=!1),u==="true"&&(n[s.trim()]=!0),isNaN(u)||(n[s.trim()]=parseInt(u,10))})}return{formatName:t,formatOptions:n}}function hr(e){const t={};return function(r,a,i){const o=a+JSON.stringify(i);let s=t[o];return s||(s=e(a,i),t[o]=s),s(r)}}class _1{constructor(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.logger=it.create("formatter"),this.options=t,this.formats={number:hr((n,r)=>{const a=new Intl.NumberFormat(n,{...r});return i=>a.format(i)}),currency:hr((n,r)=>{const a=new Intl.NumberFormat(n,{...r,style:"currency"});return i=>a.format(i)}),datetime:hr((n,r)=>{const a=new Intl.DateTimeFormat(n,{...r});return i=>a.format(i)}),relativetime:hr((n,r)=>{const a=new Intl.RelativeTimeFormat(n,{...r});return i=>a.format(i,r.range||"day")}),list:hr((n,r)=>{const a=new Intl.ListFormat(n,{...r});return i=>a.format(i)})},this.init(t)}init(t){const r=(arguments.length>1&&arguments[1]!==void 0?arguments[1]:{interpolation:{}}).interpolation;this.formatSeparator=r.formatSeparator?r.formatSeparator:r.formatSeparator||","}add(t,n){this.formats[t.toLowerCase().trim()]=n}addCached(t,n){this.formats[t.toLowerCase().trim()]=hr(n)}format(t,n,r){let a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};return n.split(this.formatSeparator).reduce((s,l)=>{const{formatName:u,formatOptions:p}=$1(l);if(this.formats[u]){let m=s;try{const d=a&&a.formatParams&&a.formatParams[a.interpolationkey]||{},y=d.locale||d.lng||a.locale||a.lng||r;m=this.formats[u](s,y,{...p,...a,...d})}catch(d){this.logger.warn(d)}return m}else this.logger.warn(`there was no format function for ${u}`);return s},t)}}function j1(e,t){e.pending[t]!==void 0&&(delete e.pending[t],e.pendingCount--)}class P1 extends Lo{constructor(t,n,r){let a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};super(),this.backend=t,this.store=n,this.services=r,this.languageUtils=r.languageUtils,this.options=a,this.logger=it.create("backendConnector"),this.waitingReads=[],this.maxParallelReads=a.maxParallelReads||10,this.readingCalls=0,this.maxRetries=a.maxRetries>=0?a.maxRetries:5,this.retryTimeout=a.retryTimeout>=1?a.retryTimeout:350,this.state={},this.queue=[],this.backend&&this.backend.init&&this.backend.init(r,a.backend,a)}queueLoad(t,n,r,a){const i={},o={},s={},l={};return t.forEach(u=>{let p=!0;n.forEach(m=>{const d=`${u}|${m}`;!r.reload&&this.store.hasResourceBundle(u,m)?this.state[d]=2:this.state[d]<0||(this.state[d]===1?o[d]===void 0&&(o[d]=!0):(this.state[d]=1,p=!1,o[d]===void 0&&(o[d]=!0),i[d]===void 0&&(i[d]=!0),l[m]===void 0&&(l[m]=!0)))}),p||(s[u]=!0)}),(Object.keys(i).length||Object.keys(o).length)&&this.queue.push({pending:o,pendingCount:Object.keys(o).length,loaded:{},errors:[],callback:a}),{toLoad:Object.keys(i),pending:Object.keys(o),toLoadLanguages:Object.keys(s),toLoadNamespaces:Object.keys(l)}}loaded(t,n,r){const a=t.split("|"),i=a[0],o=a[1];n&&this.emit("failedLoading",i,o,n),r&&this.store.addResourceBundle(i,o,r),this.state[t]=n?-1:2;const s={};this.queue.forEach(l=>{p1(l.loaded,[i],o),j1(l,t),n&&l.errors.push(n),l.pendingCount===0&&!l.done&&(Object.keys(l.loaded).forEach(u=>{s[u]||(s[u]={});const p=l.loaded[u];p.length&&p.forEach(m=>{s[u][m]===void 0&&(s[u][m]=!0)})}),l.done=!0,l.errors.length?l.callback(l.errors):l.callback())}),this.emit("loaded",s),this.queue=this.queue.filter(l=>!l.done)}read(t,n,r){let a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:this.retryTimeout,o=arguments.length>5?arguments[5]:void 0;if(!t.length)return o(null,{});if(this.readingCalls>=this.maxParallelReads){this.waitingReads.push({lng:t,ns:n,fcName:r,tried:a,wait:i,callback:o});return}this.readingCalls++;const s=(u,p)=>{if(this.readingCalls--,this.waitingReads.length>0){const m=this.waitingReads.shift();this.read(m.lng,m.ns,m.fcName,m.tried,m.wait,m.callback)}if(u&&p&&a<this.maxRetries){setTimeout(()=>{this.read.call(this,t,n,r,a+1,i*2,o)},i);return}o(u,p)},l=this.backend[r].bind(this.backend);if(l.length===2){try{const u=l(t,n);u&&typeof u.then=="function"?u.then(p=>s(null,p)).catch(s):s(null,u)}catch(u){s(u)}return}return l(t,n,s)}prepareLoading(t,n){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a=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."),a&&a();typeof t=="string"&&(t=this.languageUtils.toResolveHierarchy(t)),typeof n=="string"&&(n=[n]);const i=this.queueLoad(t,n,r,a);if(!i.toLoad.length)return i.pending.length||a(),null;i.toLoad.forEach(o=>{this.loadOne(o)})}load(t,n,r){this.prepareLoading(t,n,{},r)}reload(t,n,r){this.prepareLoading(t,n,{reload:!0},r)}loadOne(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"";const r=t.split("|"),a=r[0],i=r[1];this.read(a,i,"read",void 0,void 0,(o,s)=>{o&&this.logger.warn(`${n}loading namespace ${i} for language ${a} failed`,o),!o&&s&&this.logger.log(`${n}loaded namespace ${i} for language ${a}`,s),this.loaded(t,o,s)})}saveMissing(t,n,r,a,i){let o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:{},s=arguments.length>6&&arguments[6]!==void 0?arguments[6]:()=>{};if(this.services.utils&&this.services.utils.hasLoadedNamespace&&!this.services.utils.hasLoadedNamespace(n)){this.logger.warn(`did not save key "${r}" as the namespace "${n}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!");return}if(!(r==null||r==="")){if(this.backend&&this.backend.create){const l={...o,isUpdate:i},u=this.backend.create.bind(this.backend);if(u.length<6)try{let p;u.length===5?p=u(t,n,r,a,l):p=u(t,n,r,a),p&&typeof p.then=="function"?p.then(m=>s(null,m)).catch(s):s(null,p)}catch(p){s(p)}else u(t,n,r,a,s,l)}!t||!t[0]||this.store.addResource(t[0],n,r,a)}}}function Qf(){return{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:function(t){let n={};if(typeof t[1]=="object"&&(n=t[1]),typeof t[1]=="string"&&(n.defaultValue=t[1]),typeof t[2]=="string"&&(n.tDescription=t[2]),typeof t[2]=="object"||typeof t[3]=="object"){const r=t[3]||t[2];Object.keys(r).forEach(a=>{n[a]=r[a]})}return n},interpolation:{escapeValue:!0,format:(e,t,n,r)=>e,prefix:"{{",suffix:"}}",formatSeparator:",",unescapePrefix:"-",nestingPrefix:"$t(",nestingSuffix:")",nestingOptionsSeparator:",",maxReplaces:1e3,skipOnVariables:!0}}}function Xf(e){return typeof e.ns=="string"&&(e.ns=[e.ns]),typeof e.fallbackLng=="string"&&(e.fallbackLng=[e.fallbackLng]),typeof e.fallbackNS=="string"&&(e.fallbackNS=[e.fallbackNS]),e.supportedLngs&&e.supportedLngs.indexOf("cimode")<0&&(e.supportedLngs=e.supportedLngs.concat(["cimode"])),e}function Yo(){}function N1(e){Object.getOwnPropertyNames(Object.getPrototypeOf(e)).forEach(n=>{typeof e[n]=="function"&&(e[n]=e[n].bind(e))})}const Bo=class extends Lo{constructor(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1?arguments[1]:void 0;if(super(),this.options=Xf(t),this.services={},this.logger=it,this.modules={external:[]},N1(this),n&&!this.isInitialized&&!t.isClone){if(!this.options.initImmediate)return this.init(t,n),this;setTimeout(()=>{this.init(t,n)},0)}}init(){var t=this;let n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1?arguments[1]:void 0;typeof n=="function"&&(r=n,n={}),!n.defaultNS&&n.defaultNS!==!1&&n.ns&&(typeof n.ns=="string"?n.defaultNS=n.ns:n.ns.indexOf("translation")<0&&(n.defaultNS=n.ns[0]));const a=Qf();this.options={...a,...this.options,...Xf(n)},this.options.compatibilityAPI!=="v1"&&(this.options.interpolation={...a.interpolation,...this.options.interpolation}),n.keySeparator!==void 0&&(this.options.userDefinedKeySeparator=n.keySeparator),n.nsSeparator!==void 0&&(this.options.userDefinedNsSeparator=n.nsSeparator);function i(p){return p?typeof p=="function"?new p:p:null}if(!this.options.isClone){this.modules.logger?it.init(i(this.modules.logger),this.options):it.init(null,this.options);let p;this.modules.formatter?p=this.modules.formatter:typeof Intl<"u"&&(p=_1);const m=new Gf(this.options);this.store=new b1(this.options.resources,this.options);const d=this.services;d.logger=it,d.resourceStore=this.store,d.languageUtils=m,d.pluralResolver=new E1(m,{prepend:this.options.pluralSeparator,compatibilityJSON:this.options.compatibilityJSON,simplifyPluralSuffix:this.options.simplifyPluralSuffix}),p&&(!this.options.interpolation.format||this.options.interpolation.format===a.interpolation.format)&&(d.formatter=i(p),d.formatter.init(d,this.options),this.options.interpolation.format=d.formatter.format.bind(d.formatter)),d.interpolator=new C1(this.options),d.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},d.backendConnector=new P1(i(this.modules.backend),d.resourceStore,d,this.options),d.backendConnector.on("*",function(y){for(var b=arguments.length,x=new Array(b>1?b-1:0),f=1;f<b;f++)x[f-1]=arguments[f];t.emit(y,...x)}),this.modules.languageDetector&&(d.languageDetector=i(this.modules.languageDetector),d.languageDetector.init&&d.languageDetector.init(d,this.options.detection,this.options)),this.modules.i18nFormat&&(d.i18nFormat=i(this.modules.i18nFormat),d.i18nFormat.init&&d.i18nFormat.init(this)),this.translator=new Fo(this.services,this.options),this.translator.on("*",function(y){for(var b=arguments.length,x=new Array(b>1?b-1:0),f=1;f<b;f++)x[f-1]=arguments[f];t.emit(y,...x)}),this.modules.external.forEach(y=>{y.init&&y.init(this)})}if(this.format=this.options.interpolation.format,r||(r=Yo),this.options.fallbackLng&&!this.services.languageDetector&&!this.options.lng){const p=this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);p.length>0&&p[0]!=="dev"&&(this.options.lng=p[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(p=>{this[p]=function(){return t.store[p](...arguments)}}),["addResource","addResources","addResourceBundle","removeResourceBundle"].forEach(p=>{this[p]=function(){return t.store[p](...arguments),t}});const l=Na(),u=()=>{const p=(m,d)=>{this.isInitialized&&!this.initializedStoreOnce&&this.logger.warn("init: i18next is already initialized. You should call init just once!"),this.isInitialized=!0,this.options.isClone||this.logger.log("initialized",this.options),this.emit("initialized",this.options),l.resolve(d),r(m,d)};if(this.languages&&this.options.compatibilityAPI!=="v1"&&!this.isInitialized)return p(null,this.t.bind(this));this.changeLanguage(this.options.lng,p)};return this.options.resources||!this.options.initImmediate?u():setTimeout(u,0),l}loadResources(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Yo;const a=typeof t=="string"?t:this.language;if(typeof t=="function"&&(r=t),!this.options.resources||this.options.partialBundledLanguages){if(a&&a.toLowerCase()==="cimode")return r();const i=[],o=s=>{if(!s)return;this.services.languageUtils.toResolveHierarchy(s).forEach(u=>{i.indexOf(u)<0&&i.push(u)})};a?o(a):this.services.languageUtils.getFallbackCodes(this.options.fallbackLng).forEach(l=>o(l)),this.options.preload&&this.options.preload.forEach(s=>o(s)),this.services.backendConnector.load(i,this.options.ns,s=>{!s&&!this.resolvedLanguage&&this.language&&this.setResolvedLanguage(this.language),r(s)})}else r(null)}reloadResources(t,n,r){const a=Na();return t||(t=this.languages),n||(n=this.options.ns),r||(r=Yo),this.services.backendConnector.reload(t,n,i=>{a.resolve(),r(i)}),a}use(t){if(!t)throw new Error("You are passing an undefined module! Please check the object you are passing to i18next.use()");if(!t.type)throw new Error("You are passing a wrong module! Please check the object you are passing to i18next.use()");return t.type==="backend"&&(this.modules.backend=t),(t.type==="logger"||t.log&&t.warn&&t.error)&&(this.modules.logger=t),t.type==="languageDetector"&&(this.modules.languageDetector=t),t.type==="i18nFormat"&&(this.modules.i18nFormat=t),t.type==="postProcessor"&&Vf.addPostProcessor(t),t.type==="formatter"&&(this.modules.formatter=t),t.type==="3rdParty"&&this.modules.external.push(t),this}setResolvedLanguage(t){if(!(!t||!this.languages)&&!(["cimode","dev"].indexOf(t)>-1))for(let n=0;n<this.languages.length;n++){const r=this.languages[n];if(!(["cimode","dev"].indexOf(r)>-1)&&this.store.hasLanguageSomeTranslations(r)){this.resolvedLanguage=r;break}}}changeLanguage(t,n){var r=this;this.isLanguageChangingTo=t;const a=Na();this.emit("languageChanging",t);const i=l=>{this.language=l,this.languages=this.services.languageUtils.toResolveHierarchy(l),this.resolvedLanguage=void 0,this.setResolvedLanguage(l)},o=(l,u)=>{u?(i(u),this.translator.changeLanguage(u),this.isLanguageChangingTo=void 0,this.emit("languageChanged",u),this.logger.log("languageChanged",u)):this.isLanguageChangingTo=void 0,a.resolve(function(){return r.t(...arguments)}),n&&n(l,function(){return r.t(...arguments)})},s=l=>{!t&&!l&&this.services.languageDetector&&(l=[]);const u=typeof l=="string"?l:this.services.languageUtils.getBestMatchFromCodes(l);u&&(this.language||i(u),this.translator.language||this.translator.changeLanguage(u),this.services.languageDetector&&this.services.languageDetector.cacheUserLanguage&&this.services.languageDetector.cacheUserLanguage(u)),this.loadResources(u,p=>{o(p,u)})};return!t&&this.services.languageDetector&&!this.services.languageDetector.async?s(this.services.languageDetector.detect()):!t&&this.services.languageDetector&&this.services.languageDetector.async?this.services.languageDetector.detect.length===0?this.services.languageDetector.detect().then(s):this.services.languageDetector.detect(s):s(t),a}getFixedT(t,n,r){var a=this;const i=function(o,s){let l;if(typeof s!="object"){for(var u=arguments.length,p=new Array(u>2?u-2:0),m=2;m<u;m++)p[m-2]=arguments[m];l=a.options.overloadTranslationOptionHandler([o,s].concat(p))}else l={...s};l.lng=l.lng||i.lng,l.lngs=l.lngs||i.lngs,l.ns=l.ns||i.ns,l.keyPrefix=l.keyPrefix||r||i.keyPrefix;const d=a.options.keySeparator||".";let y;return l.keyPrefix&&Array.isArray(o)?y=o.map(b=>`${l.keyPrefix}${d}${b}`):y=l.keyPrefix?`${l.keyPrefix}${d}${o}`:o,a.t(y,l)};return typeof t=="string"?i.lng=t:i.lngs=t,i.ns=n,i.keyPrefix=r,i}t(){return this.translator&&this.translator.translate(...arguments)}exists(){return this.translator&&this.translator.exists(...arguments)}setDefaultNamespace(t){this.options.defaultNS=t}hasLoadedNamespace(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!this.isInitialized)return this.logger.warn("hasLoadedNamespace: i18next was not initialized",this.languages),!1;if(!this.languages||!this.languages.length)return this.logger.warn("hasLoadedNamespace: i18n.languages were undefined or empty",this.languages),!1;const r=n.lng||this.resolvedLanguage||this.languages[0],a=this.options?this.options.fallbackLng:!1,i=this.languages[this.languages.length-1];if(r.toLowerCase()==="cimode")return!0;const o=(s,l)=>{const u=this.services.backendConnector.state[`${s}|${l}`];return u===-1||u===2};if(n.precheck){const s=n.precheck(this,o);if(s!==void 0)return s}return!!(this.hasResourceBundle(r,t)||!this.services.backendConnector.backend||this.options.resources&&!this.options.partialBundledLanguages||o(r,t)&&(!a||o(i,t)))}loadNamespaces(t,n){const r=Na();return this.options.ns?(typeof t=="string"&&(t=[t]),t.forEach(a=>{this.options.ns.indexOf(a)<0&&this.options.ns.push(a)}),this.loadResources(a=>{r.resolve(),n&&n(a)}),r):(n&&n(),Promise.resolve())}loadLanguages(t,n){const r=Na();typeof t=="string"&&(t=[t]);const a=this.options.preload||[],i=t.filter(o=>a.indexOf(o)<0);return i.length?(this.options.preload=a.concat(i),this.loadResources(o=>{r.resolve(),n&&n(o)}),r):(n&&n(),Promise.resolve())}dir(t){if(t||(t=this.resolvedLanguage||(this.languages&&this.languages.length>0?this.languages[0]:this.language)),!t)return"rtl";const n=["ar","shu","sqr","ssh","xaa","yhd","yud","aao","abh","abv","acm","acq","acw","acx","acy","adf","ads","aeb","aec","afb","ajp","apc","apd","arb","arq","ars","ary","arz","auz","avl","ayh","ayl","ayn","ayp","bbz","pga","he","iw","ps","pbt","pbu","pst","prp","prd","ug","ur","ydd","yds","yih","ji","yi","hbo","men","xmn","fa","jpr","peo","pes","prs","dv","sam","ckb"],r=this.services&&this.services.languageUtils||new Gf(Qf());return n.indexOf(r.getLanguagePartFromCode(t))>-1||t.toLowerCase().indexOf("-arab")>1?"rtl":"ltr"}cloneInstance(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Yo;const r={...this.options,...t,isClone:!0},a=new Bo(r);return(t.debug!==void 0||t.prefix!==void 0)&&(a.logger=a.logger.clone(t)),["store","services","language"].forEach(o=>{a[o]=this[o]}),a.services={...this.services},a.services.utils={hasLoadedNamespace:a.hasLoadedNamespace.bind(a)},a.translator=new Fo(a.services,a.options),a.translator.on("*",function(o){for(var s=arguments.length,l=new Array(s>1?s-1:0),u=1;u<s;u++)l[u-1]=arguments[u];a.emit(o,...l)}),a.init(r,n),a.translator.options=a.options,a.translator.backendConnector.services.utils={hasLoadedNamespace:a.hasLoadedNamespace.bind(a)},a}toJSON(){return{options:this.options,store:this.store,language:this.language,languages:this.languages,resolvedLanguage:this.resolvedLanguage}}};let Ta=Bo;G(Ta,"createInstance",function(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1?arguments[1]:void 0;return new Bo(t,n)});const Zf=Ta.createInstance();Zf.createInstance=Ta.createInstance;var T1=Zf;const I1=T1,eg=["af","bg","ca","cs","da","de","en","eo","es","fi","fr","hr","hu","id","it","ko","mn","ms","nl","no","pl","pt","pt-BR","ro","ru","si","sl","sq","sr","sv","tr","uk","uz","vi","zh","zh-Hant"];Jc.exports=(e="en",t="portal")=>{const n=I1.createInstance();return n.init({lng:e,nsSeparator:!1,keySeparator:!1,returnEmptyString:!1,fallbackLng:!1,ns:t,defaultNS:t,resources:eg.reduce((r,a)=>(r[a]={[t]:l1("/ghost/i18n/lib")(`../locales/${a}/${t}.json`)},r),{})}),n},Jc.exports.SUPPORTED_LOCALES=eg;var D1=Jc.exports,A1=D1;const M1=je(A1),z1={showPopup:!0,site:pr,member:Mo.free,page:"accountEmail",...Q0(),pageData:Lf};function R1({site:e,children:t}){const{portal_sentry:n}=e||{};return n&&n.dsn?c.jsx(Sa,{children:t}):c.jsx(c.Fragment,{children:t})}class L1 extends R.Component{constructor(t){super(t),this.setupCustomTriggerButton(t),this.state={site:null,member:null,page:"loading",showPopup:!1,action:"init:running",initStatus:"running",lastPage:null,customSiteUrl:t.customSiteUrl}}componentDidMount(){this.initSetup()}componentDidUpdate(t,n){var r,a,i;if(n.showPopup!==this.state.showPopup){this.handleCustomTriggerClassUpdate();try{this.state.showPopup?(this.bodyScroll=(i=(a=(r=window.document)==null?void 0:r.body)==null?void 0:a.style)==null?void 0:i.overflow,window.document.body.style.overflow="hidden"):window.document.body.style.overflow=this.bodyScroll||""}catch{}}if(this.state.initStatus==="success"&&n.initStatus!==this.state.initStatus){const{siteUrl:o}=this.props,s=this.getContextFromState();this.sendPortalReadyEvent(),CS({siteUrl:o,site:s.site,member:s.member})}}componentWillUnmount(){clearTimeout(this.timeoutId),this.customTriggerButtons&&this.customTriggerButtons.forEach(t=>{t.removeEventListener("click",this.clickHandler)}),window.removeEventListener("hashchange",this.hashHandler,!1)}sendPortalReadyEvent(){window.self!==window.parent&&window.parent.postMessage({type:"portal-ready",payload:{}},"*")}setupCustomTriggerButton(){this.clickHandler=r=>{r.preventDefault();const a=r.currentTarget,i=a&&a.dataset.portal,{page:o,pageQuery:s}=this.getPageFromLinkPath(i)||{};this.state.initStatus==="success"&&(s&&s!=="free"?this.handleSignupQuery({site:this.state.site,pageQuery:s}):this.dispatchAction("openPopup",{page:o,pageQuery:s}))};const t="[data-portal]",n="gh-portal-close";this.customTriggerButtons=document.querySelectorAll(t)||[],this.customTriggerButtons.forEach(r=>{r.classList.add(n),r.removeEventListener("click",this.clickHandler),r.addEventListener("click",this.clickHandler)})}handleCustomTriggerClassUpdate(){var r;const t="gh-portal-open",n="gh-portal-close";(r=this.customTriggerButtons)==null||r.forEach(a=>{const i=this.state.showPopup?t:n,o=this.state.showPopup?n:t;a.classList.add(i),a.classList.remove(o)})}async initSetup(){try{const{site:t,member:n,page:r,showPopup:a,popupNotification:i,lastPage:o,pageQuery:s,pageData:l}=await this.fetchData(),u=this.props.siteI18nEnabled?t.locale:"en",p=M1(u,"portal"),m={site:t,member:n,page:r,lastPage:o,pageQuery:s,showPopup:a,pageData:l,popupNotification:i,t:p.t,action:"init:success",initStatus:"success"};if(this.handleSignupQuery({site:t,pageQuery:s,member:n}),this.setState(m),this.hashHandler=()=>{this.updateStateForPreviewLinks()},window.addEventListener("hashchange",this.hashHandler,!1),!n){const d=document.querySelectorAll("[data-lexical-signup-form]");d.length>0&&d.forEach(y=>{y.style.display=""})}}catch(t){console.error("[Portal] Failed to initialize:",t),this.setState({action:"init:failed",initStatus:"failed"})}}async fetchData(){const{site:t,member:n}=await this.fetchApiData(),{site:r,...a}=this.fetchDevData(),{site:i,...o}=this.fetchLinkData(),{site:s,...l}=this.fetchPreviewData(),{site:u,...p}=this.fetchNotificationData();return{member:n,page:"",site:{...t,...i,...s,...u,...r,plans:{...(r||{}).plans,...(t||{}).plans,...(s||{}).plans}},...a,...o,...p,...l}}fetchDevData(){return V(["dev"])&&!this.state.customSiteUrl?z1:V(["test"])?{showPopup:this.props.showPopup!==void 0?this.props.showPopup:!0}:{}}fetchOfferQueryStrData(t=""){const n=new URLSearchParams(t),r={};for(let a of n.entries()){const i=a[0],o=decodeURIComponent(a[1]);i==="name"?r.name=o||"":i==="code"?r.code=o||"":i==="display_title"?r.display_title=o||"":i==="display_description"?r.display_description=o||"":i==="type"?r.type=o||"":i==="cadence"?r.cadence=o||"":i==="duration"?r.duration=o||"":i==="duration_in_months"&&!isNaN(Number(o))?r.duration_in_months=Number(o):i==="amount"&&!isNaN(Number(o))?r.amount=Number(o):i==="currency"?r.currency=o||"":i==="status"?r.status=o||"":i==="tier_id"&&(r.tier={id:o||Lf.tier.id})}return{page:"offer",pageData:r}}fetchQueryStrData(t=""){const n=new URLSearchParams(t),r={site:{plans:{}}},a=[];let i,o=null,s,l,u;for(let p of n.entries()){const m=p[0],d=decodeURIComponent(p[1]);if(m==="button")r.site.portal_button=JSON.parse(d);else if(m==="name")r.site.portal_name=JSON.parse(d);else if(m==="isFree"&&JSON.parse(d))a.push("free");else if(m==="isMonthly"&&JSON.parse(d))a.push("monthly");else if(m==="isYearly"&&JSON.parse(d))a.push("yearly");else if(m==="portalPrices")i=d?d.split(","):[];else if(m==="portalProducts")o=d?d.split(","):[];else if(m==="page"&&d)r.page=d;else if(m==="accentColor"&&(d===""||d))r.site.accent_color=d;else if(m==="buttonIcon"&&d)r.site.portal_button_icon=d;else if(m==="signupButtonText")r.site.portal_button_signup_text=d||"";else if(m==="signupTermsHtml")r.site.portal_signup_terms_html=d||"";else if(m==="signupCheckboxRequired")r.site.portal_signup_checkbox_required=JSON.parse(d);else if(m==="buttonStyle"&&d)r.site.portal_button_style=d;else if(m==="monthlyPrice"&&!isNaN(Number(d)))r.site.plans.monthly=Number(d),s=Number(d);else if(m==="yearlyPrice"&&!isNaN(Number(d)))r.site.plans.yearly=Number(d),l=Number(d);else if(m==="currency"&&d){const y=d.toUpperCase();r.site.plans.currency=y,r.site.plans.currency_symbol=ue(y),u=y}else m==="disableBackground"?r.site.disableBackground=JSON.parse(d):m==="allowSelfSignup"?r.site.allow_self_signup=JSON.parse(d):m==="membersSignupAccess"&&d&&(r.site.members_signup_access=d)}return r.site.portal_plans=a,r.site.portal_products=o,i?r.site.portal_plans=i:s&&l&&u&&(r.site.prices=[{id:"monthly",stripe_price_id:"dummy_stripe_monthly",stripe_product_id:"dummy_stripe_product",active:1,nickname:"Monthly",currency:u,amount:s,type:"recurring",interval:"month"},{id:"yearly",stripe_price_id:"dummy_stripe_yearly",stripe_product_id:"dummy_stripe_product",active:1,nickname:"Yearly",currency:u,amount:l,type:"recurring",interval:"year"}]),r}fetchNotificationData(){const{type:t,status:n,duration:r,autoHide:a,closeable:i}=Vh({billingOnly:!0})||{};return["stripe:billing-update"].includes(t)?n==="success"?{showPopup:!0,popupNotification:Q({type:t,status:n,duration:r,closeable:i,autoHide:a,state:this.state,message:n==="success"?"Billing info updated successfully":""})}:{showPopup:!0}:{}}fetchLinkData(){const t=new URLSearchParams(window.location.search);if(t.get("uuid")&&t.get("action")==="unsubscribe")return{showPopup:!0,page:"unsubscribe",pageData:{uuid:t.get("uuid"),newsletterUuid:t.get("newsletter"),comments:t.get("comments")}};const[n,r]=window.location.hash.substr(1).split("?"),a=new URLSearchParams(r??""),i=/^(?:(\w+?))?\/monthly$/,o=/^(?:(\w+?))?\/yearly$/,s=/^offers\/(\w+?)\/?$/,l=/^\/portal\/?(?:\/(\w+(?:\/\w+)*))?\/?$/,u=/^\/feedback\/(\w+?)\/(\w+?)\/?$/;if(n&&u.test(n)&&a.get("uuid")){const[,p,m]=n.match(u),d=parseInt(m);if(d===1||d===0)return{showPopup:!0,page:"feedback",pageData:{uuid:a.get("uuid"),postId:p,score:d}}}if(n&&l.test(n)){const[,p]=n.match(l),{page:m,pageQuery:d}=this.getPageFromLinkPath(p)||{},y=["accountPlan","accountProfile"].includes(m)?"accountHome":null;return{showPopup:!(["monthly","yearly"].includes(d)||i.test(d)||o.test(d)||s.test(d)),...m?{page:m}:{},...d?{pageQuery:d}:{},...y?{lastPage:y}:{}}}return{}}fetchPreviewData(){const[,t]=window.location.hash.substr(1).split("?");if(V(["preview"])){let n={};return V(["offerPreview"])?n=this.fetchOfferQueryStrData(t):n=this.fetchQueryStrData(t),{...n,showPopup:!0}}return{}}getColorOverride(){const t=document.querySelector("script[data-ghost]");return t&&t.dataset.accentColor?t.dataset.accentColor:!1}async fetchApiData(){const{siteUrl:t,customSiteUrl:n,apiUrl:r,apiKey:a}=this.props;try{this.GhostApi=this.props.api||To({siteUrl:t,apiUrl:r,apiKey:a});const{site:i,member:o}=await this.GhostApi.init(),s=this.getColorOverride();return s&&(i.accent_color=s),this.setupFirstPromoter({site:i,member:o}),this.setupSentry({site:i}),{site:i,member:o}}catch(i){if(V(["dev","test"],{customSiteUrl:n}))return{};throw i}}setupSentry({site:t}){if(V(["test"]))return null;const{portal_sentry:n,portal_version:r,version:a}=t,o=`portal@2.33.3|ghost@${a}`;n&&n.dsn&&Zk({dsn:n.dsn,environment:n.env||"development",release:o,beforeSend:s=>bw({event:s})?s:null,allowUrls:[/https?:\/\/((www)\.)?unpkg\.com\/@tryghost\/portal/]})}setupFirstPromoter({site:t,member:n}){if(V(["test"]))return null;const r=Tw({site:t});let a=Rc({site:t});if(a=a==null?void 0:a.replace(/^(\S*\.)?(\S*\.\S*)$/i,".$2"),r&&a){const i=document.createElement("script");i.type="text/javascript",i.async=!0,i.src="https://cdn.firstpromoter.com/fprom.js",i.onload=i.onreadystatechange=function(){let s=this.readyState;if(!s||s==="complete"||s==="loaded")try{if(window.$FPROM.init(r,a),Fw({member:n})){const l=n.email,u=n.uuid;if(window.$FPROM)window.$FPROM.trackSignup({email:l,uid:u});else{const p=window._fprom||[];window._fprom=p,p.push(["event","signup"]),p.push(["email",l]),p.push(["uid",u])}}}catch{}};const o=document.getElementsByTagName("script")[0];o.parentNode.insertBefore(i,o)}}async dispatchAction(t,n){clearTimeout(this.timeoutId),this.setState({action:`${t}:running`});try{const r=await xS({action:t,data:n,state:this.state,api:this.GhostApi});this.setState(r),r&&r.action&&!r.action.includes(":failed")&&(this.timeoutId=setTimeout(()=>{this.setState({action:""})},2e3))}catch(r){const a=Q({type:`${t}:failed`,autoHide:!0,closeable:!0,status:"error",state:this.state,meta:{error:r}});this.setState({action:`${t}:failed`,popupNotification:a})}}updateStateForPreviewLinks(){const{site:t,...n}=this.fetchPreviewData(),{site:r,...a}=this.fetchLinkData(),i={site:{...this.state.site,...r||{},...t||{},plans:{...this.state.site&&this.state.site.plans,...(r||{}).plans,...(t||{}).plans}},...a,...n};this.handleSignupQuery({site:i.site,pageQuery:i.pageQuery}),this.setState(i)}async handleOfferQuery({site:t,offerId:n,member:r=this.state.member}){const{portal_button:a}=t;if(Ic(),!bt({member:r}))try{const i=await this.GhostApi.site.offer({offerId:n}),o=i==null?void 0:i.offers[0];if(zw({site:t,offer:o}))if(a)this.dispatchAction("openPopup",{page:"offer",pageData:i==null?void 0:i.offers[0]});else{const s=or({site:t,productId:o.tier.id}),l=o.cadence==="month"?s.monthlyPrice:s.yearlyPrice;if(this.dispatchAction("openPopup",{page:"loading"}),r){const{tierId:u,cadence:p}=mn({site:t,priceId:l.id});this.dispatchAction("checkoutPlan",{plan:l.id,offerId:n,tierId:u,cadence:p})}else{const{tierId:u,cadence:p}=mn({site:t,priceId:l.id});this.dispatchAction("signup",{plan:l.id,offerId:n,tierId:u,cadence:p})}}}catch{}}handleSignupQuery({site:t,pageQuery:n,member:r}){const a=/^offers\/(\w+?)\/?$/;let i=n;if(a.test(n||"")){const[,s]=n.match(a);this.handleOfferQuery({site:t,offerId:s,member:r});return}Lh({site:t,pageQuery:n})&&(i=Lh({site:t,pageQuery:n}));const o=Cw({site:t,priceId:i});if(n&&n!=="free"){Ic();const s=(o==null?void 0:o.id)||i;s!=="free"&&this.dispatchAction("openPopup",{page:"loading"});const{tierId:l,cadence:u}=mn({site:t,priceId:s});this.dispatchAction("signup",{plan:s,tierId:l,cadence:u})}}getPageFromLinkPath(t){const n=/^signup\/?(?:\/(\w+?))?\/?$/,r=/^signup\/?(?:\/(\w+?))\/monthly\/?$/,a=/^signup\/?(?:\/(\w+?))\/yearly\/?$/;if(/^offers\/(\w+?)\/?$/.test(t))return{pageQuery:t};if(t==="signup")return{page:"signup"};if(r.test(t)){const[,o]=t.match(r);return{page:"signup",pageQuery:`${o}/monthly`}}else if(a.test(t)){const[,o]=t.match(a);return{page:"signup",pageQuery:`${o}/yearly`}}else if(n.test(t)){const[,o]=t.match(n);return{page:"signup",pageQuery:o}}else{if(t==="signup/free")return{page:"signup",pageQuery:"free"};if(t==="signup/monthly")return{page:"signup",pageQuery:"monthly"};if(t==="signup/yearly")return{page:"signup",pageQuery:"yearly"};if(t==="signin")return{page:"signin"};if(t==="account")return{page:"accountHome"};if(t==="account/plans")return{page:"accountPlan"};if(t==="account/profile")return{page:"accountProfile"};if(t==="account/newsletters")return{page:"accountEmail"}}return{}}getAccentColor(){const{accent_color:t}=this.state.site||{};return t}getContextPage({site:t,page:n,member:r}){if(!n){const a=at({site:t})?"signin":"signup";n=r?"accountHome":a}return n==="accountPlan"&&ar({member:r})&&!Ea({member:r})&&(n="accountHome"),Wc({page:n})}getContextMember({page:t,member:n,customSiteUrl:r}){return V(["dev","preview"],{customSiteUrl:r})?q0({page:t})||V0({page:t})?V(["dev"],{customSiteUrl:r})?n||Mo.free:V(["preview"])?Mo.preview:Mo.paid:null:n}getContextFromState(){const{site:t,member:n,action:r,page:a,lastPage:i,showPopup:o,pageQuery:s,pageData:l,popupNotification:u,customSiteUrl:p,t:m}=this.state,d=this.getContextPage({site:t,page:a,member:n}),y=this.getContextMember({page:d,member:n,customSiteUrl:p});return{site:t,action:r,brandColor:this.getAccentColor(),page:d,pageQuery:s,pageData:l,member:y,lastPage:i,showPopup:o,popupNotification:u,customSiteUrl:p,t:m,onAction:(b,x)=>this.dispatchAction(b,x)}}render(){return this.state.initStatus==="success"?c.jsx(R1,{site:this.state.site,children:c.jsxs(N.Provider,{value:this.getContextFromState(),children:[c.jsx(Df,{}),c.jsx(Bh,{}),c.jsx(Gh,{})]})}):null}}const tg="ghost-portal-root";function U1(){const e=document.createElement("div");e.id=tg,document.body.appendChild(e)}function O1(){const e=document.querySelector("script[data-ghost]");if(e){const t=e.dataset.i18n==="true",n=e.dataset.ghost,r=e.dataset.key,a=e.dataset.api;return{siteUrl:n,apiKey:r,apiUrl:a,siteI18nEnabled:t}}return{}}function F1(){const e=new URL(window.location.href);e.searchParams.get("token")&&(e.searchParams.delete("token"),window.history.replaceState({},document.title,e.href))}function Y1({siteUrl:e}){U1(),F1()}function B1(){const{siteUrl:e,apiKey:t,apiUrl:n,siteI18nEnabled:r}=O1(),a=e||window.location.origin;Y1({siteUrl:a}),pb.render(c.jsx(R.StrictMode,{children:c.jsx(L1,{siteUrl:a,customSiteUrl:e,apiKey:t,apiUrl:n,siteI18nEnabled:r})}),document.getElementById(tg))}B1()});
3167
3167
  //# sourceMappingURL=portal.min.js.map