window.chesscom=window.chesscom||{};window.chesscom.routes=window.chesscom.routes||{};Object.assign(window.chesscom.routes,{web_2fa_login:{tokens:[["text","/2fa"]],defaults:{host:"www.chess.com"},requirements:{host:"(www|schach|ru|uk|ajedrez|fr|scacchi|sakk|schaken|szachy)?(\\.)?[^\\s]+",_locale:"af_ZA|ar_AR|az_AZ|be_BY|bg_BG|bn_BD|bs_BA|ca|cs_CZ|da_DK|de_DE|el_GR|en_US|es_ES|et_EE|eu_ES|fa_IR|fi_FI|fil_PH|fr_FR|gl_ES|he_IL|hi_IN|hr_HR|hu_HU|hy_AM|id_ID|is_IS|it_IT|ja_JP|ka_GE|ko_KR|lt_LT|lv_LV|nl_BE|ms_MY|nl_NL|no_NO|pl_PL|pt_BR|pt_PT|ro_RO|ru_RU|sk_SK|sl_SI|sq_AL|sr_RS|sv_SE|tk_TM|tr_TR|uk_UA|ur_PK|vi_VN|zh_CN|zh_HK|zh_TW"},hosttokens:[["variable","","(?:www|schach|ru|uk|ajedrez|fr|scacchi|sakk|schaken|szachy)?(?:\\.)?[^\\s]+","host",!0]],methods:[],schemes:["https"]},i18n_web_2fa_login:{tokens:[["text","/2fa"],["variable","/","es|fr|de|pl|ru|sv|el|pt|it|zh|ja|ko|nl|hy|bg|hr|cs|da|fi|hu|lt|no|ro|sk|sl|tr|uk|af|ar|az|be|bs|et|fa|gl|he|hi|id|is|ka|lv|ms|pt-BR|sq|sr|vi|zh-HK|zh-TW|fil|nl-BE|bn|tk|uz|ca|ur|--locale--","_locale",!0]],defaults:{host:"www.chess.com",_locale:""},requirements:{host:"(www|schach|ru|uk|ajedrez|fr|scacchi|sakk|schaken|szachy)?(\\.)?[^\\s]+",_locale:"es|fr|de|pl|ru|sv|el|pt|it|zh|ja|ko|nl|hy|bg|hr|cs|da|fi|hu|lt|no|ro|sk|sl|tr|uk|af|ar|az|be|bs|et|fa|gl|he|hi|id|is|ka|lv|ms|pt-BR|sq|sr|vi|zh-HK|zh-TW|fil|nl-BE|bn|tk|uz|ca|ur|--locale--"},hosttokens:[["variable","","(?:www|schach|ru|uk|ajedrez|fr|scacchi|sakk|schaken|szachy)?(?:\\.)?[^\\s]+","host",!0]],methods:[],schemes:["https"]}});!function(){var e={7634:function(e,t){var n,r,o;!function(i,c){r=[],void 0!==(o="function"==typeof(n=c().Routing)?n.apply(t,r):n)&&(e.exports=o)}(0,function(){var e={};"use strict";e.__esModule=!0;e.Routing=e.Router=void 0;var t=function(){function Router2(e,t){this.context_=e||{base_url:"",prefix:"",host:"",port:"",scheme:"",locale:""};this.setRoutes(t||{})}return Router2.getInstance=function(){return e.Routing},Router2.setData=function(e){Router2.getInstance().setRoutingData(e)},Router2.prototype.setRoutingData=function(e){this.setBaseUrl(e.base_url);this.setRoutes(e.routes);void 0!==e.prefix&&this.setPrefix(e.prefix);void 0!==e.port&&this.setPort(e.port);void 0!==e.locale&&this.setLocale(e.locale);this.setHost(e.host);void 0!==e.scheme&&this.setScheme(e.scheme)},Router2.prototype.setRoutes=function(e){this.routes_=Object.freeze(e)},Router2.prototype.getRoutes=function(){return this.routes_},Router2.prototype.setBaseUrl=function(e){this.context_.base_url=e},Router2.prototype.getBaseUrl=function(){return this.context_.base_url},Router2.prototype.setPrefix=function(e){this.context_.prefix=e},Router2.prototype.setScheme=function(e){this.context_.scheme=e},Router2.prototype.getScheme=function(){return this.context_.scheme},Router2.prototype.setHost=function(e){this.context_.host=e},Router2.prototype.getHost=function(){return this.context_.host},Router2.prototype.setPort=function(e){this.context_.port=e},Router2.prototype.getPort=function(){return this.context_.port},Router2.prototype.setLocale=function(e){this.context_.locale=e},Router2.prototype.getLocale=function(){return this.context_.locale},Router2.prototype.buildQueryParams=function(e,t,n){var r,o=this,i=new RegExp(/\[\]$/);if(t instanceof Array)t.forEach(function(t,r){i.test(e)?n(e,t):o.buildQueryParams(e+"["+("object"==typeof t?r:"")+"]",t,n)});else if("object"==typeof t)for(r in t)this.buildQueryParams(e+"["+r+"]",t[r],n);else n(e,t)},Router2.prototype.getRoute=function(e){var t=[this.context_.prefix+e,e+"."+this.context_.locale,this.context_.prefix+e+"."+this.context_.locale,e];for(var n in t)if(t[n]in this.routes_)return this.routes_[t[n]];throw Error('The route "'+e+'" does not exist.')},Router2.prototype.generate=function(e,t,n){var r=this.getRoute(e),o=t||{},i=Object.assign({},o),c="",u=!0,s="",a=void 0===this.getPort()||null===this.getPort()?"":this.getPort();r.tokens.forEach(function(t){if("text"===t[0]&&"string"==typeof t[1]){c=Router2.encodePathComponent(t[1])+c;u=!1;return}if("variable"===t[0]){6===t.length&&!0===t[5]&&(u=!1);var n=r.defaults&&!Array.isArray(r.defaults)&&"string"==typeof t[3]&&t[3]in r.defaults;if(!1===u||!n||"string"==typeof t[3]&&t[3]in o&&!Array.isArray(r.defaults)&&o[t[3]]!=r.defaults[t[3]]){var s=void 0;if("string"==typeof t[3]&&t[3]in o){s=o[t[3]];delete i[t[3]]}else if("string"==typeof t[3]&&n&&!Array.isArray(r.defaults))s=r.defaults[t[3]];else if(u)return;else throw Error('The route "'+e+'" requires the parameter "'+t[3]+'".');var a=!0===s||!1===s||""===s;if(!a||!u){var _=Router2.encodePathComponent(s);"null"===_&&null===s&&(_="");c=t[1]+_+c}u=!1}else n&&"string"==typeof t[3]&&t[3]in i&&delete i[t[3]];return}throw Error('The token type "'+t[0]+'" is not supported.')});""===c&&(c="/");r.hosttokens.forEach(function(e){var t;if("text"===e[0]){s=e[1]+s;return}if("variable"===e[0]){if(e[3]in o){t=o[e[3]];delete i[e[3]]}else r.defaults&&!Array.isArray(r.defaults)&&e[3]in r.defaults&&(t=r.defaults[e[3]]);s=e[1]+t+s}});c=this.context_.base_url+c;if(r.requirements&&"_scheme"in r.requirements&&this.getScheme()!=r.requirements._scheme){var _=s||this.getHost();c=r.requirements._scheme+"://"+_+(_.indexOf(":"+a)>-1||""===a?"":":"+a)+c}else if(void 0!==r.schemes&&void 0!==r.schemes[0]&&this.getScheme()!==r.schemes[0]){var _=s||this.getHost();c=r.schemes[0]+"://"+_+(_.indexOf(":"+a)>-1||""===a?"":":"+a)+c}else s&&this.getHost()!==s+(s.indexOf(":"+a)>-1||""===a?"":":"+a)?c=this.getScheme()+"://"+s+(s.indexOf(":"+a)>-1||""===a?"":":"+a)+c:!0===n&&(c=this.getScheme()+"://"+this.getHost()+(this.getHost().indexOf(":"+a)>-1||""===a?"":":"+a)+c);if(Object.keys(i).length>0){var l=[],add=function(e,t){t=null===(t="function"==typeof t?t():t)?"":t;l.push(Router2.encodeQueryComponent(e)+"="+Router2.encodeQueryComponent(t))};for(var f in i)i.hasOwnProperty(f)&&this.buildQueryParams(f,i[f],add);c=c+"?"+l.join("&")}return c},Router2.customEncodeURIComponent=function(e){return encodeURIComponent(e).replace(/%2F/g,"/").replace(/%40/g,"@").replace(/%3A/g,":").replace(/%21/g,"!").replace(/%3B/g,";").replace(/%2C/g,",").replace(/%2A/g,"*").replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/'/g,"%27")},Router2.encodePathComponent=function(e){return Router2.customEncodeURIComponent(e).replace(/%3D/g,"=").replace(/%2B/g,"+").replace(/%21/g,"!").replace(/%7C/g,"|")},Router2.encodeQueryComponent=function(e){return Router2.customEncodeURIComponent(e).replace(/%3F/g,"?")},Router2}();return e.Router=t,e.Routing=new t,e.default=e.Routing,{Router:e.Router,Routing:e.Routing}})},7528:function(e,t,n){"use strict";n.d(t,{S:function(){return r}});let r={OnCoachChanged:"OnCoachChanged",OnCoachInitReady:"OnCoachInitReady",OnCoachLoaded:"OnCoachLoaded",OnCoachModalClose:"OnCoachModalClose",OnCoachModalOpen:"OnCoachModalOpen",OnSetPendingCoach:"OnSetPendingCoach",OnSpeak:"OnSpeak",OnSpeechAssetsLoaded:"OnSpeechAssetsLoaded"}},2101:function(e,t,n){"use strict";n.d(t,{I:function(){return r}});let r=(0,n(5591).createContext)()},2365:function(e,t,n){"use strict";n.d(t,{z:function(){return r}});let r=(0,n(5591).createQueuedEmitter)()},7082:function(e,t,n){"use strict";n.d(t,{c:function(){return r}});let r="/pubsub"},3743:function(e,t,n){"use strict";n.d(t,{s:function(){return i}});var r=n(7082),o=n(5591);class i extends o.Model{connectionQuality=0;isConnected=!1;url=r.c}},2050:function(e,t,n){"use strict";n.d(t,{p:function(){return u}});var r=n(3743),o=n(5591),i=n(7118);let c=document.querySelector('script[src*="pubsub-connection"], script[data-src*="pubsub-connection"]')??null,u={clients:{},connecting:{},subscriptions:{},subscribing:{},scriptElement:c,isEnabled:!!c,reactive:(0,i.reactive)({quality:(0,o.createCollection)(r.s,{key:"url"})})}},3189:function(e,t,n){"use strict";n.d(t,{o:function(){return getDomainFromRoute}});function getDomainFromRoute(e=window.location.href){return new URL(e).hostname.split(".").slice(-2).join(".")}},9110:function(e,t,n){"use strict";var r=n(3618);t.A=()=>-1!==window.location.href.indexOf(r.A.generate("web_2fa_login"))},5133:function(e,t,n){"use strict";n.d(t,{J:function(){return isCI}});function isCI(){return!!(window.Cypress||window.Config?.cypress||window.location.host.includes("localhost:"))}},5529:function(e,t,n){"use strict";n.d(t,{D:function(){return copyRoute}});var r=n(3233),o=n(1055);function copyRoute(e){let t=(0,r.R)();if(t.routes_[e])return;try{Object.assign(t.context_,{base_url:"",prefix:"",host:"www.chess.com",port:"",scheme:"https",locale:""})}catch(e){}Object.isFrozen(t.routes_)&&(t.routes_=Object.assign({},t.routes_));let n=".chess-dev.com",i=window.location.host.replace(/^[^.]+/,""),c=!window.Config?.cypress&&i;c&&t.context_.host.includes(n)&&(t.context_.host=t.context_.host.replace(n,i));if(window.chesscom?.routes?.[e]){let r=window.chesscom.routes[e];if(c){r.defaults?.host?.includes(n)&&(r.defaults.host=r.defaults.host.replace(n,i));r.hosttokens?.forEach(e=>{e.forEach((t,r)=>{o.Kg(t)&&t.includes(n)&&(e[r]=t.replace(n,i))})})}t.routes_[e]=r}}},3233:function(e,t,n){"use strict";n.d(t,{R:function(){return getRouting}});var r=n(7634),o=/*#__PURE__*/n.n(r);function getRouting(){return o()}},3618:function(e,t,n){"use strict";var r=n(3189),o=n(5133),i=n(5529),c=n(3233),u=n(8858);class s{generate(e,t,n){let s=t||{};"string"==typeof s.username&&(s.username=s.username.toLowerCase());(0,i.D)(e);try{let t=(0,c.R)().generate(e,s,n);if(t.startsWith("http"))try{if(new URL(t).hostname===window.location.hostname)return t;let e=(0,r.o)(),n=(0,r.o)(t);t=t.replace(n,e)}catch(r){let t=Error(`Failed replacing hostname in route '${e}'.`);(0,u.C)(t,{routeName:e,routeParams:s,absoluteUrl:n})}return t}catch(n){let t=Error(`Couldn't find missing route '${e}'.`);window.Jest||console.error(t);(0,o.J)()||(0,u.C)(t,{missing_route:e});return"/"}}i18nable(e){return`i18n_${e}`in window.chesscom.routes}i18n(e,t,n){let r=e,o=t||{};if(window.context?.route?.startsWith("i18n")&&this.i18nable(e)){o._locale=window.context.locale.slice(0,2);r=`i18n_${e}`}let i=this.generate(r,o,n);return n?i:i.replace(/^.*\/\/[^/]+/,"")}}t.A=new s},8858:function(e,t,n){"use strict";n.d(t,{C:function(){return captureException}});var r=n(5085),o=n(1347),i=n(502);async function captureException(e,t){if(!await (0,i.T)())return;await (0,r.z)();let n=await (0,o.Q)(),c=e instanceof Error?e:Error(e);t?n.withScope(e=>{Object.keys(t).forEach(n=>e.setExtra(n,t[n]));n.captureException(c)}):n.captureException(c)}},5085:function(e,t,n){"use strict";n.d(t,{z:function(){return enableSentry}});var r=n(1347),o=n(502);async function enableSentry(e=0){if(!await (0,o.T)())return;window.chesscom.sudoEnableSentry=!0;let t=await (0,r.Q)();for(;window.chesscom.queuedSentryReports?.length;)t.captureException(window.chesscom.queuedSentryReports.shift());if(e>0){let t=Date.now()+864e5*e;window.localStorage.setItem("enableSentryUntil",t.toString())}}},1347:function(e,t,n){"use strict";n.d(t,{Q:function(){return getSentryBrowser}});async function getSentryBrowser(){return n.e(3484).then(n.bind(n,1103))}},502:function(e,t,n){"use strict";n.d(t,{T:function(){return isSentryAvailable}});var r=n(1347);async function isSentryAvailable(){try{return!!(await (0,r.Q)()).getCurrentHub().getClient()}catch(e){return!1}}},1055:function(e,t,n){"use strict";n.d(t,{Et:function(){return isNumber},Kg:function(){return isString},Lm:function(){return isBoolean},Tn:function(){return isFunction}});function isString(e){return"string"==typeof e}function isFunction(e){return"function"==typeof e}function isNumber(e){return"number"==typeof e&&!isNaN(e)}function isBoolean(e){return"boolean"==typeof e}},4625:function(e,t,n){"use strict";n.d(t,{P:function(){return isGuest}});function isGuest(){return!!window.context?.user?.isGuest}},1075:function(e,t,n){"use strict";n.d(t,{M:function(){return isLoggedIn}});var r=n(9110);function isLoggedIn(){return!!(window.context?.user&&!(0,r.A)())}},7118:function(e,t,n){e.exports=n(2803)(3751)},5591:function(e,t,n){e.exports=n(2803)(6177)},2803:function(e){"use strict";e.exports=vueDLL}},t={};function __webpack_require__(n){var r=t[n];if(void 0!==r)return r.exports;var o=t[n]={id:n,loaded:!1,exports:{}};return e[n].call(o.exports,o,o.exports,__webpack_require__),o.loaded=!0,o.exports}__webpack_require__.m=e;!function(){__webpack_require__.amdO={}}();!function(){__webpack_require__.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return __webpack_require__.d(t,{a:t}),t}}();!function(){var e,t=Object.getPrototypeOf?function(e){return Object.getPrototypeOf(e)}:function(e){return e.__proto__};__webpack_require__.t=function(n,r){1&r&&(n=this(n));if(8&r||"object"==typeof n&&n&&(4&r&&n.__esModule||16&r&&"function"==typeof n.then))return n;var o=Object.create(null);__webpack_require__.r(o);var i={};e=e||[null,t({}),t([]),t(t)];for(var c=2&r&&n;"object"==typeof c&&!~e.indexOf(c);c=t(c))Object.getOwnPropertyNames(c).forEach(function(e){i[e]=function(){return n[e]}});return i.default=function(){return n},__webpack_require__.d(o,i),o}}();!function(){__webpack_require__.d=function(e,t){for(var n in t)__webpack_require__.o(t,n)&&!__webpack_require__.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})}}();!function(){__webpack_require__.f={};__webpack_require__.e=function(e){return Promise.all(Object.keys(__webpack_require__.f).reduce(function(t,n){return __webpack_require__.f[n](e,t),t},[]))}}();!function(){__webpack_require__.u=function(e){return 3484===e?"web.chunk.client.fcf773e4.js":2505===e?"web.chunk.client.1aaa0ff2.js":6219===e?"web.chunk.client.4ce0eba9.js":4579===e?"web.chunk.client.2cf022da.js":8890===e?"web.chunk.client.9b454b61.js":5771===e?"ui-fragments-modal-client.chunk.client.078cb3ff.js":4436===e?"web.chunk.client.2b318e97.js":6893===e?"web.chunk.client.4cc72b8e.js":6608===e?"web.chunk.client.24c0e458.js":4905===e?"coach-client.chunk.client.c6f90c29.js":6581===e?"web.chunk.client.e60cca36.js":7232===e?"web.chunk.client.077baaa7.js":3314===e?"web.chunk.client.da23ceee.js":2213===e?"web.chunk.client.1f175c56.js":7427===e?"opm-modal.chunk.client.86b2a300.js":1655===e?"web.chunk.client.702296f4.js":8951===e?"web.chunk.client.8e9f0d6b.js":2401===e?"web.chunk.client.df843e9d.js":6050===e?"web.chunk.client.5d99539f.js":718===e?"web.chunk.client.05472c53.js":5896===e?"web.chunk.client.bb22d111.js":9413===e?"web.chunk.client.3c826d61.js":95===e?"web.chunk.client.fc5e72af.js":1411===e?"web.chunk.client.37631845.js":3398===e?"web.chunk.client.703f9d9b.js":4276===e?"web.chunk.client.535bd8ba.js":1804===e?"web.chunk.client.fcb4f581.js":4580===e?"web.chunk.client.79c1ac1f.js":8156===e?"web.chunk.client.b6100078.js":2633===e?"web.chunk.client.0db5f0de.js":1471===e?"web.chunk.client.ff5d578f.js":2065===e?"web.chunk.client.843f3892.js":4109===e?"web.chunk.client.9f3ce86b.js":6439===e?"web.chunk.client.428f0790.js":3057===e?"web.chunk.client.5388e9bc.js":9891===e?"web.chunk.client.6244458f.js":void 0}}();!function(){__webpack_require__.miniCssF=function(e){return 8951===e?"web.chunk.client.972cca95.css":718===e?"web.chunk.client.1c25eed0.css":9413===e?"web.chunk.client.ebc897d8.css":95===e?"web.chunk.client.52ebc701.css":1411===e?"web.chunk.client.84e3d902.css":4276===e?"web.chunk.client.4be2204d.css":({1804:1,4580:1})[e]?"web.chunk.client.8f51dd51.css":8156===e?"web.chunk.client.07401864.css":2633===e?"web.chunk.client.c8581812.css":1471===e?"web.chunk.client.b15cc524.css":2065===e?"web.chunk.client.1312b3ce.css":3057===e?"web.chunk.client.b92cc7bc.css":void 0}}();!function(){__webpack_require__.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}()}();!function(){__webpack_require__.hmd=function(e){return(e=Object.create(e)).children||(e.children=[]),Object.defineProperty(e,"exports",{enumerable:!0,set:function(){throw Error("ES Modules may not assign module.exports or exports.*, Use ESM export syntax, instead: "+e.id)}}),e}}();!function(){__webpack_require__.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)}}();!function(){var e={},t="client:";__webpack_require__.l=function(n,r,o,i){if(e[n]){e[n].push(r);return}if(void 0!==o)for(var c,u,s=document.getElementsByTagName("script"),a=0;aisModalsEnabled(),loader:()=>Promise.all([__webpack_require__.e(2505),__webpack_require__.e(6219),__webpack_require__.e(4579),__webpack_require__.e(8890),__webpack_require__.e(5771)]).then(__webpack_require__.bind(__webpack_require__,2792))})],u=__webpack_require__(2101);let s=(0,n.createClientLoader)({triggers:[(0,n.createTrigger)(t.z,[e.S.OnCoachInitReady])],loader:()=>Promise.all([__webpack_require__.e(2505),__webpack_require__.e(6219),__webpack_require__.e(4436),__webpack_require__.e(6893),__webpack_require__.e(8890),__webpack_require__.e(6608),__webpack_require__.e(4905)]).then(__webpack_require__.bind(__webpack_require__,1223))});var a=[(0,n.createExtension)({clients:[s],context:u.I})({cee:{interface:"binary"},coachAudio:!1,immediatelyLoadResources:()=>!0,source:()=>"COACH_SWITCH_SOURCE_UNSPECIFIED"})];!function initUiFragments(){(0,n.initApp)({clients:c,extensions:a,hooks:{onAfterInitClients(){t.z.emit(e.S.OnCoachInitReady)}}})}()}()}();