MSN r.delete(e),has:e=>r.has(e)});function c(){return!(“undefined”==typeof window||!window.document||!window.document.createElement||window.isRenderServiceEnv)}function d(e){let t,n=!1;const o=function(){return n||(n=!0,t=e()),t};return o.cache={clear:()=>{n=!1,t=void 0}},o}const l={bingHomepageMobile:”binghomepagemobile”,outlookMobile:”OnOOutlookMobile”,officeMobile:”OnOOfficeMobile”,sapphire:”OnOStartApp”,skype:”OnOSkype”,freFullPage:”emmxFre”,winWeatherApp:”weather-app-win”,xiaomiApp:”xmweather-“,launcher:”launcherntp”,launcherInterests:”launcherInterests”,swiftKey:”swiftKey”,winMoneyApp:”finance-app-win”},u=”superappdhp”,p=[“ios”,”android”,”ipados”],h=”_ocidIsomorphicKey”,g=()=>(a.get(h)||a.set(h,T(“ocid”).toLowerCase()),a.get(h)),w=”_platformFlagKey”,m=”_hostAppNameKey”,f=”_clientTypeKey”,b=()=>(a.get(w)||a.set(w,T(“chpltfm”)),a.get(w)),v=()=>{if(!a.get(m)){const e=b();a.set(m,e.toLowerCase().split(“-“)[0])}return a.get(m)},y=()=>{if(!a.get(f)){const e=b();a.set(f,e.toLowerCase().split(“-“)[1])}return a.get(f)};function k(){if(!c()||O())return!1;const e=window.sapphireWebViewBridge,t=window.webkit,n=e&&e.send,o=t&&t.messageHandlers&&t.messageHandlers.send&&t.messageHandlers.send.postMessage;return!(!n&&!o)}function S(){const e=b()&&”outlook”===v()&&p.includes(y()),t=g()===l.outlookMobile.toLowerCase();return e||t}function C(){const e=b()&&[“office”,”union”].includes(v())&&p.includes(y()),t=g()===l.officeMobile.toLowerCase();return e||t}function A(){const e=g()===l.skype.toLowerCase()||”skype”===v();return c()&&(null===(t=window.skypeWebviewBridge)||void 0===t?void 0:t.isSkype)||e;var t}function I(){return!(!c()||O())&&(k()||g()===l.sapphire.toLowerCase()||g()===u.toLowerCase())}function _(){const e=T(“edge”);return(“emmx”===v()||”1″===e)&&I()||”mmx”===g()}function E(){return”3rdp”===v()||g().startsWith(l.xiaomiApp)||O()}function q(){return[l.launcher.toLowerCase(),l.launcherInterests.toLowerCase()].includes(g())&&I()}function O(){return g().toLowerCase()===l.swiftKey.toLowerCase()||”swiftkey”==v().toLowerCase()}function x(){return-1!==window.location.href.indexOf(“huawei”)||-1!==window.location.href.indexOf(“airfind”)||-1!==window.location.href.indexOf(“aloha”)||”vivo”===g()&&E()}const L=d((()=>k()||A()||C()||S()||I()||g()===l.winWeatherApp.toLowerCase()||g()===l.winMoneyApp.toLowerCase()||_()||E()||q()||O()||x()||-1!==window.location.href.indexOf(“metaos=true”)));function T(e){try{return new URL(location.href).searchParams.get(e)||””}catch(e){return””}}function P(e){try{return decodeURIComponent(e)}catch(e){}}let N,W;function M(e,t){if(!e)return null;if(t)return R(e);if(!N){const e=”undefined”!=typeof document&&document.cookie.split(“; “);N={};const t=e&&e.length;for(let n=0;n0&&void 0!==arguments[0]?arguments[0]:20;this.maxLength=e,this.list=[]}push(e){this.list.push(e),this.list.length>this.maxLength&&this.list.shift()}get data(){return this.list}};function $(e,t,n){let i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:F.Alert,r=arguments.length>4?arguments[4]:void 0,a=arguments.length>5?arguments[5]:void 0;try{const d=function(){if(!o){const e=document.head.getAttribute(“data-client-settings”);e&&(o=JSON.parse(e))}return o}(),l=s(),u=function(e){if(e){const{pcsInfo:t,pageGenTime:n}=e,o=new Date(n).getTime(),i=!t||[“prod”,”prod-ssr”,”prod-ssrntp”].includes(t.env);W=i?”browser.events.data.msn.com”:”events-sandbox.data.msn.com”;return{cors:”true”,”content-type”:”application/x-json-stream”,”client-id”:”NO_AUTH”,”client-version”:”1DS-Web-JS-2.2.2″,apikey:i?”0ded60c75e44443aa3484c42c1c43fe8-9fc57d3f-fdac-4bcf-b927-75eafe60192e-7279″:”f8857dedc6f54ca8962cfb713e01e7d7-e9250191-fe0b-446f-95ae-07516262f98c-7028″,”upload-time”:o,w:”0″,anoncknm:”app_anon”}}return null}(d);let p=””;u&&u.apikey&&””!==u.apikey&&(p=function(e){if(e){const t=e.indexOf(“-“);if(t>0)return e.substring(0,t)}return””}(u.apikey));const h=function(e,t,n,o,i,s){let r=arguments.length>6&&void 0!==arguments[6]?arguments[6]:F.Alert;if(n){i=i||{};const{apptype:d,audienceMode:l,pagetype:u,pageGenTime:p,bundleInfo:h,deviceFormFactor:g=””,fd_muid:w,os:m}=n;i.pageGenTime=p,i.build=h&&h.v,i.appType=d;const f=function(e,t,n){const o=n&&”phone”===n.toLowerCase(),i=t&&”enterprise”===t;let s=”Edge”;O()?s=”swiftKey”:q()?s=”Launcher”:function(){var e;if(!c())return!1;const t=document.head.dataset.clientSettings||(null===(e=document.getElementsByClassName(“peregrine-widget-settings”)[0])||void 0===e?void 0:e.getAttribute(“data-client-settings”));if(t){const e=JSON.parse(t);return e&&e.pagetype&&”bingHomepageMobile”===e.pagetype}return!1}()&&(s=”bingHomepageMobile”);return{bingHomepage:”binghomepage”,mmx:”emmx”,edge:”spartan”,edgeChromium:i?”entnews”:”anaheim”,hybrid:”spartan”,hub:o?”prime_mobile”:”prime”,microsoftNews:”msnews”,office:”entnews”,views:o?”prime_mobile”:”prime”,homePage:o?”prime_mobile”:”prime”,windowsShell:”windowsshell”,edgeMobile:s}[e]}(d,l,g),b=f||d,v=document.getElementsByTagName(“html”)[0].getAttribute(“lang”);let y,k=””,S=”muid”;try{if(“edgeChromium”===d&&”object”==typeof window&&window.location&&window.location.search){const e=new URLSearchParams(window.location.search);y=e.has(“startpage”)?”msedgdhp”:”msedgntp”,”enterprise”===l?y=”entnewsntp”:”xbox”===m&&(y=”xboxntp”)}window&&window.getCookieConsentRequired&&”function”==typeof window.getCookieConsentRequired&&window.getCookieConsentRequired()||(k=M(“muid”))}catch{}k||(k=n.aid,S=”aid”);const C={name:”MS.News.Web.AppError”,time:p,ver:”4.0″,iKey:`o:${o}`,data:{baseData:{},baseType:”MS.News.Web.Base”,page:{name:”default”,product:b,type:H(u),content:j[d]??{category:”standaloneError”},ocid:y},browser:{clientId:k,clientIdType:S},flight:{id:s},request:{activityId:n.aid,requestId:n.aid,afdMuid:w},locale:{mkt:v},extSchema:{id:e,severity:r,pb:i,message:t}}};var a;if(k&&”muid”===S)C.ext={…null==C?void 0:C.ext,user:{…null==C||null===(a=C.ext)||void 0===a?void 0:a.user,localId:`t:${k}`}};return C.data.flight.tmpl=””,”object”==typeof window&&(window.isSSREnabled&&(C.data.flight.tmpl+=”;ssr-enabled:1″),window.isSSRCompleted&&(C.data.flight.tmpl+=”;ssr-completed:1″)),C?JSON.stringify(C):null}return null}(t,e,d,p,n,l,i);if(a&&!function(e){if(null==e)return!1;return e.startsWith(“1”)||e.startsWith(“2”)||e.startsWith(“3”)||e.startsWith(“4″)}(null==d?void 0:d.aid))return console.error(h),void console.error(`This App error Id: ${t} will not be sent due to app error sampling!`);if(u&&h){console.error(h),U.push(h);const e=”https://”+W+”/OneCollector/1.0″+function(e){return”?”+Object.keys(e).map((function(t){return t+”=”+encodeURIComponent(e[t])})).join(“&”)}(u);if(r&&!performance.getEntriesByType(“visibility-state”).some((e=>”visible”===e.name))){const t=()=>{“visible”===document.visibilityState&&navigator.sendBeacon(e,h)};document.addEventListener(“visibilitychange”,t,{once:!0})}else navigator.sendBeacon(e,h)}}catch{}}const j={homePage:{vertical:”homepage”,category:””,id:””,domainId:”13041″,title:”undefined”!=typeof document?document.title:””}};function H(e){let t=e;switch(e){case”windowsshellhp”:t=”dhp”;break;case”video”:t=”watch”;break;case”EdgeMobile”:t=_()?”ntp”:”dhp”}return t}function B(e){$(“Error when loading bundle: “+e,20202,{…arguments.length>1&&void 0!==arguments[1]?arguments[1]:{}})}function J(e,t,n,o,i){$(“JS Exception”,20203,{source:t,customMessage:e,line:n,column:o,stack:i&&i.stack})}function G(e){$(“JS Exception”,20203,{customMessage:e&&e.reason&&e.reason.message,stack:e&&e.reason&&e.reason.stack})}const V=”experience”,K=Object.create(null),X=2;function z(e,t){if(!(t=t||Array.from(document.scripts).find((t=>t.src.indexOf(`/${e}.`)>-1))))return;const n=function(e,t){const n=document.createElement(“script”);return n.type=”text/javascript”,n.crossOrigin=”anonymous”,n.src=e,n.onerror=()=>{let e=K[t]||0;K[t]=++e,e{delete K[t];const e=window._pageTimings.retriedBundles;window._pageTimings.retriedBundles=e?`${e},${t}`:t,Y()},n}((o=t.src,K[e],o),e);var o;setTimeout((()=>t.replaceWith(n)),100)}function Q(){const[e={}]=performance.getEntriesByType(“navigation”);return e.type}function Y(){if(!Object.values(K).every((e=>e===X)))return;let e=””;Object.keys(K).forEach((t=>{e=e?`${e},${t}`:t,delete K[t]})),e&&$(`Error when loading bundle(s): ${e}`,20202,{timeElapsed:Math.round(performance.now()),navType:Q()})}function Z(e){try{if(e)return JSON.parse(e)}catch(e){}return null}”undefined”!=typeof window&&window.document&&window.document.createElement&&(window._pageTimings=window._pageTimings||{},window.requestIdleCallback=window.requestIdleCallback||window.setTimeout);const ee=”Authorization”;var te,ne;!function(e){e.Presentation=”presentation”}(te||(te={})),function(e){e.Unknown=”Unknown”,e.Portrait=”Portrait”,e.Landscape=”Landscape”}(ne||(ne={}));var oe,ie;!function(e){e[e.Undefined=0]=”Undefined”,e[e.Basic=1]=”Basic”,e[e.Advanced=2]=”Advanced”,e[e.Premium=3]=”Premium”}(oe||(oe={})),function(e){e.Init=”init”,e.Config=”config”,e.Targeted=”targeted”,e.Sticky=”sticky”,e.NoSticky=”no_sticky”,e.Admin=”admin”,e.Forced=”forced”,e.Manual=”manual”}(ie||(ie={}));new Set([“winp0dash”,”winp1taskbar”,”winp1taskbarent”,”winp1taskbardirect”,”winp1taskbardirectent”,”winp1taskbarent”,”winp2juntaskbar”,”winp2juntaskbarent”,”winp2″,”winp2ent”,”winp2fp”,”winp2fpent”,”winp2fptaskbar”,”winp2fptaskbarent”,”winp2fptaskbarhover”,”winp2fptaskbarhoverent”,”winp2widget”,”winp2widgetent”]);const se=new Set([“finance-app-win”,”weather-app-win”,”winpstoreapp”]),re=(new Set([“msedgdhp”,”msedgdhphdr”,”msedgntphdr”,”msedgntp”,”msedgdhp”,”entnewsntp”]),new Set([“hpmsn”]));new Set([“chromentpnews”]);function ae(){var e;return c()?Z(document.head.dataset.clientSettings||(null===(e=document.getElementsByClassName(“peregrine-widget-settings”)[0])||void 0===e?void 0:e.getAttribute(“data-client-settings”))):null}const ce=”feed/personalize/settings”;function de(e,t){const n=t.replace(/[[]]/g,”\$&”),o=new RegExp(“[?&]”+n+”(=([^&#]*)|&|#|$)”).exec(e);if(!o)return null;const i=o[2];return decodeURIComponent(i.replace(/+/g,” “))||””}let le=new class{constructor(){c()?(this.isDebugEnabled=(de(window.location.href,”debug”)||””).toLowerCase()in{1:1,true:1}||”vp”===(de(window.location.href,”reqsrc”)||””).toLowerCase(),this.isDebugEnabled&&!n.g.TEST_ENV&&(window.webpackRequire=n)):this.isDebugEnabled=!1}getLoggingService(){return null}isDebug(){return this.isDebugEnabled}setDebug(e){this.isDebugEnabled=e}setTags(e){}log(e,t){this.isDebug()&&console.info(e)}logError(e){console.error(e)}logCallback(e){this.isDebug()&&console.info(e())}logObjects(){this.isDebug()&&console.log(…arguments)}logSingleObject(e,t){this.isDebug()&&console.log(e)}};class ue{get supported(){return!!this.storage}constructor(e){this.storage=e}getItem(e){if(this.supported)return this.storage.getItem(e)}getObject(e,t){const n=this.getItem(e);if(null!=n){const e=Z(n);if(null!=e)return e}return t}key(e){if(this.supported&&e>=0)return this.storage.key(e)}keys(){return this.supported?Object.keys(this.storage):[]}setObject(e,t){void 0!==t?this.setItem(e,JSON.stringify(t)):this.removeItem(e)}removeObject(e){const t=this.removeItem(e);if(null!=t)return Z(t)}setItem(e,t){let n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];if(this.supported)try{if(!t)throw”Attempted to store null/undefined value: “+t;this.storage.setItem(e,t)}catch(e){if(!n)throw e;le.logError(e)}else if(!n)throw new Error(“WebStorage not supported”)}get length(){if(this.supported)return this.storage.length}removeItem(e){if(this.supported){const t=this.getItem(e);return this.storage.removeItem(e),t}}clear(){this.supported&&this.storage.clear()}removeSubstringKeys(e){if(!this.supported||!e)return;const t=[];for(let n=0;n[]{const e=M(ye,!0),t=e&&Z(e),{login_hint:n}=t||{};return n&&t})),Se=d((()=>!!M(ye)));const Ce=”__RequestDataInstance__”;class Ae{constructor(e,t){if(this.url=new URL(e.href),this.innerHeight=e.innerHeight,this.devicePixelRatio=e.devicePixelRatio,this.canUseCssGrid=e.canUseCssGrid,this.requestId=e.requestId,this.cookie=e.cookie,this.referer=e.referer,this.userAgent=e.userAgent,this.clientData=e.clientData,this.oneServiceHeaders=function(e){try{if(e)return JSON.parse(e)}catch(e){}}(e.oneServiceHeaders)||{},this.isPssrMode=t,t){const e=Ie(“OSATE”,this.cookie),t=!!e&&”1″===e,n=Ie(“OSAT”,this.cookie);if(t&&n||!e&&!n)return this.msalAuthReady=!0,void(n&&(this.oneServiceHeaders.Authorization=`Bearer ${n}`));this.msalAuthReady=!1,this.pssrRejectedReason=e&&!t?”interactiveLogin”:e&&!n?”missOSAT”:”missOSATE”}}static getInstance(){const e=a.get(Ce);return e||(n.g.TEST_ENV?_e({href:”http://localhost:8080/”,innerHeight:768,devicePixelRatio:1,canUseCssGrid:!1,requestId:”0″,cookie:””,userAgent:””,referer:””,oneServiceHeaders:””}):_e({href:”http://localhost:8080/”,innerHeight:0,devicePixelRatio:0,canUseCssGrid:!1,requestId:”0″,cookie:””,userAgent:””,referer:””,oneServiceHeaders:””}))}static resetInstance(e){const t=new Ae(e,arguments.length>1&&void 0!==arguments[1]&&arguments[1]);return a.set(Ce,t),t}}function Ie(e,t){if(t&&e){const n=new RegExp(“\b”+e+”\s*=\s*([^;]*)”,”i”).exec(t);return n&&n.length>1?n[1]:null}return null}const _e=Ae.resetInstance,Ee=()=>Ae.getInstance();function qe(){return c()?window.location.search:Ee().url.search}function Oe(){try{return localStorage}catch(e){return null}}const xe=”__PageExperimentInstance__”;function Le(e){a.set(xe,e)}function Te(e){if(!a.has(xe)&&c()){var t;Le(Pe(document.head.dataset.info||(null===(t=window.document.getElementsByClassName(“peregrine-widget-settings”)[0])||void 0===t||null===(t=t.dataset)||void 0===t?void 0:t.info)||””))}const n=a.get(xe);return n&&n.has(e)}function Pe(e){const t=(e||””).replace(/(^f:|;.*$)/g,””).split(“,”);return new Set(t)}const Ne=”uxlogin”,We=”uxlogout”,Me=”uxedit”,Re=”useRedirect”,De=”uxswitch”,Fe=d((()=>{const e=Oe();return e&&”1″===e.getItem(Ne)||c()&&location.search&&location.search.includes(`${Ne}=1`)}));const Ue=d((()=>{const e=function(){try{return sessionStorage}catch(e){return null}}();return e&&!!e.getItem(We)}));const $e=d((()=>{const e=Oe();return e&&”1″===e.getItem(Me)}));const je=d((()=>{const e=Oe(),t=!Te(“prg-noredirect”)&&e&&”1″===e.getItem(Re)&&function(){const e=document.head.dataset.clientSettings||””,{browser:t}=Z(e)||{},{browserType:n=””}=t||{};return!!/safari/i.test(n)}();return t}));const He=d((()=>{const e=Oe();return e&&”1″===e.getItem(De)}));const Be=ae()||{},Je={newsAndInterests:1,windowsNewsbar:1,windowsNewsPlus:1,winWidgets:1,windowsShell:1,windowsShellV2:1,distribution:1,superApp:1,channeldesktop:1,channelmobile:1,edgeMobile:1},Ge={edgeChromium:1},Ve={winWidgets:1},Ke={edgeChromium:1,shopping:1,newsAndInterests:1,windowsNewsbar:1,windowsNewsPlus:1,winWidgets:1,windowsShell:1,windowsShellV2:1},Xe={edgeChromium:1,channeldesktop:1,channelmobile:1,cgHomePage:1,distribution:1,newsAndInterests:1,windowsNewsbar:1,windowsNewsPlus:1,winWidgets:1,windowsShell:1,windowsShellV2:1,superApp:1,edgeMobile:1},ze=d((()=>Be&&Be.apptype)),Qe=(d((()=>c()&&ze()in Ve)),d((()=>c()&&!L()&&!(ze()in Je)&&!et()&&!tt()))),Ye=d((()=>Qe()&&!(ze()in Ge)));d((()=>Qe()&&(!(ze()in Ge)||!Se()))),d((()=>Qe()&&!it()&&!st()));const Ze=d((()=>st()||it())),et=d((()=>!(ze()in Ke)&&rt()&&function(){if(“homePage”==ze()&&Te(“prg-msn-id”))return!0;const e=new URLSearchParams(qe()).get(“ocid”)||(null==Be?void 0:Be.ocid),t=null==e?void 0:e.toLowerCase(),n=!re.has(t)&&”homePage”!==ze()&&!se.has(t);return n}()&&!function(){const e=”windows”==ze()&&”windowshp”==(Be&&Be.pagetype)&&(c()?window.location.href:Ee().url.href).includes(`${ce}`);return e}())),tt=()=>c()&&document&&document.body&&document.body.getElementsByClassName(“peregrine-widgets”).length>0;d((()=>ze()in Xe||et()));function nt(){const e=me;if(e)return le.log(“dual-auth: tryGet1SAuthToken returned live tokens”),e;const t=fe();if(t)return le.log(`dual-auth: tryGet1SAuthToken returned…
Continue reading