3295 lines
382 KiB
HTML
3295 lines
382 KiB
HTML
<!DOCTYPE html>
|
||
<html
|
||
lang="en"
|
||
data-uri="slate.com/_pages/cq-article-dad3a0d6e954a69dac85ac509b32ff4a@published" data-layout-uri="slate.com/_layouts/layout-one-column/instances/article@published"
|
||
data-myslateUrl="https://my.slate.com"
|
||
data-env="prod"
|
||
data-trackingdomain=".slate.com"
|
||
>
|
||
<head>
|
||
<meta charset="utf-8">
|
||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||
<meta name="viewport" content="width=device-width,initial-scale=1,shrink-to-fit=no">
|
||
|
||
<link rel="preload" href="https://dot.cdnslate.com/static/fonts/slate-com/Register-Heavy-subset.a571c0d.woff2" as="font" type="font/woff2" crossorigin />
|
||
<link rel="preload" href="https://dot.cdnslate.com/static/fonts/slate-com/Register-HeavyItalic-subset.d42bb80.woff2" as="font" type="font/woff2" crossorigin />
|
||
<link rel="preload" href="https://dot.cdnslate.com/static/fonts/slate-com/Retina-Book-subset.dc123e1.woff2" as="font" type="font/woff2" crossorigin />
|
||
<link rel="preload" href="https://dot.cdnslate.com/static/fonts/slate-com/Retina-BookItalic-subset.e351a4d.woff2" as="font" type="font/woff2" crossorigin />
|
||
<link rel="preload" href="https://dot.cdnslate.com/static/fonts/slate-com/Retina-Bold-subset.77f1049.woff2" as="font" type="font/woff2" crossorigin />
|
||
<link rel="preload" href="https://dot.cdnslate.com/static/fonts/slate-com/Retina-BoldItalic-subset.c2b4700.woff2" as="font" type="font/woff2" crossorigin />
|
||
|
||
<link rel="preconnect" href="https://compote.slate.com/" crossorigin />
|
||
|
||
<link rel="dns-prefetch" href="https://geolocation.onetrust.com/" />
|
||
<link rel="dns-prefetch" href="https://cdn.cookielaw.org/" />
|
||
<link rel="dns-prefetch" href="https://experience.piano.io" />
|
||
|
||
<script
|
||
src="https://experiments.parsely.com/vip-experiments.js?apiKey=slate.com"
|
||
></script>
|
||
<script>
|
||
window.slateGlobal = { abTests: {} };
|
||
(function() {
|
||
"use strict";void 0===window.slateGlobal&&(window.slateGlobal={}),window.slateGlobal.injectScript=function(e,t,a){var l=document.createElement("script");l.src=e,t&&l.addEventListener("load",t),a&&l.addEventListener("error",a),document.head.appendChild(l)},window.slateGlobal.injectScriptSync=function(e){document.write('<script src="'+e+'"><\/script>')},window.slateGlobal.ui={},window.slateGlobal.paywall={},Object.freeze(window.slateGlobal);try{var theme=localStorage.getItem("theme")}catch(e){}var matches=location.search.match(/\btheme=(\w+)/);matches&&(theme=matches[1]),-1===["light","dark","auto"].indexOf(theme)&&(theme="light"),document.documentElement.classList.add("theme-"+theme);
|
||
}())
|
||
</script>
|
||
|
||
|
||
<!-- data-editable="head" -->
|
||
<!-- data-uri="slate.com/_components/clay-meta-title/instances/cq-article-dad3a0d6e954a69dac85ac509b32ff4a-component-0@published" -->
|
||
<title>Shark attacks threaten Google's undersea Internet cables. (Video)</title>
|
||
<meta property="og:title" content="The Global Internet Is Being Attacked by Sharks, Google Confirms" />
|
||
<meta name="twitter:title" content="The Global Internet Is Being Attacked by Sharks, Google Confirms" />
|
||
<!-- data-uri="slate.com/_components/clay-meta-url/instances/cq-article-dad3a0d6e954a69dac85ac509b32ff4a-component-1@published" -->
|
||
<link rel="canonical" href="https://slate.com/technology/2014/08/shark-attacks-threaten-google-s-undersea-internet-cables-video.html" />
|
||
<meta property="og:url" content="https://slate.com/technology/2014/08/shark-attacks-threaten-google-s-undersea-internet-cables-video.html" />
|
||
<meta property="twitter:url" content="https://slate.com/technology/2014/08/shark-attacks-threaten-google-s-undersea-internet-cables-video.html" />
|
||
<meta property="article:published_time" content="2014-08-15T19:23:28+00:00" />
|
||
|
||
|
||
|
||
<meta name="robots" content="max-image-preview:large" />
|
||
|
||
<meta
|
||
name="apple-itunes-app"
|
||
content="app-id=357555242, app-argument=https://slate.com/technology/2014/08/shark-attacks-threaten-google-s-undersea-internet-cables-video.html, affiliate-data=pt=31813800&ct=Mobile%20Smart%20Banner&mt=8"
|
||
/>
|
||
|
||
|
||
<!-- data-uri="slate.com/_components/clay-meta-description/instances/cq-article-dad3a0d6e954a69dac85ac509b32ff4a-component-2@published" -->
|
||
<meta name="description" content="The Internet is a series of tubes ... that are sometimes attacked by sharks.">
|
||
<meta name="twitter:description" content="The Internet is a series of tubes ... that are sometimes attacked by sharks.">
|
||
<meta property="og:description" content="The Internet is a series of tubes ... that are sometimes attacked by sharks.">
|
||
|
||
<!-- data-uri="slate.com/_components/meta-image/instances/cq-article-dad3a0d6e954a69dac85ac509b32ff4a-component-3@published" -->
|
||
<meta name="twitter:image" content="https://compote.slate.com/images/87b79ce6-bb1c-42ca-ab42-9931a6284fe5.jpg?width=1560" />
|
||
<meta name="twitter:card" content="summary_large_image" />
|
||
|
||
<meta property="og:image" content="https://compote.slate.com/images/87b79ce6-bb1c-42ca-ab42-9931a6284fe5.jpg?width=1560" />
|
||
<meta property="og:image:width" content=1560 />
|
||
|
||
<!-- data-uri="slate.com/_components/clay-meta-keywords/instances/cq-article-dad3a0d6e954a69dac85ac509b32ff4a-component-4@published" -->
|
||
<meta name="keywords" content="/content/slate/blogs/future-tense">
|
||
<meta property="article:tag" content="/content/slate/blogs/future-tense">
|
||
|
||
<!-- data-uri="slate.com/_components/meta-authors/instances/cq-article-dad3a0d6e954a69dac85ac509b32ff4a-component-5@published" -->
|
||
<meta name="author" content="Will Oremus">
|
||
|
||
<!-- data-uri="slate.com/_components/krux-data-layer/instances/cq-article-dad3a0d6e954a69dac85ac509b32ff4a-component-8@published" -->
|
||
|
||
<script data-uri="slate.com/_components/permutive/instances/ck5fl1mnu1yndzvm5g1sgudv2@published" class="permutive"
|
||
data-permutive-project-id=16d3bd5c-bf92-4bf0-815a-eac397d3aadf
|
||
>
|
||
|
||
!function(n,e,o,r,i){if(!e){e=e||{},window.permutive=e,e.q=[],e.config=i||{},e.config.projectId=o,e.config.apiKey=r,e.config.environment=e.config.environment||"production";for(var t=["addon","identify","track","trigger","query","segment","segments","ready","on","once","user","consent"],c=0;c<t.length;c++){var f=t[c];e[f]=function(n){return function(){var o=Array.prototype.slice.call(arguments,0);e.q.push({functionName:n,arguments:o})}}(f)}}}(document,window.permutive, "16d3bd5c-bf92-4bf0-815a-eac397d3aadf","dd4993d6-d26a-48b5-bf2d-05b09fb85de3",{consentRequired: true});
|
||
window.googletag=window.googletag||{},window.googletag.cmd=window.googletag.cmd||[],window.googletag.cmd.push(function(){var t=googletag.getConfig("targeting").targeting,p=(t&&t["permutive"])||[];if(0===p.length){var g=window.localStorage.getItem("_pdfps");googletag.setConfig({targeting:{permutive:g?JSON.parse(g):[]}})}});
|
||
|
||
window.slatePermutiveData = {"page":{"article":{"pageType":"article","id":"cq-article-dad3a0d6e954a69dac85ac509b32ff4a","title":"The Global Internet Is Being Attacked by Sharks, Google Confirms","authors":["Will Oremus"],"section":"Technology","rubric":"Future Tense","keywords":["/content/slate/blogs/future-tense"],"gsChannels":[],"publishedTime":"2014-08-15T19:23:28+00:00","sentiment":"negative","categories":["/technology & computing/computing/internet/it and internet support","/technology & computing/computing/computer networking","/technology & computing/computing/information and network security"],"entities":["Google - positive","Global Internet - neutral","Reports of sharks - negative","Brandon Butler - positive","Dependable network infrastructure - positive","Network World - positive","Urs Holzle - positive","Japan - positive","Sharks - negative","product manager - positive","Holzle - positive","United States - positive","New York Times - negative","Cal State-Long Beach - neutral","undersea - negative","Europe - negative","Internet - negative","SingTel - neutral","China Mobile - neutral","UN Environmental Program - negative","Wired - neutral","Forget Google - neutral","Barracuda - negative","conductor - neutral","Amazon - neutral","Apple - neutral","Facebook - neutral","Slate - neutral","Google’s Massive Data Centers - positive","Burma - negative"],"concepts":["Google","Coaxial cable","Optical fiber","Power cable","MySpace","Wire","United States","Broadband Internet access"]}}};
|
||
|
||
</script>
|
||
<script type="application/json" class="js-watson-categories">["/technology & computing/computing/internet/it and internet support","/technology & computing/computing/computer networking","/technology & computing/computing/information and network security"]</script>
|
||
|
||
<!-- data-uri="slate.com/_components/preload-image/instances/cq-article-dad3a0d6e954a69dac85ac509b32ff4a@published" -->
|
||
<link
|
||
rel="preload"
|
||
as="image"
|
||
imagesrcset="https://compote.slate.com/images/87b79ce6-bb1c-42ca-ab42-9931a6284fe5.jpg?width=320 320w,
|
||
https://compote.slate.com/images/87b79ce6-bb1c-42ca-ab42-9931a6284fe5.jpg?width=480 480w,
|
||
https://compote.slate.com/images/87b79ce6-bb1c-42ca-ab42-9931a6284fe5.jpg?width=600 600w,
|
||
https://compote.slate.com/images/87b79ce6-bb1c-42ca-ab42-9931a6284fe5.jpg?width=840 840w,
|
||
https://compote.slate.com/images/87b79ce6-bb1c-42ca-ab42-9931a6284fe5.jpg?width=960 960w,
|
||
https://compote.slate.com/images/87b79ce6-bb1c-42ca-ab42-9931a6284fe5.jpg?width=1280 1280w,
|
||
https://compote.slate.com/images/87b79ce6-bb1c-42ca-ab42-9931a6284fe5.jpg?width=1440 1440w,
|
||
https://compote.slate.com/images/87b79ce6-bb1c-42ca-ab42-9931a6284fe5.jpg?width=1600 1600w,
|
||
https://compote.slate.com/images/87b79ce6-bb1c-42ca-ab42-9931a6284fe5.jpg?width=1920 1920w,
|
||
https://compote.slate.com/images/87b79ce6-bb1c-42ca-ab42-9931a6284fe5.jpg?width=2200 2200w"
|
||
imagesizes="(min-width: 1440px)970px,
|
||
(min-width: 1024px)709px,
|
||
(min-width: 768px)620px,
|
||
calc(100vw - 30px)"
|
||
href=""
|
||
/>
|
||
<!-- data-editable-end -->
|
||
<!-- data-uri="slate.com/_components/clay-meta-site/instances/article@published" -->
|
||
<meta name="twitter:site" content="@slate" />
|
||
<meta
|
||
property="article:publisher"
|
||
content="https://www.facebook.com/Slate"
|
||
/>
|
||
<meta property="fb:app_id" content="142011022527753" />
|
||
<meta property="og:site_name" content="Slate Magazine" />
|
||
<meta property="og:type" content="article" />
|
||
|
||
<link rel="manifest" href="/media/sites/slate-com/web-app-manifest.json" />
|
||
|
||
<meta
|
||
name="theme-color"
|
||
content="#f8f8f8"
|
||
media="(prefers-color-scheme: light)"
|
||
/>
|
||
<meta
|
||
name="theme-color"
|
||
content="#000000"
|
||
media="(prefers-color-scheme: dark)"
|
||
/>
|
||
|
||
<!-- data-uri="slate.com/_components/meta-icons/instances/slate@published" -->
|
||
<link rel="icon" href="/favicon.ico">
|
||
<link rel="icon" href="/media/components/meta-icons/favicon.svg" type="image/svg+xml">
|
||
<link rel="apple-touch-icon" sizes="180x180" href="/media/sites/slate-com/icon.180x180.png">
|
||
|
||
<script data-uri="slate.com/_components/polyfills/instances/singleton@published">(function(){
|
||
var p='/media/components/polyfills/'
|
||
function n(f){return p+f+'.min.js'}
|
||
function i(f){slateGlobal.injectScriptSync(n(f))}if(typeof CSS === 'undefined' || typeof CSS.supports === 'undefined' || !CSS.supports('object-fit', 'cover'))i("object-fit-images")
|
||
if(!HTMLElement.prototype.closest)i('element-closest-polyfill')
|
||
if(!window.Promise||!window.URL||!window.URLSearchParams||!window.Map||!Array.from)i('core-js-bundle')
|
||
if(!window.fetch)i('whatwg-fetch')
|
||
if(/Trident|MSIE/.test(navigator.userAgent))slateGlobal.injectScript(n('svg4everybody'),function(){svg4everybody()})
|
||
if(!window.IntersectionObserver)i('intersection-observer')}())</script>
|
||
<script data-theme-font="" data-uri="slate.com/_components/fontfaceobserver/instances/fontfaceobserver@published">
|
||
/* Font Face Observer v2.1.0 - © Bram Stein. License: BSD-3-Clause */(function(){function l(a,b){document.addEventListener?a.addEventListener("scroll",b,!1):a.attachEvent("scroll",b)}function m(a){document.body?a():document.addEventListener?document.addEventListener("DOMContentLoaded",function c(){document.removeEventListener("DOMContentLoaded",c);a()}):document.attachEvent("onreadystatechange",function k(){if("interactive"==document.readyState||"complete"==document.readyState)document.detachEvent("onreadystatechange",k),a()})};function t(a){this.a=document.createElement("div");this.a.setAttribute("aria-hidden","true");this.a.appendChild(document.createTextNode(a));this.b=document.createElement("span");this.c=document.createElement("span");this.h=document.createElement("span");this.f=document.createElement("span");this.g=-1;this.b.style.cssText="max-width:none;display:inline-block;position:absolute;height:100%;width:100%;overflow:scroll;font-size:16px;";this.c.style.cssText="max-width:none;display:inline-block;position:absolute;height:100%;width:100%;overflow:scroll;font-size:16px;";
|
||
this.f.style.cssText="max-width:none;display:inline-block;position:absolute;height:100%;width:100%;overflow:scroll;font-size:16px;";this.h.style.cssText="display:inline-block;width:200%;height:200%;font-size:16px;max-width:none;";this.b.appendChild(this.h);this.c.appendChild(this.f);this.a.appendChild(this.b);this.a.appendChild(this.c)}
|
||
function u(a,b){a.a.style.cssText="max-width:none;min-width:20px;min-height:20px;display:inline-block;overflow:hidden;position:absolute;width:auto;margin:0;padding:0;top:-999px;white-space:nowrap;font-synthesis:none;font:"+b+";"}function z(a){var b=a.a.offsetWidth,c=b+100;a.f.style.width=c+"px";a.c.scrollLeft=c;a.b.scrollLeft=a.b.scrollWidth+100;return a.g!==b?(a.g=b,!0):!1}function A(a,b){function c(){var a=k;z(a)&&a.a.parentNode&&b(a.g)}var k=a;l(a.b,c);l(a.c,c);z(a)};function B(a,b){var c=b||{};this.family=a;this.style=c.style||"normal";this.weight=c.weight||"normal";this.stretch=c.stretch||"normal"}var C=null,D=null,E=null,F=null;function G(){if(null===D)if(J()&&/Apple/.test(window.navigator.vendor)){var a=/AppleWebKit\/([0-9]+)(?:\.([0-9]+))(?:\.([0-9]+))/.exec(window.navigator.userAgent);D=!!a&&603>parseInt(a[1],10)}else D=!1;return D}function J(){null===F&&(F=!!document.fonts);return F}
|
||
function K(){if(null===E){var a=document.createElement("div");try{a.style.font="condensed 100px sans-serif"}catch(b){}E=""!==a.style.font}return E}function L(a,b){return[a.style,a.weight,K()?a.stretch:"","100px",b].join(" ")}
|
||
B.prototype.load=function(a,b){var c=this,k=a||"BESbswy",r=0,n=b||3E3,H=(new Date).getTime();return new Promise(function(a,b){if(J()&&!G()){var M=new Promise(function(a,b){function e(){(new Date).getTime()-H>=n?b(Error(""+n+"ms timeout exceeded")):document.fonts.load(L(c,'"'+c.family+'"'),k).then(function(c){1<=c.length?a():setTimeout(e,25)},b)}e()}),N=new Promise(function(a,c){r=setTimeout(function(){c(Error(""+n+"ms timeout exceeded"))},n)});Promise.race([N,M]).then(function(){clearTimeout(r);a(c)},
|
||
b)}else m(function(){function v(){var b;if(b=-1!=f&&-1!=g||-1!=f&&-1!=h||-1!=g&&-1!=h)(b=f!=g&&f!=h&&g!=h)||(null===C&&(b=/AppleWebKit\/([0-9]+)(?:\.([0-9]+))/.exec(window.navigator.userAgent),C=!!b&&(536>parseInt(b[1],10)||536===parseInt(b[1],10)&&11>=parseInt(b[2],10))),b=C&&(f==w&&g==w&&h==w||f==x&&g==x&&h==x||f==y&&g==y&&h==y)),b=!b;b&&(d.parentNode&&d.parentNode.removeChild(d),clearTimeout(r),a(c))}function I(){if((new Date).getTime()-H>=n)d.parentNode&&d.parentNode.removeChild(d),b(Error(""+
|
||
n+"ms timeout exceeded"));else{var a=document.hidden;if(!0===a||void 0===a)f=e.a.offsetWidth,g=p.a.offsetWidth,h=q.a.offsetWidth,v();r=setTimeout(I,50)}}var e=new t(k),p=new t(k),q=new t(k),f=-1,g=-1,h=-1,w=-1,x=-1,y=-1,d=document.createElement("div");d.dir="ltr";u(e,L(c,"sans-serif"));u(p,L(c,"serif"));u(q,L(c,"monospace"));d.appendChild(e.a);d.appendChild(p.a);d.appendChild(q.a);document.body.appendChild(d);w=e.a.offsetWidth;x=p.a.offsetWidth;y=q.a.offsetWidth;I();A(e,function(a){f=a;v()});u(e,
|
||
L(c,'"'+c.family+'",sans-serif'));A(p,function(a){g=a;v()});u(p,L(c,'"'+c.family+'",serif'));A(q,function(a){h=a;v()});u(q,L(c,'"'+c.family+'",monospace'))})})};"object"===typeof module?module.exports=B:(window.FontFaceObserver=B,window.FontFaceObserver.prototype.load=B.prototype.load);}());
|
||
|
||
!function(){"use strict";function t(e){try{return Boolean(localStorage.getItem(e))}catch(t){return console.error("Error getting "+e+" in localStorage",t),!1}}function e(t){try{localStorage.setItem(t,!0)}catch(t){console.error("Error accessing localStorage",t)}}var o,n,a=[],l="slate_site_fonts",c=(t(l)||[["Retina"],["Retina",null,"italic"],["Retina","bold"],["Retina","bold","italic"],["Register","bold"],["Register","bold","italic"]].forEach(function(t){a.push(new FontFaceObserver(t[0],{weight:t[1]||"normal",style:t[2]||"normal"}).load())}),document.currentScript.dataset.themeFont);c&&(o=c.toLowerCase().trim(),t(n="slate_theme_font_"+o)||a.push(new FontFaceObserver(c).load())),a.length?Promise.all(a).then(function(){e(l),c&&(e(n),document.documentElement.classList.add("has-theme-font")),document.documentElement.classList.add("fonts-loaded")}):(document.documentElement.classList.add("fonts-loaded"),document.documentElement.classList.toggle("has-theme-font",c))}();
|
||
</script>
|
||
<!-- data-uri="slate.com/_components/onetrust/instances/default@published" -->
|
||
|
||
<script>
|
||
|
||
|
||
|
||
"use strict";window.slateCMP={oneTrust:{},TCF:{},removeTCFStub:function(){delete window.__tcfapi;var e=document.getElementsByName("__tcfapiLocator")[0];e&&e.parentNode.removeChild(e)}},window.slateCMP.oneTrust.ready=new Promise(function(e,n){window.slateCMP.oneTrust.resolve=e,window.slateCMP.oneTrust.reject=n}),window.slateCMP.TCF.ready=new Promise(function(e,n){window.slateCMP.TCF.resolve=e,window.slateCMP.TCF.reject=n}),window.slateCMP.oneTrust.ready.then(function(){"undefined"!=typeof __tcfapi&&__tcfapi("getTCData",2,function(e,n){n?window.slateCMP.TCF.resolve(e):window.slateCMP.TCF.reject(e)})});var COOKIE_CATEGORIES=["C0001","C0002","C0003","C0004","C0005"];window.nonIabVendorApi={vendors:{},checkConsent:function(e){return!!window.OptanonActiveGroups&&this.vendors[e].categories.every(function(e){return-1<window.OptanonActiveGroups.indexOf(e)})},updateVendors:function(){window.OptanonActiveGroups;for(var e in this.vendors)if(n=this.checkConsent(e),this.vendors[e].initCalled)this.vendors[e].updateConsentFunc(n);else{var n=this.vendors[e].initFunc(n);if("boolean"!=typeof n)throw new Error("initFunc should return boolean. Returned "+n+".");this.vendors[e].initCalled=n}},registerVendor:function(e,n){void 0===n&&(n={categories:[],initFunc:function(e){return!1},updateConsentFunc:function(e){}});if(e in this.vendors)throw new Error(e+" already registered");if(!Array.isArray(n.categories))throw new Error("vendorOptions.categories must be an array.");if(!n.categories.length)throw new Error("vendorOptions.categories must not be empty.");for(var t=0;t<n.categories.length;t++)if(!COOKIE_CATEGORIES.includes(n.categories[t]))throw new Error(n.categories[t]+" is not a valid targeting category. Category must be one of "+COOKIE_CATEGORIES+".");if(this.vendors[e]={initCalled:!1,categories:n.categories,initFunc:n.initFunc,updateConsentFunc:n.updateConsentFunc},window.OptanonActiveGroups&&(o=this.checkConsent(e))){var o=this.vendors[e].initFunc(o);if("boolean"!=typeof o)throw new Error("initFunc should return boolean. Returned "+o+".");this.vendors[e].initCalled=o}}};
|
||
|
||
|
||
|
||
window.slateCMP.TCF.resolve({gdprApplies: false});
|
||
|
||
|
||
</script>
|
||
|
||
<script>
|
||
window.dataLayer = window.dataLayer || [];
|
||
function gtag(){dataLayer.push(arguments);}
|
||
|
||
gtag('consent', 'default', {
|
||
'ad_storage': "granted",
|
||
'analytics_storage': "granted",
|
||
'functionality_storage': "granted",
|
||
'personalization_storage': "granted",
|
||
'security_storage': "granted",
|
||
'ad_user_data': "granted",
|
||
'ad_personalization': "granted",
|
||
'wait_for_update': 500
|
||
});
|
||
</script>
|
||
|
||
|
||
<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
|
||
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
|
||
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
|
||
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
|
||
})(window,document,'script','dataLayer','GTM-PR2DTBV');</script>
|
||
|
||
<script
|
||
src="https://cdn.cookielaw.org/scripttemplates/otSDKStub.js"
|
||
data-domain-script="0e1d2de3-ec2a-48ca-8f78-11045575a199"
|
||
data-ignore-ga='true'></script>
|
||
|
||
<script src="https://cdn.cookielaw.org/opt-out/otCCPAiab.js" type="text/javascript" charset="UTF-8" ccpa-opt-out-ids="C0004" ccpa-opt-out-geo="ca" ccpa-opt-out-lspa="true"></script>
|
||
|
||
|
||
<script>
|
||
function OptanonWrapper() {
|
||
try {
|
||
window.slateCMP.oneTrust.resolve();
|
||
window.nonIabVendorApi.updateVendors()
|
||
} catch (e) {
|
||
console.warn('failed to setup onetrust', e)
|
||
}
|
||
}
|
||
</script>
|
||
|
||
|
||
<script data-uri="slate.com/_components/usprivacy-api/instances/default@published" class="usprivacy-api">
|
||
// CCPA
|
||
if(!window.__uspapi){
|
||
window.__uspapi = function(command, version, callback) {
|
||
if (command === 'getUSPData') {
|
||
// assumes `version` is the number `1`
|
||
var uspDataObject = {
|
||
"version": 1,
|
||
"uspString": "1YNY"
|
||
}
|
||
try {
|
||
var cs = document.cookie.split(';')
|
||
for (var i = 0; i < cs.length; i++) {
|
||
var entry = cs[i].split('=');
|
||
if (entry[0].trim() === 'usprivacy') {
|
||
uspDataObject['uspString'] = entry[1].trim();
|
||
break;
|
||
}
|
||
}
|
||
callback(uspDataObject, true);
|
||
} catch(e){
|
||
console.error(e);
|
||
callback(null, false);
|
||
}
|
||
}
|
||
}
|
||
}
|
||
|
||
function __handleUspapiMessage(event) {
|
||
var data = event && event.data && event.data.__uspapiCall;
|
||
if (data) {
|
||
window.__uspapi(data.command, data.version, function(returnValue, success){
|
||
event.source.postMessage({
|
||
__uspapiReturn: {
|
||
returnValue: returnValue,
|
||
success: success,
|
||
callId: data.callId
|
||
}
|
||
});
|
||
});
|
||
}
|
||
}
|
||
|
||
window.addEventListener("message", __handleUspapiMessage, false);
|
||
|
||
</script>
|
||
|
||
<script data-uri="slate.com/_components/analytics-js-loader/instances/general@published" class="analytics-js-loader"
|
||
|
||
data-amplitude-api-key="5a7cb616c0717cb7f4f0eee43d9f4e1c"
|
||
data-amplitude-log-level="Error"
|
||
data-amplitude-domain=".slate.com"
|
||
data-amplitude-replay-sample-rate="0.001"
|
||
data-parsely-script-src="https://fpa-cdn.slate.com/keys/slate.com/p.js"
|
||
data-sailthru-customer-id="2273afef3cc821e7a5150b77eab18b36"
|
||
>
|
||
// we define this ASAP beacuse lots of components call amplitude
|
||
window.slateAmplitudeQueue = {
|
||
_q: [],
|
||
initCalled: false,
|
||
instance: null,
|
||
push: function(callback) {
|
||
if (this.initCalled) {
|
||
callback(this.instance);
|
||
this.processQueue();
|
||
} else {
|
||
this._q.push(callback);
|
||
}
|
||
},
|
||
processQueue: function() {
|
||
for (var i = 0; i < this._q.length; i++) {
|
||
this._q[i](this.instance);
|
||
}
|
||
this._q = [];
|
||
},
|
||
init: function(instance, consent) {
|
||
this.instance = instance;
|
||
this.instance.setOptOut(!consent);
|
||
if (consent) {
|
||
this.processQueue();
|
||
}
|
||
this.initCalled = true;
|
||
}
|
||
};
|
||
|
||
window.slateParsely = {
|
||
leadCaptureEvents: [],
|
||
trackLeadCapture(event) {
|
||
if (!window.PARSELY || !window.PARSELY.loaded) {
|
||
// Run through the leadCaptureEvents queue in client.js when Parsely loads
|
||
this.leadCaptureEvents.push(event)
|
||
return;
|
||
}
|
||
|
||
window.PARSELY.conversions.trackLeadCapture(event);
|
||
}
|
||
}
|
||
</script>
|
||
|
||
<!-- data-uri="slate.com/_components/slate-ad-prebid/instances/prebid@published" -->
|
||
<script
|
||
defer
|
||
src="https://dot.cdnslate.com/static/media/components/slate-ad-prebid/prebid.min.91ebb88.js"
|
||
></script>
|
||
<script
|
||
data-bidder-timeout="1500"
|
||
>!function(){"use strict";var e;(e=window).pbjs||(e.pbjs={}),(e=window.pbjs).que||(e.que=[]),window.slateCMP.TCF.ready.then(function(s){var r=document.currentScript.dataset;pbjs.que.push(function(){var e={bidderTimeout:Number.parseInt(r.bidderTimeout),debug:new URLSearchParams(window.location.search).has("test_ads"),enableSendAllBids:!1,useBidCache:!0,bidderSequence:"random",enableTIDs:!0,priceGranularity:{buckets:[{min:.1,max:5,increment:.01},{min:5,max:8,increment:.05},{min:8,max:20,increment:.1},{min:20,max:50,increment:.5}]},consentManagement:{usp:{cmpApi:"iab",timeout:1e3}},targetingControls:{alwaysIncludeDeals:!0},realTimeData:{dataProviders:[{name:"permutive",params:{acBidders:["rubicon","pubmatic","yahoossp","openx","ix"],transformations:[{id:"iab",config:{segtax:4,iabIds:{126217:"244",121557:"243",120811:"268",120736:"348",99705:"368",120738:"406",121824:"522",121573:"534",121576:"581",121550:"583",121575:"606",121578:"687",121549:"719",126219:"245",126220:"246",126221:"247",126222:"248",126223:"249",126224:"250",126225:"251",126226:"252",126227:"253",126228:"254",126229:"255",126230:"256",126231:"257",126232:"258",126233:"259",126234:"260",126235:"261",126236:"262",126237:"263",126238:"264",126239:"265",126240:"266",126241:"267",126242:"269",126243:"295",126244:"305",126245:"338",126246:"339",126247:"340",126248:"341",126249:"342",126250:"343",126251:"344",126252:"345",126253:"346",126254:"347",126255:"350",126256:"359",126257:"360",126258:"361",126259:"362",126260:"363",126261:"364",126262:"365",126263:"366",126264:"367",126265:"369",126266:"370",126267:"371",126268:"372",126269:"373",126270:"374",126271:"375",126272:"376",126273:"377",126274:"378",126275:"379",126276:"380",126277:"407",126278:"408",126279:"411",126280:"412",126281:"413",126282:"414",126283:"415",126284:"421",126285:"422",126286:"423",126287:"424",126288:"434",126289:"435",126290:"436",126291:"437",126292:"440",126293:"445",126294:"449",126295:"450",126296:"451",126297:"452",126298:"453",126299:"454",126300:"455",126301:"456",126302:"457",126303:"458",126304:"459",126305:"460",126306:"461",126307:"462",126308:"463",126309:"464",126310:"465",126311:"466",126312:"467",126313:"468",126314:"469",126315:"470",126316:"471",126317:"472",126318:"473",126319:"474",126320:"475",126321:"476",126322:"477",126323:"478",126324:"479",126325:"480",126326:"481",126327:"482",126328:"483",126329:"486",126330:"487",126331:"488",126332:"489",126333:"490",126334:"491",126335:"492",126336:"493",126337:"494",126338:"495",126339:"496",126340:"497",126341:"498",126342:"499",126343:"500",126344:"501",126345:"502",126346:"503",126347:"504",126348:"510",126349:"511",126350:"512",126351:"513",126352:"519",126353:"520",126354:"521",126355:"523",126356:"524",126357:"525",126358:"526",126359:"527",126360:"528",126361:"529",126362:"533",126363:"535",126364:"536",126365:"537",126366:"538",126367:"539",126368:"540",126369:"541",126370:"542",126371:"543",126372:"544",126373:"545",126374:"547",126375:"548",126376:"549",126377:"582",126378:"584",126379:"585",126380:"586",126381:"587",126382:"588",126383:"589",126384:"590",126385:"591",126386:"592",126387:"593",126388:"594",126389:"607",126390:"608",126391:"609",126392:"610",126393:"612",126394:"613",126395:"614",126396:"615",126397:"616",126398:"617",126399:"618",126400:"619",126401:"620",126402:"624",126403:"625",126404:"626",126405:"627",126406:"628",126407:"629",126408:"631",126409:"640",126410:"641",126411:"642",126412:"643",126413:"644",126414:"645",126415:"646",126416:"647",126417:"648",126418:"649",126419:"650",126420:"651",126421:"654",126422:"655",126423:"656",126424:"657",126425:"660",126426:"661",126427:"662",126428:"663",126429:"664",126430:"665",126431:"666",126432:"667",126433:"668",126434:"669",126435:"670",126436:"671",126437:"672",126438:"673",126439:"674",126440:"675",126441:"676",126442:"677",126443:"678",126444:"679",126445:"680",126446:"681",126447:"682",126448:"683",126449:"684",126450:"685",126451:"686",126452:"688",126453:"689",126454:"690",126455:"703",126456:"704",126457:"705",126458:"706",126459:"707",126460:"708",126461:"709",126462:"710",126463:"711",126464:"712",126465:"713",126466:"714",126467:"715",126468:"716",126469:"717",126470:"718",126471:"720",126472:"721",126473:"722",126474:"723",126475:"724",126476:"725",126477:"726",126478:"727",126479:"728",126480:"729",126481:"730",126482:"731",126483:"732",126484:"733",126485:"734",126486:"735",126487:"736",126488:"737",126489:"738"}}}]}}]}},e=(!s.gdprApplies&&void 0!==s.gdprApplies||(e.consentManagement.gdpr={cmpApi:"iab",timeout:5e3,defaultGdprScope:!0,allowAuctionWithoutConsent:!1,rules:[{purpose:"storage",enforcePurpose:!0,enforceVendor:!0,vendorExceptions:["permutive"]}]},e.userSync.syncEnabled=!1),pbjs.setConfig(e),{userIds:[{name:"identityLink",params:{pid:"13468"},storage:{type:"cookie",name:"idl_env",expires:1,refreshInSeconds:1800}},{name:"pairId",params:{liveramp:{}}},{name:"sharedId",storage:{type:"cookie",name:"_sharedid",expires:365}}],filterSettings:{all:{bidders:"*",filter:"include"}},syncsPerBidder:1,syncDelay:5e3});try{var a,i,n=document.cookie.match(/__utp=(.+?);/);n&&(a=n[1],(i=JSON.parse(atob(a.split(".")[1]))).email)&&e.userIds.push({name:"uid2",params:{uid2ApiBase:"https://global.prod.uidapi.com",serverPublicKey:"UID2-X-P-MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEEmUT2OCRDTzv0jKJfm0X1Rj8xj2ThUS5qASgzLlapvJDQgS/TTUZhJtlrILahgftJ7YztZQ/OCgh7Ub/U/09JA==",subscriptionId:"7eVWWU1wGV",email:i.email}})}catch(e){console.error(e)}pbjs.setConfig({userSync:e}),pbjs.enableAnalytics([{provider:"atsAnalytics",options:{pid:"13468"}}]),pbjs.bidderSettings={standard:{storageAllowed:!0}}})})}();</script>
|
||
<!-- data-uri="slate.com/_components/slate-ad-gpt/instances/default@published" -->
|
||
<script
|
||
async
|
||
src="https://securepubads.g.doubleclick.net/tag/js/gpt.js"
|
||
></script>
|
||
|
||
<script>
|
||
window.googletag = window.googletag || {};
|
||
window.googletag.cmd = window.googletag.cmd || [];
|
||
</script>
|
||
|
||
|
||
<!-- data-uri="slate.com/_components/slate-krux/instances/krux@published" -->
|
||
|
||
<!-- data-uri="slate.com/_components/ad-lightning/instances/default@published" -->
|
||
|
||
<!-- data-uri="slate.com/_components/dfp-cache-buster/instances/default@published" -->
|
||
|
||
<meta name="dfp-cache-buster" content=332f05a8f38a866492f41cfe84404895c46f2ee1>
|
||
|
||
<!-- data-uri="slate.com/_components/slate-ad-aps/instances/default@published" -->
|
||
<script id="amazon-aps" data-bidder-timeout="1500" async src="https://c.amazon-adsystem.com/aax2/apstag.js"></script>
|
||
<script>
|
||
!function(a9,a,p,s,t,A,g){if(a[a9])return;function q(c,r){a[a9]._Q.push([c,r])}a[a9]={init:function(){q("i",arguments)},fetchBids:function(){q("f",arguments)},setDisplayBids:function(){},targetingKeys:function(){return[]},dpa:function(){q("di",arguments)},rpa:function(){q("ri",arguments)},upa:function(){q("ui",arguments)},_Q:[]};}("apstag",window);
|
||
</script>
|
||
<!-- data-uri="slate.com/_components/pubplus/instances/default@published" -->
|
||
|
||
<script class="taboola-head" data-uri="slate.com/_components/taboola-head/instances/article@published" data-type="article"></script>
|
||
|
||
<!-- data-uri="slate.com/_components/outbrain-widget/instances/tracking@published" -->
|
||
|
||
<style>/* file to fool amphora into not inlining our fonts! */
|
||
.tp-modal-open.tp-modal-open{overflow:initial!important}.tp-backdrop{--bg-color:#6b4d64;--bg-color-hsl:314deg,16.3043478261%,36.0784313725%;background-color:hsla(var(--bg-color-hsl),.2)!important}:where(.theme-dark) .tp-backdrop{--bg-color:#ab99a7;--bg-color-hsl:313.3333333333deg,9.6774193548%,63.5294117647%}@media(prefers-color-scheme:dark){:where(.theme-auto) .tp-backdrop{--bg-color:#ab99a7;--bg-color-hsl:313.3333333333deg,9.6774193548%,63.5294117647%}}.tp-close:is(.tp-close):is(.tp-close):is(.tp-close){background:none;border-radius:0;box-shadow:none!important;height:40px;opacity:.6;padding:10px;right:2px;top:2px;transition:opacity .12s ease;width:40px}.tp-close:is(.tp-close):is(.tp-close):is(.tp-close):enabled:hover,.tp-close:is(.tp-close):is(.tp-close):is(.tp-close):focus-visible{box-shadow:none;opacity:1}.tp-close:is(.tp-close):is(.tp-close):is(.tp-close):focus-visible{border:none;outline:3px dotted var(--theme-color,#ff0e50);outline-offset:1px}.tp-close:is(.tp-close):is(.tp-close):is(.tp-close):before{background:no-repeat url(/media/sites/slate-com/global-sprite.svg);background-size:20px 20px;content:"";display:block;height:100%;width:100%}:where(.theme-dark) .tp-close:is(.tp-close):is(.tp-close):is(.tp-close):before{filter:invert()}@media(prefers-color-scheme:dark){:where(.theme-auto) .tp-close:is(.tp-close):is(.tp-close):is(.tp-close):before{filter:invert()}}iframe[src*="offerType=upgradeOffer"]+button.tp-close{display:none}.tp-iframe-wrapper:is(.tp-iframe-wrapper){background:#fff;border:1px solid #eae6e9!important;border-radius:3px;box-shadow:0 4px 10px rgba(0,0,10,.15);color:var(--txt-color);font-size:1rem;height:auto!important;margin:0;max-width:min(72rem,100vw - 30px);max-width:min(40rem,100vw - 30px);translate:calc(50vw - 50%) var(--dialog-top,max(2.1em,calc(50vh - 50%)));width:auto!important}@keyframes dialog-open{0%{opacity:0}to{opacity:1}}.tp-iframe-wrapper:is(.tp-iframe-wrapper)[open]{animation:dialog-open .24s .12s both}.tp-iframe-wrapper:is(.tp-iframe-wrapper)[open]::backdrop{animation:dialog-open .12s both}:where(.theme-dark) .tp-iframe-wrapper:is(.tp-iframe-wrapper){background:#1a0014;border-color:#56334e!important}@media(prefers-color-scheme:dark){:where(.theme-auto) .tp-iframe-wrapper:is(.tp-iframe-wrapper){background:#1a0014;border-color:#56334e!important}}.tp-container-inner{height:auto!important;width:auto!important}#tp-recaptcha .grecaptcha-badge.grecaptcha-badge{visibility:hidden!important}:root.adblock-modal-open{bottom:0;left:0;overflow:hidden;position:fixed;right:0;top:0;translate:0 calc(var(--adblock-scroll-top)*-1px);width:100%}.slate-modal.blocker-intercept__standard{max-width:min(40rem,100vw - 30px);padding:2em}.blocker-intercept__heading{font-family:Georgia,Times,serif;font-size:1.912688269rem;font-weight:700;margin-bottom:1rem}.fonts-loaded .blocker-intercept__heading{font-family:Register,Georgia,Times,serif}.blocker-intercept__subscribe-link{margin-left:1em}.blocker-intercept__sign-in{color:var(--txt-color,#444);display:block;font-size:.8232026157rem;margin-bottom:0;margin-top:1rem}:where(.theme-dark) .blocker-intercept__sign-in{color:#ddd}@media(prefers-color-scheme:dark){:where(.theme-auto) .blocker-intercept__sign-in{color:#ddd}}.blocker-intercept .slate-button{--button-color:#e60d48;--button-color-hsl:343.6866359447deg,89.3004115226%,47.6470588235%}.blocker-intercept .slate-button:focus{outline:none}.article{--theme-color:var(--theme-color-light);--theme-color-rgb:var(--theme-color-light-rgb)}@supports(display:grid){.article{margin:0 0 1.8rem;--article-display:block}@media(min-width:768px){.article{display:grid;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);width:100vw;--article-display:grid;grid-column-gap:15px;grid-template-columns:1fr 620px 1fr}}@media(min-width:1024px){.article{grid-column-gap:20px;grid-template-columns:1fr 125.7142857143px 708.5714285714px 125.7142857143px 1fr}}@media(min-width:1440px){.article{grid-template-columns:1fr 240px 780px 240px 1fr}}.article:before{content:"";grid-column:1}.article:after{content:"";grid-column-end:4}@media(min-width:1024px){.article:after{grid-column-end:6}}@media print{.article{display:block;margin:0 auto;max-width:40em}}}@media screen and (-ms-high-contrast:active),screen and (-ms-high-contrast:none){.article{margin:auto;max-width:1000px}}@media screen and (-ms-high-contrast:active)and (min-width:1440px),screen and (-ms-high-contrast:none)and (min-width:1440px){.article{max-width:1300px}}:where(.theme-dark) .article{--theme-color:var(--theme-color-dark,var(--theme-color-light));--theme-color-rgb:var(--theme-color-dark-rgb,var(--theme-color-light-rgb))}@media(prefers-color-scheme:dark){:where(.theme-auto) .article{--theme-color:var(--theme-color-dark,var(--theme-color-light));--theme-color-rgb:var(--theme-color-dark-rgb,var(--theme-color-light-rgb))}}@supports(display:grid){@media(min-width:768px){.article__fullbleed-header{grid-column:1/span 3}}@media(min-width:1024px){.article__fullbleed-header{grid-column:1/span 5;grid-row:1}}.article__header{grid-column:2}@media(min-width:1024px){.article__header{grid-column:3;grid-row:2/span 2}}.article__top-image{grid-column:2;grid-row:4}@media(min-width:1024px){.article__top-image{grid-column:3}.article__body,.article__share-sidebar{grid-row:5}}.article__share-sidebar{grid-column:2}.article__podcast-subscribe{grid-column:1/-1;grid-row:1}.article__body{grid-column:2/2}@media(min-width:1024px){.article__body{grid-column:3/3}}.article--right-rail{overflow:initial}@media(min-width:1440px){.article--right-rail{grid-column-gap:0;grid-template-columns:1fr 970px 330px 1fr}}.article--right-rail .article__header{grid-column:2}@media(min-width:1024px)and (max-width:1439px){.article--right-rail .article__header{grid-column:3;grid-row:2/span 2}}@media(min-width:1440px){.article--right-rail .article__header,.article--right-rail .article__top-image{grid-column:2}.article--right-rail .article__body{display:grid;grid-column:2;grid-template-columns:190px 780px}.article--right-rail .article__body .article__content{grid-column:2}.article--right-rail .article__body .article__content .social-share{justify-content:start}.article--right-rail .article__body .article__content .pull-quote--left{margin-left:0}.article--right-rail .article__body .article__content .pull-quote--right{margin-right:0}.article--right-rail .article__body .article__content .pull-quote{width:390px}.article--right-rail .article__body .article__content .in-article-recirc{margin:0 0 20px 20px}.article--right-rail .article__body .article__content .slate-external-video--wide{margin-left:0;width:auto}.article--right-rail .article__body .article__content .image--right{margin-right:0}.article--right-rail .article__body .article__content .image--left{margin-left:0}.article--right-rail .article__body .article__content .image--wide{margin-left:0;margin-right:0;width:100%}}.article--right-rail .article__body .article__tags{grid-column:2;justify-content:center}@media(min-width:1440px){.article--right-rail .article__body .article__tags{justify-content:start}}.article--right-rail .article__left-rail{display:none}@media(min-width:1440px){.article--right-rail .article__left-rail{display:block;grid-column:1}}.article--right-rail .article__right-rail{display:none;grid-column:3;grid-row:5/span 1;margin-left:30px}@media(min-width:1440px){.article--right-rail .article__right-rail{display:block}}.article--right-rail .article__right-rail .slate-ad{position:sticky;top:30px}@media(min-width:1440px){.article--right-rail .article__share-sidebar{display:none}}.article__left-rail .article__share-sidebar-xl{position:sticky;top:1.1em;z-index:6}.article__sticky-alert{bottom:0;bottom:env(safe-area-inset-bottom);left:0;left:env(safe-area-inset-left);pointer-events:none;position:fixed;right:0;right:env(safe-area-inset-right);text-align:center;transition:opacity .12s,transform .12s;z-index:1}.article__sticky-alert:not([hidden])>*{pointer-events:auto}.article__sticky-alert[hidden]{display:block;opacity:0;transform:translateY(200%)}@media(min-width:768px){.article__sticky-alert{grid-column:2}}@media(min-width:1024px){.article__sticky-alert{grid-column:3;grid-row:6}}@media(min-width:1440px){.article__sticky-alert{grid-column:1/span 4;grid-row:6}}}@media(max-width:767px){.article__fullbleed-header{margin:0 calc(50% - 50vw);width:100vw}}.article__header{margin:.7em 0 1.1em}@media(min-width:768px){.article__header{margin-bottom:2.2em}}.article__rubric{color:#444;color:hsla(var(--txt-color-hsl),.85);display:inline-block;font-size:.7230659372rem;letter-spacing:.07em;margin:0 0 .5em;position:relative;text-decoration:none;text-transform:uppercase}@media(min-width:768px){.article__rubric{font-size:.8232026157rem}}.article__rubric:focus,.article__rubric:hover{filter:opacity(.8)}.article__rubric:before{border-color:#a66884;border-color:var(--bracket-color,var(--theme-color,#a66884));border-style:solid none none solid;border-width:4.347826087px;bottom:100%;content:"";display:inline-block;height:10px;position:absolute;right:100%;width:10px}:where(.theme-dark) .article__rubric:before{border-color:var(--bracket-color,var(--theme-color,#c39bad))}@media(prefers-color-scheme:dark){:where(.theme-auto) .article__rubric:before{border-color:var(--bracket-color,var(--theme-color,#c39bad))}}@media(min-width:768px){.article__rubric:before{bottom:calc(100% + .3em);right:calc(100% + .3em)}}.article__rubric>img[width][height]{height:1rem;width:auto}.article--sponsored .article__rubric{display:none}.article__hed{font-family:Georgia,Times,serif;font-size:1.6800234952rem;font-weight:700;line-height:1.1;margin:0 0 .3em}.fonts-loaded .article__hed{font-family:Register,Georgia,Times,serif}.article--surge .article__hed{font-family:Georgia,Times,serif;font-weight:400}.fonts-loaded .article--surge .article__hed{font-family:DMSerifText,Georgia,Times,serif;-webkit-font-smoothing:antialiased}@media(min-width:768px){.article__hed{font-size:2.3234720499rem}}@media(min-width:1024px){.article__hed{font-size:2.6452473706rem}}@media(min-width:1440px){.article__hed{font-size:3.0115850337rem}}@media(min-width:768px){.article--coverstory .article__hed{font-size:3.0115850337rem}}@media(min-width:1024px){.article--coverstory .article__hed{font-size:3.4286564334rem}}@media(min-width:1440px){.article--coverstory .article__hed{font-size:3.9034876343rem}}.article__hed--black-film-canon{font-family:Georgia,Times,serif}.fonts-loaded .article__hed--black-film-canon{font-family:var(--theme-font,Register,Georgia,Times,serif)}.has-theme-font.fonts-loaded :where(.article--Bayard) .article__hed--black-film-canon{font-size:3.6583764145rem;line-height:.7;text-transform:uppercase}.has-theme-font.fonts-loaded :where(.article--Tinyhand) .article__hed--black-film-canon{font-size:1.6800234952rem;line-height:1.35}@media(min-width:768px){.has-theme-font.fonts-loaded :where(.article--Tinyhand) .article__hed--black-film-canon{font-size:1.912688269rem}}@media(min-width:1024px){.has-theme-font.fonts-loaded :where(.article--Tinyhand) .article__hed--black-film-canon{font-size:2.1775745547rem}}@media(min-width:1440px){.has-theme-font.fonts-loaded :where(.article--Tinyhand) .article__hed--black-film-canon{font-size:2.3234720499rem}}@media(min-width:768px){.article__hed--black-film-canon{display:none}}.article__dek{color:#444;color:hsla(var(--txt-color-hsl),.85);font-size:1.067rem;font-weight:400;line-height:1.2;margin:0 0 1em}.article--surge .article__dek{font-family:Georgia,Times,serif;font-weight:400}.fonts-loaded .article--surge .article__dek{font-family:Lora,Georgia,Times,serif}@media(min-width:768px){.article__dek{margin-bottom:1.4em}}@media(min-width:1024px){.article__dek{font-size:1.3829997357rem}}@media(min-width:1440px){.article__dek{font-size:1.475660718rem}}.article__meta{align-items:baseline;display:flex;flex-wrap:wrap;gap:.5em 15px;justify-content:start}.article__byline{align-items:inherit;display:inherit;flex-wrap:inherit;font-size:.8232026157rem;gap:inherit;letter-spacing:.07em;margin-right:auto;text-transform:uppercase}@media(max-width:767px){.article__byline{line-height:1.4}}.article__byline a{color:inherit;text-decoration:none}.article__byline a:focus,.article__byline a:hover{filter:opacity(.8)}@media(min-width:1024px){.article__byline{max-width:65%}}.article__dateline{color:#666;color:hsla(var(--txt-color-hsl),.7);font-size:.8232026157rem;letter-spacing:.07em;text-transform:uppercase}.article__dateline>span:nth-child(2):before{color:#999;color:hsla(var(--txt-color-hsl),.5);content:"•";padding:0 .4em}@media print{.article iframe{display:none}}.article__tags{display:flex;flex-wrap:wrap;font-size:.6776625465rem;gap:1em;justify-content:center;list-style:none;margin:1em 0;padding:0}.article__tags li{position:relative}@media print{.article__tags{display:none}}.article__tag-hidden-icon{align-items:center;background-color:#ccc;border-radius:50%;display:flex;height:1.1rem;justify-content:center;left:-.55rem;line-height:0;position:absolute;top:-.55rem;width:1.1rem}.article__tag{background:rgba(0,0,0,.03);background-color:hsla(var(--txt-color-hsl),.1);border-radius:1px;color:#666;color:hsla(var(--txt-color-hsl),.7);display:block;padding:.6em;text-decoration:none}.article__tag:focus,.article__tag:hover{background-color:rgba(0,0,0,.07);background-color:hsla(var(--txt-color-hsl),.15)}.article__hr{border:none;border-top:2px solid #ccc;border-color:hsla(var(--txt-color-hsl),.2);margin:1.2em 0 0}@media(min-width:768px){.article__hr{margin:2em 0}}.article__gift-banner{align-items:center;background-color:var(--gray-f8-color);border-radius:3px;display:flex;margin-top:1em;padding:.8em}.article__gift-banner-icon{margin-right:1.1em}.article__gift-banner>*{vertical-align:middle}:where(.theme-dark) .article__gift-banner{background-color:var(--gift-banner-bg-dark,#2c0022)}@media(prefers-color-scheme:dark){:where(.theme-auto) .article__gift-banner{background-color:var(--gift-banner-bg-dark,#2c0022)}}@media screen and (-ms-high-contrast:active),screen and (-ms-high-contrast:none){.article__fullbleed-header{margin:0 calc(50% - 50vw);width:100vw}}.live-update__alert{align-items:center;background:#2c0022;box-shadow:0 4px 10px rgba(0,0,10,.5);color:#fff;display:inline-flex;gap:1em;margin-bottom:1em;padding:.7em 1em}:where(.theme-dark) .live-update__alert{background:#56334e}@media(prefers-color-scheme:dark){:where(.theme-auto) .live-update__alert{background:#56334e}}@media(max-width:767px){.live-update__alert{flex-direction:column}}.live-update__btn{--button-color:#cc0b40;--button-color-hsl:343.5233160622deg,89.7674418605%,42.1568627451%}.live-update__el{border-radius:2px;transition:background-color 1.2s}.live-update__el--new{background-color:#f0f0f0;background-color:hsla(var(--txt-color-hsl),.07);box-shadow:0 0 5px hsla(var(--txt-color-hsl),.07) l}.slate-paragraph{position:relative}.article--surge .slate-paragraph{font-family:Georgia,Times,serif;font-weight:400}.fonts-loaded .article--surge .slate-paragraph{font-family:Lora,Georgia,Times,serif}.slate-paragraph--drop-cap:first-letter{color:#a66884;color:var(--theme-color,#a66884);float:left;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:5.3rem;font-weight:700;line-height:.5;margin:.8rem .3rem 0 -.3rem}.fonts-loaded .slate-paragraph--drop-cap:first-letter{font-family:Retina,Helvetica Neue,Helvetica,Arial,sans-serif}@media(min-width:768px){.slate-paragraph--drop-cap:first-letter{margin-top:1.1rem}}@-moz-document url-prefix(){.slate-paragraph--drop-cap:first-letter{margin-top:.07em}}.slate-paragraph__drop-cap{float:left;margin-right:.4em;width:6em}.slate-paragraph__first-word{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border-width:0;white-space:nowrap}.slate-paragraph--tombstone{display:inline-block}.slate-paragraph--tombstone:after{border-color:#a66884;border-color:var(--bracket-color,var(--theme-color,#a66884));border-style:none solid solid none;border-width:6.0869565217px;content:"";display:inline-block;height:14px;margin-left:.2em;width:14px}:where(.theme-dark) .slate-paragraph--tombstone:after{border-color:var(--bracket-color,var(--theme-color,#c39bad))}@media(prefers-color-scheme:dark){:where(.theme-auto) .slate-paragraph--tombstone:after{border-color:var(--bracket-color,var(--theme-color,#c39bad))}}@media(max-width:767px){.slate-paragraph--tombstone:after{border-width:4.347826087px;height:10px;width:10px}}.slate-external-video{clear:both;margin:0 auto 30px;position:relative}.slate-external-video__content{clear:both;padding-bottom:56.25%!important}.slate-external-video__content>embed,.slate-external-video__content>iframe,.slate-external-video__content>object{aspect-ratio:16/9;border:none;height:auto;left:0;position:absolute;top:0;width:100%}@media print{.slate-external-video{display:none}}@media(min-width:1024px){.slate-external-video--wide{margin-left:-145.7142857143px;width:1000px}}@media(min-width:1440px){.slate-external-video--wide{margin-left:-188.5714285714px;width:1300px}}.social-share{display:flex;flex-wrap:wrap;gap:1.5em 2em;justify-content:center;margin:1.2em 0}.social-share--podcast-bottom{justify-content:start}@media print{.social-share{display:none}}.social-share .slate-loading{border-color:currentColor;height:.8em;vertical-align:text-top;width:.8em}.social-share .slate-loading[hidden]{display:none}.social-share__link{border:1px solid #ccc;border-radius:100px;color:#444;color:hsla(var(--txt-color-hsl),.85);display:inline-block;font-size:.7715113549rem;letter-spacing:.07em;padding:.7em 1.1em .5em;text-decoration:none;text-transform:uppercase;width:max-content}.social-share__link:hover{background-color:#f0f0f0}:where(.theme-dark) .social-share__link:hover{background-color:#550328}@media(prefers-color-scheme:dark){:where(.theme-auto) .social-share__link:hover{background-color:#550328}}:where(.theme-dark) .social-share__link{border-color:#6b4d64}@media(prefers-color-scheme:dark){:where(.theme-auto) .social-share__link{border-color:#6b4d64}}.social-share__link--copy-success{background-color:#e4f6d8;border-color:#cbe8b8}:where(.theme-dark) .social-share__link--copy-success{background-color:#142609;border-color:#839975;color:#e4f6d8}@media(prefers-color-scheme:dark){:where(.theme-auto) .social-share__link--copy-success{background-color:#142609;border-color:#839975;color:#e4f6d8}}.social-share__link--copy-success:hover{background-color:#e4f6d8;border-color:#cbe8b8}:where(.theme-dark) .social-share__link--copy-success:hover{background-color:#142609;border-color:#839975;color:#e4f6d8}@media(prefers-color-scheme:dark){:where(.theme-auto) .social-share__link--copy-success:hover{background-color:#142609;border-color:#839975;color:#e4f6d8}}.social-share__btn--gift{all:unset}.social-share__link--gift{position:relative}.social-share__link--gift:disabled{opacity:.5}.social-share--gift{position:relative}.social-share--gift-active .gift-link-box{display:flex}.gift-link-box{--gift-link-box-color:#eae6e9;--translate-x:-0.6em;--translate-y:1em;background-color:var(--gift-link-box-color);border-top-left-radius:3px;display:none;flex-direction:column;padding:1.1em;position:absolute;row-gap:.5em;text-align:center;transform:translate(var(--translate-x),var(--translate-y));width:26rem;z-index:2}@media(max-width:767px){.gift-link-box{width:var(--container-width,26rem)}}:where(.theme-dark) .gift-link-box{--gift-link-box-color:var(--raisin-color);color:#fff}@media(prefers-color-scheme:dark){:where(.theme-auto) .gift-link-box{--gift-link-box-color:var(--raisin-color);color:#fff}}.gift-link-box:before{display:none}@media(min-width:768px){.gift-link-box:before{background:var(--gift-link-box-color);border-radius:3px;content:"";display:initial;height:1em;left:var(--arrow-offset,17px);position:absolute;top:-.4em;transform:rotate(45deg) skew(10deg,10deg);width:1em}}.gift-link-box--above{--translate-y:-0.8em;bottom:100%}.gift-link-box--above:before{bottom:-.4em;top:auto}.gift-link-box--arrow-right{--translate-x:0.6em;right:0}.gift-link-box--arrow-right:before{left:auto;right:var(--arrow-offset,17px)}.gift-link-box__btn{background-color:var(--bg-color);border:1px solid #ccc;border-radius:100px;color:#444;color:hsla(var(--txt-color-hsl),.85);column-gap:.5em;display:inline-block;flex-shrink:0;font-size:.7715113549rem;letter-spacing:.07em;margin:auto;padding:.7em 1.1em .5em;text-decoration:none;text-transform:uppercase;width:max-content}.gift-link-box__btn:hover{background-color:#f0f0f0}:where(.theme-dark) .gift-link-box__btn:hover{background-color:#550328}@media(prefers-color-scheme:dark){:where(.theme-auto) .gift-link-box__btn:hover{background-color:#550328}}:where(.theme-dark) .gift-link-box__btn{border-color:#6b4d64}@media(prefers-color-scheme:dark){:where(.theme-auto) .gift-link-box__btn{border-color:#6b4d64}}.gift-link-box__btn.gift-link-box__btn--copied{background-color:#e4f6d8;border-color:#cbe8b8}:where(.theme-dark) .gift-link-box__btn.gift-link-box__btn--copied{background-color:#142609;border-color:#839975;color:#e4f6d8}@media(prefers-color-scheme:dark){:where(.theme-auto) .gift-link-box__btn.gift-link-box__btn--copied{background-color:#142609;border-color:#839975;color:#e4f6d8}}.gift-link-box__btn.gift-link-box__btn--copied:hover{background-color:#e4f6d8;border-color:#cbe8b8}:where(.theme-dark) .gift-link-box__btn.gift-link-box__btn--copied:hover{background-color:#142609;border-color:#839975;color:#e4f6d8}@media(prefers-color-scheme:dark){:where(.theme-auto) .gift-link-box__btn.gift-link-box__btn--copied:hover{background-color:#142609;border-color:#839975;color:#e4f6d8}}.gift-link-box__copy-group{display:flex}.gift-link-box__icon{height:.8em;margin-right:5px;vertical-align:text-top;width:.8em}.gift-link-box__txt{display:block;line-height:1.5}.gift-link-box__txt-cta{background-color:var(--bg-color);border:1px solid #ccc;border-radius:100px;color:#444;color:hsla(var(--txt-color-hsl),.85);display:inline-block;display:block;font-size:.7715113549rem;font-size:unset;letter-spacing:.07em;letter-spacing:normal;margin:1.1em auto 0;padding:.5em 1.1em;text-decoration:none;text-transform:uppercase;text-transform:none;width:max-content}.gift-link-box__txt-cta:hover{background-color:#f0f0f0}:where(.theme-dark) .gift-link-box__txt-cta:hover{background-color:#550328}@media(prefers-color-scheme:dark){:where(.theme-auto) .gift-link-box__txt-cta:hover{background-color:#550328}}:where(.theme-dark) .gift-link-box__txt-cta{border-color:#6b4d64}@media(prefers-color-scheme:dark){:where(.theme-auto) .gift-link-box__txt-cta{border-color:#6b4d64}}.social-share__icon{margin-right:.5em;vertical-align:top}@media(max-width:767px){.social-share--desktop-only{display:none}}@media(min-width:768px){.social-share--mobile-only{display:none}}.share-sidebar .social-share{flex-direction:column;margin-top:5.5px;position:sticky;top:1.1em;z-index:6}@media(max-width:1023px){.share-sidebar .social-share{display:none}}@media(max-width:1439px){.share-sidebar .social-share{margin-left:-1.1em}}.top-player-share .social-share{gap:1.5em 1em}.top-player-share .social-share__icon{height:1.8em;margin-bottom:-.25em}.tp-modal-close{overflow:unset!important}.image{display:block;margin:0 auto 30px;max-width:100%}@media print{.image{break-inside:avoid-page;page-break-inside:avoid}}.image--edge-to-edge{margin-left:calc(-50vw + 50%);max-width:none;width:100vw}.image--wide{max-width:none;width:100%}@media(min-width:768px),print{.image--wide{width:620px}}@media(min-width:1024px){.image--wide{margin:3rem auto 3rem -145.7142857143px;width:1000px}}@media(min-width:1440px){.image--wide{margin-left:-188.5714285714px;width:1300px}}@media(min-width:768px),print{.image--left{float:left;margin:0 15px 30px 0}}@media(min-width:1024px){.image--left{margin-left:-125.7142857143px;margin-right:20px}}@media(min-width:1440px){.image--left{margin-left:-168.5714285714px}}@media(min-width:768px),print{.image--right{float:right;margin:0 0 30px 15px}}@media(min-width:1024px){.image--right{margin-left:20px;margin-right:-125.7142857143px}}@media(min-width:1440px){.image--right{margin-right:-168.5714285714px}}@media(min-width:768px),print{.image--left,.image--right{width:239px}}@media(min-width:1024px){.image--left,.image--right{width:344.2857142857px}}.image__meta{border-left:2px solid #ddd;border-color:hsla(var(--txt-color-hsl),.15);line-height:1.1;margin-top:.5em;padding-left:.6em}.image__caption{color:#444;color:hsla(var(--txt-color-hsl),.85);font-size:.8232026157rem;margin-bottom:.3em;margin-right:.35em}.image__caption a{border-bottom:1px solid hsla(var(--txt-color-hsl),.7);border-color:var(--theme-color,hsla(var(--txt-color-hsl),.7));color:#666;color:hsla(var(--txt-color-hsl),.7);text-decoration:none}.image__caption a:focus,.image__caption a:hover{color:hsla(var(--txt-color-hsl),.7);--theme-color:hsla(var(--txt-color-hsl),0.7);border-color:transparent;color:var(--theme-color,#ff0e50)}.image__credit{color:#767676;color:hsla(var(--txt-color-hsl),.6);font-size:.7230659372rem}.image__credit a{border-bottom:1px solid hsla(var(--txt-color-hsl),.5);border-color:var(--theme-color,hsla(var(--txt-color-hsl),.5));color:#999;color:hsla(var(--txt-color-hsl),.5);text-decoration:none}.image__credit a:focus,.image__credit a:hover{color:hsla(var(--txt-color-hsl),.5);--theme-color:hsla(var(--txt-color-hsl),0.5);border-color:transparent;color:var(--theme-color,#ff0e50)}.article-hotseats .image--wide{margin-left:0;margin-right:0}@media(min-width:1024px){.article-hotseats .image--wide{width:1000px}}@media(min-width:1440px){.article-hotseats .image--wide{width:1300px}}.slate-ad{box-sizing:content-box;contain:layout;margin:0 0 1.2em;position:relative;text-align:center;z-index:0}@media(min-width:728px){.slate-ad{border-bottom:1px solid #ddd;border-color:hsla(var(--txt-color-hsl),.15);padding:0 0 20px}}.slate-ad .slate-ad__label{margin-bottom:0}@media(min-width:728px){.slate-ad .slate-ad__label{align-items:center;display:flex;gap:10px;margin-bottom:10px}}.slate-ad .slate-ad__label .advertisement{color:#999;color:hsla(var(--txt-color-hsl),.7);content:"Advertisement";font-size:.6776625465rem;letter-spacing:.07em;line-height:20px;text-transform:uppercase}@media(min-width:728px){.slate-ad .slate-ad__label .border{background:hsla(var(--txt-color-hsl),.15);border:none;flex-grow:1;height:1px}}.slate-ad .slate-ad__creative{height:auto!important}.slate-ad.ad--desktopOnly .slate-ad__creative,.slate-ad.ad--desktopXl .slate-ad__creative,.slate-ad.ad--mobileOnly .ad__creative,.slate-ad.ad--tabletPortraitOnly .ad__creative{margin:0 calc(-50vw - -50%)}.article--right-rail .slate-ad.ad--desktopXl .slate-ad__creative{margin:0}.slate-ad.ad--box .slate-ad__creative,.slate-ad.ad--leaderboard .slate-ad__creative,.slate-ad.ad--native .slate-ad__creative,.slate-ad.ad--nativeFlex .slate-ad__creative,.slate-ad.ad--podcast .slate-ad__creative,.slate-ad.ad--recircLeft .slate-ad__creative,.slate-ad.ad--recircRight .slate-ad__creative,.slate-ad.ad--rightRail .slate-ad__creative,.slate-ad.ad--sticky-mobile .slate-ad__creative{margin:0 auto}@media(min-width:768px){.slate-ad{margin:25px 0}}.layout-homepage .slate-ad{margin-bottom:0}.slate-ad.ad--native,.slate-ad.ad--podcastTextAd,.slate-ad.ad--rightRail,.slate-ad.ad--sticky-mobile,.top-ad .slate-ad{border:none;margin:0;padding:0}.slate-ad.ad--native .slate-ad__label,.slate-ad.ad--podcastTextAd .slate-ad__label,.slate-ad.ad--rightRail .slate-ad__label,.slate-ad.ad--sticky-mobile .slate-ad__label,.top-ad .slate-ad .slate-ad__label{display:none}.slate-ad.ad--nativeFlex{border:none;margin:0;padding:0}.hp-bottom-shelf__promo-content .slate-ad.ad--nativeFlex{margin-bottom:1.2em}.hp-top-shelf .slate-ad{margin-bottom:1.8em}.slate-ad.ad--sticky-mobile{background-color:#fff;background-color:var(--bg-color);border-top:1px solid #ddd;border-color:hsla(var(--txt-color-hsl),.15);bottom:0;box-shadow:0 0 .2em #ddd;box-shadow:0 0 .2em hsla(var(--txt-color-hsl),.15);left:0;position:fixed;width:100%}@media print{.slate-ad{clear:none;display:none!important}}[data-type=non-standard]{border:none;height:0;margin:0;padding:0}[data-type=non-standard]>div{height:1px!important}[data-type=non-standard]>div:before{display:none}.top-ad{align-items:center;background-color:#f8f8f8;background-color:hsla(var(--txt-color-hsl),.03);display:flex;flex-direction:column;height:250px;justify-content:center;overflow:hidden}@media(max-width:969px){.top-ad{height:100px}}@media print{.top-ad{display:none!important}}.masthead~.top-ad{margin-bottom:1.2rem}.bottom-ad{margin:0 auto;--mw:100%;max-width:var(--mw);padding-left:15px;padding-right:15px}@media(min-width:1024px){.bottom-ad{--mw:1000px}}@media(min-width:1440px){.bottom-ad{--mw:1300px}}@media(min-width:1024px){.bottom-ad{padding-left:0;padding-right:0}}@media print{.bottom-ad{display:none}}.bottom-ad .is-edit-mode.slate-ad{margin-bottom:20px}.top-ad .ad--leaderboard,.top-ad .ad--tabletPortraitOnly{margin-bottom:0}.top-ad .slate-ad__creative{min-height:1px}.hp-top-shelf--coverstory .ad--topShelf{order:3}.ad--topShelf{grid-column:1/span 10}.is-edit-mode.slate-ad{margin-bottom:10px;margin-left:auto;width:100%}.is-edit-mode.ad--leaderboard,.is-edit-mode.ad--mobileOnly,.is-edit-mode.ad--tabletPortraitOnly{margin:auto;max-width:970px;padding:10px;width:100%}.is-edit-mode.ad--leaderboard>div,.is-edit-mode.ad--mobileOnly>div,.is-edit-mode.ad--tabletPortraitOnly>div{margin:auto}.is-edit-mode.ad--bottomOutstream{display:none}@media(max-width:727px){.ad--tabletDesktop,.top-ad{display:none}}.ad--tabletPortraitOnly{display:none}@media(min-width:728px)and (max-width:969px){.ad--tabletPortraitOnly{display:block}}@media(max-width:969px){.ad--desktopOnly{display:none}.is-edit-mode.ad--leaderboard,.is-edit-mode.ad--mobileOnly{padding:0 20px;width:100%}}@media(min-width:728px){.ad--mobileOnly{display:none}}@media(max-width:1023px){.ad--rightRail{display:none}}.ad--rightRail+.ad--rightRail{margin-top:500px}.ad--inArticleBanner{clear:both}@media(min-width:728px){.ad--inArticleBanner .slate-ad__creative div[id^=google_ads_iframe]{min-width:620px}}.ad--box{border:none;float:right;margin:15px 0 15px 20px;padding:0;position:relative;width:300px;z-index:1}.ad--nativeFlex{display:none}@media(max-width:767px){.ad--nativeFlex{display:block}}@media(min-width:1024px){.ad--nativeFlex{display:block}}@media(max-width:767px){.ad--native+.ad--native{display:none}}@media(min-width:1024px){.ad--native+.ad--native{display:none}}.ad--box .slate-ad__creative,.ad--desktopOnly.ad--inArticleBanner .slate-ad__creative,.ad--desktopXl .slate-ad__creative,.ad--mobileOnly.ad--inArticleBanner .slate-ad__creative,.ad--podcast .slate-ad__creative,.ad--tabletPortraitOnly.ad--inArticleBanner .slate-ad__creative,.bottom-ad .ad--desktopOnly .slate-ad__creative,.bottom-ad .ad--mobileOnly .slate-ad__creative,.layout-homepage .ad--desktopOnly .slate-ad__creative,.layout-homepage .ad--mobileOnly .slate-ad__creative,.layout-homepage .ad--nativeFlex .slate-ad__creative,.layout-teaser-list .ad--mobileOnly .slate-ad__creative{min-height:250px}.bottom-ad .ad--tabletPortraitOnly .slate-ad__creative,.layout-homepage .ad--tabletPortraitOnly .slate-ad__creative{min-height:90px}.bottom-ad .ad--sticky-mobile .slate-ad__creative{max-height:50px;min-height:auto}@media(min-width:970px){.ad--desktopOnly.ad--inArticleBanner .slate-ad__creative,.ad--desktopXl .slate-ad__creative,.bottom-ad .ad--desktopOnly .slate-ad__creative,.layout-homepage .ad--desktopOnly .slate-ad__creative{align-items:center;display:flex;justify-content:center}}@media(min-width:728px)and (max-width:969px){.ad--tabletPortraitOnly.ad--inArticleBanner .slate-ad__creative{align-items:center;display:flex;justify-content:center}}.ad--podcast{margin:0 auto 50px}.ad--podcastTextAd{border:none;margin:0;padding:0;text-align:left}.ad--podcastTextAd>div{height:1px!important;margin:0;width:1px}@media(min-width:1440px){.ad--box{display:none!important}.ad--desktopOnly.ad--inArticleBanner,.ad--tabletDesktop{display:none}}@media(max-width:1439px){.ad--desktopXl{display:none}}.layout-two-column__right-rail .ad--rightRail{position:sticky;top:30px}.ad--sticky-desktop{background-color:#fff;background-color:var(--bg-color);box-shadow:0 0 .2em #ddd,0 0 0 1px #ddd;box-shadow:0 0 .2em hsla(var(--txt-color-hsl),.15),0 0 0 1px hsla(var(--txt-color-hsl),.15);height:auto;min-height:250px;padding:0;position:sticky;top:0;z-index:10000}.ad--sticky-hide{top:-270px;transition:top 1s ease-out}.ad--box,.ad--box .slate-ad__creative{max-width:300px!important;overflow:hidden!important}.article-hotseats .slate-ad{margin-bottom:68px;margin-top:0}.ad--sticky-mobile-index{z-index:5}.ad--exco{position:relative;z-index:1}.ad--hideForPaywall{display:none}@media print{.slate-adnode{display:none}}@media print{.slate-analytics-js{display:none}}.masthead{background:#fff;background:var(--bg-color);display:block}.masthead button,.masthead input{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:1em;font-weight:400}.fonts-loaded .masthead button,.fonts-loaded .masthead input{font-family:Retina,Helvetica Neue,Helvetica,Arial,sans-serif}.masthead__wrapper{padding:0 15px}.masthead__container{margin:0 auto;--mw:100%;max-width:var(--mw)}@media(min-width:1024px){.masthead__container{--mw:1000px}}@media(min-width:1440px){.masthead__container{--mw:1300px}}@supports(display:grid){.masthead__wrapper-games{margin:0 0 1.8rem;--article-display:block}@media(min-width:768px){.masthead__wrapper-games{display:grid;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);width:100vw;--article-display:grid;grid-column-gap:15px;grid-template-columns:1fr 620px 1fr}}@media(min-width:1024px){.masthead__wrapper-games{grid-column-gap:20px;grid-template-columns:1fr 125.7142857143px 708.5714285714px 125.7142857143px 1fr}}@media(min-width:1440px){.masthead__wrapper-games{grid-template-columns:1fr 240px 780px 240px 1fr}}.masthead__wrapper-games:before{content:"";grid-column:1}.masthead__wrapper-games:after{content:"";grid-column-end:4}@media(min-width:1024px){.masthead__wrapper-games:after{grid-column-end:6}}@media print{.masthead__wrapper-games{display:block;margin:0 auto;max-width:40em}}}@media screen and (-ms-high-contrast:active),screen and (-ms-high-contrast:none){.masthead__wrapper-games{margin:auto;max-width:1000px}}@media screen and (-ms-high-contrast:active)and (min-width:1440px),screen and (-ms-high-contrast:none)and (min-width:1440px){.masthead__wrapper-games{max-width:1300px}}@media(min-width:1440px){.masthead__wrapper-games{grid-template-columns:1fr 1fr 1080px 1fr 1fr}}.masthead__container-games{grid-column:2}@media(min-width:1024px){.masthead__container-games{grid-column:3}}.masthead__login{align-items:center;display:flex;gap:.4em;text-decoration:none}.masthead__login:focus,.masthead__login:hover{filter:opacity(.8)}.masthead--sticky{width:100%;z-index:8}@media(min-width:1024px){.masthead--sticky{position:fixed;top:0}body:has(.masthead--sticky){padding-top:40px}}.widgets{align-items:center;display:flex;font-size:.7715113549rem;gap:20px;height:40px;justify-content:flex-end;list-style:none;padding:0}@media(min-width:1024px)and (max-width:1439px){.widgets{font-size:.8232026157rem}}.masthead__wrapper:has(>.widgets){background:#e9e6ea}:where(.theme-dark) .masthead__wrapper:has(>.widgets){background:#2c0022}@media(prefers-color-scheme:dark){:where(.theme-auto) .masthead__wrapper:has(>.widgets){background:#2c0022}}.widgets__item{align-items:center;color:inherit;color:#222;color:hsla(var(--txt-color-hsl),1);cursor:pointer;display:flex;gap:.4em;height:100%;margin:0;outline-color:transparent;text-decoration:none;transition:color .12s ease,fill .12s ease,border-color .12s ease,outline-color .12s ease,outline-style .12s ease}.widgets__item:focus,.widgets__item:hover{color:#ff0e50;color:var(--theme-color,#ff0e50)}.widgets__item.slate-btn{--btn-hue:343.5684647303deg;--btn-saturation:100%;--btn-lightness:52.7450980392%;align-items:center;border-radius:3px;color:#fff;display:flex;font-size:inherit;padding:.4em .4em .3em}.widgets__icon{fill:#666;fill:hsla(var(--txt-color-hsl),.7);fill:var(--theme-color,#ff0e50);height:1.1em;translate:0 -1px;width:1.1em}.slate-btn .widgets__icon{fill:currentColor}.widgets__dropdown{display:inline-block}.widgets__dropdown>button.dropdown__button{border:none;padding-left:0;padding-right:0}@media print{.widgets{display:none}}@media(max-width:767px){.desktop-masthead{display:none}}.skip-to-main{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);backdrop-filter:blur(.1em);background:hsla(var(--bg-color-hsl),.5);border-width:0;white-space:nowrap}.skip-to-main:focus{height:auto;width:auto;clip:auto}.main-nav{align-items:flex-end;border-bottom:1px solid #ccc;border-color:hsla(var(--txt-color-hsl),.2);box-sizing:content-box;display:flex;height:100px;padding-bottom:1.1em}.main-nav__logo{flex:1 1 200px;line-height:0;margin-right:.5em;max-width:240px;min-width:168px}@media(min-width:1440px){.main-nav__logo{max-width:258px}}.mini-nav{border-bottom:1px solid #ccc;border-color:hsla(var(--txt-color-hsl),.2)}.mini-nav__content{align-items:center;display:flex;font-size:.7715113549rem;font-size:.8232026157rem;justify-content:space-between}@media(min-width:1024px)and (max-width:1439px){.mini-nav__content{font-size:.8232026157rem}}.mini-nav__logo{height:40px;overflow:clip;padding-top:2px}.mini-nav__logo-games{overflow:clip;padding:2px 0}:where(.theme-dark) .mini-nav__logo-games--dark[hidden]{display:block}@media(prefers-color-scheme:dark){:where(.theme-auto) .mini-nav__logo-games--dark[hidden]{display:block}}@media(prefers-color-scheme:light){:where(.theme-auto) .mini-nav__logo-games--light[hidden]{display:block}}:where(.theme-light) .mini-nav__logo-games--light[hidden]{display:block}.mini-nav__logo-games img{max-height:26px;width:auto}.mini-nav__search{flex-grow:1;justify-content:flex-end}.mini-nav__account{line-height:1;margin:0}.masthead .logo{height:auto;max-height:80px;width:100%;fill:#2c0022;translate:0 3.2%}:where(.theme-dark) .masthead .logo{fill:#fff}@media(prefers-color-scheme:dark){:where(.theme-auto) .masthead .logo{fill:#fff}}.masthead .search-form{align-items:baseline;display:flex;position:relative;transition:all .1s}.masthead .search-form:focus-within .search-form__input{border-bottom-color:#ff0e50;cursor:auto;outline:none;transform:translateX(0);width:20vw}.masthead .search-form:focus-within .search-form__input:focus:not(:placeholder-shown){min-width:10em}.masthead .search-form:focus-within .search-form__label{opacity:0}.masthead .search-form:focus-within .search-form__submit{opacity:1;transform:translateX(0);z-index:1}.masthead .search-form__input,.masthead .search-form__label,.masthead .search-form__submit{transition:all .1s}.masthead .search-form__icon{cursor:pointer;height:1.1em;vertical-align:text-bottom;width:1.1em}.masthead .search-form__label{order:1;fill:#666;fill:hsla(var(--txt-color-hsl),.7);margin-right:.2em;transform:translateX(2em)}.masthead .search-form__submit{background:none;border:none;order:3;fill:#ff0e50;opacity:0;transform:translateX(2em);z-index:-5}.masthead .search-form__input{background:none;border:none;border-bottom:1px solid transparent;color:inherit;cursor:pointer;min-width:3.2em;order:2;padding:0;transform:translateX(2em);width:3.2em}.masthead .search-form__input::placeholder{color:inherit;opacity:1}.masthead .search-form__input::selection{background-color:#e1cdd6}.masthead .search-form__input:-webkit-autofill{-webkit-text-fill-color:#fff}@media print{.masthead .search-form{display:none}}.sections{display:flex;font-size:2vw;line-height:1cap;list-style:none;margin:1.5em 0 0;padding:0}@media(min-width:1024px){.sections{font-size:1.067rem}}.sections__item{margin-left:.5em;white-space:nowrap}@media(min-width:768px){.sections__item{padding-left:.25em;padding-right:.25em}}@media(min-width:1024px){.sections__item{padding-left:.5em;padding-right:.5em}}.sections__link{border-bottom:4px solid transparent;padding-bottom:.2em;text-decoration:none;transition:border .2s}.sections__link:focus,.sections__link:hover,.sections__link[aria-current]{border-color:#ff0e50}.mobile-masthead{border-bottom:1px solid #ccc;border-color:hsla(var(--txt-color-hsl),.2);display:flex;height:50px;justify-content:space-between}@media(min-width:768px){.mobile-masthead{display:none}}.mobile-masthead__menu{flex:0 0 6.2em}.mobile-masthead__account{flex:0 0 6.2em;padding:15px}@media print{.mobile-masthead__account{display:none}}.mobile-masthead__mobile-link{font-size:.7715113549rem}@media(min-width:1024px)and (max-width:1439px){.mobile-masthead__mobile-link{font-size:.8232026157rem}}.mobile-masthead__link{border-bottom:2px solid #ff0e50;border-color:var(--theme-color,#ff0e50);text-decoration:none}.mobile-masthead__link:focus,.mobile-masthead__link:hover{border-color:transparent;color:#ff0e50;color:var(--theme-color,#ff0e50)}@media(min-width:768px){.mobile-masthead__link{display:none}}.mobile-masthead__logo{align-self:flex-end;line-height:0;overflow:hidden}@media(max-width:319px){.mobile-masthead__logo>a{display:inline-block;overflow:hidden;width:27px}.mobile-masthead__logo>a>.logo{width:auto}}.mobile-masthead__logo-games{align-self:center;line-height:0;overflow:hidden}.mobile-masthead #mobile-masthead-link .tp-container-inner{height:1.2rem!important}.menu-open,.menu-open>body{height:100%;overflow:hidden;position:fixed}.menu__header{align-items:center;display:flex;height:50px;justify-content:space-between}.menu__header:after{content:"";flex:0 0 50px}.menu__title{font-size:1.138489rem;font-weight:700}.menu__content{display:flex;flex-direction:column;height:100%;overflow-y:scroll;position:absolute;top:0;width:100vw;z-index:8;-webkit-overflow-scrolling:touch;background:#fff;background:var(--bg-color);transition:transform .2s ease-in-out}.menu:not(.menu--open)>.menu__content{transform:translateX(-100%)}.menu__control:focus+.menu__content,.menu__control:hover+.menu__content{will-change:transform}.menu__control{background:transparent;border:none;border-radius:0;color:inherit;flex:0 0 50px;font-size:.878357191rem;padding:15px;position:static!important}.menu__control svg{fill:#666;fill:hsla(var(--txt-color-hsl),.7)}.menu__control:focus svg,.menu__control:hover svg{opacity:1}.menu__control--open{align-items:center;display:flex;gap:.6em}@media print{.menu{display:none}}.mobile-sections{flex:1 0 auto}.mobile-sections__link{border:solid #ccc;border-width:0 0 1px;padding:15px;fill:currentColor}.mobile-sections__link:first-child{border-top-width:1px}:where(.theme-dark) .mobile-sections__link{border-color:hsla(var(--txt-color-hsl),.2)}@media(prefers-color-scheme:dark){:where(.theme-auto) .mobile-sections__link{border-color:hsla(var(--txt-color-hsl),.2)}}.mobile-sections__link--pods{fill:#ff4900}.mobile-sections__link:empty{display:none}a.mobile-sections__link{color:#222;color:hsla(var(--txt-color-hsl),1);display:block;text-decoration:none}a.mobile-sections__link:focus,a.mobile-sections__link:hover{filter:opacity(.8)}.mag-lens{vertical-align:text-bottom;fill:#666;fill:hsla(var(--txt-color-hsl),.7);margin-right:.2em}.mobile-account{border-top:1px solid hsla(0,0%,100%,.1);font-size:.878357191rem}.mobile-account__link{color:#fff;float:left;padding:1.3em 0;text-align:center;text-decoration:none;width:calc(50% - .5px)}.mobile-account__link:focus,.mobile-account__link:hover{color:hsla(0,0%,100%,.8);--theme-color:hsla(0,0%,100%,.8);--theme-color-hsl:0deg,0%,100%;color:var(--theme-color,#ff0e50)}.mobile-account__link:first-child{border-right:1px solid hsla(0,0%,100%,.1);width:calc(50% + .5px)}.strapline{align-items:center;display:flex;font-size:.6776625465rem;margin:1.1em auto}.strapline__asterisk{margin-right:.6em;fill:#ff0e50;flex-shrink:0;height:2.3em;width:2.1em}.strapline__text{color:#666;color:hsla(var(--txt-color-hsl),.7);letter-spacing:.07em;line-height:1.5;text-transform:uppercase}.strapline__text[href]{color:inherit;text-decoration:none}.strapline__text[href]:focus,.strapline__text[href]:hover{color:#999;color:hsla(var(--txt-color-hsl),.5)}.strapline__search{align-items:baseline;color:#444;color:hsla(var(--txt-color-hsl),.85);display:flex;font-size:.7715113549rem;gap:1.2em;margin-left:auto}@media(min-width:1024px)and (max-width:1439px){.strapline__search{font-size:.8232026157rem}}@media(max-width:767px){.strapline__search{display:none}}.theme-picker{width:5em}.theme-picker .dropdown__label>svg,.theme-picker__option>svg{fill:currentColor;opacity:.7;vertical-align:text-bottom}.theme-picker .theme-picker__button.theme-picker__button{margin:-.5em -.5714285714em}.theme-picker .dropdown__label svg{margin-right:.2em}.piano-mount{transition:opacity .12s,translate .12s;translate:0 var(--paywall-translate,0)}:root{--fade-height:7.8947368421rem}.piano-mount[hidden]{display:var(--article-display);opacity:0;translate:0 1em}.piano-mount>.piano-id-container{height:auto!important}.piano-mount .slate-full-bleed .tp-container-inner{margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);width:100vw}.piano-mount--in-article{grid-column-gap:0!important;margin-bottom:0!important;margin-top:0!important;position:sticky;top:1.6em;z-index:4}@supports(display:grid){.piano-mount--in-article{margin:0 0 1.8rem;--article-display:block}@media(min-width:768px){.piano-mount--in-article{display:grid;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);width:100vw;--article-display:grid;grid-column-gap:15px;grid-template-columns:1fr 620px 1fr}}@media(min-width:1024px){.piano-mount--in-article{grid-column-gap:20px;grid-template-columns:1fr 125.7142857143px 708.5714285714px 125.7142857143px 1fr}}@media(min-width:1440px){.piano-mount--in-article{grid-template-columns:1fr 240px 780px 240px 1fr}}.piano-mount--in-article:before{content:"";grid-column:1}.piano-mount--in-article:after{content:"";grid-column-end:4}@media(min-width:1024px){.piano-mount--in-article:after{grid-column-end:6}}@media print{.piano-mount--in-article{display:block;margin:0 auto;max-width:40em}}}@media screen and (-ms-high-contrast:active),screen and (-ms-high-contrast:none){.piano-mount--in-article{margin:auto;max-width:1000px}}@media screen and (-ms-high-contrast:active)and (min-width:1440px),screen and (-ms-high-contrast:none)and (min-width:1440px){.piano-mount--in-article{max-width:1300px}}.piano-mount--in-article .piano-mount__container{grid-column:2/2;z-index:1}@media(min-width:1024px){.piano-mount--in-article .piano-mount__container{grid-column:3/3}}@media(min-width:1440px){.article--right-rail~.piano-mount--in-article{grid-column-gap:0;grid-template-columns:1fr 970px 330px 1fr}.article--right-rail~.piano-mount--in-article .piano-mount__container{display:grid;grid-column:2;grid-template-columns:190px 780px}.article--right-rail~.piano-mount--in-article .piano-mount__container .tp-container-inner{grid-column:2}}@supports(display:grid){@media(min-width:1440px){.article-crossword .piano-mount--in-article,.article-game .piano-mount--in-article{grid-template-columns:1fr 1fr 1080px 1fr 1fr}}}@supports(display:grid){.article-crossword .piano-mount--in-article .piano-mount__container,.article-game .piano-mount--in-article .piano-mount__container{grid-column:2}@media(min-width:1024px){.article-crossword .piano-mount--in-article .piano-mount__container,.article-game .piano-mount--in-article .piano-mount__container{grid-column:3}}}.piano-mount--sticky-banner{bottom:-15px;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);position:sticky;transition:translate .25s;width:100vw;z-index:7}.piano-mount--sticky-banner[hidden]{display:flex;transition:none;translate:0 100%}.piano-mount--loading>.piano-mount__loader{display:block;text-align:center}.piano-mount--loading>.piano-mount__loader:before{animation:spinner-spin 1s linear infinite;border:.2em solid #2c0022;border-bottom-color:transparent!important;border-radius:50%;content:"";display:inline-block;height:1.2em;width:1.2em}@keyframes spinner-spin{to{transform:rotate(1turn)}}:where(.theme-dark) .piano-mount--loading>.piano-mount__loader:before{border-color:#ab99a7}@media(prefers-color-scheme:dark){:where(.theme-auto) .piano-mount--loading>.piano-mount__loader:before{border-color:#ab99a7}}.piano-mount--loading>.piano-mount__loader~.piano-mount__container{visibility:hidden}.piano-mount--error>.piano-mount__error{display:block}.piano-mount__turnstile{left:calc(var(--meterwall-left) + var(--follow-wall-loading-left));position:absolute;top:var(--follow-wall-loading-top);z-index:1}.slate-fade{margin-bottom:max(var(--fade-element-margin,0px),var(--blur-element-margin,0px))!important;position:relative}.slate-fade:after{background:linear-gradient(hsla(0,0%,100%,0),#fff var(--fade-height));background:linear-gradient(hsla(0,0%,100%,0),var(--bg-color) var(--fade-height));bottom:calc(var(--paywall-translate, 0px)*-1 - max(var(--fade-element-margin, 0px),var(--blur-element-margin, 0px)));content:"";display:block;height:var(--fade-height);left:0;position:absolute;right:0;transition:background .12s;z-index:1}.slate-blur,.slate-fade~:not(.piano-mount){filter:blur(3px);opacity:.2;pointer-events:none;transition:opacity .12s,filter .12s;user-select:none}.piano-mount~:nth-child(1 of .slate-blur){margin-top:calc(var(--paywall-mount-height)*-1)!important;position:relative}.piano-mount~:nth-child(1 of .slate-blur):after{background:linear-gradient(hsla(0,0%,100%,0),#fff var(--fade-height));background:linear-gradient(hsla(0,0%,100%,0),var(--bg-color) var(--fade-height));background:linear-gradient(#fff,hsla(0,0%,100%,0) 1lh);background:linear-gradient(var(--bg-color),hsla(0,0%,100%,0) 1lh);bottom:calc(var(--paywall-translate, 0px)*-1 - max(var(--fade-element-margin, 0px),var(--blur-element-margin, 0px)));bottom:unset;content:"";display:block;height:var(--fade-height);height:1lh;left:0;position:absolute;right:0;top:0;transition:background .12s;z-index:1}@media(max-width:767px){.piano-mount~:nth-child(1 of .slate-blur){margin-top:calc(var(--paywall-mount-height)*-1 + max(var(--blur-element-margin),var(--fade-element-margin)))!important}}.piano-mount~:nth-child(1 of .slate-blur):before,.piano-mount~:nth-child(1 of .slate-blur)>:first-child,.piano-mount~:nth-child(1 of .slate-blur)>:first-child>:first-child{margin-top:0!important}.slate-paywall-hide,.slate-paywall-hide~*{display:none!important}.article-game{--fade-height:200px}.article-game:not([hidden]){--paywall-translate:-8em}.article-game--pears:not([hidden]){--paywall-translate:-15em;--fade-height:200px}@media(min-width:768px){.article-game--pears:not([hidden]){--paywall-translate:-11em}}@media(min-width:1024px){.article-game--pears:not([hidden]){--paywall-translate:-5em}}@media(min-width:1440px){.article-game--pears:not([hidden]){--paywall-translate:-6em}}.article-crossword:not([hidden]){--paywall-translate:-3em}.taboola-recirc{position:relative;z-index:1}@media print{.taboola-recirc{display:none}}.taboola-recirc__label{align-items:center;color:#999;color:hsla(var(--txt-color-hsl),.7);display:flex;font-size:.6776625465rem;gap:10px;letter-spacing:.07em;line-height:20px;margin-bottom:10px;text-transform:uppercase}.taboola-recirc__label:after,.taboola-recirc__label:before{background:hsla(var(--txt-color-hsl),.15);content:"";flex-grow:1;height:1px}.taboola-recirc__label:has(+:empty){display:none}.taboola_spotlight_overlay{z-index:2!important}.global-footer{background:#2c0022;color:#fff;font-size:.8232026157rem;line-height:1.5;margin-top:100px}@media(min-width:768px){.global-footer{font-size:.7230659372rem}}@media(min-width:1024px){.global-footer{font-size:.7715113549rem}}@media print{.global-footer{background:transparent;color:#2c0022}}.global-footer a{color:currentColor;text-decoration:none}.global-footer a:focus,.global-footer a:hover{filter:opacity(.8)}.global-footer__main{padding:40px 15px}@media print{.global-footer__main{padding-bottom:0}}.global-footer__main-content{margin:0 auto;--mw:100%;display:grid;grid-template-columns:repeat(12,1fr);max-width:var(--mw);grid-column-gap:10px}@media(min-width:1024px){.global-footer__main-content{--mw:1000px}}@media(min-width:1440px){.global-footer__main-content{--mw:1300px}}.global-footer__about,.global-footer__ad,.global-footer__sub{grid-column:span 6}@media(min-width:768px){.global-footer__about,.global-footer__ad,.global-footer__sub{grid-column:span 2}}.global-footer__heading{letter-spacing:.07em;margin-bottom:.75em;margin-top:0;text-transform:uppercase}@media print{.global-footer__heading{display:none}}.global-footer__links{list-style:none;margin:0 0 2em;padding:0}.global-footer__links li{margin-bottom:.75em}.global-footer__links__cookie-prefs-link{align-items:center;display:inline-flex}.global-footer__links__ccpa-logo{margin-right:4px}@media print{.global-footer__links{display:none}}.global-footer__brand-section{grid-column:1/span 12}@media(min-width:768px){.global-footer__brand-section{grid-column:8/span 5}}.global-footer__logo{max-width:200px;fill:currentColor}@media(min-width:768px){.global-footer__logo{max-width:100%}}.global-footer__brand-text{margin-bottom:2em;margin-top:.75em}@media print{.global-footer__brand-text{margin-bottom:.5em}.global-footer__social-links{display:none}}.global-footer__social-link{display:inline-block;margin-bottom:.5em;margin-right:1em}.global-footer__social-badge{fill:#56334e;margin-right:.5em;vertical-align:bottom}.global-footer__legal{background:#23001b;padding:1.5em 15px}@media print{.global-footer__legal{padding-top:0}}.global-footer__legal-content{margin:0 auto;--mw:100%;max-width:var(--mw)}@media(min-width:1024px){.global-footer__legal-content{--mw:1000px}}@media(min-width:1440px){.global-footer__legal-content{--mw:1300px}}@media(min-width:768px){.global-footer__legal-content{align-items:center;display:flex;justify-content:space-between}}.global-footer__legal-links{display:flex;flex-wrap:wrap;list-style:none;padding-left:0}@media(min-width:768px){.global-footer__legal-links{margin:0}}@media print{.global-footer__legal-links{display:none}}.global-footer__legal-link{white-space:nowrap}.global-footer__legal-link:first-of-type:after,.global-footer__legal-link:nth-of-type(2):has(+.global-footer__legal-link:nth-of-type(3)):after{content:"•";margin:0 .7em}@media(min-width:768px){.global-footer__legal-text{margin:0}}@media print{.slate-ad-prebid{display:none}}html{box-sizing:border-box;overflow-x:hidden;text-size-adjust:100%}body{overflow-x:clip}:root{--raisin-color:#2c0022;--raisin-color-hsl:313.6363636364deg,100%,8.6274509804%;--plum-color:#6a0432;--plum-color-hsl:332.9411764706deg,92.7272727273%,21.568627451%;--cherry-color:#ff0e50;--cherry-color-hsl:343.5684647303deg,100%,52.7450980392%;--clementine-color:#ffad10;--clementine-color-hsl:39.4142259414deg,100%,53.137254902%;--glacier-color:#21aaeb;--glacier-color-hsl:199.3069306931deg,83.4710743802%,52.5490196078%;--kiwi-color:#78d33d;--kiwi-color-hsl:96.4deg,63.025210084%,53.3333333333%;--mint-color:#00bfa5;--mint-color-hsl:171.832460733deg,100%,37.4509803922%;--carrot-color:#ff4900;--carrot-color-hsl:17.1764705882deg,100%,50%;--partisan-red-color:#d32f2f;--partisan-red-color-hsl:0deg,65.0793650794%,50.5882352941%;--partisan-blue-color:#1565c0;--partisan-blue-color-hsl:211.9298245614deg,80.2816901408%,41.7647058824%;--gray-2-color:#222;--gray-2-color-hsl:0deg,0%,13.3333333333%;--gray-4-color:#444;--gray-4-color-hsl:0deg,0%,26.6666666667%;--gray-6-color:#666;--gray-6-color-hsl:0deg,0%,40%;--gray-7-color:#767676;--gray-7-color-hsl:0deg,0%,46.2745098039%;--gray-9-color:#999;--gray-9-color-hsl:0deg,0%,60%;--gray-c-color:#ccc;--gray-c-color-hsl:0deg,0%,80%;--gray-d-color:#ddd;--gray-d-color-hsl:0deg,0%,86.6666666667%;--gray-f0-color:#f0f0f0;--gray-f0-color-hsl:0deg,0%,94.1176470588%;--gray-f8-color:#f8f8f8;--gray-f8-color-hsl:0deg,0%,97.2549019608%;--txt-color:#222;--txt-color-hsl:0deg,0%,13.3333333333%;--bg-color:#fff;--bg-color-hsl:0deg,0%,100%;--nav-color:#23001b;--nav-color-hsl:313.7142857143deg,100%,6.862745098%;--btn-hue:313.6363636364deg;--btn-saturation:100%;--btn-lightness:8.6274509804%;--btn-lightness-delta:0%;--btn-valence:1;--interactive-bg-color:#f8f8f8;--interactive-bg-color-hsl:0deg,0%,97.2549019608%;--interactive-scoreboard-color:#f9f9f9;--interactive-scoreboard-color-hsl:0deg,0%,97.6470588235%;--interactive-border-color:#eae6e9;--interactive-border-color-hsl:315deg,8.6956521739%,90.9803921569%;--label-color:#88365b;--label-color-hsl:332.9268292683deg,43.1578947368%,37.2549019608%;--heading-color:#2c0022;--heading-color-hsl:313.6363636364deg,100%,8.6274509804%;accent-color:var(--theme-color,var(--cherry-color));font-size:17px}@media(min-width:768px){:root{font-size:19px}}@media(min-width:1024px){:root{font-size:17px}}@media(min-width:1440px){:root{font-size:19px}}:root:where(.theme-dark){--bg-color:#1a0014;--bg-color-hsl:313.8461538462deg,100%,5.0980392157%;--txt-color:#f8f8f8;--txt-color-hsl:0deg,0%,97.2549019608%;--nav-color:#2c0022;--nav-color-hsl:313.6363636364deg,100%,8.6274509804%;--interactive-bg-color:#2c0022;--interactive-bg-color-hsl:313.6363636364deg,100%,8.6274509804%;--interactive-scoreboard-color:#23001b;--interactive-scoreboard-color-hsl:313.7142857143deg,100%,6.862745098%;--interactive-border-color:#80667a;--interactive-border-color-hsl:313.8461538462deg,11.3043478261%,45.0980392157%;--plum-color:#a66884;--plum-color-hsl:332.9032258065deg,25.8333333333%,52.9411764706%;--heading-color:#f8f8f8;--heading-color-hsl:0deg,0%,97.2549019608%;--label-color:#c39bad;--label-color-hsl:333deg,25%,68.6274509804%;--button-color:#e60d48;--button-color-hsl:343.6866359447deg,89.3004115226%,47.6470588235%;--btn-hue:343.6866359447deg;--btn-saturation:89.3004115226%;--btn-lightness:47.6470588235%}@media(prefers-color-scheme:dark){:root:where(.theme-auto){--bg-color:#1a0014;--bg-color-hsl:313.8461538462deg,100%,5.0980392157%;--txt-color:#f8f8f8;--txt-color-hsl:0deg,0%,97.2549019608%;--nav-color:#2c0022;--nav-color-hsl:313.6363636364deg,100%,8.6274509804%;--interactive-bg-color:#2c0022;--interactive-bg-color-hsl:313.6363636364deg,100%,8.6274509804%;--interactive-scoreboard-color:#23001b;--interactive-scoreboard-color-hsl:313.7142857143deg,100%,6.862745098%;--interactive-border-color:#80667a;--interactive-border-color-hsl:313.8461538462deg,11.3043478261%,45.0980392157%;--plum-color:#a66884;--plum-color-hsl:332.9032258065deg,25.8333333333%,52.9411764706%;--heading-color:#f8f8f8;--heading-color-hsl:0deg,0%,97.2549019608%;--label-color:#c39bad;--label-color-hsl:333deg,25%,68.6274509804%;--button-color:#e60d48;--button-color-hsl:343.6866359447deg,89.3004115226%,47.6470588235%;--btn-hue:343.6866359447deg;--btn-saturation:89.3004115226%;--btn-lightness:47.6470588235%}}body{background-color:var(--bg-color);color:#222;color:var(--txt-color);font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-weight:400;margin:0;padding:0}.fonts-loaded body{font-family:Retina,Helvetica Neue,Helvetica,Arial,sans-serif}*,:after,:before{box-sizing:inherit}:focus-visible{outline:3px dotted var(--theme-color,#ff0e50);outline-offset:1px}a{cursor:pointer;outline-color:transparent;transition:color .12s ease,fill .12s ease,border-color .12s ease,outline-color .12s ease,outline-style .12s ease}a,button{color:inherit}button{font-family:inherit;font-size:1rem;margin:0}button:enabled{cursor:pointer}input{color:inherit}sub,sup{line-height:0;position:relative;vertical-align:baseline}sub{top:.4em}sup{top:-.4em}img{max-width:100%}img[width][height]{height:auto}input[type=checkbox]{margin:0}::selection{background-color:#ffcfdc;background-color:rgba(var(--theme-color-rgb,255,14,80),.2)}:where(.theme-dark) ::selection{background-color:rgba(var(--theme-color-rgb,255,14,80),.4)}@media(prefers-color-scheme:dark){:where(.theme-auto) ::selection{background-color:rgba(var(--theme-color-rgb,255,14,80),.4)}}::-ms-reveal{display:none}@media print{.clay-kiln{display:none}}@font-face{font-display:swap;font-family:Retina;src:url(https://dot.cdnslate.com/static/fonts/slate-com/Retina-Book-subset.dc123e1.woff2) format("woff2")}@font-face{font-display:swap;font-family:Retina;font-style:italic;src:url(https://dot.cdnslate.com/static/fonts/slate-com/Retina-BookItalic-subset.e351a4d.woff2) format("woff2")}@font-face{font-display:swap;font-family:Retina;font-weight:700;src:url(https://dot.cdnslate.com/static/fonts/slate-com/Retina-Bold-subset.77f1049.woff2) format("woff2")}@font-face{font-display:swap;font-family:Retina;font-style:italic;font-weight:700;src:url(https://dot.cdnslate.com/static/fonts/slate-com/Retina-BoldItalic-subset.c2b4700.woff2) format("woff2")}@font-face{font-display:swap;font-family:Register;font-weight:700;src:url(https://dot.cdnslate.com/static/fonts/slate-com/Register-Heavy-subset.a571c0d.woff2) format("woff2")}@font-face{font-display:swap;font-family:Register;font-style:italic;font-weight:700;src:url(https://dot.cdnslate.com/static/fonts/slate-com/Register-HeavyItalic-subset.d42bb80.woff2) format("woff2")}@font-face{font-display:swap;font-family:Lora;src:url(https://dot.cdnslate.com/static/fonts/slate-com/Lora-Regular-subset.0793386.woff2) format("woff2")}@font-face{font-display:swap;font-family:Lora;font-weight:700;src:url(https://dot.cdnslate.com/static/fonts/slate-com/Lora-Bold-subset.9585849.woff2) format("woff2")}@font-face{font-display:swap;font-family:Lora;font-style:italic;src:url(https://dot.cdnslate.com/static/fonts/slate-com/Lora-Italic-subset.9be0686.woff2) format("woff2")}@font-face{font-display:swap;font-family:Lora;font-style:italic;font-weight:700;src:url(https://dot.cdnslate.com/static/fonts/slate-com/Lora-BoldItalic-subset.c1c083d.woff2) format("woff2")}@font-face{font-display:swap;font-family:DMSerifText;src:url(https://dot.cdnslate.com/static/fonts/slate-com/DMSerifText-Regular-subset.d573e49.woff2) format("woff2")}@font-face{font-display:swap;font-family:DMSerifText;font-style:italic;src:url(https://dot.cdnslate.com/static/fonts/slate-com/DMSerifText-Italic-subset.1639358.woff2) format("woff2")}@font-face{font-display:swap;font-family:Bayard;src:url(https://dot.cdnslate.com/static/fonts/slate-com/Bayard-Regular.55ade9f.woff2) format("woff2")}@font-face{font-display:swap;font-family:Sofia;font-weight:900;src:url(https://dot.cdnslate.com/static/fonts/slate-com/SofiaSansCondensed-Black-subset.2f74f5c.woff2) format("woff2")}@font-face{font-display:swap;font-family:Tinyhand;src:url(https://dot.cdnslate.com/static/fonts/slate-com/BFTinyHand-Regular.0778a7f.woff2) format("woff2")}[hidden]{display:none}.slate-input{--bg-color:#f8f8f8;--bg-color-hsl:0deg,0%,97.2549019608%;--txt-color:#444;--txt-color-hsl:0deg,0%,26.6666666667%;appearance:none;background-clip:padding-box;background-color:var(--bg-color);background-image:none;border:1px solid #999;border-color:hsla(var(--txt-color-hsl),.5);border-radius:2px;color:var(--txt-color,#444);display:block;font:inherit;font-size:.9372071228rem;line-height:1;margin-top:.25em;padding:.5em .5714285714em;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;width:100%}:where(.theme-dark) .slate-input{--bg-color:#411a38;--bg-color-hsl:313.8461538462deg,42.8571428571%,17.8431372549%;--txt-color:#ddd;--txt-color-hsl:0deg,0%,86.6666666667%}@media(prefers-color-scheme:dark){:where(.theme-auto) .slate-input{--bg-color:#411a38;--bg-color-hsl:313.8461538462deg,42.8571428571%,17.8431372549%;--txt-color:#ddd;--txt-color-hsl:0deg,0%,86.6666666667%}}.slate-input::placeholder{color:#999;color:hsla(var(--txt-color-hsl),.5);opacity:1}.slate-input:disabled,.slate-input[readonly]{background-color:#f0f0f0;background-color:hsla(var(--txt-color-hsl),.07);opacity:1}.slate-input:disabled{cursor:not-allowed}.slate-input[readonly]{cursor:text}.slate-input:user-invalid{background:linear-gradient(hsla(var(--partisan-red-color-hsl),.15),hsla(var(--partisan-red-color-hsl),.15)),var(--bg-color);border-color:hsla(var(--partisan-red-color-hsl),.5)}:where(.theme-dark) .slate-input{border-color:#80667a}@media(prefers-color-scheme:dark){:where(.theme-auto) .slate-input{border-color:#80667a}}.slate-button{background-color:#2c0022;background-color:var(--button-color,#2c0022);border:1px solid transparent;border-radius:2px;color:#fff;display:inline-block;line-height:1;padding:.5em .5714285714em;text-align:center;text-decoration:none;transition:.15s ease-in-out;transition-property:opacity,color,background;user-select:none}.slate-button:where(label:hover,a[href]:hover,:enabled:hover,:focus-visible){background-color:hsla(var(--button-color-hsl,var(--raisin-color-hsl)),.8)}.slate-button:disabled{cursor:wait;opacity:.5}.slate-button--subtle{--button-color:transparent;--button-color-hsl:0deg,0%,0%;background-color:#2c0022;background-color:var(--button-color,#2c0022);border:1px solid #ccc;border-color:hsla(var(--txt-color-hsl),.2);border-radius:2px;color:currentColor;display:inline-block;line-height:1;padding:.5em .5714285714em;text-align:center;text-decoration:none;transition:.15s ease-in-out;transition-property:opacity,color,background;user-select:none}.slate-button--subtle:where(label:hover,a[href]:hover,:enabled:hover,:focus-visible){background-color:hsla(var(--txt-color-hsl),.07)}.slate-button--subtle:disabled{cursor:wait;opacity:.5}.slate-btn,.slate-btn--juicy{background:#e60d48;background:hsl(var(--btn-hue) var(--btn-saturation) calc(var(--btn-lightness) + var(--btn-lightness-delta)*var(--btn-valence))/var(--btn-alpha,1));border:1px solid transparent;border-radius:2px;color:inherit;color:#fff;color:rgb(calc((var(--btn-valence) + 1)*255/2),calc((var(--btn-valence) + 1)*255/2),calc((var(--btn-valence) + 1)*255/2));font-family:inherit;font-size:1rem;line-height:1;margin:0;padding:.5em .5714285714em;text-decoration:none;transition:.15s ease-in-out;transition-property:background,color}.slate-btn--juicy:enabled,.slate-btn:enabled{cursor:pointer}.slate-btn--juicy:focus-visible,.slate-btn--juicy:hover,.slate-btn:focus-visible,.slate-btn:hover{--btn-lightness-delta:-5%}.slate-btn--juicy:active,.slate-btn:active{--btn-lightness-delta:-10%}.slate-btn--juicy:disabled,.slate-btn:disabled{--btn-lightness-delta:0%;cursor:not-allowed}.slate-btn--juicy:has(svg,img),.slate-btn:has(svg,img){align-items:center;display:flex;gap:.7em;justify-content:center}:where(.slate-btn) svg{fill:currentColor}.slate-btn--juicy{border-radius:2em;font-size:1.138489rem;font-weight:700;padding:.775em 1.4rem}.slate-graf a,.slate-link,.slate-list a{border-bottom:2px solid #ff0e50;border-color:var(--theme-color,#ff0e50);text-decoration:none}.slate-graf a:focus,.slate-graf a:hover,.slate-link:focus,.slate-link:hover,.slate-list a:focus,.slate-list a:hover{border-color:transparent;color:#ff0e50;color:var(--theme-color,#ff0e50)}.slate-link--bold{border-bottom:4px solid #ff0e50;border-color:var(--theme-color,#ff0e50);color:#2c0022;color:var(--heading-color);font-size:.6776625465rem;font-weight:700;letter-spacing:.07em;text-decoration:none;text-transform:uppercase;white-space:nowrap}.slate-link--bold:focus,.slate-link--bold:hover{border-color:transparent;border-color:#ff0e50;border-color:var(--theme-color,#ff0e50);color:#ff0e50;color:var(--theme-color,#ff0e50)}@media(min-width:768px){.slate-link--bold{font-size:.7230659372rem}}.slate-link--bold>span{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border-width:0;white-space:nowrap}.slate-link--classic{text-decoration:underline}.slate-link--classic:focus-visible{outline:1px dotted currentColor}.slate-link--classic:focus-visible,.slate-link--classic[href]:hover{color:unset;text-decoration:underline}button.slate-link,button.slate-link--bold{background:transparent;border-left:none;border-right:none;border-top:none;line-height:1;padding:0}.slate-graf,.slate-list{line-height:1.5;margin:0 0 1.2em}.article--surge .slate-graf a,.article--surge .slate-list a{border-bottom:none;color:currentColor;font-weight:700;text-decoration:none;text-decoration:underline}.article--surge .slate-graf a:focus,.article--surge .slate-graf a:hover,.article--surge .slate-list a:focus,.article--surge .slate-list a:hover{filter:opacity(.8)}.slate-required{color:#ff0e50}.slate-notification--info{background-color:#ffefcf;border:1px solid #f6dcaa;border-radius:2px;line-height:1.5;padding:1.2em;text-wrap:pretty;transition:opacity .1s,transform .1s}.slate-notification--info:empty{opacity:0;padding:0;transform:translateY(.2em)}:where(.theme-dark) .slate-notification--info{background-color:#2e1e00;border-color:#a4906a;color:#ffefcf}@media(prefers-color-scheme:dark){:where(.theme-auto) .slate-notification--info{background-color:#2e1e00;border-color:#a4906a;color:#ffefcf}}.slate-notification--success{background-color:#e4f6d8;border:1px solid #cbe8b8;border-radius:2px;line-height:1.5;padding:1.2em;text-wrap:pretty;transition:opacity .1s,transform .1s}.slate-notification--success:empty{opacity:0;padding:0;transform:translateY(.2em)}:where(.theme-dark) .slate-notification--success{background-color:#142609;border-color:#839975;color:#e4f6d8}@media(prefers-color-scheme:dark){:where(.theme-auto) .slate-notification--success{background-color:#142609;border-color:#839975;color:#e4f6d8}}.slate-notification--error{background-color:#f6d5d5;border:1px solid #e8b6b6;border-radius:2px;line-height:1.5;padding:1.2em;text-wrap:pretty;transition:opacity .1s,transform .1s}.slate-notification--error:empty{opacity:0;padding:0;transform:translateY(.2em)}:where(.theme-dark) .slate-notification--error{background-color:#260808;border-color:#997474;color:#f6d5d5}@media(prefers-color-scheme:dark){:where(.theme-auto) .slate-notification--error{background-color:#260808;border-color:#997474;color:#f6d5d5}}.slate-loading{animation:spinner-spin 1s linear infinite;border:.2em solid #2c0022;border-bottom-color:transparent!important;border-radius:50%;display:inline-block;height:1.2em;transition:opacity .1s;vertical-align:text-bottom;width:1.2em}@keyframes spinner-spin{to{transform:rotate(1turn)}}:where(.theme-dark) .slate-loading{border-color:#ab99a7}@media(prefers-color-scheme:dark){:where(.theme-auto) .slate-loading{border-color:#ab99a7}}.slate-loading:not([aria-label]),.slate-loading[aria-label=""]{opacity:0}.slate-close{background:transparent;border:none;border-radius:0;color:inherit;line-height:0;padding:.7em;position:absolute;right:0;top:0;z-index:1;fill:currentColor;opacity:.5;transition:opacity .12s ease}.slate-close:focus,.slate-close:hover{opacity:1}.slate-close:empty{background-image:url(https://dot.cdnslate.com/static/media/sites/slate-com/global-sprite.e224d89.svg#close);background-origin:content-box;background-repeat:no-repeat;box-sizing:content-box;height:20px;width:20px}:where(.theme-dark) .slate-close:empty{filter:invert(1)}@media(prefers-color-scheme:dark){:where(.theme-auto) .slate-close:empty{filter:invert(1)}}.slate-modal{background:#fff;border:1px solid #eae6e9;border-radius:3px;box-shadow:0 4px 10px rgba(0,0,10,.15);color:var(--txt-color);font-size:1rem;margin:0;max-width:min(72rem,100vw - 30px);translate:calc(50vw - 50%) var(--dialog-top,max(2.1em,calc(50vh - 50%)));width:auto}@keyframes dialog-open{0%{opacity:0}to{opacity:1}}.slate-modal[open]{animation:dialog-open .24s .12s both}.slate-modal[open]::backdrop{animation:dialog-open .12s both}:where(.theme-dark) .slate-modal{background:#1a0014;border-color:#56334e}@media(prefers-color-scheme:dark){:where(.theme-auto) .slate-modal{background:#1a0014;border-color:#56334e}}.slate-modal::backdrop{--bg-color:#6b4d64;--bg-color-hsl:314deg,16.3043478261%,36.0784313725%;background-color:hsla(var(--bg-color-hsl),.2)}:where(.theme-dark) .slate-modal::backdrop{--bg-color:#ab99a7;--bg-color-hsl:313.3333333333deg,9.6774193548%,63.5294117647%}@media(prefers-color-scheme:dark){:where(.theme-auto) .slate-modal::backdrop{--bg-color:#ab99a7;--bg-color-hsl:313.3333333333deg,9.6774193548%,63.5294117647%}}.slate-divider{background-color:hsla(var(--txt-color-hsl),.15);border:none;height:2px;width:100%}.slate-roadblock-signifier{height:1.1cap;overflow:visible;translate:0 .05cap;width:auto}.slate-roadblock-signifier--block{align-self:flex-start;display:block;font-size:.8232026157rem;margin-bottom:calc(1lh - 1em)}.slate-roadblock-signifier__lock{fill:#999}:where(.theme-dark) .slate-roadblock-signifier__lock{fill:#ccc}@media(prefers-color-scheme:dark){:where(.theme-auto) .slate-roadblock-signifier__lock{fill:#ccc}}.slate-roadblock-signifier__splus{fill:#2c0022;fill:var(--heading-color)}.lazyload-container{aspect-ratio:var(--img-aspect-ratio,3/2);backdrop-filter:blur(.1em);background:#f8f8f8;background:hsla(var(--txt-color-hsl),.03);contain:strict;height:auto;overflow:hidden;position:relative;transition:background-color .12s;width:100%}.lazyload-container>img{height:100%;object-fit:cover;width:100%}.lazyload-container--loaded{background:none}.lazyload-container--fluid{height:auto;--img-aspect-ratio:auto;contain:content;overflow:visible}.lazyload-container--square{--img-aspect-ratio:1/1}.lazyload,.lazyloaded,.lazyloading{height:auto;position:absolute;transition:opacity .2s ease-in;width:100%}.lazyload,.lazyloading{opacity:0}.signifier--podcast{fill:#ff4900;margin-right:.17em;vertical-align:top}a:focus .signifier--podcast,a:hover .signifier--podcast{fill:#ff6d33}.email-signifier--podcast{margin-right:.17em;vertical-align:top}a:focus .email-signifier--podcast,a:hover .email-signifier--podcast{opacity:.8}.dropdown{position:relative}.dropdown__button{font-size:inherit}.dropdown--subtle .dropdown__button{--button-color:transparent;--button-color-hsl:0deg,0%,0%;background-color:#2c0022;background-color:var(--button-color,#2c0022);border:1px solid transparent;border-radius:2px;color:inherit;display:inline-block;line-height:1;padding:.5em .5714285714em;text-align:center;text-decoration:none;transition:.15s ease-in-out;transition-property:opacity,color,background;user-select:none;white-space:nowrap}.dropdown--subtle .dropdown__button:where(label:hover,a[href]:hover,:enabled:hover,:focus-visible){opacity:.8}.dropdown--subtle .dropdown__button:disabled{cursor:wait;opacity:.5}.dropdown__icon{fill:currentColor;vertical-align:middle}.dropdown__button[aria-expanded=true] .dropdown__icon{transform:rotate(-180deg)}.dropdown__content{border-radius:2px;box-shadow:.1em .1em .2em rgba(0,0,0,.3);min-width:100%;position:absolute;right:0;top:100%;z-index:1}.dropdown__button:not([aria-expanded=true])+.dropdown__content{display:none}.dropdown--subtle .dropdown__content{background:#fff;background:var(--bg-color);border:1px solid #ddd;border-color:hsla(var(--txt-color-hsl),.15);color:#222;color:var(--txt-color)}.dropdown__link{background:transparent;border:none;display:block;padding:.5em .5714285714em;text-decoration:none;white-space:nowrap;width:100%}.dropdown--subtle .dropdown__link:focus,.dropdown--subtle .dropdown__link:hover{background:#f0f0f0;background:hsla(var(--txt-color-hsl),.07)}.dropdown--vibrant .dropdown__link{background:#56334e;color:#fff}:where(.theme-dark) .dropdown--vibrant .dropdown__link{background:var(--button-color)}@media(prefers-color-scheme:dark){:where(.theme-auto) .dropdown--vibrant .dropdown__link{background:var(--button-color)}}.dropdown--vibrant .dropdown__link:focus,.dropdown--vibrant .dropdown__link:hover{background:#80667a}:where(.theme-dark) .dropdown--vibrant .dropdown__link:focus,:where(.theme-dark) .dropdown--vibrant .dropdown__link:hover{background:#cc0b40}@media(prefers-color-scheme:dark){:where(.theme-auto) .dropdown--vibrant .dropdown__link:focus,:where(.theme-auto) .dropdown--vibrant .dropdown__link:hover{background:#cc0b40}}.dropdown__link:first-child{border-radius:2px 2px 0 0}.dropdown__link:last-child{border-radius:0 0 2px 2px}:root iframe[src^="https://buy.piano.io/"],:root iframe[src^="https://buy.tinypass.com/"],:root iframe[src^="https://id.piano.io/"],:root iframe[src^="https://id.tinypass.com/"],:root iframe[src^="https://sandbox.piano.io/"],:root iframe[src^="https://sandbox.tinypass.com/"]{display:block;height:2000px!important;height:var(--slate-height,100%)!important;margin:-15px!important;overflow:visible!important;width:calc(100% + 30px)!important}html:not([data-layout-uri*="/instances/article"]):not([data-layout-uri*="/instances/package-landing"]):not([data-layout-uri*="/instances/quiz"]) .layout-one-column .main>:first-child{margin-top:25px}@media(min-width:768px){html:not([data-layout-uri*="/instances/article"]):not([data-layout-uri*="/instances/package-landing"]):not([data-layout-uri*="/instances/quiz"]) .layout-one-column .main>:first-child{margin-top:40px}}@media(min-width:1440px){html:not([data-layout-uri*="/instances/article"]):not([data-layout-uri*="/instances/package-landing"]):not([data-layout-uri*="/instances/quiz"]) .layout-one-column .main>:first-child{margin-top:80px}}.layout-one-column__content{background-color:inherit}html[data-layout-uri*="/instances/package-landing"] .layout-one-column .global-footer{margin-top:0}.layout-one-column .l-wrapper{padding:0 15px}.layout-one-column .l-container{margin:0 auto;--mw:100%;max-width:var(--mw)}@media(min-width:1024px){.layout-one-column .l-container{--mw:1000px}}@media(min-width:1440px){.layout-one-column .l-container{--mw:1300px}}@media(prefers-color-scheme:light){:where(.theme-auto) .layout-one-column--plus-landing:not(header){background-color:#f8f8f8}}:where(.theme-light) .layout-one-column--plus-landing:not(header){background-color:#f8f8f8}.layout-one-column--plus-landing .l-container{max-width:1000px}</style></head>
|
||
|
||
<body class="layout-one-column ">
|
||
|
||
<section class="top-ad">
|
||
|
||
<div class="slate-ad ad--desktopOnly ad--leaderboard">
|
||
<div class="slate-ad__label">
|
||
<span class="border"></span>
|
||
<div class="advertisement">Advertisement</div>
|
||
<span class="border"></span>
|
||
</div>
|
||
<div class="slate-ad__creative" data-uri="slate.com/_components/slate-ad/instances/leaderboard@published"
|
||
data-placeholder="settings"
|
||
data-type="leaderboard"
|
||
data-zone-id = "768478"
|
||
data-criteo-id=""
|
||
data-site-id="271610"
|
||
data-ll-threshold="400"
|
||
>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
<div class="slate-ad ad--tabletPortraitOnly ad--leaderboard">
|
||
<div class="slate-ad__label">
|
||
<span class="border"></span>
|
||
<div class="advertisement">Advertisement</div>
|
||
<span class="border"></span>
|
||
</div>
|
||
<div class="slate-ad__creative" data-uri="slate.com/_components/slate-ad/instances/leaderboardTablet@published"
|
||
data-placeholder="settings"
|
||
data-type="leaderboard-tablet"
|
||
data-zone-id = "768480"
|
||
data-criteo-id=""
|
||
data-site-id="271365"
|
||
data-ll-threshold="400"
|
||
>
|
||
</div>
|
||
</div>
|
||
|
||
</section>
|
||
|
||
<div class="layout-one-column__content">
|
||
<header
|
||
data-uri="slate.com/_components/masthead/instances/default@published"
|
||
|
||
|
||
class="masthead"
|
||
data-via="nav"
|
||
>
|
||
<a href="#main" class="skip-to-main">Skip to the content</a>
|
||
|
||
<div class="desktop-masthead">
|
||
<div class="masthead__wrapper">
|
||
<ul class="widgets masthead__container">
|
||
<li class="js-account--subscribe" hidden>
|
||
<a class="widgets__item slate-btn" data-piano-href="desktopMastheadUrl" data-piano-html="desktopMastheadText">
|
||
<svg class="widgets__icon" width="16" height="16">
|
||
<use data-piano-icon-href="iconUrl"></use>
|
||
</svg>
|
||
</a>
|
||
</li>
|
||
<li>
|
||
<a href="https://shop.slate.com/" class="widgets__item">
|
||
<svg class="widgets__icon" width="16" height="16">
|
||
<use href="https://slate.com/static/media/components/masthead/sprite.63b805a.svg#shop"></use>
|
||
</svg>
|
||
Slate Shop
|
||
</a>
|
||
</li>
|
||
<li>
|
||
<a href="https://slate.com/tag/slate-games" class="widgets__item">
|
||
<svg class="widgets__icon" width="16" height="16">
|
||
<use href="https://slate.com/static/media/components/masthead/sprite.63b805a.svg#games"></use>
|
||
</svg>
|
||
Games
|
||
</a>
|
||
</li>
|
||
<li>
|
||
<a href="https://slate.com/newsletters" class="widgets__item">
|
||
<svg class="widgets__icon" width="16" height="16">
|
||
<use href="https://slate.com/static/media/components/masthead/sprite.63b805a.svg#newsletters"></use>
|
||
</svg>
|
||
Newsletters
|
||
</a>
|
||
</li>
|
||
<li class="widgets__item js-account--sign-in sign-in-link" hidden>
|
||
<a href="https://slate.com/sign-in" class="masthead__login js-redirect-return">
|
||
<svg class="widgets__icon" width="16" height="16">
|
||
<use href="https://slate.com/static/media/components/masthead/sprite.63b805a.svg#avatar"></use>
|
||
</svg>
|
||
Sign In
|
||
</a>
|
||
</li>
|
||
<li class="js-account--account" hidden>
|
||
<span class="widgets__item">
|
||
<svg class="widgets__icon" width="16" height="16">
|
||
<use href="https://slate.com/static/media/components/masthead/sprite.63b805a.svg#avatar"></use>
|
||
</svg>
|
||
|
||
<div class="dropdown dropdown--subtle widgets__dropdown"
|
||
><button class="dropdown__button" disabled>
|
||
<span class="dropdown__label">Account</span>
|
||
<svg
|
||
class="dropdown__icon"
|
||
width="10" height="6" viewBox="0 0 10 6"
|
||
xmlns="http://www.w3.org/2000/svg"
|
||
role="img"
|
||
>
|
||
<title>Activating this button will toggle the display of additional content</title>
|
||
<path d="M0 0l5 6 5-6z"/>
|
||
</svg>
|
||
</button>
|
||
<div class="dropdown__content">
|
||
|
||
<a href="https://slate.com/account" class="dropdown__link js-account--account" hidden >
|
||
Account
|
||
|
||
</a>
|
||
|
||
<a href="https://slate.com/sign-out" class="dropdown__link js-redirect-return js-account--sign-out" hidden >
|
||
Sign out
|
||
|
||
</a>
|
||
|
||
</div>
|
||
</div>
|
||
|
||
</span>
|
||
</li>
|
||
</ul>
|
||
<script>
|
||
try {
|
||
const mastheadChildren = document.currentScript.previousElementSibling.children;
|
||
const posFromBack = document.cookie.indexOf("__utp") === -1 ? 2 : 1;
|
||
mastheadChildren[mastheadChildren.length - posFromBack].hidden = false;
|
||
} catch(err) {
|
||
console.error("Error unhiding sign-in/account in masthead", err);
|
||
}
|
||
</script>
|
||
</div>
|
||
<div class="masthead__wrapper">
|
||
<nav class="main-nav masthead__container" title="site navigation">
|
||
<a href="https://slate.com" class="main-nav__logo">
|
||
<svg class="logo" width="259" height="80">
|
||
<title>Slate homepage</title>
|
||
<use href="https://slate.com/static/media/sites/slate-com/global-sprite.e224d89.svg#logo"></use>
|
||
</svg>
|
||
</a>
|
||
<ul class="sections">
|
||
<li class="sections__item">
|
||
<a href="/news-and-politics" class="sections__link">News & Politics</a>
|
||
</li>
|
||
<li class="sections__item">
|
||
<a href="/culture" class="sections__link">Culture</a>
|
||
</li>
|
||
<li class="sections__item">
|
||
<a href="/technology" class="sections__link" aria-current="true" >Technology</a>
|
||
</li>
|
||
<li class="sections__item">
|
||
<a href="/business" class="sections__link">Business</a>
|
||
</li>
|
||
<li class="sections__item">
|
||
<a href="/life" class="sections__link">Life</a>
|
||
</li>
|
||
<li class="sections__item">
|
||
<a href="/advice" class="sections__link">Advice</a>
|
||
</li>
|
||
<li class="sections__item">
|
||
<a href="/podcasts" class="sections__link">Podcasts</a>
|
||
</li>
|
||
</ul>
|
||
</nav>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="mobile-masthead">
|
||
<div class="mobile-masthead__menu menu">
|
||
<button class="menu__control menu__control--open js-toggle-menu">
|
||
<span aria-hidden="true">Menu</span>
|
||
<svg width="16" height="15">
|
||
<title>Open menu</title>
|
||
<use href="https://slate.com/static/media/components/masthead/sprite.63b805a.svg#menu"></use>
|
||
</svg>
|
||
</button>
|
||
<nav class="menu__content" title="site navigation">
|
||
<header class="menu__header">
|
||
<button class="menu__control slate-close js-toggle-menu">
|
||
<svg width="21" height="21">
|
||
<title>Close menu</title>
|
||
<use href="https://slate.com/static/media/sites/slate-com/global-sprite.e224d89.svg#back"></use>
|
||
</svg>
|
||
</button>
|
||
<span class="menu__title">Menu</span>
|
||
</header>
|
||
<div class="mobile-sections">
|
||
<a href="/news-and-politics" class="mobile-sections__link">News & Politics</a>
|
||
<a href="/culture" class="mobile-sections__link">Culture</a>
|
||
<a href="/technology" class="mobile-sections__link">Technology</a>
|
||
<a href="/business" class="mobile-sections__link">Business</a>
|
||
<a href="/life" class="mobile-sections__link">Life</a>
|
||
<a href="/advice" class="mobile-sections__link">Advice</a>
|
||
<a href="/podcasts" class="mobile-sections__link">Podcasts</a>
|
||
|
||
<a href="/search" class="mobile-sections__link">
|
||
<svg width="18" height="18" class="mag-lens">
|
||
<use href="https://slate.com/static/media/sites/slate-com/global-sprite.e224d89.svg#search"></use>
|
||
</svg>
|
||
Search
|
||
</a>
|
||
|
||
<div class="mobile-sections__link">
|
||
<div class="dropdown dropdown--subtle theme-picker"
|
||
><button class="dropdown__button theme-picker__button" disabled>
|
||
<span class="dropdown__label"></span>
|
||
<svg
|
||
class="dropdown__icon"
|
||
width="10" height="6" viewBox="0 0 10 6"
|
||
xmlns="http://www.w3.org/2000/svg"
|
||
role="img"
|
||
>
|
||
<title>Activating this button will toggle the display of additional content</title>
|
||
<path d="M0 0l5 6 5-6z"/>
|
||
</svg>
|
||
</button>
|
||
<div class="dropdown__content">
|
||
|
||
<button class="dropdown__link theme-picker__option" data-value="light">
|
||
<svg width="16" height="16">
|
||
<use href="https://slate.com/static/media/components/masthead/sprite.63b805a.svg#light"></use>
|
||
</svg>
|
||
Light
|
||
|
||
</button>
|
||
|
||
<button class="dropdown__link theme-picker__option" data-value="dark">
|
||
<svg width="16" height="16">
|
||
<use href="https://slate.com/static/media/components/masthead/sprite.63b805a.svg#dark"></use>
|
||
</svg>
|
||
Dark
|
||
|
||
</button>
|
||
|
||
<button class="dropdown__link theme-picker__option" data-value="auto">
|
||
<svg width="16" height="16">
|
||
<use href="https://slate.com/static/media/components/masthead/sprite.63b805a.svg#auto"></use>
|
||
</svg>
|
||
Auto
|
||
|
||
</button>
|
||
|
||
</div>
|
||
</div>
|
||
|
||
<script>
|
||
try {
|
||
var selected = localStorage.getItem('theme') || 'light';
|
||
var dd = document.currentScript.previousElementSibling;
|
||
if (dd.offsetParent !== null) {
|
||
dd.querySelectorAll('.dropdown__link').forEach(function(opt) {
|
||
if (opt.dataset.value === selected) {
|
||
dd.querySelector('.dropdown__label').innerHTML = opt.innerHTML;
|
||
}
|
||
})
|
||
}
|
||
} catch (e) {}
|
||
</script>
|
||
|
||
</div>
|
||
|
||
<div class="mobile-sections__link js-account--subscribe" hidden>
|
||
<a href="https://slate.com/plus?utm_medium=link&utm_campaign=plus&utm_content=nav_bar&utm_source=nav"
|
||
class="mobile-sections__link--subscribe"><b>Subscribe</b></a>
|
||
</div>
|
||
<a href="https://shop.slate.com/" class="mobile-sections__link js-redirect-return">Slate Shop</a>
|
||
<a href="https://slate.com/tag/slate-games" class="mobile-sections__link js-redirect-return">Games</a>
|
||
<a href="https://slate.com/newsletters" class="mobile-sections__link js-redirect-return">Newsletters</a>
|
||
<a href="https://slate.com/sign-in"
|
||
class="js-account--sign-in mobile-sections__link js-redirect-return" hidden>Sign in</a>
|
||
<a href="https://slate.com/account" class="js-account--account mobile-sections__link"
|
||
hidden>Account</a>
|
||
<a href="https://slate.com/sign-out"
|
||
class="js-account--sign-out mobile-sections__link js-redirect-return" hidden>Sign out</a>
|
||
</div>
|
||
</nav>
|
||
</div>
|
||
|
||
<div class="mobile-masthead__logo">
|
||
<a href="https://slate.com">
|
||
<svg class="logo" width="124" height="39">
|
||
<title>Slate homepage</title>
|
||
<use href="https://slate.com/static/media/sites/slate-com/global-sprite.e224d89.svg#logo"></use>
|
||
</svg>
|
||
</a>
|
||
</div>
|
||
|
||
<div class='mobile-masthead__account'>
|
||
<a class="mobile-masthead__link js-account--account" href="https://slate.com/account" hidden
|
||
>Account</a>
|
||
<div class="mobile-masthead__mobile-link js-account--sign-in" hidden><a data-piano-href="mobileMastheadUrl" data-piano-html="mobileMastheadText" class="slate-link"></span></a></div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="masthead__wrapper">
|
||
<div class="strapline masthead__container" >
|
||
<svg width="27" height="30" class="strapline__asterisk">
|
||
<title>*</title>
|
||
<use href="https://slate.com/static/media/components/masthead/sprite.63b805a.svg#asterisk"></use>
|
||
</svg>
|
||
<a class="strapline__text" href="https://slate.com/culture/2026/09/nathan-fielder-elizabeth-holmes-movie-trailer-release.html">
|
||
Bringing the Best and Worst of Humanity Into Searing Focus
|
||
</a>
|
||
|
||
<div class="strapline__search">
|
||
<form action="/search" class="search-form" data-via="search">
|
||
<input id="search-input" name="q" placeholder="Search for" class="search-form__input" />
|
||
<button class="search-form__submit">
|
||
<svg class="search-form__icon" width="16" height="16">
|
||
<title>Submit search</title>
|
||
<use href="https://slate.com/static/media/sites/slate-com/global-sprite.e224d89.svg#search"></use>
|
||
</svg>
|
||
</button>
|
||
<label for="search-input" class="search-form__label">
|
||
<svg class="search-form__icon" width="16" height="16">
|
||
<title>Enter query</title>
|
||
<use href="https://slate.com/static/media/sites/slate-com/global-sprite.e224d89.svg#search"></use>
|
||
</svg>
|
||
</label>
|
||
</form>
|
||
|
||
<div class="dropdown dropdown--subtle theme-picker"
|
||
><button class="dropdown__button theme-picker__button" disabled>
|
||
<span class="dropdown__label"></span>
|
||
<svg
|
||
class="dropdown__icon"
|
||
width="10" height="6" viewBox="0 0 10 6"
|
||
xmlns="http://www.w3.org/2000/svg"
|
||
role="img"
|
||
>
|
||
<title>Activating this button will toggle the display of additional content</title>
|
||
<path d="M0 0l5 6 5-6z"/>
|
||
</svg>
|
||
</button>
|
||
<div class="dropdown__content">
|
||
|
||
<button class="dropdown__link theme-picker__option" data-value="light">
|
||
<svg width="16" height="16">
|
||
<use href="https://slate.com/static/media/components/masthead/sprite.63b805a.svg#light"></use>
|
||
</svg>
|
||
Light
|
||
|
||
</button>
|
||
|
||
<button class="dropdown__link theme-picker__option" data-value="dark">
|
||
<svg width="16" height="16">
|
||
<use href="https://slate.com/static/media/components/masthead/sprite.63b805a.svg#dark"></use>
|
||
</svg>
|
||
Dark
|
||
|
||
</button>
|
||
|
||
<button class="dropdown__link theme-picker__option" data-value="auto">
|
||
<svg width="16" height="16">
|
||
<use href="https://slate.com/static/media/components/masthead/sprite.63b805a.svg#auto"></use>
|
||
</svg>
|
||
Auto
|
||
|
||
</button>
|
||
|
||
</div>
|
||
</div>
|
||
|
||
<script>
|
||
try {
|
||
var selected = localStorage.getItem('theme') || 'light';
|
||
var dd = document.currentScript.previousElementSibling;
|
||
if (dd.offsetParent !== null) {
|
||
dd.querySelectorAll('.dropdown__link').forEach(function(opt) {
|
||
if (opt.dataset.value === selected) {
|
||
dd.querySelector('.dropdown__label').innerHTML = opt.innerHTML;
|
||
}
|
||
})
|
||
}
|
||
} catch (e) {}
|
||
</script>
|
||
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
</header>
|
||
|
||
|
||
<main role="main" id="main">
|
||
<div class="l-wrapper">
|
||
<div class="main l-container"
|
||
>
|
||
<article
|
||
data-uri="slate.com/_components/article/instances/cq-article-dad3a0d6e954a69dac85ac509b32ff4a@published"
|
||
data-has-roadblock=""
|
||
data-rubric="future-tense"
|
||
data-article-type="article"
|
||
class="article article--article article--right-rail
|
||
"
|
||
itemscope
|
||
itemtype="http://schema.org/Article"
|
||
|
||
> <div itemprop="publisher" itemscope itemtype="http://schema.org/Organization">
|
||
<meta itemprop="name" content="Slate" />
|
||
<div itemprop="logo" itemscope itemtype="https://www.schema.org/ImageObject">
|
||
<link itemprop="url" href="https://dot.cdnslate.com/static/media/sites/slate-com/icon.400x400.09ec623.png">
|
||
<meta itemprop="width" content="400">
|
||
<meta itemprop="height" content="400">
|
||
</div>
|
||
</div>
|
||
|
||
<meta name="sophi-content-id" content="slate.com/_components/article/instances/cq-article-dad3a0d6e954a69dac85ac509b32ff4a@published">
|
||
|
||
|
||
<header class="article__header">
|
||
<div itemprop="image" itemscope itemtype="https://www.schema.org/ImageObject">
|
||
<meta itemprop="url" content="https://compote.slate.com/images/87b79ce6-bb1c-42ca-ab42-9931a6284fe5.jpg?width=1200">
|
||
<meta itemprop="width" content="1200">
|
||
<meta itemprop="height" content="800">
|
||
</div>
|
||
<a
|
||
class="article__rubric" href="/technology/future-tense" ><img
|
||
alt="Future Tense"
|
||
height="17"
|
||
width="115.25"
|
||
src="https://compote.slate.com/images/7ff9545e-d46d-4daa-9328-e1bf5436be86.png"
|
||
></a>
|
||
|
||
<h1 itemprop="headline" class="article__hed article__hed--" >The Global Internet Is Being Attacked by Sharks, Google Confirms</h1>
|
||
|
||
|
||
<div class="article__meta">
|
||
<div class="article__byline" >
|
||
<span>
|
||
By
|
||
<span itemprop="author" itemscope itemtype="http://schema.org/Person">
|
||
<a itemprop="name" href="/author/will-oremus">Will Oremus</a>
|
||
</span>
|
||
</span>
|
||
</div>
|
||
<time
|
||
itemprop="datePublished"
|
||
content="2014-08-15T19:23:28+00:00"
|
||
class="article__dateline"
|
||
>
|
||
<span>Aug 15, 2014</span><span>3:23 PM</span>
|
||
</time>
|
||
|
||
</div>
|
||
<script>
|
||
if (new URL(location.href).searchParams.get("gift_token")) {
|
||
let banner = '<div class="article__gift-banner" hidden><img height="38" width="38" class="article__gift-banner-icon" src="https://dot.cdnslate.com/static/media/sites/slate-com/reymojis/gift.6193980.png"/><span class="article__gift-banner-text"><strong>This article was gifted to you by a Slate Plus member! </strong>This access link expires on <span class="article__gift-banner-exp"></span>.</span></div>';
|
||
|
||
document.currentScript.insertAdjacentHTML("beforebegin", banner);
|
||
|
||
let giftListenerCb = function (e) {
|
||
let date = new Date(e.detail.expiration_date);
|
||
let formatted = date.toLocaleDateString("en-US", {
|
||
month: "long",
|
||
day: "numeric",
|
||
year: "numeric",
|
||
});
|
||
document.querySelector(".article__gift-banner-exp").textContent = formatted;
|
||
document.querySelector(".article__gift-banner").hidden = false;
|
||
window.removeEventListener("hasValidGiftLink", giftListenerCb);
|
||
};
|
||
window.addEventListener("hasValidGiftLink", giftListenerCb);
|
||
}
|
||
</script>
|
||
</header>
|
||
<div class="article__top-image" >
|
||
<figure
|
||
data-uri="slate.com/_components/image/instances/cq-article-dad3a0d6e954a69dac85ac509b32ff4a-component-0@published"
|
||
class="image image--top"
|
||
data-editable="imageInfo" style="width: 590px;"><div class="lazyload-container" style="aspect-ratio: 590 / 421;">
|
||
<img
|
||
alt="Shark bites undersea fiber-optic cable"
|
||
class="lazyloaded"
|
||
src="https://compote.slate.com/images/87b79ce6-bb1c-42ca-ab42-9931a6284fe5.jpg?crop=590%2C421%2Cx0%2Cy0"
|
||
srcset="https://compote.slate.com/images/87b79ce6-bb1c-42ca-ab42-9931a6284fe5.jpg?crop=590%2C421%2Cx0%2Cy0&width=320 320w,
|
||
https://compote.slate.com/images/87b79ce6-bb1c-42ca-ab42-9931a6284fe5.jpg?crop=590%2C421%2Cx0%2Cy0&width=480 480w,
|
||
https://compote.slate.com/images/87b79ce6-bb1c-42ca-ab42-9931a6284fe5.jpg?crop=590%2C421%2Cx0%2Cy0&width=600 600w,
|
||
https://compote.slate.com/images/87b79ce6-bb1c-42ca-ab42-9931a6284fe5.jpg?crop=590%2C421%2Cx0%2Cy0&width=840 840w,
|
||
https://compote.slate.com/images/87b79ce6-bb1c-42ca-ab42-9931a6284fe5.jpg?crop=590%2C421%2Cx0%2Cy0&width=960 960w,
|
||
https://compote.slate.com/images/87b79ce6-bb1c-42ca-ab42-9931a6284fe5.jpg?crop=590%2C421%2Cx0%2Cy0&width=1280 1280w,
|
||
https://compote.slate.com/images/87b79ce6-bb1c-42ca-ab42-9931a6284fe5.jpg?crop=590%2C421%2Cx0%2Cy0&width=1440 1440w,
|
||
https://compote.slate.com/images/87b79ce6-bb1c-42ca-ab42-9931a6284fe5.jpg?crop=590%2C421%2Cx0%2Cy0&width=1600 1600w,
|
||
https://compote.slate.com/images/87b79ce6-bb1c-42ca-ab42-9931a6284fe5.jpg?crop=590%2C421%2Cx0%2Cy0&width=1920 1920w,
|
||
https://compote.slate.com/images/87b79ce6-bb1c-42ca-ab42-9931a6284fe5.jpg?crop=590%2C421%2Cx0%2Cy0&width=2200 2200w"
|
||
sizes="(min-width: 1440px)970px,
|
||
(min-width: 1024px)709px,
|
||
(min-width: 768px)620px,
|
||
calc(100vw - 30px)"
|
||
width="590"
|
||
height="421"
|
||
/>
|
||
</div>
|
||
<figcaption class="image__meta">
|
||
<span class="image__caption">Sharks’ attraction to undersea fiber-optic cables has been well-documented over the years.<br>
|
||
</span>
|
||
<span class="image__credit"><p>Screenshot / YouTube</p>
|
||
</span>
|
||
</figcaption>
|
||
</figure>
|
||
|
||
</div>
|
||
<div class="article__share-sidebar share-sidebar">
|
||
<div
|
||
class="social-share"
|
||
aria-label="social media links"
|
||
data-coral-origin="https://comments.slate.com"
|
||
data-uri="slate.com/_components/social-share/instances/cq-article-dad3a0d6e954a69dac85ac509b32ff4a-component-15@published"
|
||
>
|
||
<a
|
||
href="https://slate.com/comments/technology/2014/08/shark-attacks-threaten-google-s-undersea-internet-cables-video.html"
|
||
class="social-share__link social-share__link--comments"
|
||
>
|
||
<svg
|
||
width="16"
|
||
height="16"
|
||
class="social-share__icon"
|
||
role="presentation"
|
||
>
|
||
<use href="https://slate.com/static/media/components/social-share/social-share-sprite.17c3141.svg#comment"></use>
|
||
</svg><span>Comment</span><span class="coral-count" data-coral-url="https://slate.com/comments/technology/2014/08/shark-attacks-threaten-google-s-undersea-internet-cables-video.html" data-coral-notext="true"></span>
|
||
</a>
|
||
<a
|
||
data-copy-url="https://slate.com/technology/2014/08/shark-attacks-threaten-google-s-undersea-internet-cables-video.html?utm_medium=social&utm_campaign=traffic&utm_source=article&utm_content=copy_link" class="social-share__link social-share__link--copy js-copy-share-link"
|
||
data-share="copy-link"
|
||
data-parsely-event="_copy-link"
|
||
aria-label="Copy Link"
|
||
role="button"
|
||
tabindex="0"
|
||
>
|
||
<svg width="15" height="15" class="social-share__icon" role="presentation">
|
||
<use href="https://slate.com/static/media/components/social-share/social-share-sprite.17c3141.svg#link-chain"></use>
|
||
</svg><span class="js-link-copy-text">Copy Link</span>
|
||
</a>
|
||
|
||
<a
|
||
data-share-url="https://slate.com/technology/2014/08/shark-attacks-threaten-google-s-undersea-internet-cables-video.html?utm_medium=social&utm_campaign=traffic&utm_source=article&utm_content=web_share" class="social-share__link social-share__link--share js-web-share-link"
|
||
data-share="web-share"
|
||
data-parsely-event="_web-share"
|
||
aria-label="Share"
|
||
role="button"
|
||
tabindex="0"
|
||
hidden
|
||
>
|
||
<svg width="15" height="13" class="social-share__icon" role="presentation">
|
||
<use href="https://slate.com/static/media/components/social-share/social-share-sprite.17c3141.svg#share"></use>
|
||
</svg><span aria-hidden="true">Share</span>
|
||
</a>
|
||
|
||
<div class="social-share--gift">
|
||
<a
|
||
class="social-share__link social-share__link--gift"
|
||
data-share="gift-link"
|
||
data-parsely-event="_gift-link"
|
||
role="button"
|
||
tabindex="0"
|
||
>
|
||
<svg width="16" height="16" class="social-share__icon" role="presentation">
|
||
<use href="https://slate.com/static/media/components/social-share/social-share-sprite.17c3141.svg#gift"></use>
|
||
</svg><span class="social-share__link-label">Gift Story</span>
|
||
</a>
|
||
|
||
<div class="gift-link-box">
|
||
<span class="gift-link-box__txt"><strong>Only Slate Plus members can gift Slate stories. </strong>Become a member to share 10 free articles a month.<a class="gift-link-box__txt-cta" href="/plus">Become a Plus Member</a></span>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
</div>
|
||
|
||
<section class="article__body">
|
||
<div class="article__podcast-subscribe"></div>
|
||
|
||
|
||
<div class="article__left-rail">
|
||
<div class="article__share-sidebar-xl share-sidebar">
|
||
<div
|
||
class="social-share"
|
||
aria-label="social media links"
|
||
data-coral-origin="https://comments.slate.com"
|
||
data-uri="slate.com/_components/social-share/instances/cq-article-dad3a0d6e954a69dac85ac509b32ff4a-component-15@published"
|
||
>
|
||
<a
|
||
href="https://slate.com/comments/technology/2014/08/shark-attacks-threaten-google-s-undersea-internet-cables-video.html"
|
||
class="social-share__link social-share__link--comments"
|
||
>
|
||
<svg
|
||
width="16"
|
||
height="16"
|
||
class="social-share__icon"
|
||
role="presentation"
|
||
>
|
||
<use href="https://slate.com/static/media/components/social-share/social-share-sprite.17c3141.svg#comment"></use>
|
||
</svg><span>Comment</span><span class="coral-count" data-coral-url="https://slate.com/comments/technology/2014/08/shark-attacks-threaten-google-s-undersea-internet-cables-video.html" data-coral-notext="true"></span>
|
||
</a>
|
||
<a
|
||
data-copy-url="https://slate.com/technology/2014/08/shark-attacks-threaten-google-s-undersea-internet-cables-video.html?utm_medium=social&utm_campaign=traffic&utm_source=article&utm_content=copy_link" class="social-share__link social-share__link--copy js-copy-share-link"
|
||
data-share="copy-link"
|
||
data-parsely-event="_copy-link"
|
||
aria-label="Copy Link"
|
||
role="button"
|
||
tabindex="0"
|
||
>
|
||
<svg width="15" height="15" class="social-share__icon" role="presentation">
|
||
<use href="https://slate.com/static/media/components/social-share/social-share-sprite.17c3141.svg#link-chain"></use>
|
||
</svg><span class="js-link-copy-text">Copy Link</span>
|
||
</a>
|
||
|
||
<a
|
||
data-share-url="https://slate.com/technology/2014/08/shark-attacks-threaten-google-s-undersea-internet-cables-video.html?utm_medium=social&utm_campaign=traffic&utm_source=article&utm_content=web_share" class="social-share__link social-share__link--share js-web-share-link"
|
||
data-share="web-share"
|
||
data-parsely-event="_web-share"
|
||
aria-label="Share"
|
||
role="button"
|
||
tabindex="0"
|
||
hidden
|
||
>
|
||
<svg width="15" height="13" class="social-share__icon" role="presentation">
|
||
<use href="https://slate.com/static/media/components/social-share/social-share-sprite.17c3141.svg#share"></use>
|
||
</svg><span aria-hidden="true">Share</span>
|
||
</a>
|
||
|
||
<div class="social-share--gift">
|
||
<a
|
||
class="social-share__link social-share__link--gift"
|
||
data-share="gift-link"
|
||
data-parsely-event="_gift-link"
|
||
role="button"
|
||
tabindex="0"
|
||
>
|
||
<svg width="16" height="16" class="social-share__icon" role="presentation">
|
||
<use href="https://slate.com/static/media/components/social-share/social-share-sprite.17c3141.svg#gift"></use>
|
||
</svg><span class="social-share__link-label">Gift Story</span>
|
||
</a>
|
||
|
||
<div class="gift-link-box">
|
||
<span class="gift-link-box__txt"><strong>Only Slate Plus members can gift Slate stories. </strong>Become a member to share 10 free articles a month.<a class="gift-link-box__txt-cta" href="/plus">Become a Plus Member</a></span>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
</div>
|
||
</div>
|
||
|
||
<div class="article__content" itemprop="mainEntityOfPage">
|
||
<p
|
||
class="slate-paragraph slate-graf"
|
||
data-word-count="14"
|
||
data-uri="slate.com/_components/slate-paragraph/instances/cq-article-dad3a0d6e954a69dac85ac509b32ff4a-component-1@published"
|
||
|
||
>The Internet is <a href="https://en.wikipedia.org/wiki/Series_of_tubes">a series of tubes</a> … that are sometimes attacked by sharks.</p>
|
||
|
||
<p
|
||
class="slate-paragraph slate-graf"
|
||
data-word-count="53"
|
||
data-uri="slate.com/_components/slate-paragraph/instances/cq-article-dad3a0d6e954a69dac85ac509b32ff4a-component-2@published"
|
||
|
||
>Reports of sharks biting the undersea cables that zip our data around the world date to at least 1987. That’s when the <em>New York Times</em> <a href="http://www.nytimes.com/1987/06/11/us/phone-company-finds-sharks-cutting-in.html" target="_blank">reported</a> that “sharks have shown an inexplicable taste for the new fiber-optic cables that are being strung along the ocean floor linking the United States, Europe, and Japan.”</p>
|
||
|
||
<p
|
||
class="slate-paragraph slate-graf"
|
||
data-word-count="40"
|
||
data-uri="slate.com/_components/slate-paragraph/instances/cq-article-dad3a0d6e954a69dac85ac509b32ff4a-component-3@published"
|
||
|
||
>Now it seems Google is biting back. According to <em>Network World</em>’s Brandon Butler, a Google product manager explained at a recent event that the company has taken to wrapping its trans-Pacific underwater cables in Kevlar <a href="http://www.networkworld.com/article/2464035/cloud-computing/google-wraps-its-trans-pacific-fiber-cables-in-kevlar-to-prevent-against-shark.html" target="_blank">to guard against shark bites</a>.</p>
|
||
|
||
<p
|
||
class="slate-paragraph slate-graf"
|
||
data-word-count="48"
|
||
data-uri="slate.com/_components/slate-paragraph/instances/cq-article-dad3a0d6e954a69dac85ac509b32ff4a-component-4@published"
|
||
|
||
>Google confirmed to me that its newest generation of undersea cables comes wrapped in special protective yarn and steel wire armor—and that the goal is to protect against cable cuts, including possible shark attacks. Here’s an old video of what that looks like, in case you were wondering:<br>
|
||
</p>
|
||
|
||
<div data-uri="slate.com/_components/connatix/instances/default" class="ad--exco">
|
||
<div id="8b7b2bed-5b69-4d70-82d5-aa335c8abe6c"></div>
|
||
</div>
|
||
|
||
<aside
|
||
class="slate-external-video slate-external-video--default"
|
||
data-uri="slate.com/_components/slate-external-video/instances/cq-article-dad3a0d6e954a69dac85ac509b32ff4a-component-5@published"
|
||
|
||
title="External Video"
|
||
>
|
||
<div class="slate-external-video__content lazyload-container" style=""><noscript><iframe class="youtube-player" type="text/html" src="https://www.youtube.com/embed/4WlOnlRncK0?rel=0&enablejsapi=1" allowfullscreen frameborder="0"></iframe>
|
||
</noscript></div></aside>
|
||
|
||
<p
|
||
class="slate-paragraph slate-graf"
|
||
data-word-count="45"
|
||
data-uri="slate.com/_components/slate-paragraph/instances/cq-article-dad3a0d6e954a69dac85ac509b32ff4a-component-6@published"
|
||
|
||
>To digress for a moment, it’s not clear that the coating Google is using is actually Kevlar, per se. A little searching on Google’s own handy website reveals that the company actually holds a patent of its own for a material called “<a href="http://www.google.com/patents/US6764764">polyethylene protective yarn</a>.”</p>
|
||
|
||
|
||
<div class="slate-ad ad--mobileOnly ad--inArticleBanner">
|
||
<div class="slate-ad__label">
|
||
<span class="border"></span>
|
||
<div class="advertisement">Advertisement</div>
|
||
<span class="border"></span>
|
||
</div>
|
||
<div class="slate-ad__creative" data-uri="slate.com/_components/slate-ad/instances/inArticleAds"
|
||
data-placeholder="settings"
|
||
data-type="mid-article-spot-mobile"
|
||
data-zone-id = "768494"
|
||
data-criteo-id=""
|
||
data-site-id="271366"
|
||
data-ll-threshold="400"
|
||
>
|
||
</div>
|
||
</div>
|
||
|
||
<p
|
||
class="slate-paragraph slate-graf"
|
||
data-word-count="61"
|
||
data-uri="slate.com/_components/slate-paragraph/instances/cq-article-dad3a0d6e954a69dac85ac509b32ff4a-component-7@published"
|
||
|
||
>It makes sense that Google would be investing in better ways to protect transoceanic data cables. Over the years there have been several instances in which damage to undersea lines resulted in <a href="https://en.wikipedia.org/wiki/2008_submarine_cable_disruption">widespread disruptions of Internet service</a>. Dependable network infrastructure has become increasingly essential to Google’s business, which relies on ultra-fast transmissions of information between its data centers around the world.</p>
|
||
|
||
|
||
<div class="slate-ad ad--desktopOnly ad--inArticleBanner">
|
||
<div class="slate-ad__label">
|
||
<span class="border"></span>
|
||
<div class="advertisement">Advertisement</div>
|
||
<span class="border"></span>
|
||
</div>
|
||
<div class="slate-ad__creative" data-uri="slate.com/_components/slate-ad/instances/inArticleAds"
|
||
data-placeholder="settings"
|
||
data-type="mid-article-spot"
|
||
data-zone-id = "768486"
|
||
data-criteo-id=""
|
||
data-site-id="271363"
|
||
data-ll-threshold="400"
|
||
>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
<div class="slate-ad ad--inArticleBanner ad--desktopXl">
|
||
<div class="slate-ad__label">
|
||
<span class="border"></span>
|
||
<div class="advertisement">Advertisement</div>
|
||
<span class="border"></span>
|
||
</div>
|
||
<div class="slate-ad__creative" data-uri="slate.com/_components/slate-ad/instances/inArticleAds"
|
||
data-placeholder="settings"
|
||
data-type="mid-article-spot-xl"
|
||
data-zone-id = "768486"
|
||
data-criteo-id=""
|
||
data-site-id="271363"
|
||
data-ll-threshold="400"
|
||
>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
<div class="slate-ad ad--tabletPortraitOnly ad--inArticleBanner">
|
||
<div class="slate-ad__label">
|
||
<span class="border"></span>
|
||
<div class="advertisement">Advertisement</div>
|
||
<span class="border"></span>
|
||
</div>
|
||
<div class="slate-ad__creative" data-uri="slate.com/_components/slate-ad/instances/inArticleAds"
|
||
data-placeholder="settings"
|
||
data-type="mid-article-spot-tablet"
|
||
data-zone-id = "768488"
|
||
data-criteo-id=""
|
||
data-site-id="271364"
|
||
data-ll-threshold="400"
|
||
>
|
||
</div>
|
||
</div>
|
||
|
||
<p
|
||
class="slate-paragraph slate-graf"
|
||
data-word-count="55"
|
||
data-uri="slate.com/_components/slate-paragraph/instances/cq-article-dad3a0d6e954a69dac85ac509b32ff4a-component-8@published"
|
||
|
||
>On Monday, Google infrastructure czar Urs Holzle <a href="https://plus.google.com/+UrsH%C3%B6lzle/posts/haJzDXnp9Z4">announced</a> that the company is helping to build <a href="http://www.nec.com/en/press/201408/global_20140811_01.html">a new trans-Pacific cable system</a> connecting the United States to Japan at speeds of up to 60 Tbps. “That’s about 10 million times faster than your cable modem,” Holzle noted. Google’s partners on the project include China Mobile and SingTel.</p>
|
||
|
||
<p
|
||
class="slate-paragraph slate-graf"
|
||
data-word-count="67"
|
||
data-uri="slate.com/_components/slate-paragraph/instances/cq-article-dad3a0d6e954a69dac85ac509b32ff4a-component-9@published"
|
||
|
||
>Why are sharks attracted to undersea data cables? Unclear. Several outlets have pointed out that sharks can sense electromagnetic fields, so perhaps they’re attracted by the current. Alternatively, a shark expert from Cal State-Long Beach suggested to <em>Wired</em>, <a href="http://www.wired.com/2014/08/shark_cable/" target="_blank">they may just be curious</a>. Anyone with a dual expertise in chondrichthyan behavior and electrical engineering is warmly invited to offer a more compelling explanation in the comments below.</p>
|
||
|
||
|
||
<div class="slate-ad ad--mobileOnly ad--inArticleBanner">
|
||
<div class="slate-ad__label">
|
||
<span class="border"></span>
|
||
<div class="advertisement">Advertisement</div>
|
||
<span class="border"></span>
|
||
</div>
|
||
<div class="slate-ad__creative" data-uri="slate.com/_components/slate-ad/instances/inArticleAds"
|
||
data-placeholder="settings"
|
||
data-type="mid-article-spot-mobile"
|
||
data-zone-id = "768494"
|
||
data-criteo-id=""
|
||
data-site-id="271366"
|
||
data-ll-threshold="400"
|
||
>
|
||
</div>
|
||
</div>
|
||
|
||
<p
|
||
class="slate-paragraph slate-graf"
|
||
data-word-count="28"
|
||
data-uri="slate.com/_components/slate-paragraph/instances/cq-article-dad3a0d6e954a69dac85ac509b32ff4a-component-10@published"
|
||
|
||
>Regardless, it’s clear their powerful bites can cause real problems. <em>Popular Science</em> <a href="http://www.popsci.com/article/science/google-protects-it-undersea-fiber-optic-cables-sharks" target="_blank">dredged up</a> a 2009 UN Environmental Program report that includes the following rather convincing background information:</p>
|
||
|
||
<p
|
||
class="slate-paragraph slate-graf"
|
||
data-word-count="48"
|
||
data-uri="slate.com/_components/slate-paragraph/instances/cq-article-dad3a0d6e954a69dac85ac509b32ff4a-component-11@published"
|
||
|
||
><blockquote>Fish, including sharks, have a long history of biting cables as identified from teeth embedded in cable sheathings. Barracuda, shallow- and deep-water sharks and others have been identified as causes of cable failure. Bites tend to penetrate the cable insulation, allowing the power conductor to ground with seawater.</blockquote></p>
|
||
|
||
<p
|
||
class="slate-paragraph slate-graf"
|
||
data-word-count="20"
|
||
data-uri="slate.com/_components/slate-paragraph/instances/cq-article-dad3a0d6e954a69dac85ac509b32ff4a-component-12@published"
|
||
|
||
>Forget Google vs. Apple, Google vs. Amazon, and Google vs. Facebook. My new favorite tech rivalry is Google vs. shark.</p>
|
||
|
||
<p
|
||
class="slate-paragraph slate-graf"
|
||
data-word-count="3"
|
||
data-uri="slate.com/_components/slate-paragraph/instances/cq-article-dad3a0d6e954a69dac85ac509b32ff4a-component-13@published"
|
||
|
||
><em>Previously in <strong>Slate</strong>:</em></p>
|
||
|
||
<p
|
||
class="slate-paragraph slate-graf"
|
||
data-word-count="22"
|
||
data-uri="slate.com/_components/slate-paragraph/instances/cq-article-dad3a0d6e954a69dac85ac509b32ff4a-component-14@published"
|
||
|
||
><ul>
|
||
<li><em><a href="https://www.slate.com/blogs/future_tense/2012/07/13/global_internet_map_geotel_fortune_maps_show_how_cable_infrastructure_connects_the_world.html" target="_blank">These Maps Show How the Physical Internet Literally Connects the World</a><br>
|
||
</em></li>
|
||
<li><em><a href="https://www.slate.com/blogs/future_tense/2012/10/17/google_data_center_photos_prove_the_internet_really_is_a_series_of_tubes.html" target="_blank">Wildly Colorful Photos of Google’s Massive Data Centers</a></em></li>
|
||
<li><em><a href="https://www.slate.com/articles/technology/future_tense/2013/11/nsa_surveillance_scandal_and_burma_s_terrible_internet_have_something_in.html" target="_blank">Why Burma’s Internet Keeps Breaking</a></em><br>
|
||
</li>
|
||
</ul></p>
|
||
|
||
<div
|
||
class="social-share"
|
||
aria-label="social media links"
|
||
data-coral-origin="https://comments.slate.com"
|
||
data-uri="slate.com/_components/social-share/instances/cq-article-dad3a0d6e954a69dac85ac509b32ff4a-component-15@published"
|
||
>
|
||
<a
|
||
href="https://slate.com/comments/technology/2014/08/shark-attacks-threaten-google-s-undersea-internet-cables-video.html"
|
||
class="social-share__link social-share__link--comments"
|
||
>
|
||
<svg
|
||
width="16"
|
||
height="16"
|
||
class="social-share__icon"
|
||
role="presentation"
|
||
>
|
||
<use href="https://slate.com/static/media/components/social-share/social-share-sprite.17c3141.svg#comment"></use>
|
||
</svg><span>Comment</span><span class="coral-count" data-coral-url="https://slate.com/comments/technology/2014/08/shark-attacks-threaten-google-s-undersea-internet-cables-video.html" data-coral-notext="true"></span>
|
||
</a>
|
||
<a
|
||
data-copy-url="https://slate.com/technology/2014/08/shark-attacks-threaten-google-s-undersea-internet-cables-video.html?utm_medium=social&utm_campaign=traffic&utm_source=article&utm_content=copy_link" class="social-share__link social-share__link--copy js-copy-share-link"
|
||
data-share="copy-link"
|
||
data-parsely-event="_copy-link"
|
||
aria-label="Copy Link"
|
||
role="button"
|
||
tabindex="0"
|
||
>
|
||
<svg width="15" height="15" class="social-share__icon" role="presentation">
|
||
<use href="https://slate.com/static/media/components/social-share/social-share-sprite.17c3141.svg#link-chain"></use>
|
||
</svg><span class="js-link-copy-text">Copy Link</span>
|
||
</a>
|
||
|
||
<a
|
||
data-share-url="https://slate.com/technology/2014/08/shark-attacks-threaten-google-s-undersea-internet-cables-video.html?utm_medium=social&utm_campaign=traffic&utm_source=article&utm_content=web_share" class="social-share__link social-share__link--share js-web-share-link"
|
||
data-share="web-share"
|
||
data-parsely-event="_web-share"
|
||
aria-label="Share"
|
||
role="button"
|
||
tabindex="0"
|
||
hidden
|
||
>
|
||
<svg width="15" height="13" class="social-share__icon" role="presentation">
|
||
<use href="https://slate.com/static/media/components/social-share/social-share-sprite.17c3141.svg#share"></use>
|
||
</svg><span aria-hidden="true">Share</span>
|
||
</a>
|
||
|
||
<div class="social-share--gift">
|
||
<a
|
||
class="social-share__link social-share__link--gift"
|
||
data-share="gift-link"
|
||
data-parsely-event="_gift-link"
|
||
role="button"
|
||
tabindex="0"
|
||
>
|
||
<svg width="16" height="16" class="social-share__icon" role="presentation">
|
||
<use href="https://slate.com/static/media/components/social-share/social-share-sprite.17c3141.svg#gift"></use>
|
||
</svg><span class="social-share__link-label">Gift Story</span>
|
||
</a>
|
||
|
||
<div class="gift-link-box">
|
||
<span class="gift-link-box__txt"><strong>Only Slate Plus members can gift Slate stories. </strong>Become a member to share 10 free articles a month.<a class="gift-link-box__txt-cta" href="/plus">Become a Plus Member</a></span>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
</div>
|
||
|
||
<ul class="article__tags" >
|
||
<li>
|
||
<a href="/tag/google" class="article__tag">
|
||
Google
|
||
</a>
|
||
</li > </ul>
|
||
|
||
</section>
|
||
|
||
<div class="article__right-rail">
|
||
<div class="slate-ad ad--desktopXl ad--rightRail">
|
||
<div class="slate-ad__label">
|
||
<span class="border"></span>
|
||
<div class="advertisement">Advertisement</div>
|
||
<span class="border"></span>
|
||
</div>
|
||
<div class="slate-ad__creative" data-uri="slate.com/_components/slate-ad/instances/articleRrFlex"
|
||
data-placeholder="settings"
|
||
data-type="rr-article-flex"
|
||
data-zone-id = "768502"
|
||
data-criteo-id=""
|
||
data-site-id="271367"
|
||
data-ll-threshold="400"
|
||
>
|
||
</div>
|
||
</div>
|
||
|
||
</div>
|
||
|
||
</article>
|
||
|
||
<hr class="article__hr">
|
||
|
||
<div class="slate-parsely" data-article-url="https://slate.com/technology/2014/08/shark-attacks-threaten-google-s-undersea-internet-cables-video.html" data-uri="slate.com/_components/slate-parsely/instances/cq-article-dad3a0d6e954a69dac85ac509b32ff4a-component-1@published">
|
||
<script type="application/ld+json">
|
||
{"url":"https://slate.com/technology/2014/08/shark-attacks-threaten-google-s-undersea-internet-cables-video.html","@type":"NewsArticle","image":"https://compote.slate.com/images/87b79ce6-bb1c-42ca-ab42-9931a6284fe5.jpg","author":["Will Oremus"],"creator":["Will Oremus"],"@context":"http://schema.org","headline":"The Global Internet Is Being Attacked by Sharks, Google Confirms","keywords":["/content/slate/blogs/future-tense","redux","Section:technology","AdNode:technology/future_tense"],"publisher":{"logo":{"url":"https://dot.cdnslate.com/static/media/sites/slate-com/icon.400x400.09ec623.png","@type":"ImageObject"},"name":"Slate","@type":"Organization"},"dateCreated":"2014-08-15T19:23:28+00:00","thumbnailUrl":"https://compote.slate.com/images/87b79ce6-bb1c-42ca-ab42-9931a6284fe5.jpg","datePublished":"2014-08-15T19:23:28+00:00","articleSection":"Future Tense","hasPart":{"@type":"WebPageElement","isAccessibleForFree":false,"cssSelector":".slate-blur"}}
|
||
</script>
|
||
</div>
|
||
<div
|
||
class="slate-adnode"
|
||
data-adnode="technology/future_tense"
|
||
data-uri="slate.com/_components/slate-adnode/instances/cq-article-dad3a0d6e954a69dac85ac509b32ff4a-component-2@published"
|
||
|
||
></div>
|
||
|
||
<script
|
||
class="slate-analytics-js js-analytics-js-data"
|
||
type="application+json"
|
||
data-pagetype="article"
|
||
data-version="2.47.32"
|
||
data-web-vitals-sampling="0.5"
|
||
data-web-vitals-url="https://dot.cdnslate.com/static/web-vitals/web-vitals.attribution.iife.85b704e.js"
|
||
data-uri="slate.com/_components/slate-analytics-js/instances/cq-article-dad3a0d6e954a69dac85ac509b32ff4a-component-7@published"
|
||
>
|
||
{"headline":"The Global Internet Is Being Attacked by Sharks, Google Confirms","url":"https://slate.com/technology/2014/08/shark-attacks-threaten-google-s-undersea-internet-cables-video.html","tags":["/content/slate/blogs/future-tense"],"authors":["Will Oremus"],"section":"Technology","rubric":"Future Tense","pub_date":"2014-08-15T19:23:28+00:00","page_id":"cq-article-dad3a0d6e954a69dac85ac509b32ff4a","page_type":"article","commercialNode":"technology/future_tense","last_modified_at":"2014-08-15T19:23:28+00:00"}
|
||
</script>
|
||
|
||
<div class="piano-mount" data-uri="slate.com/_components/piano-mount/instances/meterwall@published" >
|
||
<div
|
||
class='piano-mount__container'
|
||
|
||
id="roadblock"
|
||
data-is-meterwall="true"
|
||
></div>
|
||
<script>
|
||
if (!window.tp) window.tp = [];
|
||
(()=>{var Ge=Object.create;var K=Object.defineProperty;var He=Object.getOwnPropertyDescriptor;var De=Object.getOwnPropertyNames;var Ye=Object.getPrototypeOf,Je=Object.prototype.hasOwnProperty;var g=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var ze=(e,t,n,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of De(t))!Je.call(e,r)&&r!==n&&K(e,r,{get:()=>t[r],enumerable:!(o=He(t,r))||o.enumerable});return e};var P=(e,t,n)=>(n=e!=null?Ge(Ye(e)):{},ze(t||!e||!e.__esModule?K(n,"default",{value:e,enumerable:!0}):n,e));var m=(e,t,n)=>new Promise((o,r)=>{var i=s=>{try{l(n.next(s))}catch(c){r(c)}},a=s=>{try{l(n.throw(s))}catch(c){r(c)}},l=s=>s.done?o(s.value):Promise.resolve(s.value).then(i,a);l((n=n.apply(e,t)).next())});var Z=g((At,Q)=>{function Ke(e){let t=[["sm",320],["md",768],["lg",1024],["xl",1440]],n=t.length;for(;n--;)if(e>=t[n][1])return t[n][0];return t[0][0]}Q.exports={getLayoutBreakpoint:Ke}});var q=g((It,ee)=>{var{getLayoutBreakpoint:X}=Z();function Qe(e,t,n={},o){if(!e||!e.length)throw new Error(`eventName is required. Got ${e}`);if(e.length>255)throw new Error(`eventName must be shorter than 255 characters. Got ${e}`);let r=new URL(`${document.location.protocol}//${document.location.hostname}`);if(r.pathname="n4qzk8pw",r.searchParams.set("eventName",encodeURIComponent(e)),t){if(typeof t!="object")throw new Error(`eventData must be an object. Got ${t}`);n.noLayoutBreakpoint||(t.layoutBreakpoint=X(document.documentElement.clientWidth)),r.searchParams.set("eventData",encodeURIComponent(JSON.stringify(t)))}else n.noLayoutBreakpoint||r.searchParams.set("eventData",encodeURIComponent(JSON.stringify({layoutBreakpoint:X(document.documentElement.clientWidth)})));return o||(o=Function.prototype),fetch(r,{keepalive:!!n.keepalive}).then(o)}ee.exports.track=Qe});var me=g((pe,y)=>{var I,W=function(e){if(I)return I;try{e=e||document.querySelectorAll("script.js-analytics-js-data")[0],I=JSON.parse(e.textContent)}catch(t){console.warn("unable to get dom event data for amplitude",t)}return I},de=function(e,t){return m(this,null,function*(){let n=W(),o=Object.assign({},n,t);try{let r=yield amplitude.track(e,o).promise;if(r.code!==200)throw new Error(r.message);return r}catch(r){console.error("FAILED amplitude.track",e,t,r.message)}})},fe,V=new Promise(function(e,t){fe=e});function ft(...e){V.then(function(){de(...e)})}var pt=function(e){return m(this,null,function*(){yield amplitude.track("Loaded a Page",e).promise,fe()})},mt=e=>{try{amplitude.setUserId(e)}catch(t){console.error("Error setting userId",t)}},wt=(e,t)=>{try{if(amplitude.setUserId(e),t&&Object.keys(t).length){let n=new amplitude.Identify;for(let o in t)n.set(o,t[o]);amplitude.identify(n)}}catch(n){console.error("Error identifying user",n)}};y.exports.getDomEventData=W;y.exports.getInstance=()=>amplitude;y.exports.page=pt;y.exports.track=de;y.exports.trackAfterPageview=ft;y.exports.afterPageview=V;y.exports.setUserId=mt;y.exports.identify=wt;y.exports.log=(e,t)=>m(pe,null,function*(){yield V,window.slateAmplitudeQueue.push(n=>{t={...W(),...t};for(let o in t)typeof t[o]=="boolean"&&(t[o]=`${t[o]}`.toUpperCase());return n.track(e,t)})})});var we=g(x=>{x.formatArticleData=function(e){return{content_created:e.pub_date,content_author:e.authors.join(","),content_section:e.section,tags:e.tags,custom_variables:{contentRubric:e.rubric,amplitudePageType:e.page_type,hed:e.headline}}};x.isSlatePianoEvent=e=>/[/.](piano\.io|(?:local|dev|stage)-slate\.com|slate\.com)$/.test(e.origin)&&e.data.slate;x.pianoInitPromise=new Promise((e,t)=>{x.pianoInitPromiseResolve=e,x.pianoInitPromiseReject=t})});var Ie=g((Le,Ae)=>{(function(e){var t;if(typeof define=="function"&&define.amd&&(define(e),t=!0),typeof Le=="object"&&(Ae.exports=e(),t=!0),!t){var n=window.Cookies,o=window.Cookies=e();o.noConflict=function(){return window.Cookies=n,o}}})(function(){function e(){for(var o=0,r={};o<arguments.length;o++){var i=arguments[o];for(var a in i)r[a]=i[a]}return r}function t(o){return o.replace(/(%[0-9A-Z]{2})+/g,decodeURIComponent)}function n(o){function r(){}function i(l,s,c){if(typeof document!="undefined"){c=e({path:"/"},r.defaults,c),typeof c.expires=="number"&&(c.expires=new Date(new Date*1+c.expires*864e5)),c.expires=c.expires?c.expires.toUTCString():"";try{var f=JSON.stringify(s);/^[\{\[]/.test(f)&&(s=f)}catch(d){}s=o.write?o.write(s,l):encodeURIComponent(String(s)).replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g,decodeURIComponent),l=encodeURIComponent(String(l)).replace(/%(23|24|26|2B|5E|60|7C)/g,decodeURIComponent).replace(/[\(\)]/g,escape);var p="";for(var u in c)c[u]&&(p+="; "+u,c[u]!==!0&&(p+="="+c[u].split(";")[0]));return document.cookie=l+"="+s+p}}function a(l,s){if(typeof document!="undefined"){for(var c={},f=document.cookie?document.cookie.split("; "):[],p=0;p<f.length;p++){var u=f[p].split("="),d=u.slice(1).join("=");!s&&d.charAt(0)==='"'&&(d=d.slice(1,-1));try{var w=t(u[0]);if(d=(o.read||o)(d,w)||t(d),s)try{d=JSON.parse(d)}catch(R){}if(c[w]=d,l===w)break}catch(R){}}return l?c[l]:c}}return r.set=i,r.get=function(l){return a(l,!1)},r.getJSON=function(l){return a(l,!0)},r.remove=function(l,s){i(l,"",e(s,{expires:-1}))},r.defaults={},r.withConverter=n,r}return n(function(){})})});var Re=g((Gt,ke)=>{ke.exports.myslateOrigin=document.documentElement.dataset.myslateurl});var Me=g((Ht,Y)=>{var Pt=Ie(),{myslateOrigin:qe}=Re(),k=3e3;Y.exports={getExtendedUserData:function(e){return new Promise(function(t,n){let o=setTimeout(n,k);window.tp||(window.tp=[]);let r=function(){tp.pianoId.loadExtendedUser({formName:e,extendedUserLoaded:function(i){clearTimeout(o),i?t(i):n(i)}})};window.tp.push(["init",r])})},getCustomFields(e){let t={};for(let{field_name:n,value:o}of e.custom_field_values)try{t[n]=JSON.parse(o)}catch(r){t[n]=typeof o=="string"&&o?o:null}return t},getCustomFieldValue:function(e,t){if(e.custom_field_values){for(var n=0;n<e.custom_field_values.length;n++)if(e.custom_field_values[n].field_name===t)return e.custom_field_values[n].value}},setCustomFieldValue:function(e,t){let n=new FormData;return n.set(e,JSON.stringify(t)),fetch(qe+"/proxies/v2/user/",{method:"POST",credentials:"include",body:n})},getPianoJwt(){let e=Pt.get("__utp");if(e)try{let t=atob(e.split(".")[1]);return JSON.parse(t)}catch(t){console.error(`Error parsing __utp cookie: ${e}`,t);return}},getPianoId(){let e=Y.exports.getPianoJwt();if(e)return e.sub},getUser:function(){return new Promise(function(e,t){let n=setTimeout(t,k);window.tp||(window.tp=[]),window.tp.push(["init",function(){try{clearTimeout(n),e(window.tp.pianoId.getUser())}catch(o){t(o)}}])})},getUserResources:function(){return new Promise(function(e,t){let n=setTimeout(t,k);window.tp||(window.tp=[]),window.tp.push(["init",function(){try{window.tp.api.callApi("/access/list",{},o=>{clearTimeout(n),e(o)})}catch(o){t(o)}}])})},getConversions:function(){return new Promise(function(e,t){let n=setTimeout(t,k);window.tp||(window.tp=[]),window.tp.push(["init",function(){try{window.tp.api.callApi("/conversion/list",{},o=>{clearTimeout(n),e(o)})}catch(o){t(o)}}])})},getOffer:function(e){return fetch(`${qe}/proxies/piano/offers/${e}/`,{credentials:"include"}).then(t=>t.json()).then(t=>{if(t.code!==0)throw new Error(`Piano error. Response: ${JSON.stringify(t)}`);return t}).catch(t=>console.error(t))}}});var ie=P(q(),1);function Ze(){let e="";try{e=JSON.parse(document.querySelector(".slate-analytics-js").textContent).section}catch(t){console.debug("Unable to parse slate-analytics-js in sophi getSection",t)}return e}function te(e="none"){if(["paywall","regwall"].includes(e)){let t=Ze();demeter("wall",{args:{wallType:e,section:t}})}}var v="#roadblock",F="piano-paywall-visible",L="slate-fade",U="slate-blur",T="slate-paywall-hide",E="piano-mount",h=`.${E}`,B=`${h}__container`;function Xe(e,t,n={}){Array.isArray(e)||(e=[e]);let o=window.sophi.dataLayer||{},r=window.sophi.demeter.initStatus||"";for(let i of e)tp.amplitude.track(i,{value:!0,...o,sophi_init_status:r,wallType:t,...n})}function S(){return document.querySelector('[itemprop="mainEntityOfPage"]')}function C(e){if(!e)return"0px";let t=getComputedStyle(e),n=parseFloat(t.marginTop)||0,o=t.display;if(o==="inline"||o==="inline-block")return t.marginTop;let r=parseFloat(t.borderTopWidth)>0,i=parseFloat(t.paddingTop)>0,a=t.overflow,l=t.overflowY;if(r||i||(a!=="visible"&&a!==""||l!=="visible"&&l!==""))return t.marginTop;let c=n,f=getComputedStyle(e,"::before"),p=f.content;if(p&&p!=="none"&&p!=='""'){let d=parseFloat(f.marginTop)||0;c=Math.max(c,d)}let u=e.firstElementChild;if(u){let d=getComputedStyle(u),w=d.display;if(w==="block"||w==="flow-root"||w==="list-item"){let R=parseFloat(d.marginTop)||0;c=Math.max(c,R);let We=parseFloat(d.borderTopWidth)>0,Ve=parseFloat(d.paddingTop)>0,J=d.overflow,z=d.overflowY;if(!We&&!Ve&&!(J!=="visible"&&J!==""||z!=="visible"&&z!=="")){let je=parseFloat(C(u).replace("px",""));c=Math.max(c,je)}}}return c+"px"}function b(){return document.querySelector(`${v}`).closest(h)}function et(e){("requestIdleCallback"in window?requestIdleCallback:requestAnimationFrame)(e,{timeout:8e3})}function tt(e,t){if(window.scrollY>e.offsetTop)t();else{let n=e.offsetHeight<=window.innerHeight?1:parseInt(window.innerHeight/e.offsetHeight*10)/10,o=new IntersectionObserver(([r])=>r.isIntersecting&&(t(),o.disconnect()),{threshold:n});o.observe(e)}}function le(){let e=document.querySelector(v).closest(h);e.hidden=!0;let t=e.classList;t.remove(...Array.from(t.values()).filter(r=>r.startsWith(`${E}--`))),t.add(`${E}--sticky-banner`);let n=S(),o=n.querySelector("."+L)||n.firstElementChild;tt(o,()=>{et(()=>{e.hidden=!1})})}var ae=`
|
||
[class*="__tags"],
|
||
hr[class*="__hr"],
|
||
#cxense-recs
|
||
`,nt=e=>e.width!==0&&e.height!==0,ot=e=>e.top<window.innerHeight,rt=e=>e.classList.contains("slate-paragraph"),it=(e,t)=>window.scrollY+e.top+e.height+(t&&parseFloat(getComputedStyle(t).marginBottom)||0),lt=e=>window.scrollY+e.top;function _(e,t){let n=e.getBoundingClientRect();return nt(n)?ot(n)||lt(n)<=it(t)?(e.classList.toggle(U,!0),U):(e.classList.toggle(T,!0),T):"skip"}function O(e){let t=e.querySelector('[data-uri*="/slate-roadblock/"]');if(t){let s=t.previousElementSibling;for(;s&&s.clientWidth===0&&s.clientHeight===0;)s=s.previousElementSibling;return s}let n=e.querySelector(".slate-interactive, .fixin");if(n)return n;let o=e.querySelector(`.${L}`);if(o)return o;let r=0,i,a=0,l=e.firstElementChild;do if(a+=i=parseInt(l.dataset.wordCount)||0,(++r>2||a>100)&&i>20&&rt(l))return l;while((l=l.nextElementSibling)!==null)}function at(){return m(this,null,function*(){let e=S(),t=b(),n=t.querySelector("iframe");if(e){let o=O(e);if(o){o.classList.add(L),t.style.setProperty("display","none","important"),yield st(n),t.style.removeProperty("display"),yield ct(t.querySelector("iframe"));let r=t.getBoundingClientRect();document.body.style.setProperty("--paywall-mount-height",t.querySelector(B).clientHeight+"px"),t.style.setProperty("display","none","important");let i=o;for(;(i=i.nextElementSibling)!==null;){if(i.matches(h))continue;if(_(i,r)===T)break}document.querySelectorAll(ae).forEach(a=>_(a,r)),console.log("**mount vs footer",t,r,e,e.getBoundingClientRect()),t.style.removeProperty("display")}}})}var ne;function oe(e){clearTimeout(ne),ne=setTimeout(e,500)}var M=new Map;function st(e){if(M.has(e))return M.get(e);let t=new Promise(n=>{e.addEventListener("load",o=>{oe(n,o)}),window.addEventListener("message",o=>{o.source===e.contentWindow&&oe(n,o)})});return M.set(e,t),t}function ct(e){return m(this,null,function*(){return new Promise(t=>{window.addEventListener("message",n=>{n.source===e.contentWindow&&n.data.slate&&n.data.type==="size"&&t()})})})}function se(){return m(this,null,function*(){let e=b(),t=e.querySelector(B),n=t.querySelector("iframe");if(!n||!e)throw console.error("iframe or mount not found",n,e),new Error("roadblock ui failed");e.hidden=!0,e.classList.add(`${E}--in-article`),e.style.position="absolute",e.style.setProperty("top","auto","important"),e.style.setProperty("left","0","important"),e.style.setProperty("right","0","important"),e.style.setProperty("width",document.documentElement.offsetWidth+"px","important"),yield at(),document.body.classList.add(F),["position","width","top","left","right"].forEach(o=>{e.style.removeProperty(o)}),setTimeout(()=>{new ResizeObserver(()=>{document.body.style.setProperty("--paywall-mount-height",t.clientHeight+"px"),setTimeout(()=>ut(e))}).observe(e)})})}var re=!1,ut=e=>{if(re)return;re=!0,e.hidden=!1;let t=window.slateGlobal.abTests.taboolaLayoutTest;ie.default.track("Paywall Visible",{timeToPaywall:Math.round(performance.now()),type:document.querySelector(v).dataset.isMeterwall?"meterwall":"roadblock",testGroup:t!==void 0?`17_${t}`:null})};function dt(){let e=[L,U,T];document.body.classList.remove(F),document.querySelectorAll(e.map(n=>"."+n).join(",")).forEach(n=>n.classList.remove(...e)),b().remove()}window.slateGlobal.ui.removePaywall=dt;window.slateGlobal.ui.togglePaywall=()=>{let e=b();e.hidden=!e.hidden};function $(e){window.tp.push(["init",function(){let t=window.tp.experience._getLastExecutionResult();t&&Object.keys(t).length>0?e(t):window.tp.push(["addHandler","experienceExecute",e])}])}function ce(e){let t=b(),n=S();if(t.hidden=!0,t.classList.add(`${E}--in-article`),t.style.position="absolute",t.style.setProperty("top","auto","important"),t.style.setProperty("left","0","important"),t.style.setProperty("right","0","important"),t.style.setProperty("width",document.documentElement.offsetWidth+"px","important"),n){t.style.removeProperty("display");let o=t.getBoundingClientRect(),r=t.querySelector(B);document.body.style.setProperty("--paywall-mount-height",r.clientHeight+"px"),t.style.setProperty("display","none","important");let i=e;for(;(i=i.nextElementSibling)!==null;){if(i.matches(h))continue;if(_(i,o)===T)break}document.querySelectorAll(ae).forEach(a=>_(a,o)),t.style.removeProperty("display")}document.body.classList.add(F)}function ue(e,t){var o;let n=(o=e.result)==null?void 0:o.experiences.find(r=>r.id===t);if(n){let{title:r,id:i,version:a}=n,l=`\u{1F3B9} Experience: '${r}', ID: ${i}, Version: ${a}`;console.debug(l,n)}else console.error(`No experience found in executionContext for experienceId ${t}`)}function N(e){return["showTemplate","showOffer"].includes(e.eventType)&&e.eventParams.containerSelector.includes(v)}function A(e,t={}){let n={ROADBLOCK_SELECTOR:"#roadblock",REG_WALL:"#roadblock/*regwall*/",PAY_WALL:"#roadblock/*paywall*/"},o,r;e===n.ROADBLOCK_SELECTOR?(r="paywall",o="PaywallShown"):e===n.REG_WALL?(o="RegWallShown",r="regwall"):e===n.PAY_WALL?(o="PaywallShown",r="paywall"):o="NoWallShown",te(r),Xe(o,r,t)}var ve=P(q(),1),Se=P(me(),1),be=P(we(),1);var ye=["loginButtonClick","signInButtonClick","subscribeButtonClick","closeButtonClick","offerSubscribe"];function he(e){return m(this,null,function*(){switch(e.type){case"subscribeButtonClick":{let t=new URL(location.href);t.searchParams.get("redirect_uri")||(t.searchParams.set("redirect_uri",location.href),window.history.pushState(null,"",t.toString())),tp.offer.startCheckout({...e.detail});break}}})}var yt="slate-fade",j="#roadblock";var Ee="piano-mount",G=`.${Ee}`,ht=`${G}__container`;function gt(e){let n=document.querySelector(j).closest(G);n.hidden=!0,n.classList.add(`${Ee}--in-article`),e.after(n)}function xe(e){return m(this,null,function*(){let t=S(),n=e.mountSelector.trim(),o=t.querySelector(j),r=o==null?void 0:o.closest(G),{templateId:i,...a}=e,l=yield Et(i,a);if(!l){console.error("Could not fetch Slate paywall template:",i);return}let s=O(t);if(s){s.classList.add(yt),document.body.style.setProperty("--fade-element-margin",getComputedStyle(s).marginBottom);let u=s.nextElementSibling;for(;u===r;)u=u.nextElementSibling;document.body.style.setProperty("--blur-element-margin",C(u)),o||gt(s)}let c=t.querySelector(n);if(!c){console.debug("Can't find paywallEl");return}vt(l),c.innerHTML=l.body.innerHTML,s&&ce(s),c.querySelectorAll("script").forEach(u=>{let d=document.createElement("script");Array.from(u.attributes).forEach(w=>d.setAttribute(w.name,w.value)),d.textContent=u.textContent,u.replaceWith(d)}),c.querySelectorAll('a[href^="/sign-in"]').forEach(u=>{let d=new URL(u.href,location.href);d.searchParams.set("redirect_uri",location.href),u.href=d.toString()});let f=b();["position","width","top","left","right"].forEach(u=>{f.style.removeProperty(u)});let p=f.querySelector(ht);return requestAnimationFrame(()=>{new ResizeObserver(()=>{document.body.style.setProperty("--paywall-mount-height",p.clientHeight+"px"),requestAnimationFrame(()=>{xt(f)})}).observe(f)}),c})}function Pe(e,t){let n=D(t.accessList).termId,o=H(e,t),{offerId:r,templateId:i,containerSelector:a}=o.eventParams;tp.offer.show({offerId:r,templateId:i,displayMode:"inline",containerSelector:a,targetedTermId:n,offerType:"upgradeOffer"});let l=document.querySelector(a);bt(l,()=>{window.slateGlobal.ui.useRoadblock(t)})}function Et(e,t){return m(this,null,function*(){if(!e)return null;if(!t.variant)return console.error("Missing variant for paywall template:",e),null;let n=new URLSearchParams(Object.fromEntries(Object.entries(t).filter(([,o])=>o!=null)));try{let o=Se.default.getDomEventData(),{custom_variables:r}=(0,be.formatArticleData)(o);for(let[i,a]of Object.entries(r))a!=null&&n.append(`custom[${i}]`,a)}catch(o){}try{let o=yield fetch(`/_paywall/templates/${encodeURIComponent(e)}?${n}`);if(!o.ok)throw new Error(`Received ${o.status} fetching paywall template`);let r=yield o.text();return new DOMParser().parseFromString(r,"text/html")}catch(o){return console.error("Error fetching paywall template HTML:",o),null}})}function vt(e){e.querySelectorAll('link[rel="stylesheet"]').forEach(t=>{let n=t.getAttribute("href");if(n&&!document.querySelector(`link[href="${n}"]`)){let o=document.createElement("link");o.rel="stylesheet",o.href=n,document.head.appendChild(o)}})}function Te(e,t,n={}){e.addEventListener("click",o=>{let r=o.target.closest("[external-event]");if(!r)return;let i=r.getAttribute("external-event");if(!i)return;let a;if(i==="subscribeButtonClick"){let l=t.eventParams.templateId,{trackingId:s,experienceId:c}=t.eventExecutionContext,f,p;Object.keys(n).length>0&&(f=n.terms[parseInt(r.dataset.term)].term_id,p=n.offer_id),a={termId:f,offerId:p,templateId:l,trackingId:s,experienceId:c}}o.target.dispatchEvent(new CustomEvent(i,{detail:a,bubbles:!0}))}),ye.forEach(o=>{e.addEventListener(o,he)})}function St(e,t){var o;let n=e.find(r=>r.eventType==="setResponseVariable"&&"mountSelector"in r.eventParams.responseVariables&&"templateId"in r.eventParams.responseVariables&&r.eventParams.responseVariables.templateId===t);return(o=n==null?void 0:n.eventParams.responseVariables)!=null?o:{}}function Ce(e,t){let n=Oe(e,t);for(let o of n){let r=St(n,o.eventParams.containerSelector);if(Object.keys(r).length)return{paywallEvent:o,responseVars:r}}return{}}function H(e,t){return e.result.events.find(n=>n.eventType==="showOffer"&&n.eventParams.offerType==="upgrade_or_downgrade"&&n.eventExecutionContext.executionId===t.executionId&&n.eventExecutionContext.experienceId===t.experienceId)}function bt(e,t){let n=new MutationObserver(()=>{let o=e.querySelector('iframe[src^="https://sandbox.piano.io/checkout/offer/show"]');o&&(t(o),n.disconnect())});n.observe(e,{childList:!0,subtree:!0})}function D(e){return e==null?void 0:e.find(t=>t.upgradable)}function Oe(e,t){var n;return(n=e.result)==null?void 0:n.events.filter(o=>o.eventExecutionContext.experienceId===t)}function _e(e,t){let n=Oe(e,t),o=n.some(a=>a.eventType==="showOffer"||a.eventType==="showTemplate");o||console.error("No showOffer or showTemplate card in experience");let r=n.find(a=>a.eventType==="setResponseVariable");r||console.error("No response variable card set in experience");let i="mountSelector"in r.eventParams.responseVariables&&"templateId"in r.eventParams.responseVariables;return i||console.error("'mountSelector' or 'templateId' fields missing from response vars"),o&&i}var ge=!1,xt=e=>{if(ge)return;ge=!0,e.hidden=!1;let t=window.slateGlobal.abTests.taboolaLayoutTest;ve.default.track("Slate Paywall Visible",{timeToPaywall:Math.round(performance.now()),type:document.querySelector(j).dataset.isMeterwall?"meterwall":"roadblock",testGroup:t!==void 0?`17_${t}`:null})};var Fe=P(Me(),1);var Ue;(Ue=window.tp)!=null||(window.tp=[]);var Tt=new Promise(e=>{window.tp.push(["addHandler","experienceExecute",e])}),Ct=(e,t)=>t.executionId===(e==null?void 0:e.eventExecutionContext.executionId);function Be(e,t){Tt.then(n=>{let o=n.result.events.find(N);(!e||Ct(o,e))&&t()})}window.slateGlobal.ui.useRoadblock=function(e){let t=S(),n=t.querySelector(v),o=n==null?void 0:n.closest(h),r=O(t);if(r){document.body.style.setProperty("--fade-element-margin",getComputedStyle(r).marginBottom);let i=r.nextElementSibling;for(;i===o;)i=i.nextElementSibling;if(document.body.style.setProperty("--blur-element-margin",C(i)),!n){let l=document.querySelector(v).closest(h);l.hidden=!0,l.classList.add(`${E}--in-article`),r.after(l)}}Be(e,function(){se()}),$(i=>{var c;let a=(c=i.result)==null?void 0:c.events.find(N),l=a==null?void 0:a.eventParams.containerSelector.trim(),s={};s.sophi_decision_source=Ne(),l&&A(l,s)})};window.slateGlobal.ui.useBanner=function(e){Be(e,le)};var $e,Ot=new Promise(e=>{$e=e});window.slateGlobal.paywall.offer=Ot;window.slateGlobal.ui.useSlatePaywall=function(e){return m(this,null,function*(){$(function(t){return m(this,null,function*(){var a;window.postMessage({slate:!0},"*");let{experienceId:n}=e;ue(t,n);let o=D(e.accessList),r;if(o)Pe(t,e),r=H(t,e).eventParams.containerSelector.trim();else{if(!_e(t,n))return;let{paywallEvent:s,responseVars:c}=Ce(t,n),f;s.eventType==="showOffer"&&(f=(yield(0,Fe.getOffer)(s.eventParams.offerId)).offer,$e(f));let p=yield xe(c);Te(p,s,f),r=(a=c.mountSelector)==null?void 0:a.trim()}let i={isSlatePaywall:!0};i.sophi_decision_source=Ne(),r&&A(r,i)})})})};window.slateGlobal.ui.hasNoWallShown=function(){var t;let e="sophi";(t=tp.customVariables)!=null&&t.giftlink_used&&(e="override"),A(null,{sophi_decision_source:e})};function Ne(){var e;return((e=tp.customVariables)==null?void 0:e.sophiDecision)==="fallback"?"timeout":"sophi"}})();
|
||
/*! Bundled license information:
|
||
|
||
js-cookie/src/js.cookie.js:
|
||
(*!
|
||
* JavaScript Cookie v2.2.1
|
||
* https://github.com/js-cookie/js-cookie
|
||
*
|
||
* Copyright 2006, 2015 Klaus Hartl & Fagner Brack
|
||
* Released under the MIT license
|
||
*)
|
||
*/
|
||
|
||
</script>
|
||
<div class="piano-mount__turnstile"><div data-turnstile-sitekey="0x4AAAAAAAapdPWOG3kR2_qF" class="turnstile-widget" data-theme></div></div>
|
||
</div>
|
||
|
||
</div>
|
||
<aside class="l-container" title="Slate Article Recirculation">
|
||
<div class="taboola-recirc" data-uri="slate.com/_components/taboola-recirc/instances/article@published">
|
||
<span class="taboola-recirc__label">Sponsored Content</span>
|
||
<div id="taboola-below-article-thumbnails"></div>
|
||
<script>
|
||
window._taboola = window._taboola || [];
|
||
_taboola.push({
|
||
mode: 'alternating-thumbnails-a',
|
||
container: 'taboola-below-article-thumbnails',
|
||
placement: 'Below Article Thumbnails',
|
||
target_type: 'mix'
|
||
});
|
||
</script>
|
||
</div>
|
||
|
||
<!-- data-uri="slate.com/_components/outbrain-widget/instances/article@published" -->
|
||
|
||
</aside>
|
||
</div>
|
||
</main>
|
||
</div>
|
||
|
||
<section class="bottom-ad">
|
||
|
||
<div class="slate-ad ad--sticky-mobile ad--sticky-mobile-index ad--mobileOnly">
|
||
<div class="slate-ad__label">
|
||
<span class="border"></span>
|
||
<div class="advertisement">Advertisement</div>
|
||
<span class="border"></span>
|
||
</div>
|
||
<div class="slate-ad__creative" data-uri="slate.com/_components/slate-ad/instances/stickyBottom@published"
|
||
data-placeholder="settings"
|
||
data-type="mob-adhesion"
|
||
data-zone-id = "1121368"
|
||
data-criteo-id=""
|
||
data-site-id="321366"
|
||
data-ll-threshold="400"
|
||
>
|
||
</div>
|
||
</div>
|
||
|
||
</section>
|
||
|
||
<footer
|
||
class="global-footer"
|
||
role="contentinfo"
|
||
data-uri="slate.com/_components/global-footer/instances/default@published"
|
||
|
||
>
|
||
<div class="global-footer__main">
|
||
<div class="global-footer__main-content">
|
||
<div class="global-footer__about">
|
||
<h4 class="global-footer__heading">About</h4>
|
||
<ul class="global-footer__links">
|
||
<li><a href="/about">About Us</a></li>
|
||
<li><a href="https://jobs.lever.co/slate">Work With Us</a></li>
|
||
<li><a href="/contact">Contact</a></li>
|
||
<li><a href="/pitch">Pitch Guidelines</a></li>
|
||
<li><a href="/tips">Send Us Tips</a></li>
|
||
<li><a href="/briefing/corrections">Corrections</a></li>
|
||
<li><a href="/commenting">Commenting</a></li>
|
||
<li><a href="http://www.slatereprints.com/">Reprints</a></li>
|
||
</ul>
|
||
</div>
|
||
<div class="global-footer__sub">
|
||
<h4 class="global-footer__heading">Subscriptions</h4>
|
||
<ul class="global-footer__links">
|
||
<li><a
|
||
href="https://slate.com/plus"
|
||
>Subscribe</a></li>
|
||
<li><a href="/academic-group-subscriptions">Group Subscriptions</a></li>
|
||
<li><a href="https://slate.com/sign-in">Sign In</a></li>
|
||
<li><a href="https://slate.com/account">Account</a></li>
|
||
<li><a href="/plus/faq">Subscription FAQs</a></li>
|
||
<li><a href="/podcastfaqs">Podcast FAQs</a></li>
|
||
<li><a href="/newsletters">Newsletters</a></li>
|
||
<li><a href="https://slatehelp.freshdesk.com/support/solutions">Customer Support</a></li>
|
||
</ul>
|
||
</div>
|
||
<div class="global-footer__ad">
|
||
<h4 class="global-footer__heading">Advertising</h4>
|
||
<ul class="global-footer__links">
|
||
<li><a href="https://optout.aboutads.info/">AdChoices</a></li>
|
||
|
||
<li><a
|
||
class="global-footer__links__cookie-prefs-link"
|
||
onclick="(function(event){window.OneTrust && window.OneTrust.ToggleInfoDisplay(); event.preventDefault(); }(event))"
|
||
href="/do-not-sell"
|
||
>
|
||
<img
|
||
class="global-footer__links__ccpa-logo"
|
||
src="https://dot.cdnslate.com/static/media/components/onetrust-update/ccpa-icons/privacyoptions29x14.f2f5996.png"
|
||
width="29"
|
||
height="14"
|
||
alt="California Consumer Privacy Act (CCPA) Opt-Out Icon"
|
||
loading="lazy"
|
||
/>
|
||
Cookie Preferences
|
||
</a>
|
||
</li>
|
||
</ul>
|
||
</div>
|
||
<div class="global-footer__brand-section">
|
||
<svg width="243" height="30" class="global-footer__logo" loading="lazy">
|
||
<title>The Slate Group logo</title>
|
||
<use
|
||
data-href="https://slate.com/static/media/components/global-footer/footer-sprite.5083269.svg#slategroup"
|
||
></use>
|
||
</svg>
|
||
<p class="global-footer__brand-text">Slate is published by The Slate
|
||
Group, a Graham Holdings Company.</p>
|
||
<h4 class="global-footer__heading">Follow Us</h4>
|
||
<div class="global-footer__social-links">
|
||
<a
|
||
href="https://www.facebook.com/Slate/"
|
||
class="global-footer__social-link"
|
||
>
|
||
<svg
|
||
width="25"
|
||
height="25"
|
||
class="global-footer__social-badge"
|
||
loading="lazy"
|
||
>
|
||
<use
|
||
data-href="https://slate.com/static/media/sites/slate-com/share-sprite.7f8dfdf.svg#facebook-circle"
|
||
></use>
|
||
</svg>
|
||
Facebook
|
||
</a>
|
||
<a
|
||
href="https://twitter.com/slate"
|
||
class="global-footer__social-link"
|
||
>
|
||
<svg
|
||
width="25"
|
||
height="25"
|
||
class="global-footer__social-badge"
|
||
loading="lazy"
|
||
>
|
||
<use
|
||
data-href="https://slate.com/static/media/sites/slate-com/share-sprite.7f8dfdf.svg#x-circle"
|
||
></use>
|
||
</svg>
|
||
X
|
||
</a>
|
||
<a
|
||
href="https://bsky.app/profile/slate.com"
|
||
class="global-footer__social-link"
|
||
>
|
||
<svg
|
||
width="25"
|
||
height="25"
|
||
class="global-footer__social-badge"
|
||
loading="lazy"
|
||
>
|
||
<use
|
||
data-href="https://slate.com/static/media/sites/slate-com/share-sprite.7f8dfdf.svg#bluesky-circle"
|
||
></use>
|
||
</svg>
|
||
Bluesky
|
||
</a>
|
||
<a
|
||
href="https://www.instagram.com/slate/"
|
||
class="global-footer__social-link"
|
||
>
|
||
<svg
|
||
width="25"
|
||
height="25"
|
||
class="global-footer__social-badge"
|
||
loading="lazy"
|
||
>
|
||
<use
|
||
data-href="https://slate.com/static/media/sites/slate-com/share-sprite.7f8dfdf.svg#instagram-circle"
|
||
></use>
|
||
</svg>
|
||
Instagram
|
||
</a>
|
||
<a
|
||
href="https://www.youtube.com/slate"
|
||
class="global-footer__social-link"
|
||
>
|
||
<svg
|
||
width="25"
|
||
height="25"
|
||
class="global-footer__social-badge"
|
||
loading="lazy"
|
||
>
|
||
<use
|
||
data-href="https://slate.com/static/media/sites/slate-com/share-sprite.7f8dfdf.svg#youtube-circle"
|
||
></use>
|
||
</svg>
|
||
YouTube
|
||
</a>
|
||
<a href="/rss" class="global-footer__social-link">
|
||
<svg
|
||
width="25"
|
||
height="25"
|
||
class="global-footer__social-badge"
|
||
loading="lazy"
|
||
>
|
||
<use
|
||
data-href="https://slate.com/static/media/sites/slate-com/share-sprite.7f8dfdf.svg#rss-circle"
|
||
></use>
|
||
</svg>
|
||
RSS Feed
|
||
</a>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="global-footer__legal">
|
||
<div class="global-footer__legal-content">
|
||
<ul class="global-footer__legal-links">
|
||
<li class="global-footer__legal-link"><a href="/terms">User Agreement</a></li>
|
||
<li class="global-footer__legal-link"><a href="/privacy">Privacy Policy</a></li>
|
||
</ul>
|
||
<p class="global-footer__legal-text">All contents ©
|
||
2026
|
||
The Slate Group LLC. All rights reserved.</p>
|
||
</div>
|
||
</div>
|
||
|
||
</footer> <div id="onboarding-container" class="fixin"></div>
|
||
<div class="foot" > <div
|
||
class="piano"
|
||
data-uri="slate.com/_components/piano/instances/general@published"
|
||
data-config="{"url":"https://experience.piano.io","aid":"homyv5Uzpu","endpoint":"https://buy.piano.io/api/v3","idUrl":"https://id.piano.io/","cxenseSiteId":"1129570900026411565"}"
|
||
data-sophi-log-level="debug"
|
||
data-sophi-script-id="3253495344"
|
||
>
|
||
<script>
|
||
(()=>{var y=Object.create;var i=Object.defineProperty;var h=Object.getOwnPropertyDescriptor;var w=Object.getOwnPropertyNames;var g=Object.getPrototypeOf,S=Object.prototype.hasOwnProperty;var l=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var b=(e,t,o,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of w(t))!S.call(e,n)&&n!==o&&i(e,n,{get:()=>t[n],enumerable:!(r=h(t,n))||r.enumerable});return e};var E=(e,t,o)=>(o=e!=null?y(g(e)):{},b(t||!e||!e.__esModule?i(o,"default",{value:e,enumerable:!0}):o,e));var s=l((q,a)=>{function x(e){let t=[["sm",320],["md",768],["lg",1024],["xl",1440]],o=t.length;for(;o--;)if(e>=t[o][1])return t[o][0];return t[0][0]}a.exports={getLayoutBreakpoint:x}});var u=l((W,d)=>{var{getLayoutBreakpoint:c}=s();function v(e,t,o={},r){if(!e||!e.length)throw new Error(`eventName is required. Got ${e}`);if(e.length>255)throw new Error(`eventName must be shorter than 255 characters. Got ${e}`);let n=new URL(`${document.location.protocol}//${document.location.hostname}`);if(n.pathname="n4qzk8pw",n.searchParams.set("eventName",encodeURIComponent(e)),t){if(typeof t!="object")throw new Error(`eventData must be an object. Got ${t}`);o.noLayoutBreakpoint||(t.layoutBreakpoint=c(document.documentElement.clientWidth)),n.searchParams.set("eventData",encodeURIComponent(JSON.stringify(t)))}else o.noLayoutBreakpoint||n.searchParams.set("eventData",encodeURIComponent(JSON.stringify({layoutBreakpoint:c(document.documentElement.clientWidth)})));return r||(r=Function.prototype),fetch(n,{keepalive:!!o.keepalive}).then(r)}d.exports.track=v});var C=E(u(),1);var L="#roadblock",P="piano-paywall-visible",T="slate-fade",k="slate-blur",A="slate-paywall-hide",O="piano-mount",p=`.${O}`,H=`${p}__container`;function f(e,t){let o=new URL(e,location.href);t||(t=location.href),o.searchParams.set("redirect_uri",t),location.href=o.href}function m(){return document.querySelector(`${L}`).closest(p)}function R(){let e=[T,k,A];document.body.classList.remove(P),document.querySelectorAll(e.map(o=>"."+o).join(",")).forEach(o=>o.classList.remove(...e)),m().remove()}window.slateGlobal.ui.removePaywall=R;window.slateGlobal.ui.togglePaywall=()=>{let e=m();e.hidden=!e.hidden};window.tp=window.tp||[];tp.push(["addHandler","checkoutCustomEvent",function(e){switch(e.eventName){case"loginButtonClick":case"signInButtonClick":f("/sign-in");break}}]);})();
|
||
|
||
</script>
|
||
<script id="sophi-init">
|
||
!function(){"use strict";window.sophi=window.sophi||{},window.sophi.demeter={actions:[],initStatus:""},window._s=function(e){var i=window.sophi.demeter,t=String(Math.floor(performance.now()/10)/100).replace(/^0\./,".");i.initStatus=(i.initStatus?i.initStatus+",":"")+e+t},window.demeter=window.demeter||function(){var t,a,e=new Promise(function(e,i){t=e,a=i});return window.sophi.demeter.actions.push([arguments,t,a]),e};var e=document.currentScript.parentElement.dataset.sophiLogLevel,i={args:{}},e=(e&&(i.args.logLevel=e),function(){var e=new URL(location.href);if(e.searchParams.get("sophi-override"))switch(e.searchParams.get("sophi-override")){case"paywall":return{outcome:{wallVisibility:"always",wallVisibilityCode:1,wallType:"paywall",wallTypeCode:1}};case"regwall":return{outcome:{wallVisibility:"always",wallVisibilityCode:1,wallType:"regwall",wallTypeCode:2}};default:return{outcome:{wallVisibility:"never",wallVisibilityCode:0,wallType:"none",wallTypeCode:-1}}}}());e&&(i.args.override=e),Object.keys(i.args).length&&window.demeter("config",i),window._s("i")}();
|
||
</script>
|
||
</div>
|
||
|
||
|
||
<div data-uri="slate.com/_components/adblock-message/instances/general@published" class="blocker-intercept">
|
||
<dialog class="slate-modal blocker-intercept__standard">
|
||
<h1 class="blocker-intercept__heading">We need to talk about your
|
||
adblocker</h1>
|
||
<p class="slate-graf blocker-intercept__message">
|
||
Slate relies on advertising to support our journalism. If you value our
|
||
work, please disable your ad blocker. If you want to block ads but still
|
||
support Slate, consider subscribing.
|
||
</p>
|
||
<a
|
||
href="https://slate.com/news-and-politics/2017/04/how-to-disable-your-ad-blocker-on-slate.html"
|
||
class="slate-button blocker-intercept__enable-ads"
|
||
>Enable Ads on Slate</a>
|
||
<a
|
||
class="slate-link blocker-intercept__subscribe-link"
|
||
href="https://slate.com/plus?via=ad_blocker_modal&tpcc=slate-ui--ad_blocker_modal"
|
||
>Subscribe</a>
|
||
<p class="blocker-intercept__sign-in">
|
||
Already a member?
|
||
<a href="https://slate.com/sign-in" class="slate-link--classic">Sign in
|
||
here</a>
|
||
</p>
|
||
<button
|
||
type="button"
|
||
class="slate-close"
|
||
aria-label="Close ad blocker message"
|
||
>
|
||
<svg width="21" height="21" viewBox="0 0 24 24" fill="currentColor" role="img" aria-hidden="true">
|
||
<use href="https://slate.com/static/media/sites/slate-com/global-sprite.e224d89.svg#close"></use>
|
||
</svg>
|
||
</button>
|
||
</dialog>
|
||
|
||
</div>
|
||
|
||
|
||
<div data-uri="slate.com/_components/webapp-serviceworker/instances/default@published" data-is-eu="false"></div>
|
||
|
||
<!-- data-uri="slate.com/_components/taboola-footer/instances/default@published" -->
|
||
<script>
|
||
window._taboola = window._taboola || [];
|
||
_taboola.push({flush: true});
|
||
</script>
|
||
|
||
</div>
|
||
|
||
<style>
|
||
@-webkit-keyframes fadeInKilnLogo {
|
||
0% {
|
||
opacity: 0; }
|
||
100% {
|
||
opacity: 1; } }
|
||
|
||
@keyframes fadeInKilnLogo {
|
||
0% {
|
||
opacity: 0; }
|
||
100% {
|
||
opacity: 1; } }
|
||
|
||
.clay-kiln-logo {
|
||
background-color: rgba(255, 255, 255, 0.8);
|
||
display: none;
|
||
height: 100vh;
|
||
left: 0;
|
||
opacity: 0;
|
||
position: fixed;
|
||
top: 0;
|
||
width: 100vw;
|
||
z-index: 99999; }
|
||
|
||
.clay-kiln-logo.show {
|
||
-webkit-animation: 200ms ease forwards fadeInKilnLogo;
|
||
animation: 200ms ease forwards fadeInKilnLogo;
|
||
display: block; }
|
||
|
||
.clay-kiln-logo svg {
|
||
-webkit-box-sizing: border-box;
|
||
box-sizing: border-box;
|
||
height: 110px;
|
||
left: calc(50vw - 155px);
|
||
position: fixed;
|
||
top: calc(50vh - 55px);
|
||
width: 310px; }
|
||
|
||
</style>
|
||
<div class="clay-kiln-logo"><svg width="308" height="109" viewBox="0 0 308 109" xmlns="http://www.w3.org/2000/svg"><g fill="none"><path d="M119.973 97.014c-16.469 0-26.796-10.718-26.796-24.837V25.514c0-14.117 10.327-24.835 26.796-24.835s25.751 10.718 25.751 24.835v8.757c0 1.831-1.57 3.398-3.399 3.398h-11.242c-1.831 0-3.398-1.567-3.398-3.398v-8.757c0-4.314-2.353-8.758-7.712-8.758-5.883 0-8.365 4.444-8.365 8.758v46.663c0 4.314 2.482 8.759 8.365 8.759 5.359 0 7.712-4.445 7.712-8.759V63.42c0-1.829 1.567-3.399 3.398-3.399h11.242c1.829 0 3.399 1.57 3.399 3.399v8.757c0 14.119-9.282 24.837-25.751 24.837m70.261-1.569h-35.553c-1.831 0-3.398-1.57-3.398-3.398V5.384c0-1.831 1.567-3.268 3.398-3.268h11.764a3.236 3.236 0 0 1 3.268 3.268v70.715c0 1.831 1.567 3.268 3.398 3.268h17.123c1.829 0 3.398 1.569 3.398 3.398v9.282c0 1.828-1.569 3.398-3.398 3.398m41.038-68.624c-.13-.916-.916-1.437-1.57-1.437-.653 0-1.437.521-1.437 1.437l-4.181 30.456c-.262 1.829.913 3.268 2.874 3.268h5.621c1.829 0 2.877-1.439 2.744-3.268l-4.051-30.456zm26.274 68.624H245.65c-1.961 0-3.66-1.437-3.922-3.269l-2.745-14.77c-.391-1.829-2.09-3.398-3.922-3.398h-10.586c-1.961 0-3.66 1.569-3.922 3.398l-2.744 14.77c-.392 1.832-2.091 3.269-3.922 3.269h-11.894c-1.961 0-3.006-1.437-2.615-3.269l18.561-86.792c.391-1.831 2.09-3.268 4.051-3.268h15.556c1.829 0 3.66 1.437 4.052 3.268l18.56 86.792c.394 1.832-.783 3.269-2.612 3.269zm32.645-44.705c-.261.916-.653 2.223-.915 3.401-.13 1.175-.26 2.22-.26 3.136v34.77c0 1.828-1.439 3.398-3.4 3.398h-11.764c-1.829 0-3.398-1.57-3.398-3.398v-34.9c0-1.048-.13-2.223-.392-3.53-.13-1.046-.392-2.223-.783-3.007L252.677 5.252c-.524-1.699.392-3.136 2.223-3.136h10.719c2.482 0 4.051 1.307 4.443 3.136l8.236 28.627c.26.916.913 1.308 1.437 1.308.654 0 1.175-.392 1.437-1.308l8.366-28.627c.524-1.829 1.831-3.136 4.314-3.136h10.85c1.959 0 2.874 1.437 2.221 3.136L290.191 50.74" fill="#8F9081"/><g transform="translate(0 2)"><path d="M43.428 67.018c-.095.28-.251.78-.445 1.483a55.428 55.428 0 0 0-.928 3.95c-2.01 10.079-2.01 21.274 1.347 32.507a2.265 2.265 0 1 0 4.34-1.296c-3.123-10.444-3.123-20.917-1.242-30.325.268-1.365.56-2.58.85-3.627.102-.363.192-.677.275-.94l.09-.286a2.269 2.269 0 0 0-1.41-2.876 2.269 2.269 0 0 0-2.88 1.41h.003zm29.28 1.468a23.792 23.792 0 0 1 .364 1.222c.292 1.048.582 2.264.854 3.627 1.877 9.41 1.877 19.88-1.242 30.328a2.262 2.262 0 0 0 1.52 2.821 2.27 2.27 0 0 0 2.822-1.524c3.355-11.237 3.355-22.433 1.343-32.511a55.27 55.27 0 0 0-.927-3.95 27.541 27.541 0 0 0-.445-1.482 2.268 2.268 0 0 0-2.878-1.41 2.268 2.268 0 0 0-1.41 2.877v.002zM4.916 70.803c.426-9.235 4.204-15 10.296-18.235 2.226-1.184 4.63-1.948 7.052-2.368a24.755 24.755 0 0 1 2.401-.293c.454-.03.79-.04.984-.04h-.003a2.267 2.267 0 0 0 .08-4.533h-.036c-.31 0-.761.01-1.335.05-.88.061-1.842.174-2.865.35-2.864.497-5.72 1.402-8.407 2.83C5.602 52.538.888 59.73.384 70.593a2.27 2.27 0 0 0 2.161 2.368 2.263 2.263 0 0 0 2.368-2.159h.002zm117.064-.208c-.504-10.864-5.214-18.056-12.698-22.03-2.686-1.427-5.54-2.334-8.403-2.83a28.462 28.462 0 0 0-2.867-.349 19.32 19.32 0 0 0-1.336-.05h-.034a2.266 2.266 0 1 0 .077 4.532c.193-.003.528.007.98.037.731.05 1.539.146 2.404.295 2.418.42 4.826 1.183 7.052 2.368 6.092 3.234 9.87 9 10.296 18.235a2.266 2.266 0 1 0 4.527-.21l.002.002z" fill="#BCBBAD"/><path d="M60.769 87.022c27.784 0 50.31-8.928 50.31-36.712C111.078 22.524 84.144 0 60.768 0c-23.377 0-50.31 22.524-50.31 50.31 0 27.785 22.524 36.712 50.31 36.712z" fill="#CECDC0"/><path d="M55.803 54.52c.33 2.158 2.177 3.772 4.366 3.772 2.191 0 4.04-1.617 4.366-3.778a.677.677 0 0 0-.571-.772.675.675 0 0 0-.772.567c-.229 1.503-1.512 2.625-3.023 2.625-1.511 0-2.792-1.12-3.022-2.62a.678.678 0 0 0-.773-.567.677.677 0 0 0-.57.772v.002z" fill="#9A998C"/><ellipse fill="#9A998C" cx="37.592" cy="39.248" rx="3.625" ry="5.665"/><ellipse fill="#9A998C" cx="82.928" cy="39.248" rx="3.625" ry="5.665"/><path d="M72.024 1.68c16.925 7.673 31.495 25.085 31.495 45.338 0 27.35-22.22 36.138-49.63 36.138-11.273 0-21.665-1.489-29.997-5.141 9.212 6.654 22.587 9.218 37.478 9.218 27.782 0 50.306-8.924 50.306-36.71 0-23.619-19.461-43.432-39.652-48.844" fill="#BCBBAD"/></g></g></svg></div>
|
||
<script>
|
||
/******/ (function(modules) { // webpackBootstrap
|
||
/******/ // The module cache
|
||
/******/ var installedModules = {};
|
||
/******/
|
||
/******/ // The require function
|
||
/******/ function __webpack_require__(moduleId) {
|
||
/******/
|
||
/******/ // Check if module is in cache
|
||
/******/ if(installedModules[moduleId]) {
|
||
/******/ return installedModules[moduleId].exports;
|
||
/******/ }
|
||
/******/ // Create a new module (and put it into the cache)
|
||
/******/ var module = installedModules[moduleId] = {
|
||
/******/ i: moduleId,
|
||
/******/ l: false,
|
||
/******/ exports: {}
|
||
/******/ };
|
||
/******/
|
||
/******/ // Execute the module function
|
||
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
|
||
/******/
|
||
/******/ // Flag the module as loaded
|
||
/******/ module.l = true;
|
||
/******/
|
||
/******/ // Return the exports of the module
|
||
/******/ return module.exports;
|
||
/******/ }
|
||
/******/
|
||
/******/
|
||
/******/ // expose the modules object (__webpack_modules__)
|
||
/******/ __webpack_require__.m = modules;
|
||
/******/
|
||
/******/ // expose the module cache
|
||
/******/ __webpack_require__.c = installedModules;
|
||
/******/
|
||
/******/ // define getter function for harmony exports
|
||
/******/ __webpack_require__.d = function(exports, name, getter) {
|
||
/******/ if(!__webpack_require__.o(exports, name)) {
|
||
/******/ Object.defineProperty(exports, name, {
|
||
/******/ configurable: false,
|
||
/******/ enumerable: true,
|
||
/******/ get: getter
|
||
/******/ });
|
||
/******/ }
|
||
/******/ };
|
||
/******/
|
||
/******/ // getDefaultExport function for compatibility with non-harmony modules
|
||
/******/ __webpack_require__.n = function(module) {
|
||
/******/ var getter = module && module.__esModule ?
|
||
/******/ function getDefault() { return module['default']; } :
|
||
/******/ function getModuleExports() { return module; };
|
||
/******/ __webpack_require__.d(getter, 'a', getter);
|
||
/******/ return getter;
|
||
/******/ };
|
||
/******/
|
||
/******/ // Object.prototype.hasOwnProperty.call
|
||
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
|
||
/******/
|
||
/******/ // __webpack_public_path__
|
||
/******/ __webpack_require__.p = "";
|
||
/******/
|
||
/******/ // Load entry module and return exports
|
||
/******/ return __webpack_require__(__webpack_require__.s = 1217);
|
||
/******/ })
|
||
/************************************************************************/
|
||
/******/ ({
|
||
|
||
/***/ 100:
|
||
/***/ (function(module, exports) {
|
||
|
||
/**
|
||
* The base implementation of `_.findIndex` and `_.findLastIndex` without
|
||
* support for iteratee shorthands.
|
||
*
|
||
* @private
|
||
* @param {Array} array The array to inspect.
|
||
* @param {Function} predicate The function invoked per iteration.
|
||
* @param {number} fromIndex The index to search from.
|
||
* @param {boolean} [fromRight] Specify iterating from right to left.
|
||
* @returns {number} Returns the index of the matched value, else `-1`.
|
||
*/
|
||
function baseFindIndex(array, predicate, fromIndex, fromRight) {
|
||
var length = array.length,
|
||
index = fromIndex + (fromRight ? 1 : -1);
|
||
|
||
while ((fromRight ? index-- : ++index < length)) {
|
||
if (predicate(array[index], index, array)) {
|
||
return index;
|
||
}
|
||
}
|
||
return -1;
|
||
}
|
||
|
||
module.exports = baseFindIndex;
|
||
|
||
|
||
/***/ }),
|
||
|
||
/***/ 1217:
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
"use strict";
|
||
|
||
|
||
var _shiftClay = __webpack_require__(745);
|
||
|
||
var _shiftClay2 = _interopRequireDefault(_shiftClay);
|
||
|
||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
||
|
||
// load logo styles
|
||
__webpack_require__(261);
|
||
|
||
(0, _shiftClay2.default)();
|
||
|
||
/***/ }),
|
||
|
||
/***/ 138:
|
||
/***/ (function(module, exports) {
|
||
|
||
/** Used as references for various `Number` constants. */
|
||
var MAX_SAFE_INTEGER = 9007199254740991;
|
||
|
||
/**
|
||
* Checks if `value` is a valid array-like length.
|
||
*
|
||
* **Note:** This method is loosely based on
|
||
* [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).
|
||
*
|
||
* @static
|
||
* @memberOf _
|
||
* @since 4.0.0
|
||
* @category Lang
|
||
* @param {*} value The value to check.
|
||
* @returns {boolean} Returns `true` if `value` is a valid length, else `false`.
|
||
* @example
|
||
*
|
||
* _.isLength(3);
|
||
* // => true
|
||
*
|
||
* _.isLength(Number.MIN_VALUE);
|
||
* // => false
|
||
*
|
||
* _.isLength(Infinity);
|
||
* // => false
|
||
*
|
||
* _.isLength('3');
|
||
* // => false
|
||
*/
|
||
function isLength(value) {
|
||
return typeof value == 'number' &&
|
||
value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;
|
||
}
|
||
|
||
module.exports = isLength;
|
||
|
||
|
||
/***/ }),
|
||
|
||
/***/ 139:
|
||
/***/ (function(module, exports) {
|
||
|
||
// Source: http://jsfiddle.net/vWx8V/
|
||
// http://stackoverflow.com/questions/5603195/full-list-of-javascript-keycodes
|
||
|
||
/**
|
||
* Conenience method returns corresponding value for given keyName or keyCode.
|
||
*
|
||
* @param {Mixed} keyCode {Number} or keyName {String}
|
||
* @return {Mixed}
|
||
* @api public
|
||
*/
|
||
|
||
function keyCode(searchInput) {
|
||
// Keyboard Events
|
||
if (searchInput && 'object' === typeof searchInput) {
|
||
var hasKeyCode = searchInput.which || searchInput.keyCode || searchInput.charCode
|
||
if (hasKeyCode) searchInput = hasKeyCode
|
||
}
|
||
|
||
// Numbers
|
||
if ('number' === typeof searchInput) return names[searchInput]
|
||
|
||
// Everything else (cast to string)
|
||
var search = String(searchInput)
|
||
|
||
// check codes
|
||
var foundNamedKey = codes[search.toLowerCase()]
|
||
if (foundNamedKey) return foundNamedKey
|
||
|
||
// check aliases
|
||
var foundNamedKey = aliases[search.toLowerCase()]
|
||
if (foundNamedKey) return foundNamedKey
|
||
|
||
// weird character?
|
||
if (search.length === 1) return search.charCodeAt(0)
|
||
|
||
return undefined
|
||
}
|
||
|
||
/**
|
||
* Compares a keyboard event with a given keyCode or keyName.
|
||
*
|
||
* @param {Event} event Keyboard event that should be tested
|
||
* @param {Mixed} keyCode {Number} or keyName {String}
|
||
* @return {Boolean}
|
||
* @api public
|
||
*/
|
||
keyCode.isEventKey = function isEventKey(event, nameOrCode) {
|
||
if (event && 'object' === typeof event) {
|
||
var keyCode = event.which || event.keyCode || event.charCode
|
||
if (keyCode === null || keyCode === undefined) { return false; }
|
||
if (typeof nameOrCode === 'string') {
|
||
// check codes
|
||
var foundNamedKey = codes[nameOrCode.toLowerCase()]
|
||
if (foundNamedKey) { return foundNamedKey === keyCode; }
|
||
|
||
// check aliases
|
||
var foundNamedKey = aliases[nameOrCode.toLowerCase()]
|
||
if (foundNamedKey) { return foundNamedKey === keyCode; }
|
||
} else if (typeof nameOrCode === 'number') {
|
||
return nameOrCode === keyCode;
|
||
}
|
||
return false;
|
||
}
|
||
}
|
||
|
||
exports = module.exports = keyCode;
|
||
|
||
/**
|
||
* Get by name
|
||
*
|
||
* exports.code['enter'] // => 13
|
||
*/
|
||
|
||
var codes = exports.code = exports.codes = {
|
||
'backspace': 8,
|
||
'tab': 9,
|
||
'enter': 13,
|
||
'shift': 16,
|
||
'ctrl': 17,
|
||
'alt': 18,
|
||
'pause/break': 19,
|
||
'caps lock': 20,
|
||
'esc': 27,
|
||
'space': 32,
|
||
'page up': 33,
|
||
'page down': 34,
|
||
'end': 35,
|
||
'home': 36,
|
||
'left': 37,
|
||
'up': 38,
|
||
'right': 39,
|
||
'down': 40,
|
||
'insert': 45,
|
||
'delete': 46,
|
||
'command': 91,
|
||
'left command': 91,
|
||
'right command': 93,
|
||
'numpad *': 106,
|
||
'numpad +': 107,
|
||
'numpad -': 109,
|
||
'numpad .': 110,
|
||
'numpad /': 111,
|
||
'num lock': 144,
|
||
'scroll lock': 145,
|
||
'my computer': 182,
|
||
'my calculator': 183,
|
||
';': 186,
|
||
'=': 187,
|
||
',': 188,
|
||
'-': 189,
|
||
'.': 190,
|
||
'/': 191,
|
||
'`': 192,
|
||
'[': 219,
|
||
'\\': 220,
|
||
']': 221,
|
||
"'": 222
|
||
}
|
||
|
||
// Helper aliases
|
||
|
||
var aliases = exports.aliases = {
|
||
'windows': 91,
|
||
'⇧': 16,
|
||
'⌥': 18,
|
||
'⌃': 17,
|
||
'⌘': 91,
|
||
'ctl': 17,
|
||
'control': 17,
|
||
'option': 18,
|
||
'pause': 19,
|
||
'break': 19,
|
||
'caps': 20,
|
||
'return': 13,
|
||
'escape': 27,
|
||
'spc': 32,
|
||
'spacebar': 32,
|
||
'pgup': 33,
|
||
'pgdn': 34,
|
||
'ins': 45,
|
||
'del': 46,
|
||
'cmd': 91
|
||
}
|
||
|
||
/*!
|
||
* Programatically add the following
|
||
*/
|
||
|
||
// lower case chars
|
||
for (i = 97; i < 123; i++) codes[String.fromCharCode(i)] = i - 32
|
||
|
||
// numbers
|
||
for (var i = 48; i < 58; i++) codes[i - 48] = i
|
||
|
||
// function keys
|
||
for (i = 1; i < 13; i++) codes['f'+i] = i + 111
|
||
|
||
// numpad keys
|
||
for (i = 0; i < 10; i++) codes['numpad '+i] = i + 96
|
||
|
||
/**
|
||
* Get by code
|
||
*
|
||
* exports.name[13] // => 'Enter'
|
||
*/
|
||
|
||
var names = exports.names = exports.title = {} // title for backward compat
|
||
|
||
// Create reverse mapping
|
||
for (i in codes) names[codes[i]] = i
|
||
|
||
// Add aliases
|
||
for (var alias in aliases) {
|
||
codes[alias] = aliases[alias]
|
||
}
|
||
|
||
|
||
/***/ }),
|
||
|
||
/***/ 143:
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
var baseFindIndex = __webpack_require__(100),
|
||
baseIsNaN = __webpack_require__(211),
|
||
strictIndexOf = __webpack_require__(212);
|
||
|
||
/**
|
||
* The base implementation of `_.indexOf` without `fromIndex` bounds checks.
|
||
*
|
||
* @private
|
||
* @param {Array} array The array to inspect.
|
||
* @param {*} value The value to search for.
|
||
* @param {number} fromIndex The index to search from.
|
||
* @returns {number} Returns the index of the matched value, else `-1`.
|
||
*/
|
||
function baseIndexOf(array, value, fromIndex) {
|
||
return value === value
|
||
? strictIndexOf(array, value, fromIndex)
|
||
: baseFindIndex(array, baseIsNaN, fromIndex);
|
||
}
|
||
|
||
module.exports = baseIndexOf;
|
||
|
||
|
||
/***/ }),
|
||
|
||
/***/ 174:
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
"use strict";
|
||
|
||
|
||
Object.defineProperty(exports, "__esModule", {
|
||
value: true
|
||
});
|
||
exports.default = toggleEdit;
|
||
/**
|
||
* toggle between edit and view modes
|
||
* @param {object} location stub for testing
|
||
*/
|
||
function toggleEdit(location) {
|
||
var query = '?edit=true',
|
||
endQuery = '&edit=true';
|
||
|
||
var url = void 0,
|
||
queryIndex = void 0,
|
||
endQueryIndex = void 0;
|
||
|
||
location = location || /* istanbul ignore next: can't stub window.location */window.location;
|
||
url = location.protocol + '//' + location.host + location.pathname + location.search; // don't keep the hash
|
||
queryIndex = url.indexOf(query);
|
||
endQueryIndex = url.indexOf(endQuery);
|
||
|
||
if (queryIndex > -1) {
|
||
url = url.substring(0, queryIndex);
|
||
} else if (endQueryIndex > -1) {
|
||
url = url.substring(0, endQueryIndex);
|
||
} else if (url.indexOf('?') > -1) {
|
||
url = url + endQuery;
|
||
} else {
|
||
url = url + query;
|
||
}
|
||
|
||
location.assign(url);
|
||
}
|
||
|
||
/***/ }),
|
||
|
||
/***/ 190:
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
var toNumber = __webpack_require__(87);
|
||
|
||
/** Used as references for various `Number` constants. */
|
||
var INFINITY = 1 / 0,
|
||
MAX_INTEGER = 1.7976931348623157e+308;
|
||
|
||
/**
|
||
* Converts `value` to a finite number.
|
||
*
|
||
* @static
|
||
* @memberOf _
|
||
* @since 4.12.0
|
||
* @category Lang
|
||
* @param {*} value The value to convert.
|
||
* @returns {number} Returns the converted number.
|
||
* @example
|
||
*
|
||
* _.toFinite(3.2);
|
||
* // => 3.2
|
||
*
|
||
* _.toFinite(Number.MIN_VALUE);
|
||
* // => 5e-324
|
||
*
|
||
* _.toFinite(Infinity);
|
||
* // => 1.7976931348623157e+308
|
||
*
|
||
* _.toFinite('3.2');
|
||
* // => 3.2
|
||
*/
|
||
function toFinite(value) {
|
||
if (!value) {
|
||
return value === 0 ? value : 0;
|
||
}
|
||
value = toNumber(value);
|
||
if (value === INFINITY || value === -INFINITY) {
|
||
var sign = (value < 0 ? -1 : 1);
|
||
return sign * MAX_INTEGER;
|
||
}
|
||
return value === value ? value : 0;
|
||
}
|
||
|
||
module.exports = toFinite;
|
||
|
||
|
||
/***/ }),
|
||
|
||
/***/ 211:
|
||
/***/ (function(module, exports) {
|
||
|
||
/**
|
||
* The base implementation of `_.isNaN` without support for number objects.
|
||
*
|
||
* @private
|
||
* @param {*} value The value to check.
|
||
* @returns {boolean} Returns `true` if `value` is `NaN`, else `false`.
|
||
*/
|
||
function baseIsNaN(value) {
|
||
return value !== value;
|
||
}
|
||
|
||
module.exports = baseIsNaN;
|
||
|
||
|
||
/***/ }),
|
||
|
||
/***/ 212:
|
||
/***/ (function(module, exports) {
|
||
|
||
/**
|
||
* A specialized version of `_.indexOf` which performs strict equality
|
||
* comparisons of values, i.e. `===`.
|
||
*
|
||
* @private
|
||
* @param {Array} array The array to inspect.
|
||
* @param {*} value The value to search for.
|
||
* @param {number} fromIndex The index to search from.
|
||
* @returns {number} Returns the index of the matched value, else `-1`.
|
||
*/
|
||
function strictIndexOf(array, value, fromIndex) {
|
||
var index = fromIndex - 1,
|
||
length = array.length;
|
||
|
||
while (++index < length) {
|
||
if (array[index] === value) {
|
||
return index;
|
||
}
|
||
}
|
||
return -1;
|
||
}
|
||
|
||
module.exports = strictIndexOf;
|
||
|
||
|
||
/***/ }),
|
||
|
||
/***/ 213:
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
var baseValues = __webpack_require__(214),
|
||
keys = __webpack_require__(42);
|
||
|
||
/**
|
||
* Creates an array of the own enumerable string keyed property values of `object`.
|
||
*
|
||
* **Note:** Non-object values are coerced to objects.
|
||
*
|
||
* @static
|
||
* @since 0.1.0
|
||
* @memberOf _
|
||
* @category Object
|
||
* @param {Object} object The object to query.
|
||
* @returns {Array} Returns the array of property values.
|
||
* @example
|
||
*
|
||
* function Foo() {
|
||
* this.a = 1;
|
||
* this.b = 2;
|
||
* }
|
||
*
|
||
* Foo.prototype.c = 3;
|
||
*
|
||
* _.values(new Foo);
|
||
* // => [1, 2] (iteration order is not guaranteed)
|
||
*
|
||
* _.values('hi');
|
||
* // => ['h', 'i']
|
||
*/
|
||
function values(object) {
|
||
return object == null ? [] : baseValues(object, keys(object));
|
||
}
|
||
|
||
module.exports = values;
|
||
|
||
|
||
/***/ }),
|
||
|
||
/***/ 214:
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
var arrayMap = __webpack_require__(43);
|
||
|
||
/**
|
||
* The base implementation of `_.values` and `_.valuesIn` which creates an
|
||
* array of `object` property values corresponding to the property names
|
||
* of `props`.
|
||
*
|
||
* @private
|
||
* @param {Object} object The object to query.
|
||
* @param {Array} props The property names to get values for.
|
||
* @returns {Object} Returns the array of property values.
|
||
*/
|
||
function baseValues(object, props) {
|
||
return arrayMap(props, function(key) {
|
||
return object[key];
|
||
});
|
||
}
|
||
|
||
module.exports = baseValues;
|
||
|
||
|
||
/***/ }),
|
||
|
||
/***/ 261:
|
||
/***/ (function(module, exports) {
|
||
|
||
// removed by extract-text-webpack-plugin
|
||
|
||
/***/ }),
|
||
|
||
/***/ 3:
|
||
/***/ (function(module, exports) {
|
||
|
||
/**
|
||
* Checks if `value` is classified as an `Array` object.
|
||
*
|
||
* @static
|
||
* @memberOf _
|
||
* @since 0.1.0
|
||
* @category Lang
|
||
* @param {*} value The value to check.
|
||
* @returns {boolean} Returns `true` if `value` is an array, else `false`.
|
||
* @example
|
||
*
|
||
* _.isArray([1, 2, 3]);
|
||
* // => true
|
||
*
|
||
* _.isArray(document.body.children);
|
||
* // => false
|
||
*
|
||
* _.isArray('abc');
|
||
* // => false
|
||
*
|
||
* _.isArray(_.noop);
|
||
* // => false
|
||
*/
|
||
var isArray = Array.isArray;
|
||
|
||
module.exports = isArray;
|
||
|
||
|
||
/***/ }),
|
||
|
||
/***/ 4:
|
||
/***/ (function(module, exports) {
|
||
|
||
/**
|
||
* Checks if `value` is the
|
||
* [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)
|
||
* of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)
|
||
*
|
||
* @static
|
||
* @memberOf _
|
||
* @since 0.1.0
|
||
* @category Lang
|
||
* @param {*} value The value to check.
|
||
* @returns {boolean} Returns `true` if `value` is an object, else `false`.
|
||
* @example
|
||
*
|
||
* _.isObject({});
|
||
* // => true
|
||
*
|
||
* _.isObject([1, 2, 3]);
|
||
* // => true
|
||
*
|
||
* _.isObject(_.noop);
|
||
* // => true
|
||
*
|
||
* _.isObject(null);
|
||
* // => false
|
||
*/
|
||
function isObject(value) {
|
||
var type = typeof value;
|
||
return value != null && (type == 'object' || type == 'function');
|
||
}
|
||
|
||
module.exports = isObject;
|
||
|
||
|
||
/***/ }),
|
||
|
||
/***/ 41:
|
||
/***/ (function(module, exports) {
|
||
|
||
/**
|
||
* Checks if `value` is object-like. A value is object-like if it's not `null`
|
||
* and has a `typeof` result of "object".
|
||
*
|
||
* @static
|
||
* @memberOf _
|
||
* @since 4.0.0
|
||
* @category Lang
|
||
* @param {*} value The value to check.
|
||
* @returns {boolean} Returns `true` if `value` is object-like, else `false`.
|
||
* @example
|
||
*
|
||
* _.isObjectLike({});
|
||
* // => true
|
||
*
|
||
* _.isObjectLike([1, 2, 3]);
|
||
* // => true
|
||
*
|
||
* _.isObjectLike(_.noop);
|
||
* // => false
|
||
*
|
||
* _.isObjectLike(null);
|
||
* // => false
|
||
*/
|
||
function isObjectLike(value) {
|
||
return value != null && typeof value == 'object';
|
||
}
|
||
|
||
module.exports = isObjectLike;
|
||
|
||
|
||
/***/ }),
|
||
|
||
/***/ 42:
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
var overArg = __webpack_require__(75);
|
||
|
||
/* Built-in method references for those with the same name as other `lodash` methods. */
|
||
var nativeKeys = overArg(Object.keys, Object);
|
||
|
||
module.exports = nativeKeys;
|
||
|
||
|
||
/***/ }),
|
||
|
||
/***/ 43:
|
||
/***/ (function(module, exports) {
|
||
|
||
/**
|
||
* A specialized version of `_.map` for arrays without support for iteratee
|
||
* shorthands.
|
||
*
|
||
* @private
|
||
* @param {Array} [array] The array to iterate over.
|
||
* @param {Function} iteratee The function invoked per iteration.
|
||
* @returns {Array} Returns the new mapped array.
|
||
*/
|
||
function arrayMap(array, iteratee) {
|
||
var index = -1,
|
||
length = array == null ? 0 : array.length,
|
||
result = Array(length);
|
||
|
||
while (++index < length) {
|
||
result[index] = iteratee(array[index], index, array);
|
||
}
|
||
return result;
|
||
}
|
||
|
||
module.exports = arrayMap;
|
||
|
||
|
||
/***/ }),
|
||
|
||
/***/ 44:
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
var isFunction = __webpack_require__(49),
|
||
isLength = __webpack_require__(138);
|
||
|
||
/**
|
||
* Checks if `value` is array-like. A value is considered array-like if it's
|
||
* not a function and has a `value.length` that's an integer greater than or
|
||
* equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.
|
||
*
|
||
* @static
|
||
* @memberOf _
|
||
* @since 4.0.0
|
||
* @category Lang
|
||
* @param {*} value The value to check.
|
||
* @returns {boolean} Returns `true` if `value` is array-like, else `false`.
|
||
* @example
|
||
*
|
||
* _.isArrayLike([1, 2, 3]);
|
||
* // => true
|
||
*
|
||
* _.isArrayLike(document.body.children);
|
||
* // => true
|
||
*
|
||
* _.isArrayLike('abc');
|
||
* // => true
|
||
*
|
||
* _.isArrayLike(_.noop);
|
||
* // => false
|
||
*/
|
||
function isArrayLike(value) {
|
||
return value != null && isLength(value.length) && !isFunction(value);
|
||
}
|
||
|
||
module.exports = isArrayLike;
|
||
|
||
|
||
/***/ }),
|
||
|
||
/***/ 49:
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
var baseGetTag = __webpack_require__(50),
|
||
isObject = __webpack_require__(4);
|
||
|
||
/** `Object#toString` result references. */
|
||
var asyncTag = '[object AsyncFunction]',
|
||
funcTag = '[object Function]',
|
||
genTag = '[object GeneratorFunction]',
|
||
proxyTag = '[object Proxy]';
|
||
|
||
/**
|
||
* Checks if `value` is classified as a `Function` object.
|
||
*
|
||
* @static
|
||
* @memberOf _
|
||
* @since 0.1.0
|
||
* @category Lang
|
||
* @param {*} value The value to check.
|
||
* @returns {boolean} Returns `true` if `value` is a function, else `false`.
|
||
* @example
|
||
*
|
||
* _.isFunction(_);
|
||
* // => true
|
||
*
|
||
* _.isFunction(/abc/);
|
||
* // => false
|
||
*/
|
||
function isFunction(value) {
|
||
if (!isObject(value)) {
|
||
return false;
|
||
}
|
||
// The use of `Object#toString` avoids issues with the `typeof` operator
|
||
// in Safari 9 which returns 'object' for typed arrays and other constructors.
|
||
var tag = baseGetTag(value);
|
||
return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;
|
||
}
|
||
|
||
module.exports = isFunction;
|
||
|
||
|
||
/***/ }),
|
||
|
||
/***/ 5:
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
var baseGetTag = __webpack_require__(50),
|
||
isArray = __webpack_require__(3),
|
||
isObjectLike = __webpack_require__(41);
|
||
|
||
/** `Object#toString` result references. */
|
||
var stringTag = '[object String]';
|
||
|
||
/**
|
||
* Checks if `value` is classified as a `String` primitive or object.
|
||
*
|
||
* @static
|
||
* @since 0.1.0
|
||
* @memberOf _
|
||
* @category Lang
|
||
* @param {*} value The value to check.
|
||
* @returns {boolean} Returns `true` if `value` is a string, else `false`.
|
||
* @example
|
||
*
|
||
* _.isString('abc');
|
||
* // => true
|
||
*
|
||
* _.isString(1);
|
||
* // => false
|
||
*/
|
||
function isString(value) {
|
||
return typeof value == 'string' ||
|
||
(!isArray(value) && isObjectLike(value) && baseGetTag(value) == stringTag);
|
||
}
|
||
|
||
module.exports = isString;
|
||
|
||
|
||
/***/ }),
|
||
|
||
/***/ 50:
|
||
/***/ (function(module, exports) {
|
||
|
||
/** Used for built-in method references. */
|
||
var objectProto = Object.prototype;
|
||
|
||
/**
|
||
* Used to resolve the
|
||
* [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
|
||
* of values.
|
||
*/
|
||
var nativeObjectToString = objectProto.toString;
|
||
|
||
/**
|
||
* Converts `value` to a string using `Object.prototype.toString`.
|
||
*
|
||
* @private
|
||
* @param {*} value The value to convert.
|
||
* @returns {string} Returns the converted string.
|
||
*/
|
||
function objectToString(value) {
|
||
return nativeObjectToString.call(value);
|
||
}
|
||
|
||
module.exports = objectToString;
|
||
|
||
|
||
/***/ }),
|
||
|
||
/***/ 51:
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
var toFinite = __webpack_require__(190);
|
||
|
||
/**
|
||
* Converts `value` to an integer.
|
||
*
|
||
* **Note:** This method is loosely based on
|
||
* [`ToInteger`](http://www.ecma-international.org/ecma-262/7.0/#sec-tointeger).
|
||
*
|
||
* @static
|
||
* @memberOf _
|
||
* @since 4.0.0
|
||
* @category Lang
|
||
* @param {*} value The value to convert.
|
||
* @returns {number} Returns the converted integer.
|
||
* @example
|
||
*
|
||
* _.toInteger(3.2);
|
||
* // => 3
|
||
*
|
||
* _.toInteger(Number.MIN_VALUE);
|
||
* // => 0
|
||
*
|
||
* _.toInteger(Infinity);
|
||
* // => 1.7976931348623157e+308
|
||
*
|
||
* _.toInteger('3.2');
|
||
* // => 3
|
||
*/
|
||
function toInteger(value) {
|
||
var result = toFinite(value),
|
||
remainder = result % 1;
|
||
|
||
return result === result ? (remainder ? result - remainder : result) : 0;
|
||
}
|
||
|
||
module.exports = toInteger;
|
||
|
||
|
||
/***/ }),
|
||
|
||
/***/ 62:
|
||
/***/ (function(module, exports) {
|
||
|
||
/**
|
||
* This method returns `false`.
|
||
*
|
||
* @static
|
||
* @memberOf _
|
||
* @since 4.13.0
|
||
* @category Util
|
||
* @returns {boolean} Returns `false`.
|
||
* @example
|
||
*
|
||
* _.times(2, _.stubFalse);
|
||
* // => [false, false]
|
||
*/
|
||
function stubFalse() {
|
||
return false;
|
||
}
|
||
|
||
module.exports = stubFalse;
|
||
|
||
|
||
/***/ }),
|
||
|
||
/***/ 7:
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
var baseIndexOf = __webpack_require__(143),
|
||
isArrayLike = __webpack_require__(44),
|
||
isString = __webpack_require__(5),
|
||
toInteger = __webpack_require__(51),
|
||
values = __webpack_require__(213);
|
||
|
||
/* Built-in method references for those with the same name as other `lodash` methods. */
|
||
var nativeMax = Math.max;
|
||
|
||
/**
|
||
* Checks if `value` is in `collection`. If `collection` is a string, it's
|
||
* checked for a substring of `value`, otherwise
|
||
* [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
|
||
* is used for equality comparisons. If `fromIndex` is negative, it's used as
|
||
* the offset from the end of `collection`.
|
||
*
|
||
* @static
|
||
* @memberOf _
|
||
* @since 0.1.0
|
||
* @category Collection
|
||
* @param {Array|Object|string} collection The collection to inspect.
|
||
* @param {*} value The value to search for.
|
||
* @param {number} [fromIndex=0] The index to search from.
|
||
* @param- {Object} [guard] Enables use as an iteratee for methods like `_.reduce`.
|
||
* @returns {boolean} Returns `true` if `value` is found, else `false`.
|
||
* @example
|
||
*
|
||
* _.includes([1, 2, 3], 1);
|
||
* // => true
|
||
*
|
||
* _.includes([1, 2, 3], 1, 2);
|
||
* // => false
|
||
*
|
||
* _.includes({ 'a': 1, 'b': 2 }, 1);
|
||
* // => true
|
||
*
|
||
* _.includes('abcd', 'bc');
|
||
* // => true
|
||
*/
|
||
function includes(collection, value, fromIndex, guard) {
|
||
collection = isArrayLike(collection) ? collection : values(collection);
|
||
fromIndex = (fromIndex && !guard) ? toInteger(fromIndex) : 0;
|
||
|
||
var length = collection.length;
|
||
if (fromIndex < 0) {
|
||
fromIndex = nativeMax(length + fromIndex, 0);
|
||
}
|
||
return isString(collection)
|
||
? (fromIndex <= length && collection.indexOf(value, fromIndex) > -1)
|
||
: (!!length && baseIndexOf(collection, value, fromIndex) > -1);
|
||
}
|
||
|
||
module.exports = includes;
|
||
|
||
|
||
/***/ }),
|
||
|
||
/***/ 745:
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
"use strict";
|
||
|
||
|
||
Object.defineProperty(exports, "__esModule", {
|
||
value: true
|
||
});
|
||
|
||
var _includes2 = __webpack_require__(7);
|
||
|
||
var _includes3 = _interopRequireDefault(_includes2);
|
||
|
||
exports.default = addListeners;
|
||
|
||
var _keycode = __webpack_require__(139);
|
||
|
||
var _keycode2 = _interopRequireDefault(_keycode);
|
||
|
||
var _toggleEdit = __webpack_require__(174);
|
||
|
||
var _toggleEdit2 = _interopRequireDefault(_toggleEdit);
|
||
|
||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
||
|
||
var secretKilnKey = '';
|
||
|
||
/**
|
||
* show clay logo
|
||
*/
|
||
function showLogo() {
|
||
var logo = document.querySelector('.clay-kiln-logo');
|
||
|
||
if (logo) {
|
||
logo.classList.add('show');
|
||
}
|
||
}
|
||
|
||
/**
|
||
* add listeners for shift + CLAY to the document
|
||
*/
|
||
function addListeners() {
|
||
/**
|
||
* listen for shift + C L A Y
|
||
* when users hit that, show the logo (then enter edit mode on keyup)
|
||
*/
|
||
document.addEventListener('keydown', function (e) {
|
||
var key = (0, _keycode2.default)(e);
|
||
|
||
if ((0, _includes3.default)(['c', 'l', 'a', 'y'], key) && e.shiftKey === true) {
|
||
secretKilnKey += key;
|
||
} else {
|
||
// if we hit any other character, reset the key
|
||
secretKilnKey = '';
|
||
}
|
||
|
||
// check secret key
|
||
if (secretKilnKey === 'clay') {
|
||
showLogo();
|
||
} else if (secretKilnKey.length > 4 && (0, _includes3.default)(secretKilnKey, 'clay')) {
|
||
(0, _toggleEdit2.default)();
|
||
} else if (secretKilnKey.length > 4) {
|
||
// if we hit more than four characters, reset the key
|
||
secretKilnKey = '';
|
||
}
|
||
});
|
||
|
||
document.addEventListener('keyup', function () {
|
||
if (secretKilnKey === 'clay') {
|
||
(0, _toggleEdit2.default)();
|
||
}
|
||
});
|
||
}
|
||
|
||
/***/ }),
|
||
|
||
/***/ 75:
|
||
/***/ (function(module, exports) {
|
||
|
||
/**
|
||
* Creates a unary function that invokes `func` with its argument transformed.
|
||
*
|
||
* @private
|
||
* @param {Function} func The function to wrap.
|
||
* @param {Function} transform The argument transform.
|
||
* @returns {Function} Returns the new function.
|
||
*/
|
||
function overArg(func, transform) {
|
||
return function(arg) {
|
||
return func(transform(arg));
|
||
};
|
||
}
|
||
|
||
module.exports = overArg;
|
||
|
||
|
||
/***/ }),
|
||
|
||
/***/ 87:
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
var isObject = __webpack_require__(4),
|
||
isSymbol = __webpack_require__(62);
|
||
|
||
/** Used as references for various `Number` constants. */
|
||
var NAN = 0 / 0;
|
||
|
||
/** Used to match leading and trailing whitespace. */
|
||
var reTrim = /^\s+|\s+$/g;
|
||
|
||
/** Used to detect bad signed hexadecimal string values. */
|
||
var reIsBadHex = /^[-+]0x[0-9a-f]+$/i;
|
||
|
||
/** Used to detect binary string values. */
|
||
var reIsBinary = /^0b[01]+$/i;
|
||
|
||
/** Used to detect octal string values. */
|
||
var reIsOctal = /^0o[0-7]+$/i;
|
||
|
||
/** Built-in method references without a dependency on `root`. */
|
||
var freeParseInt = parseInt;
|
||
|
||
/**
|
||
* Converts `value` to a number.
|
||
*
|
||
* @static
|
||
* @memberOf _
|
||
* @since 4.0.0
|
||
* @category Lang
|
||
* @param {*} value The value to process.
|
||
* @returns {number} Returns the number.
|
||
* @example
|
||
*
|
||
* _.toNumber(3.2);
|
||
* // => 3.2
|
||
*
|
||
* _.toNumber(Number.MIN_VALUE);
|
||
* // => 5e-324
|
||
*
|
||
* _.toNumber(Infinity);
|
||
* // => Infinity
|
||
*
|
||
* _.toNumber('3.2');
|
||
* // => 3.2
|
||
*/
|
||
function toNumber(value) {
|
||
if (typeof value == 'number') {
|
||
return value;
|
||
}
|
||
if (isSymbol(value)) {
|
||
return NAN;
|
||
}
|
||
if (isObject(value)) {
|
||
var other = typeof value.valueOf == 'function' ? value.valueOf() : value;
|
||
value = isObject(other) ? (other + '') : other;
|
||
}
|
||
if (typeof value != 'string') {
|
||
return value === 0 ? value : +value;
|
||
}
|
||
value = value.replace(reTrim, '');
|
||
var isBinary = reIsBinary.test(value);
|
||
return (isBinary || reIsOctal.test(value))
|
||
? freeParseInt(value.slice(2), isBinary ? 2 : 8)
|
||
: (reIsBadHex.test(value) ? NAN : +value);
|
||
}
|
||
|
||
module.exports = toNumber;
|
||
|
||
|
||
/***/ })
|
||
|
||
/******/ });
|
||
</script>
|
||
|
||
<script type="text/javascript">
|
||
// <![CDATA[
|
||
window.modules=[];
|
||
window.modules["1"] = [function(require,module,exports){"use strict";var isEditMode=require(925),getArticleType=function(){var e,t=document.querySelector("article");return null!=(e=null==t?void 0:t.dataset.articleType)?e:null},getRubric=function(){var e,t=document.querySelector("article");return null!=(e=null==t?void 0:t.dataset.rubric)?e:null};function isArticlePage(){if(isEditMode())return!1;var e=JSON.parse(document.querySelector(".slate-analytics-js").textContent),t=e.page_type,r=e.page_id,l=e.url,i=l?new URL(l):null;return!("article"!==t||r.includes("/standalone-page/")||null!=i&&i.pathname.includes("/404"))}module.exports={getArticleType:getArticleType,getRubric:getRubric,isArticlePage:isArticlePage};
|
||
}, {"925":925}];
|
||
window.modules["2"] = [function(require,module,exports){"use strict";var sendSophiVariablesToPiano=function(e){try{var i=function(){if(isArticlePage()){var i,o=function(){var e,o,t=null==(e=window.sophi)||null==(e=e.dataLayer)?void 0:e.assignedGroup;t||(t="control"),window.tp.push(["setCustomVariable","sophiAssignedGroup",t]);var n=null==(o=i)||null==(o=o.outcome)?void 0:o.wallType;n?window.tp.push(["setCustomVariable","sophiDecision",n]):window.tp.push(["setCustomVariable","sophiDecision","none"])},t=function(){if(e)return Promise.resolve(getWallDecision(e)).then(function(e){i=e})}();return t&&t.then?t.then(o):o()}}();return Promise.resolve(i&&i.then?i.then(function(){}):void 0)}catch(e){return Promise.reject(e)}},_require=require(1),isArticlePage=_require.isArticlePage,sophiBlocked=!1;function loadSophi(e){var i=document.createElement("script");i.id="sophi-loader",i.src="https://cdn.sophi.io/assets/demeter/1/stable/"+e+".js?isConsented=true",document.head.appendChild(i),window._s("l"),i.addEventListener("error",function(){sophiBlocked=!0,window._s&&window._s("xsl")})}function getWallDecision(e){var i=new Promise(function(e){setTimeout(e,1e3,{outcome:{wallType:"fallback"}})}),o=demeter("getDecision",{args:{visitor:e}});return Promise.any([o,i])}function logSophiPageview(e,i){demeter("pageview",{args:{article:"article"===e,section:i}})}function updateSophiCustomProperties(e){demeter("userProperties",{args:e})}module.exports={getWallDecision:getWallDecision,loadSophi:loadSophi,logSophiPageview:logSophiPageview,sendSophiVariablesToPiano:sendSophiVariablesToPiano,sophiBlocked:sophiBlocked,updateSophiCustomProperties:updateSophiCustomProperties};
|
||
}, {"1":1}];
|
||
window.modules["3"] = [function(require,module,exports){"use strict";var modalResolve=null,modalPromise=new Promise(function(e){modalResolve=e});function getModalStatus(){return modalPromise}function updateModalStatus(e){var t=!!e.result.events.find(function(e){return"showTemplate"===e.eventType&&"modal"===e.eventParams.displayMode});modalResolve(t?"MODAL":"NONE")}module.exports={getModalStatus:getModalStatus,updateModalStatus:updateModalStatus};
|
||
}, {}];
|
||
window.modules["4"] = [function(require,module,exports){"use strict";var membership=require(7),paywallResolve=null,paywallPromise=new Promise(function(e){paywallResolve=e});function getPaywallStatus(){return paywallPromise}function updatePaywallStatus(e){var a;if(membership.isMemberSkipLookup())paywallResolve({isPaywallDisplayed:!1,paywallType:"none"});else if("addSlatePlusTag"!==(null==(a=document.querySelector(".slate-roadblock"))||null==(a=a.dataset)?void 0:a.behavior)){var l,t,n=e.result.events,r=!!n.find(function(e){return"showOffer"===e.eventType&&e.eventParams.containerSelector.includes("#roadblock")})||(l=n,!!(t=new Set(l.filter(function(e){return"setResponseVariable"===e.eventType}).map(function(e){var a;return null==(a=e.eventParams)||null==(a=a.responseVariables)?void 0:a.templateId}).filter(Boolean))).size&&l.filter(function(e){return"showOffer"===e.eventType}).some(function(e){var a;return t.has(null==(a=e.eventParams)?void 0:a.containerSelector)}));paywallResolve({isPaywallDisplayed:r,paywallType:r?"roadblock":"none"})}else paywallResolve({isPaywallDisplayed:!0,paywallType:"hardwall"})}module.exports={getPaywallStatus:getPaywallStatus,updatePaywallStatus:updatePaywallStatus};
|
||
}, {"7":7}];
|
||
window.modules["5"] = [function(require,module,exports){"use strict";var _require=require(922),getLayoutBreakpoint=_require.getLayoutBreakpoint;function track(e,t,o,n){if(void 0===o&&(o={}),!e||!e.length)throw new Error("eventName is required. Got "+e);if(e.length>255)throw new Error("eventName must be shorter than 255 characters. Got "+e);var a=new URL(document.location.protocol+"//"+document.location.hostname);if(a.pathname="n4qzk8pw",a.searchParams.set("eventName",encodeURIComponent(e)),t){if("object"!=typeof t)throw new Error("eventData must be an object. Got "+t);o.noLayoutBreakpoint||(t.layoutBreakpoint=getLayoutBreakpoint(document.documentElement.clientWidth)),a.searchParams.set("eventData",encodeURIComponent(JSON.stringify(t)))}else o.noLayoutBreakpoint||a.searchParams.set("eventData",encodeURIComponent(JSON.stringify({layoutBreakpoint:getLayoutBreakpoint(document.documentElement.clientWidth)})));return n||(n=Function.prototype),fetch(a,{keepalive:!!o.keepalive}).then(n)}module.exports.track=track;
|
||
}, {"922":922}];
|
||
window.modules["6"] = [function(require,module,exports){"use strict";var piano=require(22),bqLog=require(5),_require=require("ad-lightning.client"),loadBoltive=_require.loadBoltive,cookies=require(55),adBlockDetected=!1,triggeredDetectors=[],ADBLOCK_DETECTED_COOKIE_NAME="adblock_detected",ADBLOCK_DETECTION_TIMEOUT_MS=3e3;function initAdBlockDetection(){var e=Promise.allSettled([baitAdElement(),adRequestsCheck(),pianoAdBlockDetection(),pianoScriptCheck()]),t=new Promise(function(e){return setTimeout(e,ADBLOCK_DETECTION_TIMEOUT_MS)});return Promise.race([e,t]).then(function(){return!!adBlockDetected&&(logAdBlockDetectionEvent(),setAdBlockCookie(),triggeredDetectors)})}function baitAdElement(){return new Promise(function(e){var t=document.createElement("div");t.className="ad-banner adsense gpt-ad",t.innerHTML="Ad Content",t.style.cssText="width:1px;height:1px;visibility:hidden;",document.body.appendChild(t),setTimeout(function(){(0===t.offsetHeight||0===t.offsetWidth||"none"===getComputedStyle(t).display)&&(adBlockDetected=!0,triggeredDetectors.push("element-bait")),document.body.removeChild(t),e()},1e3)})}function pianoAdBlockDetection(){return new Promise(function(e){var t=document.createElement("script");t.src="//www.npttech.com/advertising.js",t.addEventListener("error",function(){adBlockDetected=!0,triggeredDetectors.push("piano-bait"),e()}),t.addEventListener("load",function(){e()}),document.head.appendChild(t)})}function pianoScriptCheck(){return new Promise(function(e){piano.pianoInitPromise.then(function(){e()}).catch(function(){adBlockDetected=!0,triggeredDetectors.push("piano-script"),e()})})}function adRequestsCheck(){return loadBoltive().catch(function(){adBlockDetected=!0,triggeredDetectors.push("ad-scripts")})}function logAdBlockDetectionEvent(){bqLog.track("Ad Block Detected",{detectionMethods:triggeredDetectors.join(" ")})}function setAdBlockCookie(){cookies.set(ADBLOCK_DETECTED_COOKIE_NAME,triggeredDetectors.join(","),{expires:90,SameSite:"Strict"})}function hasAdBlockBeenDetected(){return!!cookies.get(ADBLOCK_DETECTED_COOKIE_NAME)}module.exports.initAdBlockDetection=initAdBlockDetection,module.exports.hasAdBlockBeenDetected=hasAdBlockBeenDetected;
|
||
}, {"5":5,"22":22,"55":55,"ad-lightning.client":"ad-lightning.client"}];
|
||
window.modules["7"] = [function(require,module,exports){"use strict";function _catch(e,r){try{var o=e()}catch(e){return r(e)}return o&&o.then?o.then(void 0,r):o}var getUserMembershipType=function(){try{var e,r=function(){if(e){var r=getMembershipType(),o=_catch(function(){return Promise.resolve(pianoService.getExtendedUserData("MyAccountFields")).then(function(e){pianoService.getCustomFieldValue(e,"is_staff")&&(r+="|staff")})},function(){console.error("Error getting extended User data")});return o&&o.then?o.then(function(){return r}):r}},o=_catch(function(){return Promise.resolve(isMember()).then(function(r){e=r})},function(e){console.error("Failure to get hasMembership",e)});return Promise.resolve(o&&o.then?o.then(r):r())}catch(e){return Promise.reject(e)}},getMembershipInfo=function(){return Promise.resolve(userCookiesReady).then(function(){if(hasSplusCookie()){var e=document.documentElement.dataset.myslateurl,r=toUrl(e);r.pathname="/users/slate_page_info/";var o=sessionStorage.getItem(IS_PURCHASING_KEY);o&&r.searchParams.set("purchase",!0);var t=new AbortController;return setTimeout(function(){return t.abort()},5e3),_catch(function(){var e={method:"GET",credentials:"include",headers:{Accept:"application/json"},signal:t.signal};return Promise.resolve(fetch(r.href,e)).then(function(e){return Promise.resolve(e.json()).then(function(e){return o&&sessionStorage.removeItem(IS_PURCHASING_KEY),window.dispatchEvent(new Event("returnedUserInfo")),e})})},function(e){"AbortError"===e.name?console.error("getMembershipInfo timed out after 5 seconds",e):console.error("Fetch for myslate membership info failed:",e),window.dispatchEvent(new Event("userInfoError"))})}})},isQuizMember=function(){return Promise.resolve(isMember()).then(function(e){if(!e)return!1;var r=getMembershipType();return["Slate_Plus_All_Access","Quiz","Games"].some(function(e){return r.includes(e)})})},isPodcastMember=function(){return Promise.resolve(isMember()).then(function(e){return!!e&&isPodcastRid(getMembershipType())})},isMember=function(){return Promise.resolve(userCookiesReady).then(function(){return hasSplusCookie()})},updateUser=function(){try{var e,r=function(){var r,o=!1;function t(e){return o?e:_catch(function(){return Promise.resolve(getUserResources()).then(function(e){return setPianoMember(e),Promise.resolve(getConversions()).then(function(e){var r=!1;function o(e){if(r)return e;getMembershipType().split("|").some(function(e){return["Slate_Plus_All_Access","Institutional_Plus"].includes(e)})?sendSophiVariablesToPiano():sendSophiVariablesToPiano("registered")}var t=checkIfLapsedUser(e.conversions||[]);updateSophiCustomProperties({1:t});var s=function(){if(n)return Promise.resolve(sendSophiVariablesToPiano()).then(function(){r=!0})}();return s&&s.then?s.then(o):o(s)})})},function(e){console.error("Error fetching user resources or conversions",e)})}var s,n=null==(r=e)?void 0:r.valid,i=getPianoId();i&&(null==(s=window)||null==(s=s.dataLayer)||s.push({event:"set_user_id",user_id:i}));var u=function(){if(!isLoggedIn()){var r=function(){o=!0};cookies.remove("splus",membershipCookieAttrs);var t=function(){if(n){window.tp.push(["setCustomVariable","giftlink_used",!0]);var r=new CustomEvent("hasValidGiftLink",{detail:Object.assign({},e)});return window.dispatchEvent(r),Promise.resolve(sendSophiVariablesToPiano()).then(function(){})}return Promise.resolve(sendSophiVariablesToPiano("anonymous")).then(function(){})}();return t&&t.then?t.then(r):r()}}();return u&&u.then?u.then(t):t(u)},o=getGiftToken(),t=function(){if(o)return Promise.resolve(redeemGiftLink(o)).then(function(r){e=r})}();return Promise.resolve(t&&t.then?t.then(r):r())}catch(e){return Promise.reject(e)}},pianoService=require(71),getPianoId=pianoService.getPianoId,getUserResources=pianoService.getUserResources,getConversions=pianoService.getConversions,_require=require(46),toUrl=_require.toUrl,cookies=require(55),_require2=require(2),sendSophiVariablesToPiano=_require2.sendSophiVariablesToPiano,updateSophiCustomProperties=_require2.updateSophiCustomProperties,_require3=require(116),redeemGiftLink=_require3.redeemGiftLink,getGiftToken=_require3.getGiftToken,membershipCookieAttrs={domain:"."+location.hostname},IS_PURCHASING_KEY="userIsPurchasing",userCookiesReady=updateUser();function checkIfLapsedUser(e){for(var r=["Slate_Plus_All_Access","Games"],o=0;o<e.length;o++){var t=e[o].user_access;if(r.includes(t.resource.rid))return!t.granted}return!1}function isMemberSkipLookup(){return hasSplusCookie()}function hasSplusCookie(){return!!getSplusCookie()}function getSplusCookie(){return cookies.getJSON("splus")}function setMembershipCookie(e,r){cookies.set(e,r,Object.assign({},membershipCookieAttrs,{expires:365,SameSite:"Strict",secure:"https:"===location.protocol}))}function setPianoMember(e){if(e.data instanceof Array){var r=e.data.filter(function(e){return e.granted}).map(function(e){return e.resource.rid});if((r=Array.from(new Set(r))).length>0){var o={membershipType:"piano",resourceIds:r};setMembershipCookie("splus",JSON.stringify(o))}else cookies.remove("splus",membershipCookieAttrs)}}function getMembershipType(){var e="none",r=getSplusCookie();return r&&(e=r.membershipType,r.resourceIds&&(e=e+"|"+r.resourceIds.join("|"))),e}function isPodcastRid(e){return["Slate_Plus_All_Access","Institutional_Plus"].some(function(r){return e.includes(r)})}function getPodcastInfo(e){if(!hasSplusCookie())throw new Error("User is not splus user.");var r=document.documentElement.dataset.myslateurl;return fetch(r+"/membership/podcasts_feeds/?feed="+e,{method:"GET",credentials:"include",headers:{Accept:"application/json"}}).then(function(e){return e.json().then(function(r){if(!e.ok)throw new Error(r.message);return r})})}function postPodcastSmsNumber(e,r){if(!hasSplusCookie())throw new Error("User is not splus user.");var o=document.documentElement.dataset.myslateurl+"/membership/podcasts_sms/",t={method:"POST",credentials:"include",headers:{Accept:"application/json"},body:JSON.stringify({phoneNumber:e,feedId:r})};return fetch(o,t).then(function(e){return e.text().then(function(r){if(!e.ok)throw new Error(r);return r})})}function isLoggedIn(){return!!getLoginId()}function getLoginId(){return getPianoId()}function getFeedUrl(e,r){for(var o=0;o<r.length;o++){var t=r[o];if(t.display_name===e)return t.feed_url}}function getUserEmail(){var e=pianoService.getPianoJwt();return e&&e.email.trim().toLowerCase()}function removeCookie(e){cookies.remove(e,membershipCookieAttrs)}module.exports.IS_PURCHASING_KEY=IS_PURCHASING_KEY,module.exports.getLoginId=getLoginId,module.exports.getMembershipType=getMembershipType,module.exports.getUserMembershipType=getUserMembershipType,module.exports.getMembershipInfo=getMembershipInfo,module.exports.isLoggedIn=isLoggedIn,module.exports.isMember=isMember,module.exports.isMemberSkipLookup=isMemberSkipLookup,module.exports.getFeedUrl=getFeedUrl,module.exports.setPianoMember=setPianoMember,module.exports.getSplusCookie=getSplusCookie,module.exports.updateUser=updateUser,module.exports.userCookiesReady=userCookiesReady,module.exports.getPodcastInfo=getPodcastInfo,module.exports.postPodcastSmsNumber=postPodcastSmsNumber,module.exports.getUserEmail=getUserEmail,module.exports.setMembershipCookie=setMembershipCookie,module.exports.removeCookie=removeCookie,module.exports.isPodcastMember=isPodcastMember,module.exports.isQuizMember=isQuizMember,module.exports.isPodcastRid=isPodcastRid,module.exports.checkIfLapsedUser=checkIfLapsedUser;
|
||
}, {"2":2,"46":46,"55":55,"71":71,"116":116}];
|
||
window.modules["8"] = [function(require,module,exports){"use strict";var profileFrame,sendUserDataToProfileFrame=function(){try{return Promise.resolve(piano.getExtendedUserData("attribution-menu")).then(function(e){profileFrame.source.postMessage({userData:e},profileFrame.origin)})}catch(e){return Promise.reject(e)}},slateAmplitude=require(21),cookies=require(55),piano=require(71),_require=require(83),getRedirectUrl=_require.getRedirectUrl,redirectToSpotify=_require.redirectToSpotify,_require2=require(86),coordinateHeights=_require2.coordinateHeights,pianoReady=!1;function init(){var e=window.tp;e.experience.init(),e.amplitude=slateAmplitude,pianoReady=!0,e.injectRunJs=function(e,i,n){e=e.replace(/\.js$/,""),console.debug("🎹 🌶️ Loading run-js - "+e);var o="/piano/scripts/run-js/"+e+".js";document.querySelector("script[src='"+o+"']")||slateGlobal.injectScript(o,i,n)},e.redirectToSpotify=redirectToSpotify,"/sign-in"===location.pathname||0===location.pathname.indexOf("/_pages/ckcwddy7w0000fhnb8lirc5ip")?signInExperience():"/create-account"!==location.pathname&&0!==location.pathname.indexOf("/_pages/ckd7owq8k00hp0mnbelmdx0lm")||createAccountExperience(),e.pianoId.isUserValid()||"/account/podcasts"!==location.pathname||addNoAccessClass(),e.pianoId.init({loggedOut:function(e){[".local.dev.slate.com",".dev-slate.com",".stage-slate.com",".slate.com"].forEach(function(e){["__utp","splus","show_slugs","sp_secure_id","coral_secure_login_token"].forEach(function(i){cookies.remove(i,{domain:e})})})},profileUpdate:function(){sendUserDataToProfileFrame()}})}function addNoAccessClass(){document.body.classList.add("js-podcast-feed--no-access")}function renderScreen(e){window.tp.pianoId.show({displayMode:"inline",screen:e,containerSelector:"#createAccountOrSignIn"})}function signInExperience(){window.tp.pianoId.getUser()?location.href=getRedirectUrl()||"/":renderScreen("login")}function createAccountExperience(){window.tp.pianoId.getUser()?location.href=getRedirectUrl()||"/account":renderScreen("register")}var accountEl=document.querySelector("#account");accountEl&&window.addEventListener("message",function(e){!e.data.profileReady||null===e.origin.match(/\bpiano\.io$/)&&null===e.origin.match(/\btinypass\.com$/)||(profileFrame={source:e.source,origin:e.origin},sendUserDataToProfileFrame())}),coordinateHeights(),module.exports={afterPianoInit:init,isPianoInitialized:function(){return pianoReady}};
|
||
}, {"21":21,"55":55,"71":71,"83":83,"86":86}];
|
||
window.modules["15"] = [function(require,module,exports){"use strict";var initSailthru=function(t){t&&window.nonIabVendorApi.registerVendor("sailthru",{categories:["C0002","C0003"],initFunc:function(i,n){return!!i&&(slateGlobal.injectScript("https://ak.sail-horizon.com/spm/spm.v1.min.js",function(){var i={customerId:t};Sailthru?(Sailthru.init(i),n&&n()):console.error("No Sailthru")}),!0)},updateConsentFunc:function(t){t?this.initFunc(t,function(){Sailthru.track("cookiesDoNotTrack",{set:!1})}):Sailthru&&Sailthru.track("cookiesDoNotTrack")}})};module.exports=initSailthru;
|
||
}, {}];
|
||
window.modules["16"] = [function(require,module,exports){"use strict";module.exports=function(){!function(e,t){var r=e.amplitude||{_q:[],_iq:{}};if(r.invoked)e.console&&console.error&&console.error("Amplitude snippet has been loaded.");else{var n=function(e,t){e.prototype[t]=function(){return this._q.push({name:t,args:Array.prototype.slice.call(arguments,0)}),this}},s=function(e,t,r){return function(n){e._q.push({name:t,args:Array.prototype.slice.call(r,0),resolve:n})}},o=function(e,t,r){e[t]=function(){if(r)return{promise:new Promise(s(e,t,Array.prototype.slice.call(arguments)))};!function(e,t,r){e._q.push({name:t,args:Array.prototype.slice.call(r,0)})}(e,t,Array.prototype.slice.call(arguments))}},i=function(e){for(var t=0;t<m.length;t++)o(e,m[t],!1);for(var r=0;r<y.length;r++)o(e,y[r],!0)};r.invoked=!0;var a=t.createElement("script");a.type="text/javascript",a.integrity="sha384-kLzFn7/5NJ8po8YfUn2eh6zaAO0sz/fCbM7qShbxRFZXEJwPLfPDhpFMcVPwKrXm",a.crossOrigin="anonymous",a.async=!0,a.src="https://cdn.amplitude.com/libs/analytics-browser-2.11.11-min.js.gz",a.onload=function(){e.amplitude.runQueuedFunctions||console.log("[Amplitude] Error: could not load SDK")};var c=t.getElementsByTagName("script")[0];c.parentNode.insertBefore(a,c);for(var u=function(){return this._q=[],this},p=["add","append","clearAll","prepend","set","setOnce","unset","preInsert","postInsert","remove","getUserProperties"],l=0;l<p.length;l++)n(u,p[l]);r.Identify=u;for(var d=function(){return this._q=[],this},f=["getEventProperties","setProductId","setQuantity","setPrice","setRevenue","setRevenueType","setEventProperties"],v=0;v<f.length;v++)n(d,f[v]);r.Revenue=d;var m=["getDeviceId","setDeviceId","getSessionId","setSessionId","getUserId","setUserId","setOptOut","setTransport","reset","extendSession"],y=["init","add","remove","track","logEvent","identify","groupIdentify","setGroup","revenue","flush"];i(r),r.createInstance=function(e){return r._iq[e]={_q:[]},i(r._iq[e]),r._iq[e]},e.amplitude=r}}(window,document)};
|
||
}, {}];
|
||
window.modules["17"] = [function(require,module,exports){"use strict";window.criteo_q=window.criteo_q||[];var accountId=92394,deviceType=/iPad/.test(navigator.userAgent)?"t":/Mobile|iP(hone|od)|Android|BlackBerry|IEMobile|Silk/.test(navigator.userAgent)?"m":"d";function sansConsent(){window._slateCriteo={trackLandingPage:function(){},trackTransaction:function(){}}}function withConsent(){window._slateCriteo={trackLandingPage:trackLandingPage,trackTransaction:trackTransaction},trackHomePage()}function criteoPush(n){injectCriteo(),window.criteo_q.push.apply(window.criteo_q,n)}var injected=!1;function injectCriteo(){injected||(window.criteo_q.push({event:"setAccount",account:accountId},{event:"setSiteType",type:deviceType}),slateGlobal.injectScript("https://dynamic.criteo.com/js/ld/ld.js?a="+accountId),injected=!0)}function trackTransaction(){criteoPush([{event:"trackTransaction",id:"TransactionID",item:[{id:"1",price:"1",quantity:1}]}])}var trackLandingPage=function(){};document.querySelector(".standalone-page .piano-mount")&&(trackLandingPage=function(){criteoPush([{event:"viewItem",item:"1"}])});var homepageTracked=!1;function trackHomePage(){homepageTracked||"/"!==location.pathname||(criteoPush([{event:"viewHome"}]),homepageTracked=!0)}function applyConsent(n){return n?withConsent():sansConsent(),n}module.exports=function(){sansConsent();try{window.nonIabVendorApi.registerVendor("criteo",{categories:["C0004"],initFunc:applyConsent,updateConsentFunc:applyConsent})}catch(n){console.warn("criteo failed",n)}};
|
||
}, {}];
|
||
window.modules["18"] = [function(require,module,exports){"use strict";var membership=require(7);module.exports=function(e){window.nonIabVendorApi.registerVendor("parsely",{categories:["C0002"],initFunc:function(r){if(!r)return!1;window.PARSELY={autotrack:!1,onReady:function(){try{return Promise.resolve(membership.isMember()).then(function(e){if(e){var r=membership.getSplusCookie(),n={membershipType:r.membershipType,resourceIds:r.resourceIds.join(",")};window.PARSELY.updateDefaults({data:n})}window.location.href.includes("/_pages/")||window.PARSELY.beacon.trackPageView();for(var i=window.slateParsely.leadCaptureEvents,t=0;t<i.length;t++)window.PARSELY.conversions.trackLeadCapture(i[t])})}catch(e){return Promise.reject(e)}}};var n=document.createElement("script");return n.id="parsely-cfg",n.src=e,document.body.appendChild(n),!0},updateConsentFunc:function(e){e||window.PARSELY&&(window.PARSELY=Function.prototype)}})};
|
||
}, {"7":7}];
|
||
window.modules["21"] = [function(require,module,exports){"use strict";function _catch(e,t){try{var r=e()}catch(e){return t(e)}return r&&r.then?r.then(void 0,t):r}var domEventData,resolveWaitForPageview,getDomEventData=function(e){if(domEventData)return domEventData;try{e=e||document.querySelectorAll("script.js-analytics-js-data")[0],domEventData=JSON.parse(e.textContent)}catch(e){console.warn("unable to get dom event data for amplitude",e)}return domEventData},track=function(e,t){try{var r=getDomEventData(),o=Object.assign({},r,t);return Promise.resolve(_catch(function(){return Promise.resolve(amplitude.track(e,o).promise).then(function(e){if(200!==e.code)throw new Error(e.message);return e})},function(r){console.error("FAILED amplitude.track",e,t,r.message)}))}catch(e){return Promise.reject(e)}},waitForPageview=new Promise(function(e,t){resolveWaitForPageview=e});function trackAfterPageview(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];waitForPageview.then(function(){track.apply(void 0,t)})}var page=function(e){try{return Promise.resolve(amplitude.track("Loaded a Page",e).promise).then(function(){resolveWaitForPageview()})}catch(e){return Promise.reject(e)}},setUserId=function(e){try{amplitude.setUserId(e)}catch(e){console.error("Error setting userId",e)}},identify=function(e,t){try{if(amplitude.setUserId(e),t&&Object.keys(t).length){var r=new amplitude.Identify;for(var o in t)r.set(o,t[o]);amplitude.identify(r)}}catch(e){console.error("Error identifying user",e)}};module.exports.getDomEventData=getDomEventData,module.exports.getInstance=function(){return amplitude},module.exports.page=page,module.exports.track=track,module.exports.trackAfterPageview=trackAfterPageview,module.exports.afterPageview=waitForPageview,module.exports.setUserId=setUserId,module.exports.identify=identify,module.exports.log=function(e,t){return Promise.resolve(waitForPageview).then(function(){window.slateAmplitudeQueue.push(function(r){for(var o in t=Object.assign({},getDomEventData(),t))"boolean"==typeof t[o]&&(t[o]=(""+t[o]).toUpperCase());return r.track(e,t)})})};
|
||
}, {}];
|
||
window.modules["22"] = [function(require,module,exports){"use strict";exports.formatArticleData=function(t){return{content_created:t.pub_date,content_author:t.authors.join(","),content_section:t.section,tags:t.tags,custom_variables:{contentRubric:t.rubric,amplitudePageType:t.page_type,hed:t.headline}}},exports.isSlatePianoEvent=function(t){return/[/.](piano\.io|(?:local|dev|stage)-slate\.com|slate\.com)$/.test(t.origin)&&t.data.slate},exports.pianoInitPromise=new Promise(function(t,e){exports.pianoInitPromiseResolve=t,exports.pianoInitPromiseReject=e});
|
||
}, {}];
|
||
window.modules["23"] = [function(require,module,exports){"use strict";var firedVars=[],callbacks=[];function setResponseVariable(e){var s=e.responseVariables;firedVars.push(s),callbacks.forEach(function(e){return e(s)})}setResponseVariable.onResponseVariables=function(e){firedVars.forEach(function(s){return e(s)}),callbacks.push(e)},module.exports=setResponseVariable;
|
||
}, {}];
|
||
window.modules["42"] = [function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getActualTheme=getActualTheme,exports.getTheme=getTheme,exports.getThemeClass=getThemeClass,exports.onThemeChange=onThemeChange,exports.setTheme=setTheme;var prefersDark=window.matchMedia("(prefers-color-scheme: dark)"),THEME_OPTIONS=["dark","light","auto"],CLASS_OPTIONS=THEME_OPTIONS.map(getThemeClass);function getActualTheme(){return resolveTheme(getTheme())}function resolveTheme(e){return"dark"===e||"auto"===e&&prefersDark.matches?"dark":"light"}function setTheme(e){var t;(t=document.documentElement.classList).remove.apply(t,CLASS_OPTIONS),document.documentElement.classList.add(getThemeClass(e));try{localStorage.setItem("theme",e)}catch(t){console.error("failed to set theme in storage",e,t)}window.dispatchEvent(makeThemeChangeEvent())}function makeThemeChangeEvent(){return new CustomEvent("theme-change",{detail:{theme:getActualTheme()}})}function getTheme(){try{var e=localStorage.getItem("theme")}catch(t){console.error("failed to get theme from storage",e,t)}return THEME_OPTIONS.includes(e)||(e="light"),e}function getThemeClass(e){return void 0===e&&(e=getTheme()),"theme-"+e}function onThemeChange(e){e(getActualTheme()),prefersDark.addEventListener("change",function(){return e(getActualTheme())}),window.addEventListener("theme-change",function(t){return e(t.detail.theme)})}
|
||
}, {}];
|
||
window.modules["45"] = [function(require,module,exports){"use strict";function _catch(e,r){try{var t=e()}catch(e){return r(e)}return t&&t.then?t.then(void 0,r):t}var _require=require(927),get=_require.get,slateAmplitude=require(21),slatePermutive=require(92),MYSLATE_ORIGIN=document.documentElement.dataset.myslateurl,BASE_ENDPOINT=new URL(MYSLATE_ORIGIN+"/proxies/newsletters/").href,SIGNUP_UTM_VARS_ENDPOINT=new URL(MYSLATE_ORIGIN+"/emails/signup_utm_vars/").href,userSubs={};function subsToObj(e,r){var t;if(void 0===r&&(r=1),r=r?1:0,"string"==typeof e)return(t={})[e]=r,t;if(Array.isArray(e))return Object.fromEntries(e.map(function(e){return[e,r]}));if("object"==typeof e)return e;throw console.error("not sure how to convert subscriptions to object",e),new Error("Invalid subscriptions type")}function subsToArr(e){return Object.keys(subsToObj(e))}window.addEventListener("visibilitychange",function(){if(document.hidden)for(var e in userSubs)delete userSubs[e]}),exports.getSubscriptions=function(e){try{if(Object.keys(userSubs).length>0)return Promise.resolve(userSubs);var r=e?constructUserEndpoint(e):BASE_ENDPOINT;return Promise.resolve(_catch(function(){return Promise.resolve(get(r)).then(function(e){return Object.assign(userSubs,e),e})},function(e){throw console.error("failed to fetch user subs",r,e),Error("There was an error fetching your newsletter subscriptions")}))}catch(e){return Promise.reject(e)}},exports.updateSubscriptions=function(e,r,t,n,s){void 0===e&&(e={}),void 0===t&&(t=""),void 0===n&&(n=!1),void 0===s&&(s={});try{var o=constructUserEndpoint(r);return Promise.resolve(_catch(function(){return Promise.resolve(get(o,{method:"POST",credentials:"include",body:JSON.stringify(Object.assign({subscribed:[]},e,{token:t,isTurnstile:n},s)),headers:{"Content-Type":"application/json"}})).then(function(t){return userSubs.subscribed=t.subscribed,e.subscribed&&(trackSignupUtmParams(r),"email-modal"===s.sailthruSource?trackNewsletterSignup(r,e.subscribed,{source:"email-modal"}):trackNewsletterSignup(r,e.subscribed)),t})},function(t){throw console.error("failed to update subs",{email:r,subscriptions:e},t),new Error("There was an error updating your subscriptions.")}))}catch(e){return Promise.reject(e)}},exports.setSignupUtmVars=function(e,r){void 0===r&&(r={});try{return Promise.resolve(_catch(function(){if(!e)throw Error("You must provide an email to set signup utm vars.");return Promise.resolve(get(SIGNUP_UTM_VARS_ENDPOINT,{method:"POST",credentials:"include",body:JSON.stringify(Object.assign({email:e},r)),headers:{"Content-Type":"application/json"}}))},function(r){console.error("failed to set signup utm vars",e,r)}))}catch(e){return Promise.reject(e)}};var SIGNUP_UTM_PARAMS=["utm_source","utm_content","utm_medium","utm_campaign","utm_term"];function getSignupUtmParams(){var e=new URL(location.href).searchParams,r={};return SIGNUP_UTM_PARAMS.forEach(function(t){var n=e.get(t);n&&(r[t]=n)}),r}function trackSignupUtmParams(e){var r=getSignupUtmParams();Object.keys(r).length>0&&exports.setSignupUtmVars(e,r)}function constructUserEndpoint(e){if(!e)throw Error("You must provide an email to update subscriptions.");return new URL(""+BASE_ENDPOINT+e+"/").href}function constructOptOutEndpoint(e){if(!e)throw Error("You must provide an email to opt out.");return new URL(BASE_ENDPOINT+"optout/"+e+"/").href}function trackNewsletterSignup(e,r,t){void 0===t&&(t={});var n=subsToArr(r);try{var s=new amplitude.Identify;s.append("Newsletters",n),amplitude.identify(s)}catch(e){console.error("amplitude.identify failed",e)}try{ats.setAdditionalData({type:"email",id:e})}catch(e){console.error("Failed to add to ats",e)}slateAmplitude.track("Newsletter: Sign Up",Object.assign({list_name:n},t)),slatePermutive.track("Newsletter",{newsletters:n})}exports.trackSignupUtmParams=trackSignupUtmParams,exports.optOutOfSubscriptions=function(e){try{var r=constructOptOutEndpoint(e);return Promise.resolve(_catch(function(){return Promise.resolve(get(r,{method:"GET",credentials:"include"}))},function(e){throw console.error("failed to opt out",r,e),new Error("Something went wrong while opting out.")}))}catch(e){return Promise.reject(e)}},exports.getAllNewsletters=function(){try{var e=new URL(BASE_ENDPOINT+"all/").href;return Promise.resolve(_catch(function(){return Promise.resolve(get(e))},function(r){throw console.error("failed to fetch newsletters",e,r),new Error("Something went wrong while trying to fetch newsletters")}))}catch(e){return Promise.reject(e)}},exports.subscribe=function(e,r,t,n,s,o){void 0===o&&(o={});try{var i={};return i[r]=1,t&&(i.Marketing=1),Promise.resolve(exports.updateSubscriptions({subscribed:i},e,n,s,o))}catch(e){return Promise.reject(e)}},exports.trackNewsletterSignup=trackNewsletterSignup,exports.isSubscribed=function(e,r){try{return e?Promise.resolve(exports.getSubscriptions(e)).then(function(e){return e.subscribed.includes(r)}):Promise.resolve(!1)}catch(e){return Promise.reject(e)}};
|
||
}, {"21":21,"92":92,"927":927}];
|
||
window.modules["46"] = [function(require,module,exports){"use strict";function toUrl(r,a){var t;try{t=new URL(r),a&&(t.search=updateParams(t.search,a))}catch(r){t=null}return t}function hasParam(r,a){return!!new URL(r).searchParams.get(a)}function updateParams(r,a){var t=paramStringToObject(r),e=paramStringToObject(a);return new URLSearchParams(Object.assign({},t,e)).toString()}function paramStringToObject(r){for(var a=Array.from(new URLSearchParams(r)),t={},e=0;e<a.length;e++){var n=a[e],o=n[0],i=n[1];o=o.trim(),i=i.trim(),t[o]=i}return t}function normalizeUrl(r,a){if(r){var t=new URL(r,a.site.baseUrl);return t.host=a.site.host,t.toString()}}module.exports={toUrl:toUrl,hasParam:hasParam,paramStringToObject:paramStringToObject,normalizeUrl:normalizeUrl};
|
||
}, {}];
|
||
window.modules["53"] = [function(require,module,exports){"use strict";var loaded=new Set;function executeScripts(e){e.querySelectorAll("script").forEach(function(e){var t=document.createElement("script");e.src?t.src=e.src:e.textContent&&(t.text=e.textContent),e.parentNode.insertBefore(t,e),e.parentNode.removeChild(e)})}function _load(e,t){if(void 0===t&&(t={}),!loaded.has(e)){var n=e.querySelector(".lazyload-container > noscript");if(n){var o=n.parentNode;o.innerHTML=n.innerText,loaded.add(e),executeScripts(e),o.classList.add("lazyload-container--loaded"),t.fluid&&(o.style.height="",o.classList.add("lazyload-container--fluid")),o.hidden=!1}else console.error('cannot find "noscript" for unloaded el',e)}}function _unload(e,t){if(loaded.has(e)){var n=e.querySelector(".lazyload-container");if(n&&!n.firstElementChild.matches("noscript")){var o=n.offsetHeight;n.innerHTML="\n <noscript>\n "+n.innerHTML+"\n </noscript>\n ",loaded.delete(e),n.classList.remove("lazyload-container--loaded"),t.fluid&&(n.style.height=o+"px",n.classList.remove("lazyload-container--fluid"))}else console.error("cannot find container to unload el",e)}}module.exports.createObserver=function(e){e=Object.assign({intersectionObserverOptions:{rootMargin:"100% 0% 100% 0%"},limit:1/0,fluid:!1,onLoad:function(){},onUnload:function(){}},e);var t=new Map,n=new IntersectionObserver(function(n){n.forEach(function(n){var o;t.has(n.target)?o=t.get(n.target):(o={el:n.target},t.set(n.target,o)),o.isIntersecting=n.isIntersecting,o.offsetTop=n.boundingClientRect.top+window.scrollY,!o.loaded&&o.isIntersecting&&(_load(n.target,e),o.loaded=!0,e.onLoad(n.target,e))});var o=[];t.forEach(function(e){e.loaded&&o.push(e)});var r=o.length-e.limit;r>0&&o.filter(function(e){return!e.isIntersecting}).map(function(e){return e.distance=Math.abs(e.offsetTop-window.scrollY),e}).sort(function(e,t){return t.distance-e.distance}).slice(0,r).forEach(function(t){_unload(t.el,e),t.loaded=!1,e.onUnload(t.el,e)})},e.intersectionObserverOptions);return{observe:function(){return n.observe.apply(n,arguments)},unobserve:function(){return n.unobserve.apply(n,arguments)},load:function(t){return _load(t,e)},unload:function(t){return _unload(t,e)}}},window.addEventListener("load",function(){var e=document.querySelectorAll(".lazyload-html--auto");if(e.length>0){var t=exports.createObserver({fluid:!0});e.forEach(function(e){return t.observe(e)})}}),module.exports.executeScripts=executeScripts;
|
||
}, {}];
|
||
window.modules["55"] = [function(require,module,exports){!function(e){var n;if("function"==typeof define&&define.amd&&(define(e),n=!0),"object"==typeof exports&&(module.exports=e(),n=!0),!n){var t=window.Cookies,o=window.Cookies=e();o.noConflict=function(){return window.Cookies=t,o}}}(function(){function e(){for(var e=0,n={};e<arguments.length;e++){var t=arguments[e];for(var o in t)n[o]=t[o]}return n}function n(e){return e.replace(/(%[0-9A-Z]{2})+/g,decodeURIComponent)}return function t(o){function r(){}function i(n,t,i){if("undefined"!=typeof document){"number"==typeof(i=e({path:"/"},r.defaults,i)).expires&&(i.expires=new Date(1*new Date+864e5*i.expires)),i.expires=i.expires?i.expires.toUTCString():"";try{var c=JSON.stringify(t);/^[\{\[]/.test(c)&&(t=c)}catch(e){}t=o.write?o.write(t,n):encodeURIComponent(String(t)).replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g,decodeURIComponent),n=encodeURIComponent(String(n)).replace(/%(23|24|26|2B|5E|60|7C)/g,decodeURIComponent).replace(/[\(\)]/g,escape);var f="";for(var u in i)i[u]&&(f+="; "+u,!0!==i[u]&&(f+="="+i[u].split(";")[0]));return document.cookie=n+"="+t+f}}function c(e,t){if("undefined"!=typeof document){for(var r={},i=document.cookie?document.cookie.split("; "):[],c=0;c<i.length;c++){var f=i[c].split("="),u=f.slice(1).join("=");t||'"'!==u.charAt(0)||(u=u.slice(1,-1));try{var a=n(f[0]);if(u=(o.read||o)(u,a)||n(u),t)try{u=JSON.parse(u)}catch(e){}if(r[a]=u,e===a)break}catch(e){}}return e?r[e]:r}}return r.set=i,r.get=function(e){return c(e,!1)},r.getJSON=function(e){return c(e,!0)},r.remove=function(n,t){i(n,"",e(t,{expires:-1}))},r.defaults={},r.withConverter=t,r}(function(){})});
|
||
}, {}];
|
||
window.modules["57"] = [function(require,module,exports){"use strict";var launchOnboarding=function(e){try{return!e.onboarding||document.documentElement.clientWidth<=1024?Promise.resolve():Promise.resolve(piano.getExtendedUserData("onboarding")).then(function(n){var r=n.email,i=piano.getCustomFields(n);if(i.onboarding_enabled)return window._ONBOARDING={user:Object.assign({},i,{email:r}),experience:e},Promise.resolve(fetch("/fixins/onboarding/index.html").then(function(e){return e.text()}).then(function(e){return(new DOMParser).parseFromString(e,"text/html")})).then(function(e){e.head.querySelectorAll("meta,title").forEach(function(e){return e.remove()});var n=document.querySelector("#onboarding-container");n.innerHTML=e.head.innerHTML+e.body.innerHTML,executeScripts(n)})})}catch(e){return Promise.reject(e)}},membership=require(7),piano=require(71),_require=require(53),executeScripts=_require.executeScripts;exports.init=function(){membership.isLoggedIn()&&window.tp.push(["addHandler","setResponseVariable",function(e){return launchOnboarding(e.responseVariables)}])};
|
||
}, {"7":7,"53":53,"71":71}];
|
||
window.modules["64"] = [function(require,module,exports){"use strict";var dropdownSelector=".dropdown",buttonSelector=".dropdown__button",contentSelector=".dropdown__content";module.exports=function(e){(e.matches(dropdownSelector)?[e]:e.querySelectorAll(dropdownSelector)).forEach(initialize)};var x=0;function initialize(e){var t=e.querySelector(contentSelector);if(!t.id){t.id="dropdown-"+x++;var n=e.querySelector(buttonSelector);n.setAttribute("aria-controls",t.id),n.setAttribute("aria-expanded",!1);var r={click:function(t){e.contains(t.target)||o()},keyup:function(e){["Escape","Esc"].includes(e.key)&&o()}};e.addEventListener("click",function(){return"true"===n.getAttribute("aria-expanded")?o():function(){for(var e in n.setAttribute("aria-expanded","true"),r)document.body.addEventListener(e,r[e])}()}),e.hidden=!1,n.disabled=!1}function o(){for(var e in n.setAttribute("aria-expanded","false"),r)document.body.removeEventListener(e,r[e])}}
|
||
}, {}];
|
||
window.modules["65"] = [function(require,module,exports){"use strict";var dropdown=require(64),darkMode=require(42);function munge(e){return e.trim().toLowerCase()}function constructThemePickers(e){var r=e.querySelectorAll(".theme-picker");function n(e){r.forEach(function(r){r.querySelector(".dropdown__label").innerHTML=e.innerHTML});var n=munge(e.innerText);darkMode.setTheme(n)}r.forEach(function(e){e.querySelectorAll(".theme-picker__option").forEach(function(e){var r=munge(e.innerText);document.documentElement.classList.contains("theme-"+r)&&n(e),e.addEventListener("click",function(e){n(e.currentTarget)})}),dropdown(e)})}module.exports=constructThemePickers;
|
||
}, {"42":42,"64":64}];
|
||
window.modules["71"] = [function(require,module,exports){"use strict";var cookies=require(55),_require=require(926),MYSLATE_ORIGIN=_require.myslateOrigin,PIANOAPITIMEOUT=3e3;module.exports={getExtendedUserData:function(e){return new Promise(function(t,n){var i=setTimeout(n,PIANOAPITIMEOUT);window.tp||(window.tp=[]);window.tp.push(["init",function(){tp.pianoId.loadExtendedUser({formName:e,extendedUserLoaded:function(e){clearTimeout(i),e?t(e):n(e)}})}])})},getCustomFields:function(e){for(var t={},n=0,i=e.custom_field_values;n<i.length;n++){var o=i[n],r=o.field_name,u=o.value;try{t[r]=JSON.parse(u)}catch(e){t[r]="string"==typeof u&&u?u:null}}return t},getCustomFieldValue:function(e,t){if(e.custom_field_values)for(var n=0;n<e.custom_field_values.length;n++)if(e.custom_field_values[n].field_name===t)return e.custom_field_values[n].value},setCustomFieldValue:function(e,t){var n=new FormData;return n.set(e,JSON.stringify(t)),fetch(MYSLATE_ORIGIN+"/proxies/v2/user/",{method:"POST",credentials:"include",body:n})},getPianoJwt:function(){var e=cookies.get("__utp");if(e)try{var t=atob(e.split(".")[1]);return JSON.parse(t)}catch(t){return void console.error("Error parsing __utp cookie: "+e,t)}},getPianoId:function(){var e=module.exports.getPianoJwt();if(e)return e.sub},getUser:function(){return new Promise(function(e,t){var n=setTimeout(t,PIANOAPITIMEOUT);window.tp||(window.tp=[]),window.tp.push(["init",function(){try{clearTimeout(n),e(window.tp.pianoId.getUser())}catch(e){t(e)}}])})},getUserResources:function(){return new Promise(function(e,t){var n=setTimeout(t,PIANOAPITIMEOUT);window.tp||(window.tp=[]),window.tp.push(["init",function(){try{window.tp.api.callApi("/access/list",{},function(t){clearTimeout(n),e(t)})}catch(e){t(e)}}])})},getConversions:function(){return new Promise(function(e,t){var n=setTimeout(t,PIANOAPITIMEOUT);window.tp||(window.tp=[]),window.tp.push(["init",function(){try{window.tp.api.callApi("/conversion/list",{},function(t){clearTimeout(n),e(t)})}catch(e){t(e)}}])})},getOffer:function(e){return fetch(MYSLATE_ORIGIN+"/proxies/piano/offers/"+e+"/",{credentials:"include"}).then(function(e){return e.json()}).then(function(e){if(0!==e.code)throw new Error("Piano error. Response: "+JSON.stringify(e));return e}).catch(function(e){return console.error(e)})}};
|
||
}, {"55":55,"926":926}];
|
||
window.modules["72"] = [function(require,module,exports){"use strict";var syncConsent=function(e){try{var r,t=resolveIdentity();if(!t)return Promise.resolve();var n,i=e.join(",");try{n=localStorage.getItem(DEDUP_KEY)}catch(e){n=null}return n===i?Promise.resolve():Promise.resolve(get(CONSENT_ENDPOINT,{method:"POST",credentials:"include",headers:{"Content-Type":"application/json"},body:JSON.stringify((r={consent_categories:i},r[t.key]=t.value,r))})).then(function(){try{localStorage.setItem(DEDUP_KEY,i)}catch(e){}})}catch(e){return Promise.reject(e)}},_require=require(927),get=_require.get,cookies=require(55),_require2=require(7),getUserEmail=_require2.getUserEmail,MYSLATE_ORIGIN=document.documentElement.dataset.myslateurl,CONSENT_ENDPOINT=new URL(MYSLATE_ORIGIN+"/proxies/newsletters/consent/").href,DEDUP_KEY="sailthruConsentCats";function getUrlParam(e){return new URL(location.href).searchParams.get(e)}function resolveIdentity(){var e=getUrlParam("sid");if(e)return{key:"sid",value:e};var r=getUrlParam("email");if(r)return{key:"email",value:r};var t=cookies.get("sailthru_hid");if(t)return{key:"sailthru_hid",value:t};var n=getUserEmail();return n?{key:"email",value:n}:null}module.exports={resolveIdentity:resolveIdentity,syncConsent:syncConsent};
|
||
}, {"7":7,"55":55,"927":927}];
|
||
window.modules["74"] = [function(require,module,exports){"use strict";function _catch(r,e){try{var n=r()}catch(r){return e(r)}return n&&n.then?n.then(void 0,e):n}function hashBuff2Hex(r){return Array.from(new Uint8Array(r)).map(function(r){return r.toString(16).padStart(2,"0")}).join("")}function hashBuff2Base64(r){for(var e="",n=new Uint8Array(r),t=n.byteLength,o=0;o<t;o++)e+=String.fromCharCode(n[o]);return window.btoa(e)}var hash=function(r,n){void 0===n&&(n="base64");try{var t;if(!r)return console.error("No value passed to hash"),Promise.resolve();var o=_catch(function(){var o=(new TextEncoder).encode(r);return Promise.resolve(window.crypto.subtle.digest("SHA-256",o)).then(function(r){if("hex"===n)t=hashBuff2Hex(r);else{if("base64"!==n)throw new Error("Encoding: "+n+" not supported",e);t=hashBuff2Base64(r)}})},function(r){console.error(r)});return Promise.resolve(o&&o.then?o.then(function(r){return t}):t)}catch(r){return Promise.reject(r)}};module.exports.hash=hash;
|
||
}, {}];
|
||
window.modules["75"] = [function(require,module,exports){var isObject=require(632),now=require(755),toNumber=require(754),FUNC_ERROR_TEXT="Expected a function",nativeMax=Math.max,nativeMin=Math.min;function debounce(n,i,t){var e,r,o,u,a,c,v=0,f=!1,m=!1,d=!0;if("function"!=typeof n)throw new TypeError(FUNC_ERROR_TEXT);function T(i){var t=e,o=r;return e=r=void 0,v=i,u=n.apply(o,t)}function s(n){var t=n-c;return void 0===c||t>=i||t<0||m&&n-v>=o}function b(){var n=now();if(s(n))return l(n);a=setTimeout(b,function(n){var t=i-(n-c);return m?nativeMin(t,o-(n-v)):t}(n))}function l(n){return a=void 0,d&&e?T(n):(e=r=void 0,u)}function w(){var n=now(),t=s(n);if(e=arguments,r=this,c=n,t){if(void 0===a)return function(n){return v=n,a=setTimeout(b,i),f?T(n):u}(c);if(m)return clearTimeout(a),a=setTimeout(b,i),T(c)}return void 0===a&&(a=setTimeout(b,i)),u}return i=toNumber(i)||0,isObject(t)&&(f=!!t.leading,o=(m="maxWait"in t)?nativeMax(toNumber(t.maxWait)||0,i):o,d="trailing"in t?!!t.trailing:d),w.cancel=function(){void 0!==a&&clearTimeout(a),v=0,e=c=r=a=void 0},w.flush=function(){return void 0===a?u:l(now())},w}module.exports=debounce;
|
||
}, {"632":632,"754":754,"755":755}];
|
||
window.modules["76"] = [function(require,module,exports){"use strict";var currentState="uninitialized",pianoScriptState={setState:function(t){currentState=t},getState:function(){return currentState}};module.exports=pianoScriptState;
|
||
}, {}];
|
||
window.modules["77"] = [function(require,module,exports){"use strict";var supportJournalism=require(88);function showOffer(r){r.containerSelector.includes("#roadblock")&&supportJournalism.setParams(),window._slateCriteo.trackLandingPage()}module.exports=showOffer;
|
||
}, {"88":88}];
|
||
window.modules["78"] = [function(require,module,exports){"use strict";var slateAmplitude=require(21);function onCheckoutStateChange(e){switch(e.stateName){case"auth":slateAmplitude.track("Slate Plus: View Checkout");break;case"state2":slateAmplitude.track("Slate Plus: Payment"),window.tfaPush({notify:"subscription",name:"subscription-form-visible",sourceurl:location.href});break;case"bankSecure":slateAmplitude.track("Display 3DS Challenge")}}module.exports=onCheckoutStateChange;
|
||
}, {"21":21}];
|
||
window.modules["79"] = [function(require,module,exports){"use strict";var pianoScriptState=require(76),_require=require(3),updateModalStatus=_require.updateModalStatus,_require2=require(4),updatePaywallStatus=_require2.updatePaywallStatus,_require3=require(2),updateSophiCustomProperties=_require3.updateSophiCustomProperties;function experienceExecute(e){console.debug("🎹🗡️experienceExecute",e),pianoScriptState.setState("ready");var t=e.result.events.find(function(e){return"experienceExecute"===e.eventType});if(t){updatePaywallStatus(e),updateModalStatus(e);var a=t.eventExecutionContext,i=a.userSegments,r={};if(a.splitTests.length&&(r["Piano A/B test"]=a.splitTests.map(function(e){return e.variantName}).join(", ")),"COMPOSER1X"in i){var s;i.COMPOSER1X.segments.forEach(function(e){var t=e.split(":"),a=t[0],i=t[2];try{i=JSON.parse(i)}catch(e){}var n=["LTs","LTc","LTreg","CScore"];a=a.toLowerCase(),(n=n.map(function(e){return e.toLowerCase()})).includes(a)&&("lts"===a&&(s=i),r["piano_"+function(e){switch(e){case"cscore":return"ltconvert";default:return e}}(a)]=i)}),a.splitTests.length&&(r.piano_segment_id=[],r.piano_segment_name=[],a.splitTests.forEach(function(e){r.piano_segment_id.push(e.variantId),r.piano_segment_name.push(e.variantName)})),s&&updateSophiCustomProperties({2:s})}if(Object.keys(r).length){var n=new amplitude.Identify;for(var u in r)n.set(u,r[u]);amplitude.identify(n)}}}module.exports=experienceExecute;
|
||
}, {"2":2,"3":3,"4":4,"76":76}];
|
||
window.modules["80"] = [function(require,module,exports){"use strict";function _catch(e,r){try{var t=e()}catch(e){return r(e)}return t&&t.then?t.then(void 0,r):t}var loginSuccessHandler=function(e){try{return Promise.resolve(membership.updateUser()).then(function(){var r=!1;function t(t){return r?t:(slateAmplitude.track("Account: Sign In",i),function(){if("PIANOID"===e.source){return Promise.resolve(membership.isMember()).then(function(e){var r=!1;function t(e){if(r)return e;var t=getRedirectUrl();t&&(location.href=t)}var i=function(){if(e&&isSpotifyPlus())return Promise.resolve(redirectToSpotify()).then(function(){!0})}();return i&&i.then?i.then(t):t(i)})}}())}var i={},n=function(){if(e.registration){localStorage.removeItem("show_slugs"),slateAmplitude.track("Account: Create New",i);var t=e.params.email;return Promise.resolve(getExtendedUserData("RegistrationFields")).then(function(i){function n(){var t,i=new URL(location.href);"PIANOID"!==e.source||null!=(t=e.params)&&t.email_confirmation_required||"/license"===i.pathname||(location.href=getRedirectUrl()||"/account"),r=!0}var c=getCustomFieldValue(i,"marketing_opt_in"),u=function(){if(JSON.parse(c)){var e=function(){return Promise.resolve(executeRecaptcha()).then(function(e){return Promise.resolve(updateSubscriptions({subscribed:["Marketing"]},t,e)).then(function(){})})},r=_catch(function(){return Promise.resolve(loadRecaptcha()).then(function(){})},function(e){console.error("Error loading recaptcha in login-success.js",e)});return r&&r.then?r.then(e):e()}}();return u&&u.then?u.then(n):n()})}}();return n&&n.then?n.then(t):t(n)})}catch(e){return Promise.reject(e)}},membership=require(7),_require=require(71),getCustomFieldValue=_require.getCustomFieldValue,getExtendedUserData=_require.getExtendedUserData,_require2=require(45),updateSubscriptions=_require2.updateSubscriptions,slateAmplitude=require(21),_require3=require(83),getRedirectUrl=_require3.getRedirectUrl,isSpotifyPlus=_require3.isSpotifyPlus,redirectToSpotify=_require3.redirectToSpotify,_require4=require(87),loadRecaptcha=_require4.loadRecaptcha,executeRecaptcha=_require4.executeRecaptcha;module.exports=loginSuccessHandler;
|
||
}, {"7":7,"21":21,"45":45,"71":71,"83":83,"87":87}];
|
||
window.modules["81"] = [function(require,module,exports){"use strict";var afterCheckout=function(e){try{var t=e.rid;return Promise.resolve(getGtmProps(e)).then(function(r){isPodcastRid(e.rid)&&sessionStorage.setItem(IS_PURCHASING_KEY,!0),PREMIUM_RESOURCES.includes(t)&&(window.PARSELY&&window.PARSELY.conversions.trackPurchase("Slate Plus: Purchase"),r.event="Slate_Plus_Purchase",window.dataLayer.push(r)),e.uid&&slateAmplitude.identify(e.uid,{subscription_status:"active"})})}catch(e){return Promise.reject(e)}},getGtmProps=function(e){try{var t={offer_ID:e.offerId,plan_type:e.rid,term_ID:e.termId};if(e.chargeAmount){var r=e.termId,i=e.chargeCurrency,s=e.chargeAmount;t.currency=i,t.value=getValue(r,s)}return Promise.resolve(buildPageViewData()).then(function(e){var r=Object.assign({},t,{headline:e.headline,url:e.url,tags:e.tags,authors:e.authors,section:e.section,rubric:e.rubric,pub_date:e.pub_date,page_id:e.page_id,page_type:e.page_type,Nth_visit:e.Nth_visit,Nth_monthly_visit:e.Nth_monthly_visit,referrer:e.referrer,"Includes Slate Plus Roadblock":e["Includes Slate Plus Roadblock"],visitstart:e.visitstart,layoutBreakpoint:e.layoutBreakpoint,userAgent:e.userAgent,viewportWidth:e.viewportWidth});return e.signed_in_uuid&&(r.signed_in_uuid=e.signed_in_uuid),r})}catch(e){return Promise.reject(e)}},_require=require(84),buildPageViewData=_require.buildPageViewData,_require2=require(7),IS_PURCHASING_KEY=_require2.IS_PURCHASING_KEY,isPodcastRid=_require2.isPodcastRid,slateAmplitude=require(21),PREMIUM_RESOURCES=["Slate_Plus_All_Access","Games"],_once=require(85);function getValue(e,t){return["TMZ329OLF0XI","TMNT9GJRUK5E","TMTZDDITIYYU","TMV0EOR4SEO6","TM378R2T3BI4","TMEWV1ER29T1","TMI8KHEYKSOH","TMB33RASHLDV"].includes(e)?64.5:["TM0096D8DJZ2","TMK2BEH4ADOY","TMAFQ14GDRDX","TM4I5I4EI1T7","TM1MW78VQYVJ","TMCGBHPEP05J"].includes(e)?74.5:t}module.exports=_once(afterCheckout);
|
||
}, {"7":7,"21":21,"84":84,"85":85}];
|
||
window.modules["82"] = [function(require,module,exports){"use strict";var afterCheckoutClose=function(e){try{return Promise.resolve(function(){if("checkoutCompleted"===e.state||"voucherRedemptionCompleted"===e.state)return Promise.resolve(afterCheckout()).then(function(){isSpotifyPlus()?redirectToSpotify():location.href=getRedirectUrl()||"/account"})}())}catch(e){return Promise.reject(e)}},_require=require(83),getRedirectUrl=_require.getRedirectUrl,isSpotifyPlus=_require.isSpotifyPlus,redirectToSpotify=_require.redirectToSpotify,afterCheckout=require(81);module.exports=afterCheckoutClose;
|
||
}, {"81":81,"83":83}];
|
||
window.modules["83"] = [function(require,module,exports){"use strict";function _catch(e,r){try{var t=e()}catch(e){return r(e)}return t&&t.then?t.then(void 0,r):t}var getSpotifyFeedUrls=function(){try{var e=function(e){if(r)return e;for(var t=[],o=0;o<i.length;o++)if(i[o].desktop_schemes&&i[o].desktop_schemes.length)for(var n=i[o].desktop_schemes,s=0;s<n.length;s++)"Spotify"===n[s]._name&&t.push(n[s]._url);return t},r=!1,t=document.documentElement.dataset.myslateurl||"https://my.slate.com",o=new URL(t);o.pathname="membership/setup_feeds/";var i,n=o.href,s=_catch(function(){return Promise.resolve(fetch(n,{method:"GET",credentials:"include",headers:{Accept:"application/json"}}).then(function(e){return e.json()})).then(function(e){i=e})},function(e){throw Error("Error getting user feeds from Supporting Cast: "+e)});return Promise.resolve(s&&s.then?s.then(e):e(s))}catch(e){return Promise.reject(e)}},redirectToSpotify=function(e){void 0===e&&(e="/account/podcasts");try{var r=function(e){if(t)return e;location.href=o},t=!1;if(!window.confirm('You\'re about to be redirected to Spotify. Click "OK" to proceed. Click "Cancel" to sign in as another user.'))return window.tp.pianoId.logout(),location.href="/sign-in",Promise.resolve();var o=e,i=_catch(function(){return Promise.resolve(getSpotifyFeedUrls()).then(function(e){if(!e.length)throw new Error("No Spotify feed URLs retrieved from MySlate");o=e[0]})},function(e){console.error(e)});return Promise.resolve(i&&i.then?i.then(r):r(i))}catch(e){return Promise.reject(e)}},_require=require(46),hasParam=_require.hasParam,ALLOWED_ORIGINS=["https://spotify.com","https://slate.com","https://my.slate.com",location.origin];function isValidOrigin(e){var r=new URL(e).origin;return ALLOWED_ORIGINS.includes(r)}function getRedirectUrl(){var e=new URL(location.href).searchParams.get("redirect_uri");if(e)return isValidOrigin(e)?e:(console.error("Invalid redirect origin: "+e),"/")}function isSpotifyPlus(){return"/spotify-plus"===location.pathname||"/_pages/ckw5hrtr4000pz3m9pdlxohl1.html"===location.pathame||hasParam(location.href,"spotify")}module.exports={getRedirectUrl:getRedirectUrl,isSpotifyPlus:isSpotifyPlus,redirectToSpotify:redirectToSpotify};
|
||
}, {"46":46}];
|
||
window.modules["84"] = [function(require,module,exports){"use strict";var buildPageViewData=function(){try{var e=slateAmplitude.getInstance(),t=slateAmplitude.getDomEventData(),i=new URLSearchParams(location.search),o=via.retrieve();o&&i.set("via",o),t.search="?"+i.toString();try{t.amplitude_id=e.getDeviceId()}catch(e){t.amplitude_id="no options - no deviceId"}return t.farejumper=castAsAmplitudeBool(supportJournalism.hasParams()),t.viewportWidth=document.documentElement.clientWidth,t.layoutBreakpoint=getLayoutBreakpoint(t.viewportWidth),t.userAgent=navigator.userAgent,t.colorScheme=localStorage.getItem("theme"),t.androidApp=castAsAmplitudeBool(isAndroidSession()),Promise.resolve(membership.getUserMembershipType()).then(function(e){t.plan=e,loginId&&(t.signed_in_uuid=loginId),t.chumbox_loaded=castAsAmplitudeBool(isChumBoxLoaded()),t.taboola_eligible=castAsAmplitudeBool(isTaboolaEligible()),t.visitstart=castAsAmplitudeBool(isVisitStart());var i=getVisitCounts();t.Nth_visit=i.totalVisits,t.Nth_monthly_visit=i.monthlyVisits,getAffiliateLinks().length>0&&(t["Affiliate Link"]="✅"),findComponent("product")&&(t["Product Component"]="✅");var o=findComponent("newsletter-signup");t["Includes Newsletter Signup"]=castAsAmplitudeBool(o),o&&(t["Newsletter Signup Placement"]="In Content");var r=findComponent("slate-plus-button");if(r){var n=r.querySelector(".slate-plus-button__basic");n&&(t["Slate Plus Button Component"]=n.innerText)}var a=!e&&findComponent("slate-roadblock");t["Includes Slate Plus Roadblock"]=castAsAmplitudeBool(a),findComponent("header-promo")&&(t["Includes Header Promo"]="TRUE"),t.referrer=document.referrer,getGiftToken()&&(t.referral_type="web-giftlink");var s=promolineTesting.retrieveExperimentalPromoline();s&&(t.experimental_promoline=s);var l=t.section;return l||((l=_capitalize(location.pathname.split("/")[1]).trim())||(l="Homepage"),t.section=l),window.slateAmplitudeQueue&&(window.slateAmplitudeQueue.eventData=t),t})}catch(e){return Promise.reject(e)}},_once=require(85),_memoize=require(169),_capitalize=require(752),via=require(100),_require=require(923),isVisitStart=_require.isVisitStart,getVisitCounts=_require.getVisitCounts,_require2=require(922),getLayoutBreakpoint=_require2.getLayoutBreakpoint,slateAmplitude=require(21),_require3=require(101),isAndroidSession=_require3.isAndroidSession,membership=require(7),promolineTesting=require(93),supportJournalism=require(88),_require4=require(116),getGiftToken=_require4.getGiftToken,loginId=membership.getLoginId();function castAsAmplitudeBool(e){return e?"TRUE":"FALSE"}function isTaboolaLoaded(){return isTaboolaEligible()&&void 0!==window._taboola.registered}function isTaboolaEligible(){return void 0!==window._taboola}var getAffiliateLinks=_once(function(){for(var e=[],t=document.body.querySelectorAll('a[href*="amazon"]'),i=0;i<t.length;i++){var o=t[i];-1===new URL(o.href).host.indexOf("amazon")||o.matches(".product a")||e.push(o)}return e});function isChumBoxLoaded(){return isTaboolaLoaded()||!!document.querySelector(".outbrain-widget")}function findComponent(e){var t=document.body.querySelector("."+e);if(t){var i=t.dataset.uri;if(i&&i.split("/")[2]===e)return t}}module.exports.buildPageViewData=_memoize(buildPageViewData);
|
||
}, {"7":7,"21":21,"85":85,"88":88,"93":93,"100":100,"101":101,"116":116,"169":169,"752":752,"922":922,"923":923}];
|
||
window.modules["85"] = [function(require,module,exports){var before=require(750);function once(e){return before(2,e)}module.exports=once;
|
||
}, {"750":750}];
|
||
window.modules["86"] = [function(require,module,exports){"use strict";module.exports.coordinateHeights=function(){var e,t,i=[],a=!1;function n(){i=i.sort(function(e,t){return t.height-e.height}),e=i[0],r(i,e.height)}function r(t,i){t.forEach(function(t){var a={offerCard:!0,isTallest:t.uid===e.uid,height:i,uid:t.uid};t.source.postMessage(a,t.origin)})}window.addEventListener("message",function(s){var u,d;s.data.offerCard&&(s.data.isResize&&i.length?r(i,s.data.height):(t=performance.now(),s.data.source=s.source,s.data.origin=s.origin,i.push(s.data),a||e||(a=!0,u=n,d=setInterval(function(){performance.now()-t>o&&(clearInterval(d),u(d))},o))))});var o=1e3};
|
||
}, {}];
|
||
window.modules["87"] = [function(require,module,exports){"use strict";function loadRecaptcha(){return new Promise(function(e,t){slateGlobal.injectScript("https://www.google.com/recaptcha/api.js?render=6LeXl6gZAAAAADIqQtfiQY8WxxgvnbZIbQV2SjHB",function(t){return function(e,t){t(!0)}(0,e)},function(e){return function(e,t){t(new Error("Error loading script "+e.target.src))}(e,t)})})}function executeRecaptcha(){return new Promise(function(e,t){window.grecaptcha.ready(function(){window.grecaptcha.execute("6LeXl6gZAAAAADIqQtfiQY8WxxgvnbZIbQV2SjHB").then(function(t){e(t)}).catch(function(e){return t(e)})})})}module.exports.loadRecaptcha=loadRecaptcha,module.exports.executeRecaptcha=executeRecaptcha;
|
||
}, {}];
|
||
window.modules["88"] = [function(require,module,exports){"use strict";var _require=require(46),toUrl=_require.toUrl,_require2=require(21),afterPageview=_require2.afterPageview,hasParams=location.search.includes("support_journalism");if(hasParams){var thisUrl=toUrl(location.href);thisUrl.searchParams.delete("support_journalism"),thisUrl.searchParams.delete("pay"),history.replaceState(null,"",thisUrl.href)}exports.hasParams=function(){return hasParams},exports.setParams=function(){return Promise.resolve(afterPageview).then(function(){history.replaceState(null,"",toUrl(location.href,{pay:Date.now(),support_journalism:"please"}).href)})};
|
||
}, {"21":21,"46":46}];
|
||
window.modules["92"] = [function(require,module,exports){"use strict";module.exports.track=function(e,t,r){try{var a,i=Object.assign({},null==(a=window.slatePermutiveData)?void 0:a.page,t);i.article&&i.article.gsChannels&&delete i.article.gsChannels,window.permutive&&window.permutive.track(e,i,r)}catch(e){console.error("failed to log permutive",e)}};
|
||
}, {}];
|
||
window.modules["93"] = [function(require,module,exports){"use strict";var STORAGE_KEY="promoline-testing",_require=require(46),toUrl=_require.toUrl;function getStorageValuePrefix(e){return toUrl(e).pathname}var storedValue=localStorage.getItem(STORAGE_KEY);if(storedValue){var prefix=getStorageValuePrefix(location.href);storedValue=0===storedValue.indexOf(prefix)?storedValue.slice(prefix.length):"",localStorage.removeItem(STORAGE_KEY)}function storePromoLineVariant(e,r){try{localStorage.setItem(STORAGE_KEY,getStorageValuePrefix(r)+e)}catch(e){console.warn("failed to store promo line testing candidate",e)}}exports.trackExperimentalPromolines=function(e){var r=e.querySelector("[data-promoline-variant]:not([hidden])"),t=null==r?void 0:r.closest("a[href]");if(t){var o=function(e){storePromoLineVariant(r.innerText,t.href)};t.addEventListener("click",o),t.addEventListener("contextmenu",o),t.addEventListener("touchstart",o,{passive:!0})}},exports.retrieveExperimentalPromoline=function(){return storedValue};
|
||
}, {"46":46}];
|
||
window.modules["95"] = [function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getCurrentBatch=getCurrentBatch;var adService=require("ads.legacy");function getCurrentBatch(e,r){var t=[];return e.forEach(function(e){e.isIntersecting&&(t.push(e.target),r.unobserve(e.target))}),t.map(createAd)}function createAd(e){return adService.createAd(e)}
|
||
}, {"ads.legacy":"ads.legacy"}];
|
||
window.modules["96"] = [function(require,module,exports){"use strict";var _require=require(4),getPaywallStatus=_require.getPaywallStatus,PAYWALL_AD_BUFFER_WORDS=200,HIDE_CLASS="ad--hideForPaywall";function init(){var e=document.querySelector(".article__content");if(e){var t=Array.from(e.querySelectorAll("\n\t\t.ad--inArticleBanner,\n\t\t.ad--box\n\t")).filter(function(e){return"none"!==window.getComputedStyle(e).display});t.forEach(function(e){e.classList.add(HIDE_CLASS)}),getPaywallStatus().then(function(n){n.isPaywallDisplayed?unhideEligibleInArticleAds(t,e):unhideInArticleAds(t)})}}function unhideInArticleAds(e){e.forEach(function(e){e.classList.remove(HIDE_CLASS)})}function repositionSlotBeforePaywall(e,t,n){var r=Array.from(n.children).filter(function(e){return Boolean(e.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_FOLLOWING)}).filter(function(e){return"none"!==window.getComputedStyle(e).display}).filter(function(e){return!e.className.includes("ad--exco")}),i=0,o=r.find(function(e){if(e.classList.contains("slate-paragraph")?i+=parseInt(e.dataset.wordCount,10)||0:i=0,i<PAYWALL_AD_BUFFER_WORDS)return!1;for(var t=r.slice(r.indexOf(e)+1),n=0,o=0;o<t.length;o++){var a=t[o];if(!a.classList.contains("slate-paragraph"))break;n+=parseInt(a.dataset.wordCount,10)||0}return n>=PAYWALL_AD_BUFFER_WORDS});o&&(o.getBoundingClientRect().bottom>window.innerHeight&&(o.after(e),e.classList.remove(HIDE_CLASS)))}function unhideEligibleInArticleAds(e,t){var n=t.querySelector(".slate-roadblock");if(n)for(var r,i=0,o=function(){var r=e[a];if(!Boolean(r.compareDocumentPosition(n)&Node.DOCUMENT_POSITION_FOLLOWING))return 0;for(var o=Array.from(t.children).filter(function(e){return Boolean(e.compareDocumentPosition(n)&Node.DOCUMENT_POSITION_FOLLOWING)}).filter(function(e){return Boolean(e.compareDocumentPosition(r)&Node.DOCUMENT_POSITION_PRECEDING)}).filter(function(e){return"none"!==window.getComputedStyle(e).display}).filter(function(e){return!e.className.includes("ad--exco")}),l=0,s=0;s<o.length;s++){var c=o[s];if(!c.classList.contains("slate-paragraph"))break;l+=parseInt(c.dataset.wordCount,10)||0}if(l<PAYWALL_AD_BUFFER_WORDS){if(0===i)return repositionSlotBeforePaywall(r,n,t),1}else r.classList.remove(HIDE_CLASS),i++},a=0;a<e.length&&(0===(r=o())||1!==r);a++);}module.exports.inArticleAds=init;
|
||
}, {"4":4}];
|
||
window.modules["97"] = [function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.isBiddingEnabled=isBiddingEnabled;var _require=require(128),isPlusPage=_require.isPlusPage,biddingEnabled={leaderboard:!0,"leaderboard-tablet":!0,"mid-article-spot-mobile":!0,"mid-article-spot-tablet":!0,"mid-article-spot":!0,"mid-article-spot-xl":!0,"mid-article-box":!0,"mobile-outstream-video":!1,"outstream-video":!1,"outstream-video-xl":!1,"mobile-outstream-video-backfill":!0,"outstream-video-backfill":!0,"outstream-video-xl-backfill":!0,"rr-flex":!0,"rr-article-flex":!0,"mob-adhesion":!0,"hp-mob-mid":!0,"hp-mob-top":!0,"hp-leaderboard-mid":!0,"hp-leaderboard-mid-tablet":!0,"hp-leaderboard-bottom":!0,"hp-leaderboard-bottom-tablet":!0,"hp-native-main":!1,"hp-native-flex":!0,"rr-front-flex":!0,"mobile-front":!0,"rr-podcast":!0,"podcast-headline":!1,"mobile-only-bottom":!0,"leaderboard-mobile":!1,"hp-mob-bottom":!0,"recirc-flex-left":!0,"recirc-flex-right":!0,"recirc-mob":!0};function isBiddingEnabled(e){return!isPlusPage()&&biddingEnabled[e.type]}
|
||
}, {"128":128}];
|
||
window.modules["98"] = [function(require,module,exports){"use strict";var _require=require(920),isElementInViewport=_require.isElementInViewport,_require2=require(921),isElementNotHidden=_require2.isElementNotHidden,_throttle=require(770),sticky="ad--sticky-desktop",hide="ad--sticky-hide",time=3e3,maxStickyTime=5e3,leaderboard=document.querySelector(".top-ad"),taboola=document.querySelector(".taboola-recirc"),leaderboardIds=["leaderboard-1","leaderboard-tablet-1"],throttledAvoidTaboola=_throttle(avoidTaboola,200),refresh=!1,isLeaderboardSticky=!1,stickyFallbackTimeout=null;function avoidTaboola(){isLeaderboardSticky&&isElementNotHidden(taboola)&&(leaderboard.getBoundingClientRect().bottom>taboola.getBoundingClientRect().top&&done(0))}function unstick(e){var t=e.slot.getSlotElementId();leaderboardIds.includes(t)&&isLeaderboardSticky&&setTimeout(function(){leaderboard.classList.add(hide),done(1e3)},time)}function stick(e){var t=e.slot.getSlotElementId();document.querySelector("#"+t);leaderboardIds.includes(t)&&(refresh||(refresh=!0,isLeaderboardSticky=!0,leaderboard.classList.add(sticky),window.addEventListener("scroll",throttledAvoidTaboola),stickyFallbackTimeout=setTimeout(function(){isLeaderboardSticky&&(leaderboard.classList.add(hide),done(1e3))},maxStickyTime)))}function done(e){clearTimeout(stickyFallbackTimeout),setTimeout(function(){leaderboard.classList.remove(hide),leaderboard.classList.remove(sticky),isLeaderboardSticky=!1,window.removeEventListener("scroll",throttledAvoidTaboola)},e)}module.exports.enableStickyLeaderboard=function(){window.googletag.cmd.push(function(){var e=googletag.pubads();e.addEventListener("slotOnload",function(e){return stick(e)}),e.addEventListener("impressionViewable",function(e){return unstick(e)})})};
|
||
}, {"770":770,"920":920,"921":921}];
|
||
window.modules["100"] = [function(require,module,exports){"use strict";var STORAGE_KEY="via",DELIMITER="_";function store(e){if(e.length){pageType&&e.unshift(pageType);var t=e.join(DELIMITER);try{sessionStorage.setItem(STORAGE_KEY,t)}catch(e){console.warn("failed to store via",e)}}else sessionStorage.removeItem(STORAGE_KEY)}exports.retrieve=function(){try{var e=sessionStorage.getItem(STORAGE_KEY);return sessionStorage.removeItem(STORAGE_KEY),e}catch(e){console.warn("failed to retrieve via",e)}};var pageType,PREFIXES={article:"article",homepage:"homepage","vertical front":"section","rubric front":"rubric"};function collectVias(e){var t=e.target;if(t.closest("a[href],form[action]")){var a=[];for(t=t.closest("[data-via]");t;)a.push(t.dataset.via),t=t.parentElement.closest("[data-via]");store(a)}}exports.setPageType=function(e){pageType=PREFIXES[e]},document.documentElement.addEventListener("click",collectVias),document.documentElement.addEventListener("submit",collectVias);
|
||
}, {}];
|
||
window.modules["101"] = [function(require,module,exports){"use strict";var TWA_PROTOCOL="android-app:",KEY_IS_TWA="isTrustedWebActivity",ANDROID_QUERY_PARAM="android-app",PACKAGE_NAME="com.wapo.slate.android";function isTrustedWebActivity(){var r=document.referrer&&document.referrer.trim()||"";if(0===r.length)return!1;var e=new URL(r);return e.protocol===TWA_PROTOCOL&&(e.hostname===PACKAGE_NAME||0===e.pathname.indexOf("//"+PACKAGE_NAME))}function hasAndroidSearchParam(){return!!location.search&&"1"===new URLSearchParams(location.search).get(ANDROID_QUERY_PARAM)}function isAndroidSession(){if("Y"===sessionStorage.getItem(KEY_IS_TWA))return!0;var r=isTrustedWebActivity()||hasAndroidSearchParam();return r&&sessionStorage.setItem(KEY_IS_TWA,"Y"),r}module.exports.isAndroidSession=isAndroidSession;
|
||
}, {}];
|
||
window.modules["102"] = [function(require,module,exports){"use strict";var abStringRe=new RegExp("^([0-9]+)_([0-9]+)$");function parseAbTestString(e){return abStringRe.exec(e)}function isValidAbTestString(e){return!!parseAbTestString(e)}module.exports.parseAbTestString=parseAbTestString,module.exports.isValidAbTestString=isValidAbTestString;
|
||
}, {}];
|
||
window.modules["103"] = [function(require,module,exports){"use strict";var _once=require(85),slateAmplitude=require(21),_require=require(1),getArticleType=_require.getArticleType;function cb(e,t){void 0===t&&(t=!1);for(var n=window.webVitals,i=n.onCLS,r=n.onLCP,a=n.onINP,o={},c={CLS:["largestShiftTarget","largestShiftTime","largestShiftValue","loadState"],INP:["interactionTarget","interactionTime","interactionType","loadState"],LCP:["element","elementRenderDelay","url","timeToFirstByte","resourceLoadDelay","resourceLoadDuration"]},l=0,s=[i,r,a];l<s.length;l++){(0,s[l])(function(e){t&&console.debug("%cWeb Vitals: "+e.name,"background-color: mediumSeaGreen; color: white; padding: 2px 4px; border-radius: 2px;",JSON.stringify(e)),o[e.name]=e.value,o[e.name+"_rating"]=e.rating;var n=c[e.name];n&&n.forEach(function(t){o[e.name+"_"+t]=e.attribution[t]}),"INP"===e.name&&"GOOD"!==e.rating&&u(o,e),o.Load_event=d(),o.article_type=getArticleType()})}var u=function(e,t){if(t.attribution.longAnimationFrameEntries.length){var n=t.attribution.longAnimationFrameEntries.sort(function(e,t){return t.blockingDuration-e.blockingDuration})[0];if(n.scripts.length){var i=n.scripts.toSorted(function(e,t){return t.duration-e.duration})[0];e[t.name+"_scriptUrl"]=i.sourceURL,e[t.name+"_invoker"]=i.invoker,e[t.name+"_invokerType"]=i.invokerType}}},d=function(){return Math.round(performance.getEntriesByType("navigation")[0].loadEventStart)},g=_once(function(){var t=Object.assign({},o,{version:e});slateAmplitude.track("web_vitals",t)});addEventListener("visibilitychange",function(){"hidden"===document.visibilityState&&g()}),addEventListener("pagehide",g)}module.exports.track=function(e){var t=e.dataset,n=t.version,i=t.webVitalsSampling,r=t.webVitalsUrl,a=function(e,t){slateGlobal.injectScript(r,function(){return cb(e,t)})};"true"!==new URLSearchParams(window.location.search).get("vitals_debug")?Math.random()>parseFloat(i)||a(n):a(n,!0)};
|
||
}, {"1":1,"21":21,"85":85}];
|
||
window.modules["114"] = [function(require,module,exports){"use strict";var slateAmplitude=require(21),slatePermutive=require(92);function getPlacement(e){return e.closest(".share-sidebar")?"sidebar":e.closest(".social-share--podcast-bottom")?"podcast-bottom":"article-bottom"}function trackShare(e){var t=e.dataset.share,a={type:t,action:e.dataset.parselyEvent,placement:getPlacement(e)};slateAmplitude.track("Clicked Social Share",a),slatePermutive.track("Social",{platform:t})}function handleSocial(e){e.preventDefault();trackShare(this),openPopupWindow(this)}function handleWebShare(e){return function(t){t.preventDefault();navigator.share&&(trackShare(this),navigator.share(e).catch(function(e){return console.log("Error sharing",e)}))}}function handleShareFallback(e,t){return function(a){var n=e.innerHTML;a.preventDefault(),navigator.clipboard.writeText(t),e.innerHTML="Copied!",setTimeout(function(){e.innerHTML=n},5e3)}}function openPopupWindow(e){var t=e.href;window.open(t,"sharewindow","toolbar=0,status=0,width=620,height=280")}function generatePayload(e,t){var a={title:"Slate",text:t||document.title,url:e};return navigator.canShare&&navigator.canShare(a)?a:null}function setupShareButton(e,t,a){var n=generatePayload(t,a);n?e.addEventListener("click",handleWebShare(n)):e.addEventListener("click",handleShareFallback(e,a+" "+t))}function handleCopyShare(e,t){var a=!1;return function(n){if(!a){a=!0;var r=t.innerHTML;n.preventDefault(),navigator.clipboard.writeText(e),t.innerHTML="LINK COPIED";var o=n.target.closest(".social-share__link--copy");o.classList.add("social-share__link--copy-success");var i=o.querySelector("svg");i&&swapIcon(i,"check"),setTimeout(function(){t.innerHTML=r,i&&swapIcon(i,"link-chain"),o.classList.remove("social-share__link--copy-success"),a=!1},5e3)}}}function swapIcon(e,t){var a=e.querySelector("use"),n=new URL(a.getAttribute("href"));n.hash=t,a.setAttribute("href",n.href)}function setupSocialShareComponentButtons(e,t,a){var n=generatePayload(t.dataset.shareUrl);n&&(t.hidden=!1,t.classList.add(e+"--mobile-only"),a.forEach(function(t){t.classList.add(e+"--desktop-only")}),t.addEventListener("click",handleWebShare(n))),a.forEach(function(e){e.addEventListener("click",handleSocial)})}function setupCopyLinkButton(e,t){e.addEventListener("click",handleCopyShare(e.dataset.copyUrl,t))}module.exports.trackShare=trackShare,module.exports.handleSocial=handleSocial,module.exports.handleWebShare=handleWebShare,module.exports.openPopupWindow=openPopupWindow,module.exports.setupShareButton=setupShareButton,module.exports.setupSocialShareComponentButtons=setupSocialShareComponentButtons,module.exports.setupCopyLinkButton=setupCopyLinkButton;
|
||
}, {"21":21,"92":92}];
|
||
window.modules["115"] = [function(require,module,exports){"use strict";function _catch(e,t){try{var i=e()}catch(e){return t(e)}return i&&i.then?i.then(void 0,t):i}var giftLinkData,sharesRemaining,copyBtnClickHandler,copiedStateTimeout,onSplusCopyClick=function(e,t){try{e.preventDefault();var i=e.currentTarget,n=t.querySelector(".gift-link-box__error");return setLoadingState(i),Promise.resolve(_catch(function(){return Promise.resolve(createGiftLink(location.href)).then(function(e){if(!e.success)throw new Error("Failed to create gift link");n.hidden=!0;var r=buildGiftUrl(e.article_url,e.gift_token);return Promise.resolve(navigator.clipboard.writeText(r)).then(function(){return slateAmplitude.track("Gift Story Copy"),sharesRemaining=e.shares_remaining,setSharesRemainingText(t,sharesRemaining),showGiftLinkUrl(t,r,e.expiration_date),setCopiedState(i),Promise.resolve(fetchGiftLinks()).then(function(e){giftLinkData=e})})})},function(){resetButtonState(i),n.hidden=!1}))}catch(e){return Promise.reject(e)}},_once=require(85),membership=require(7),slateAmplitude=require(21),_require=require(116),fetchGiftLinks=_require.fetchGiftLinks,createGiftLink=_require.createGiftLink,fetchGiftLinksOnce=_once(fetchGiftLinks);function initSplusGiftBox(e){var t=e.querySelector(".gift-link-box__btn");setSharesRemainingText(e,sharesRemaining);var i=findExistingLink(giftLinkData);if(e.querySelector(".gift-link-box__hed").textContent=i?"You already have a gift link for this story.":"Share this story with anyone, for free.",copyBtnClickHandler&&t.removeEventListener("click",copyBtnClickHandler),i){var n=buildGiftUrl(i.article_url,i.gift_token);return showGiftLinkUrl(e,n,i.expiration_date),copyBtnClickHandler=function(e){e.preventDefault(),navigator.clipboard.writeText(n),setCopiedState(t)},void t.addEventListener("click",copyBtnClickHandler)}0!==sharesRemaining?(copyBtnClickHandler=onSplusCopyClick,t.addEventListener("click",function(t){copyBtnClickHandler(t,e)})):t.disabled=!0}function setSharesRemainingText(e,t){var i=e.querySelector(".gift-link-box__txt");i.querySelector(".gift-link-box__count").textContent=t,i.querySelector(".gift-link-box__link-text").textContent=1===t?"link":"links",i.hidden=!1}function showGiftLinkUrl(e,t,i){var n=e.querySelector(".gift-link-box__link-exp");n&&(n.textContent=new Date(i).toLocaleDateString("en-US",{month:"long",day:"numeric"})),e.querySelector(".gift-link-box__valid-txt").hidden=!1}function positionGiftBox(e,t){var i=t.getBoundingClientRect(),n=window.innerWidth<768,r=i.top>window.innerHeight/2,o=!n&&i.left>window.innerWidth/2;e.classList.toggle("gift-link-box--above",r),e.classList.toggle("gift-link-box--arrow-right",o);var c=t.closest(".l-container");if(c){var a=c.getBoundingClientRect();if(e.style.setProperty("--container-width",Math.round(a.width)+"px"),n){var l=t.closest(".social-share--gift").getBoundingClientRect();e.style.left=Math.round(a.left-l.left)+"px",e.style.setProperty("--translate-x","0")}else e.style.removeProperty("left"),e.style.removeProperty("--translate-x")}var s=e.getBoundingClientRect(),u=(t.querySelector(".social-share__icon")||t).getBoundingClientRect(),f=u.left+u.width/2,d=.5*parseFloat(getComputedStyle(e).fontSize),g=o?s.right-f-d:f-s.left-d;e.style.setProperty("--arrow-offset",Math.round(g)+"px")}function findExistingLink(e){if(null!=e&&e.gift_links){var t=new Date,i=location.origin+location.pathname;return e.gift_links.find(function(e){var n=new URL(e.article_url);return n.origin+n.pathname===i&&new Date(e.expiration_date)>t})}}function buildGiftUrl(e,t){var i=new URL(e);return i.searchParams.set("gift_token",t),i.toString()}function setLoadingState(e){e.querySelector(".gift-link-box__icon").setAttribute("hidden",!0),e.querySelector(".slate-loading").hidden=!1}function setCopiedState(e){e.querySelector(".gift-link-box__copy").hidden=!0,e.querySelector(".slate-loading").hidden=!0,e.querySelector(".gift-link-box__icon").removeAttribute("hidden"),e.querySelector(".gift-link-box__copied").hidden=!1,e.classList.add("gift-link-box__btn--copied"),copiedStateTimeout=setTimeout(function(){return resetButtonState(e)},4e3)}function resetButtonState(e){e.querySelector(".gift-link-box__icon--chain").removeAttribute("hidden"),e.querySelector(".slate-loading").hidden=!0,e.querySelector(".gift-link-box__copy").hidden=!1,e.querySelector(".gift-link-box__copied").hidden=!0,e.classList.remove("gift-link-box__btn--copied")}function addRedirectUris(e){e.forEach(function(e){var t=new URL(e.href,window.location.href);t.searchParams.set("redirect_uri",location.href),e.href=t.toString()})}module.exports=function(e){try{var t=e.querySelector(".social-share--gift"),i=e.querySelector(".social-share__link--gift"),n=e.querySelector(".gift-link-box");return Promise.resolve(membership.isMember()).then(function(e){function r(){var r="social-share--gift-active",o=new ResizeObserver(function(){t.classList.contains(r)&&positionGiftBox(n,i)});function c(){t.classList.remove(r),document.removeEventListener("click",a),document.removeEventListener("keydown",l),o.disconnect(),s.disconnect(),clearTimeout(copiedStateTimeout),t.querySelector(".gift-link-box__btn")&&resetButtonState(t.querySelector(".gift-link-box__btn"))}function a(e){i.contains(e.target)||n.contains(e.target)||c()}function l(e){"Escape"===e.key&&c()}var s=new IntersectionObserver(function(e){e[0].isIntersecting||c()});i.addEventListener("click",function(){var u=!t.classList.contains(r);if(t.classList.toggle(r),u){e&&initSplusGiftBox(t),positionGiftBox(n,i),document.addEventListener("click",a),document.addEventListener("keydown",l);var f=i.closest(".l-container");o.observe(f),s.observe(n),slateAmplitude.track("Clicked Gift Story")}else c()})}var o=function(){if(e)return Promise.resolve(fetchGiftLinksOnce()).then(function(e){sharesRemaining=(giftLinkData=e).shares_remaining});addRedirectUris(t.querySelectorAll("a[href*='/plus']"))}();return o&&o.then?o.then(r):r()})}catch(e){return Promise.reject(e)}};
|
||
}, {"7":7,"21":21,"85":85,"116":116}];
|
||
window.modules["116"] = [function(require,module,exports){"use strict";var fetchGiftLinks=function(){try{return Promise.resolve(fetch(myslateOrigin+"/giftlinks/all/",{credentials:"include",headers:{Accept:"application/json"}}).then(function(e){return e.json()}).catch(function(e){return{error:e.message}}))}catch(e){return Promise.reject(e)}},createGiftLink=function(e){try{return Promise.resolve(fetch(myslateOrigin+"/giftlinks/",{credentials:"include",method:"POST",headers:{Accept:"application/json","Content-Type":"application/json"},body:JSON.stringify({article_url:e})}).then(function(e){return e.json()}).catch(function(e){return console.error(e),e}))}catch(e){return Promise.reject(e)}},_require=require(926),myslateOrigin=_require.myslateOrigin,_require2=require(46),toUrl=_require2.toUrl,GIFT_LINK_TIMEOUT=500;function getGiftToken(){return new URLSearchParams(window.location.search).get("gift_token")}function redeemGiftLink(e){void 0===e&&(e="");var r=window.location.href,t=toUrl(myslateOrigin+"/giftlinks/"+e+"/",{article_url:r}),i=new AbortController,n=setTimeout(function(){return i.abort()},GIFT_LINK_TIMEOUT);return fetch(t,{credentials:"include",signal:i.signal}).then(function(e){if(clearTimeout(n),!e.ok)throw new Error;return e.json()}).catch(function(e){return clearTimeout(n),"AbortError"===e.name?(console.error("Request to redeem gift link timed out"),{valid:!0}):(console.error("Error redeeming gift link token",e),{valid:!1})})}module.exports.createGiftLink=createGiftLink,module.exports.fetchGiftLinks=fetchGiftLinks,module.exports.redeemGiftLink=redeemGiftLink,module.exports.getGiftToken=getGiftToken;
|
||
}, {"46":46,"926":926}];
|
||
window.modules["121"] = [function(require,module,exports){"use strict";var _window$googletag,bqLog=require(5),criteo=require(126),_require=require(1),getArticleType=_require.getArticleType,EVENT_NAME="Ads Performance",SAMPLING=.05,eventProperties={article_type:getArticleType()};function sendRequest(){bqLog.track(EVENT_NAME,eventProperties),Math.random()<SAMPLING&&window.slateAmplitudeQueue.push(function(e){e.track(EVENT_NAME,eventProperties)})}function getIncrementalValue(e){var t,r=convertToCents(e[0].cpm);1===e.length?t=r:t=r-convertToCents(e[1].cpm);return convertToDollars(t)}function sortBids(e){return e.sort(function(e,t){return e.cpm<t.cpm?1:-1})}function convertToCents(e){return Math.round(100*e)}function convertToDollars(e){return e/100}function roundCpm(e){return Math.round(100*e)/100}function containsLiveRampId(){var e=!1;return pbjs.getUserIds().idl_env&&(e=!0),e}function permutiveSegmentsExist(){var e=window.localStorage.getItem("_pdfps");return null!==e&&e.length>0}module.exports.leaderboardRequest=function(e){eventProperties.timeToLeaderboardRequest=e},module.exports.firstRequest=function(e){eventProperties.timeToFirstAdRequest=e},module.exports.firstAdLoaded=function(e,t){eventProperties.timeToFirstAdLoad=e,eventProperties.campaignId=t,sendRequest()},module.exports.prebidWinner=function(e){var t=sortBids(e),r=t[0];bqLog.track("Prebid Winning Bid",{bidder:r.bidder,cpm:roundCpm(r.cpm),adUnit:r.adUnitCode,incrementalValue:getIncrementalValue(t),liveRampId:containsLiveRampId(),criteoEmail:criteo.hashedEmailIncluded,permutiveSegments:permutiveSegmentsExist()})},module.exports.noPrebidBids=function(e){bqLog.track("Prebid No Bids",{adUnit:e,liveRampId:containsLiveRampId()})};var firstAdLoaded=!1;null==(_window$googletag=window.googletag)||_window$googletag.cmd.push(function(){var e;null==(e=window.googletag)||e.pubads().addEventListener("slotResponseReceived",function(){firstAdLoaded||(bqLog.track("Page View with Ads"),firstAdLoaded=!0)})});
|
||
}, {"1":1,"5":5,"126":126}];
|
||
window.modules["122"] = [function(require,module,exports){"use strict";function getAdNode(){var e=document.querySelector("div[data-adnode]"),t="";return e&&(t=e.getAttribute("data-adnode")),t}Object.defineProperty(exports,"__esModule",{value:!0}),exports.getAdNode=getAdNode;
|
||
}, {}];
|
||
window.modules["123"] = [function(require,module,exports){"use strict";module.exports.sizes={"mid-article-spot":{adserver:[[970,250],[970,90],[728,90],[455,256],[300,250],[300,251],[325,204],[620,366],[1,3]],bidding:[[970,250],[970,90],[728,90],[300,250],[325,204],[620,366]]},"mid-article-spot-xl":{adserver:[[728,90],[455,256],[300,250],[300,251],[325,204],[620,366]],bidding:[[728,90],[300,250],[325,204],[620,366]]},"mid-article-spot-tablet":{adserver:[[728,90],[300,250],[455,256],[300,251],[1,3],[325,204],[620,366]],bidding:[[728,90],[300,250],[325,204],[620,366]]},"mid-article-box":{adserver:[[300,250]],bidding:[[300,250]]},"mid-article-spot-mobile":{adserver:[[300,250],[300,251],[1,3],[325,508],[325,204]],bidding:[[300,250],[325,508],[325,204]]},"mobile-only-bottom":{adserver:[[300,250],[1,3]],bidding:[[300,250]]},leaderboard:{adserver:[[970,250],[970,90],[728,90],[1,3]],bidding:[[970,250],[970,90],[728,90]]},"leaderboard-tablet":{adserver:[[728,90],[1,3]],bidding:[[728,90]]},"leaderboard-mobile":{adserver:[[320,100],[320,50]],bidding:[[320,100],[320,50]]},"rr-flex":{adserver:[[300,250],[300,600],[160,600]],bidding:[[300,250],[300,600],[160,600]]},"hp-leaderboard-mid":{adserver:[[970,250],[970,90],[728,90],[1,3]],bidding:[[970,250],[970,90],[728,90]]},"hp-leaderboard-mid-tablet":{adserver:[[728,90],[1,3]],bidding:[[728,90]]},"hp-mob-mid":{adserver:[[300,250],[1,3]],bidding:[[300,250]]},"hp-leaderboard-bottom":{adserver:[[970,250],[970,90],[728,90],[1,3]],bidding:[[970,250],[970,90],[728,90]]},"hp-leaderboard-bottom-tablet":{adserver:[[728,90],[1,3]],bidding:[[728,90]]},"hp-mob-bottom":{adserver:[[300,250],[1,3]],bidding:[[300,250]]},"hp-native-main":{adserver:[[1,2]],bidding:[]},"hp-native-flex":{adserver:[[1,2],[300,250]],bidding:[[300,250]]},"hp-mob-top":{adserver:[[300,250],[1,3]],bidding:[[300,250]]},"rr-front-flex":{adserver:[[300,250],[300,600],[160,600]],bidding:[[300,250],[300,600],[160,600]]},"mobile-front":{adserver:[[300,250],[1,3]],bidding:[[300,250]]},"rr-podcast":{adserver:[[300,250]],bidding:[[300,250]]},"podcast-headline":{adserver:[[1,4]],bidding:[]},"rr-article-flex":{adserver:[[300,250],[300,600],[160,600]],bidding:[[300,250],[300,600],[160,600]]},"mob-adhesion":{adserver:[[320,50]],bidding:[[320,50]]}};
|
||
}, {}];
|
||
window.modules["124"] = [function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getSlotData=getSlotData,exports.saveSlotData=saveSlotData;var allSlotsData={};function saveSlotData(t){allSlotsData[t.id]=t}function getSlotData(t){return allSlotsData[t]}
|
||
}, {}];
|
||
window.modules["125"] = [function(require,module,exports){"use strict";var GAM_VALUE_MAX_LENGTH=40;function sanitizeWatsonCategorySegment(e){return e&&"string"==typeof e?e.toLowerCase().replace(/[^a-z0-9]+/g,"_").replace(/^_|_$/g,"").slice(0,GAM_VALUE_MAX_LENGTH):""}function expandWatsonCategoryLabel(e){return e&&"string"==typeof e?e.split("/").map(sanitizeWatsonCategorySegment).filter(Boolean):[]}function getRawWatsonCategories(){var e=document.querySelector(".js-watson-categories");if(!e)return[];try{var t=JSON.parse(e.textContent);return Array.isArray(t)?t:[]}catch(e){return[]}}function getWatsonCategoriesForGam(){for(var e=new Set,t=[],a=0,r=getRawWatsonCategories();a<r.length;a++)for(var n=0,o=expandWatsonCategoryLabel(r[a]);n<o.length;n++){var s=o[n];e.has(s)||(e.add(s),t.push(s))}return t}module.exports={GAM_VALUE_MAX_LENGTH:GAM_VALUE_MAX_LENGTH,sanitizeWatsonCategorySegment:sanitizeWatsonCategorySegment,expandWatsonCategoryLabel:expandWatsonCategoryLabel,getWatsonCategoriesForGam:getWatsonCategoriesForGam};
|
||
}, {}];
|
||
window.modules["126"] = [function(require,module,exports){"use strict";var _require=require(7),getUserEmail=_require.getUserEmail,_require2=require(74),hash=_require2.hash,hashedEmailIncluded=!1;module.exports.zoneIds={leaderboard:"1157134","leaderboard-tablet":"1157133","mid-article-spot-mobile":"1157131","hp-mob-mid":"1157131","hp-mob-top":"1157131","mobile-outstream-video-backfill":"1157131","mobile-only-bottom":"1157131","hp-mob-bottom":"1157131","recirc-mob":"1157131","mid-article-spot-tablet":"1157133","mid-article-spot":"1157134","mid-article-spot-xl":"1157134","outstream-video-backfill":"1157134","outstream-video-xl-backfill":"1157134","mid-article-box":"1157131","hp-native-flex":"1157131","rr-flex":"1157132","rr-article-flex":"1157132","recirc-flex-left":"1157132","recirc-flex-right":"1157132","mobile-front":"1157131","rr-podcast":"1157131","rr-front-flex":"1157132","hp-leaderboard-mid":"1157134","hp-leaderboard-mid-tablet":"1157133","hp-leaderboard-bottom":"1157134","hp-leaderboard-bottom-tablet":"1157133","mob-adhesion":"1362447"},module.exports.syncEmail=function(){try{var e=getUserEmail();return e?Promise.resolve(hash(e,"hex")).then(function(e){e&&(pbjs.que.push(function(){pbjs.setBidderConfig({bidders:["criteo"],config:{ortb2:{user:{ext:{data:{eids:[{source:"slate.com",uids:[{id:e,atype:3,ext:{stype:"hemsha256"}}]}]}}}}}})}),hashedEmailIncluded=!0)}):Promise.resolve()}catch(e){return Promise.reject(e)}},module.exports.hashedEmailIncluded=hashedEmailIncluded;
|
||
}, {"7":7,"74":74}];
|
||
window.modules["127"] = [function(require,module,exports){"use strict";var getEmailHashFromMembership=function(){try{var e=getUserEmail();return Promise.resolve(e&&hash(e,"hex"))}catch(e){return Promise.reject(e)}},_require=require(74),hash=_require.hash,_require2=require(7),getUserEmail=_require2.getUserEmail,EMAIL_HASH_PARAMS={sha256:"email",md5:"email2",sha1:"email3"};for(var type in EMAIL_HASH_PARAMS)localStorage.removeItem("email."+type);function getEmailHashesFromUrl(){var e=new URL(document.location).searchParams;return Object.values(EMAIL_HASH_PARAMS).map(function(r){return e.get(r)})}exports.getEmailHashes=function(){try{var e=getEmailHashesFromUrl();return Promise.resolve(getEmailHashFromMembership()).then(function(r){if(r){var t=Object.keys(EMAIL_HASH_PARAMS).indexOf("sha256");e[t]=r}return e.filter(function(e){return!!e})})}catch(e){return Promise.reject(e)}};
|
||
}, {"7":7,"74":74}];
|
||
window.modules["128"] = [function(require,module,exports){"use strict";var isMember=require(7).isMemberSkipLookup(),slotsToExclude=["mid-article-spot-mobile-2","mid-article-spot-mobile-4","mid-article-spot-tablet-2","mid-article-spot-tablet-4","mid-article-spot-2","mid-article-spot-4","mid-article-spot-xl-2","mid-article-spot-xl-4","mob-adhesion-1"];function hideSlot(e){document.querySelector("#"+e).parentElement.setAttribute("hidden","")}var isPlusPage=function(){var e=document.querySelector(".article");return!!e&&e.classList.contains("article--plus")},checkIfHiddenForPlus=function(e){isMember&&slotsToExclude.includes(e)&&hideSlot(e)};module.exports.isPlusPage=isPlusPage,module.exports.checkIfHiddenForPlus=checkIfHiddenForPlus;
|
||
}, {"7":7}];
|
||
window.modules["129"] = [function(require,module,exports){"use strict";var handlePaywallCheck=function(){try{return getPaywallStatus().then(function(e){e.isPaywallDisplayed||injectExcoPlayerScript()}),Promise.resolve()}catch(e){return Promise.reject(e)}},shouldLoadExco=function(){try{return document.querySelector(EXCO_CONTAINER_SELECTOR)?Promise.resolve(membership.isMember()).then(function(e){return!e}):Promise.resolve(!1)}catch(e){return Promise.reject(e)}},membership=require(7),slateAmplitude=require(21),_require=require(4),getPaywallStatus=_require.getPaywallStatus,EXCO_CONTAINER_SELECTOR=".ad--exco",EXCO_PLAYER_SCRIPT_CLASS="exco-player",EXCO_PLAYER_URL="//player.ex.co/player/8b7b2bed-5b69-4d70-82d5-aa335c8abe6c";function injectExcoPlayerScript(){var e=document.createElement("script");e.className=EXCO_PLAYER_SCRIPT_CLASS,e.src=EXCO_PLAYER_URL;var r=document.getElementsByTagName("script")[0];r.parentNode.insertBefore(e,r)}module.exports=function(){return Promise.resolve(shouldLoadExco()).then(function(e){if(e)return Promise.resolve(handlePaywallCheck()).then(function(){});!0})};
|
||
}, {"4":4,"7":7,"21":21}];
|
||
window.modules["130"] = [function(require,module,exports){"use strict";var setPublisherProvidedId=function(){try{return/usprivacy=\d+[YN]Y/.test(document.cookie)?Promise.resolve():Promise.resolve(getPpid()).then(function(e){e&&window.googletag.pubads().setPublisherProvidedId(e)})}catch(e){return Promise.reject(e)}},getPpid=function(){try{var e=getSlateUuid();return e?Promise.resolve(hash(e,"hex")):Promise.resolve()}catch(e){return Promise.reject(e)}},_require=require(74),hash=_require.hash;function getSlateUuid(){var e=document.cookie.match(/(?:^|; )slate-uuid=([^;]*)/);return e?decodeURIComponent(e[1]):void 0}module.exports={getSlateUuid:getSlateUuid,getPpid:getPpid,setPublisherProvidedId:setPublisherProvidedId};
|
||
}, {"74":74}];
|
||
window.modules["131"] = [function(require,module,exports){"use strict";var _require=require(128),checkIfHiddenForPlus=_require.checkIfHiddenForPlus;module.exports.assignIds=function(){var e={};Array.from(document.querySelectorAll(".slate-ad")).forEach(function(r){var t=r.querySelector(".slate-ad__creative"),u=t.getAttribute("data-type");e[u]||(e[u]=1),t.id=u+"-"+e[u],e[u]++,checkIfHiddenForPlus(t.id)})};
|
||
}, {"128":128}];
|
||
window.modules["132"] = [function(require,module,exports){"use strict";var bqLog=require(5),_require=require(7),isMemberSkipLookup=_require.isMemberSkipLookup,_require2=require(1),getArticleType=_require2.getArticleType,pianoScriptState=require(76),SAMPLING=1;window.googletag=window.googletag||{cmd:[]};var init=function(){var e=Math.random()<SAMPLING,t=0,i=!1;e&&(window.googletag.cmd.push(function(){window.googletag.pubads().addEventListener("slotOnload",function(e){e.isEmpty||t++})}),addEventListener("visibilitychange",function(){var e;"hidden"!==document.visibilityState||i||(bqLog.track("Page View Summary",{adImpressions:t,pageType:getPageType(),paywall:isPaywallDisplayed(),timeOnPage:getTimeOnPage(),htmlResponseTime:getHtmlResponseTime(),isMember:isMemberSkipLookup(),articleType:getArticleType(),adSlots:getAdSlots(),pianoScript:pianoScriptState.getState(),testGroup:null!=(e=window.slateGlobal.abTests.taboolaLayoutTest)?e:null},{keepalive:!0}),i=!0)}))},isPaywallDisplayed=function(){return 0!==document.querySelectorAll(".piano-paywall-visible").length},getPageType=function(){return document.querySelector(".js-analytics-js-data").getAttribute("data-pagetype").replace(" ","-")},getTimeOnPage=function(){return Math.round(performance.now()/1e3)},getHtmlResponseTime=function(){var e=performance.getEntriesByType("navigation")[0];return e?Math.round(e.responseEnd):null},getAdSlots=function(){return Array.from(document.querySelectorAll(".slate-ad")).filter(function(e){return"none"!=window.getComputedStyle(e).display}).length};module.exports=init;
|
||
}, {"1":1,"5":5,"7":7,"76":76}];
|
||
window.modules["133"] = [function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.enableAdRefresh=enableAdRefresh;var _require=require(920),isElementInViewport=_require.isElementInViewport,_require2=require(921),isElementNotHidden=_require2.isElementNotHidden,_require3=require(124),getSlotData=_require3.getSlotData,headerBidding=require("headerbidding.legacy"),adSlotsWithRefresh={};function enableAdRefresh(){window.googletag.pubads().addEventListener("slotRenderEnded",function(e){var t,i,n=e.slot,r=n.getSlotElementId(),d=window.document.getElementById(r),o=[].concat(null!=(t=null==(i=n.getConfig("targeting").targeting)?void 0:i.hb_bidder)?t:[]),s=getSize(e);s&&refreshEnabled(s,r,o)&&!adSlotsWithRefresh[r]&&(updateSlotTargeting(n),addRefreshToSlot(n,getSlotData(r),d),adSlotsWithRefresh[r]=!0)})}function addRefreshToSlot(e,t,i){var n=getRefreshInterval(t);setInterval(function(){adIsInView(i)&&headerBidding.init([t],!0)},n)}function getRefreshInterval(e){return"mob-adhesion-1"===e.id?45e3:3e4}function refreshEnabled(e,t,i){return"1x2"!==e&&"1x3"!==e&&"1x4"!==e&&"300x251"!==e&&!isStickyKargoAd(e,t,i)}function adIsInView(e){return!!window.document.hasFocus()&&(isElementInViewport(e)&&isElementNotHidden(e))}function isStickyKargoAd(e,t,i){return"mob-adhesion-1"===t&&"1x1"===e&&"kargo"===i[0]}function updateSlotTargeting(e){e.setConfig({targeting:{hb_adid:null,hb_bidder:null,hb_pb:null,hb_size:null,refresh:"yes"}})}var getSize=function(e){return null!==e.size&&("string"==typeof e.size?e.size:e.size[0]+"x"+e.size[1])};
|
||
}, {"124":124,"920":920,"921":921,"headerbidding.legacy":"headerbidding.legacy"}];
|
||
window.modules["134"] = [function(require,module,exports){"use strict";function slotSupportsOutstream(t){return["mid-article-spot","mid-article-spot-xl","mid-article-spot-tablet","mid-article-spot-mobile"].includes(t)}Object.defineProperty(exports,"__esModule",{value:!0}),exports.slotSupportsOutstream=slotSupportsOutstream;
|
||
}, {}];
|
||
window.modules["135"] = [function(require,module,exports){"use strict";var CUSTOMER_ID="8CUJ4WHD7",getPlacementId=function(e){return"leaderboard"===e.type||"hp-leaderboard-mid"===e.type||"hp-leaderboard-bottom"===e.type?"758323937":"mid-article-spot"===e.type||"mid-article-spot-xl"===e.type?"321035740":"rr-article-flex"===e.type||"rr-flex"===e.type||"rr-front-flex"===e.type?"116830225":"mid-article-box"===e.type||"hp-mob-mid"===e.type||"hp-mob-top"===e.type||"hp-mob-bottom"===e.type||"hp-native-flex"===e.type||"rr-podcast"===e.type||"mobile-front"===e.type||"mid-article-spot-mobile"===e.type?"833659296":"mob-adhesion"===e.type?"225057367":(console.log("no placement id found for ad type",e.type),null)};module.exports={CUSTOMER_ID:CUSTOMER_ID,getPlacementId:getPlacementId};
|
||
}, {}];
|
||
window.modules["136"] = [function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.inventoryCodes=void 0;var inventoryCodes=exports.inventoryCodes={"mid-article-spot-mobile":"slate_m_infeedrec_pb","hp-mob-mid":"slate_m_infeedrec_pb","hp-mob-top":"slate_m_infeedrec_pb","mobile-outstream-video-backfill":"slate_m_infeedrec_pb","mobile-only-bottom":"slate_m_infeedrec_pb","hp-mob-bottom":"slate_m_infeedrec_pb","recirc-mob":"slate_m_infeedrec_pb","mob-adhesion":"slate_320x50_hdx_prebid","mid-article-spot-tablet":"slate_d_leaderboard_inline_pb","mid-article-spot":"slate_d_leaderboard_inline_pb","mid-article-spot-xl":"slate_d_leaderboard_inline_pb","outstream-video-backfill":"slate_d_leaderboard_inline_pb","outstream-video-xl-backfill":"slate_d_leaderboard_inline_pb","mid-article-box":"slate_dm_inline_rec_pb","hp-native-flex":"slate_dm_inline_rec_pb","rr-flex":"slate_d_rrail_largerec_pb","rr-article-flex":"slate_d_rrail_largerec_pb","recirc-flex-left":"slate_d_rrail_largerec_pb","recirc-flex-right":"slate_d_rrail_largerec_pb","mobile-front":"Slate_NonArticle_Mobile_Prebid","rr-podcast":"Slate_NonArticle_Mobile_Prebid","rr-front-flex":"Slate_NonArticle_Desktop_Prebid","hp-leaderboard-mid":"Slate_NonArticle_Desktop_Prebid","hp-leaderboard-mid-tablet":"Slate_NonArticle_Desktop_Prebid","hp-leaderboard-bottom":"Slate_NonArticle_Desktop_Prebid","hp-leaderboard-bottom-tablet":"Slate_NonArticle_Desktop_Prebid"};
|
||
}, {}];
|
||
window.modules["137"] = [function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.domain=void 0,exports.getUnit=getUnit;var domain=exports.domain="slate-d.openx.net";function getUnit(){var e;switch(window.location.href.split("/")[3]){case"news-and-politics":e="557570604";break;case"culture":e="557570603";break;case"technology":e="557570606";break;case"business":e="557570607";break;case"human-interest":e="557570605";break;case"":e="557570601";break;default:e="557570602"}return e}
|
||
}, {}];
|
||
window.modules["138"] = [function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.videoSize=exports.oustreamRubrics=exports.displaySizes=void 0;var videoSize=exports.videoSize=[[300,250]],displaySizes=exports.displaySizes={leaderboard:[[970,250],[970,90],[728,90]],"leaderboard-tablet":[[728,90]],"mid-article-spot-mobile":[[300,250]],"hp-mob-mid":[[300,250]],"hp-mob-top":[[300,250]],"mobile-outstream-video-backfill":[[300,250]],"mobile-only-bottom":[[300,250]],"hp-mob-bottom":[[300,250]],"recirc-mob":[[300,250]],"mid-article-spot-tablet":[[728,90],[300,250]],"mid-article-spot":[[970,250],[970,90],[728,90],[300,250]],"mid-article-spot-xl":[[970,250],[970,90],[728,90],[300,250]],"outstream-video-backfill":[[970,250],[970,90],[728,90],[300,250]],"outstream-video-xl-backfill":[[970,250],[970,90],[728,90],[300,250]],"mid-article-box":[[300,250]],"hp-native-flex":[[300,250]],"rr-flex":[[300,250],[300,600],[160,600]],"rr-article-flex":[[300,250],[300,600],[160,600]],"recirc-flex-left":[[300,250],[300,600],[160,600]],"recirc-flex-right":[[300,250],[300,600],[160,600]],"mobile-front":[[300,250]],"rr-podcast":[[300,250]],"rr-front-flex":[[300,250],[300,600],[160,600]],"hp-leaderboard-mid":[[970,250],[970,90],[728,90]],"hp-leaderboard-mid-tablet":[[728,90]],"hp-leaderboard-bottom":[[970,250],[970,90],[728,90]],"hp-leaderboard-bottom-tablet":[[728,90]],"mob-adhesion":[[320,50]]},oustreamRubrics=exports.oustreamRubrics=["culture/books","news_and_politics/jurisprudence","news_and_politics/the_slatest","human_interest/dear_prudence","business/the_media"];
|
||
}, {}];
|
||
window.modules["139"] = [function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.adSlot=adSlot,exports.publisherId=void 0;var publisherId=exports.publisherId="161864";function adSlot(){var e;switch(window.location.href.split("/")[3]){case"news-and-politics":e="4456585";break;case"culture":e="4456584";break;case"technology":e="4456587";break;case"business":e="4456588";break;case"human-interest":e="4456586";break;case"":e="4456582";break;default:e="4456583"}return e}
|
||
}, {}];
|
||
window.modules["140"] = [function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.placementIds=void 0;var placementIds=exports.placementIds={"mob-adhesion":"_yB1S81ij3k",leaderboard:"_mn5P4mLiWZ","hp-leaderboard-mid":"_mn5P4mLiWZ","hp-leaderboard-bottom":"_mn5P4mLiWZ","leaderboard-tablet":"_vFXQXj3ivh","hp-leaderboard-mid-tablet":"_vFXQXj3ivh","hp-leaderboard-bottom-tablet":"_vFXQXj3ivh","mid-article-spot-mobile":"_uG77kNNswo","hp-mob-mid":"_uG77kNNswo","hp-mob-top":"_uG77kNNswo","mobile-outstream-video-backfill":"_uG77kNNswo","mobile-only-bottom":"_uG77kNNswo","hp-mob-bottom":"_uG77kNNswo","recirc-mob":"_uG77kNNswo","mobile-front":"_uG77kNNswo","mid-article-spot-tablet":"_phl6yqtyoC","mid-article-spot":"_phl6yqtyoC","mid-article-spot-xl":"_phl6yqtyoC","outstream-video-backfill":"_phl6yqtyoC","outstream-video-xl-backfill":"_phl6yqtyoC","mid-article-box":"_phl6yqtyoC","hp-native-flex":"_phl6yqtyoC","rr-podcast":"_phl6yqtyoC","rr-flex":"_g4BCn63GiZ","rr-article-flex":"_g4BCn63GiZ","recirc-flex-left":"_g4BCn63GiZ","recirc-flex-right":"_g4BCn63GiZ","rr-front-flex":"_g4BCn63GiZ"};
|
||
}, {}];
|
||
window.modules["141"] = [function(require,module,exports){!function(e,t){var a=function(e,t,a){"use strict";var n,i;if(function(){var t,a={lazyClass:"lazyload",loadedClass:"lazyloaded",loadingClass:"lazyloading",preloadClass:"lazypreload",errorClass:"lazyerror",autosizesClass:"lazyautosizes",fastLoadedClass:"ls-is-cached",iframeLoadMode:0,srcAttr:"data-src",srcsetAttr:"data-srcset",sizesAttr:"data-sizes",minSize:40,customMedia:{},init:!0,expFactor:1.5,hFac:.8,loadMode:2,loadHidden:!0,ricTimeout:0,throttleDelay:125};for(t in i=e.lazySizesConfig||e.lazysizesConfig||{},a)t in i||(i[t]=a[t])}(),!t||!t.getElementsByClassName)return{init:function(){},cfg:i,noSupport:!0};var r=t.documentElement,s=e.HTMLPictureElement,o=e.addEventListener.bind(e),l=e.setTimeout,d=e.requestAnimationFrame||l,c=e.requestIdleCallback,u=/^picture$/i,f=["load","error","lazyincluded","_lazyloaded"],m={},g=Array.prototype.forEach,v=function(e,t){return m[t]||(m[t]=new RegExp("(\\s|^)"+t+"(\\s|$)")),m[t].test(e.getAttribute("class")||"")&&m[t]},y=function(e,t){v(e,t)||e.setAttribute("class",(e.getAttribute("class")||"").trim()+" "+t)},z=function(e,t){var a;(a=v(e,t))&&e.setAttribute("class",(e.getAttribute("class")||"").replace(a," "))},h=function(e,t,a){var n=a?"addEventListener":"removeEventListener";a&&h(e,t),f.forEach(function(a){e[n](a,t)})},p=function(e,a,i,r,s){var o=t.createEvent("Event");return i||(i={}),i.instance=n,o.initEvent(a,!r,!s),o.detail=i,e.dispatchEvent(o),o},b=function(t,a){var n;!s&&(n=e.picturefill||i.pf)?(a&&a.src&&!t.getAttribute("srcset")&&t.setAttribute("srcset",a.src),n({reevaluate:!0,elements:[t]})):a&&a.src&&(t.src=a.src)},A=function(e,t){return(getComputedStyle(e,null)||{})[t]},C=function(e,t,a){for(a=a||e.offsetWidth;a<i.minSize&&t&&!e._lazysizesWidth;)a=t.offsetWidth,t=t.parentNode;return a},E=(R=[],D=[],k=R,H=function(){var e=k;for(k=R.length?D:R,T=!0,F=!1;e.length;)e.shift()();T=!1},O=function(e,a){T&&!a?e.apply(this,arguments):(k.push(e),F||(F=!0,(t.hidden?l:d)(H)))},O._lsFlush=H,O),_=function(e,t){return t?function(){E(e)}:function(){var t=this,a=arguments;E(function(){e.apply(t,a)})}},L=function(e){var t,n,i=function(){t=null,e()},r=function(){var e=a.now()-n;e<99?l(r,99-e):(c||i)(i)};return function(){n=a.now(),t||(t=l(r,99))}},w=function(){var s,f,m,C,w,N,x,W,S,B,T,F,R,D,k,H,O,P,$,q=/^img$/i,I=/^iframe$/i,U="onscroll"in e&&!/(gle|ing)bot/.test(navigator.userAgent),j=0,G=0,J=-1,K=function(e){G--,(!e||G<0||!e.target)&&(G=0)},Q=function(e){return null==F&&(F="hidden"==A(t.body,"visibility")),F||!("hidden"==A(e.parentNode,"visibility")&&"hidden"==A(e,"visibility"))},V=function(e,a){var n,i=e,s=Q(e);for(W-=a,T+=a,S-=a,B+=a;s&&(i=i.offsetParent)&&i!=t.body&&i!=r;)(s=(A(i,"opacity")||1)>0)&&"visible"!=A(i,"overflow")&&(n=i.getBoundingClientRect(),s=B>n.left&&S<n.right&&T>n.top-1&&W<n.bottom+1);return s},X=function(){var e,a,o,l,d,c,u,m,g,v,y,z,h=n.elements;if((C=i.loadMode)&&G<8&&(e=h.length)){for(a=0,J++;a<e;a++)if(h[a]&&!h[a]._lazyRace)if(!U||n.prematureUnveil&&n.prematureUnveil(h[a]))ie(h[a]);else if((m=h[a].getAttribute("data-expand"))&&(c=1*m)||(c=j),v||(v=!i.expand||i.expand<1?r.clientHeight>500&&r.clientWidth>500?500:370:i.expand,n._defEx=v,y=v*i.expFactor,z=i.hFac,F=null,j<y&&G<1&&J>2&&C>2&&!t.hidden?(j=y,J=0):j=C>1&&J>1&&G<6?v:0),g!==c&&(N=innerWidth+c*z,x=innerHeight+c,u=-1*c,g=c),o=h[a].getBoundingClientRect(),(T=o.bottom)>=u&&(W=o.top)<=x&&(B=o.right)>=u*z&&(S=o.left)<=N&&(T||B||S||W)&&(i.loadHidden||Q(h[a]))&&(f&&G<3&&!m&&(C<3||J<4)||V(h[a],c))){if(ie(h[a]),d=!0,G>9)break}else!d&&f&&!l&&G<4&&J<4&&C>2&&(s[0]||i.preloadAfterLoad)&&(s[0]||!m&&(T||B||S||W||"auto"!=h[a].getAttribute(i.sizesAttr)))&&(l=s[0]||h[a]);l&&!d&&ie(l)}},Y=(R=X,k=0,H=i.throttleDelay,O=i.ricTimeout,P=function(){D=!1,k=a.now(),R()},$=c&&O>49?function(){c(P,{timeout:O}),O!==i.ricTimeout&&(O=i.ricTimeout)}:_(function(){l(P)},!0),function(e){var t;(e=!0===e)&&(O=33),D||(D=!0,(t=H-(a.now()-k))<0&&(t=0),e||t<9?$():l($,t))}),Z=function(e){var t=e.target;t._lazyCache?delete t._lazyCache:(K(e),y(t,i.loadedClass),z(t,i.loadingClass),h(t,te),p(t,"lazyloaded"))},ee=_(Z),te=function(e){ee({target:e.target})},ae=function(e){var t,a=e.getAttribute(i.srcsetAttr);(t=i.customMedia[e.getAttribute("data-media")||e.getAttribute("media")])&&e.setAttribute("media",t),a&&e.setAttribute("srcset",a)},ne=_(function(e,t,a,n,r){var s,o,d,c,f,v;(f=p(e,"lazybeforeunveil",t)).defaultPrevented||(n&&(a?y(e,i.autosizesClass):e.setAttribute("sizes",n)),o=e.getAttribute(i.srcsetAttr),s=e.getAttribute(i.srcAttr),r&&(d=e.parentNode,c=d&&u.test(d.nodeName||"")),v=t.firesLoad||"src"in e&&(o||s||c),f={target:e},y(e,i.loadingClass),v&&(clearTimeout(m),m=l(K,2500),h(e,te,!0)),c&&g.call(d.getElementsByTagName("source"),ae),o?e.setAttribute("srcset",o):s&&!c&&(I.test(e.nodeName)?function(e,t){var a=e.getAttribute("data-load-mode")||i.iframeLoadMode;0==a?e.contentWindow.location.replace(t):1==a&&(e.src=t)}(e,s):e.src=s),r&&(o||c)&&b(e,{src:s})),e._lazyRace&&delete e._lazyRace,z(e,i.lazyClass),E(function(){var t=e.complete&&e.naturalWidth>1;v&&!t||(t&&y(e,i.fastLoadedClass),Z(f),e._lazyCache=!0,l(function(){"_lazyCache"in e&&delete e._lazyCache},9)),"lazy"==e.loading&&G--},!0)}),ie=function(e){if(!e._lazyRace){var t,a=q.test(e.nodeName),n=a&&(e.getAttribute(i.sizesAttr)||e.getAttribute("sizes")),r="auto"==n;(!r&&f||!a||!e.getAttribute("src")&&!e.srcset||e.complete||v(e,i.errorClass)||!v(e,i.lazyClass))&&(t=p(e,"lazyunveilread").detail,r&&M.updateElem(e,!0,e.offsetWidth),e._lazyRace=!0,G++,ne(e,t,r,n,a))}},re=L(function(){i.loadMode=3,Y()}),se=function(){3==i.loadMode&&(i.loadMode=2),re()},oe=function(){f||(a.now()-w<999?l(oe,999):(f=!0,i.loadMode=3,Y(),o("scroll",se,!0)))};return{_:function(){w=a.now(),n.elements=t.getElementsByClassName(i.lazyClass),s=t.getElementsByClassName(i.lazyClass+" "+i.preloadClass),o("scroll",Y,!0),o("resize",Y,!0),o("pageshow",function(e){if(e.persisted){var a=t.querySelectorAll("."+i.loadingClass);a.length&&a.forEach&&d(function(){a.forEach(function(e){e.complete&&ie(e)})})}}),e.MutationObserver?new MutationObserver(Y).observe(r,{childList:!0,subtree:!0,attributes:!0}):(r.addEventListener("DOMNodeInserted",Y,!0),r.addEventListener("DOMAttrModified",Y,!0),setInterval(Y,999)),o("hashchange",Y,!0),["focus","mouseover","click","load","transitionend","animationend"].forEach(function(e){t.addEventListener(e,Y,!0)}),/d$|^c/.test(t.readyState)?oe():(o("load",oe),t.addEventListener("DOMContentLoaded",Y),l(oe,2e4)),n.elements.length?(X(),E._lsFlush()):Y()},checkElems:Y,unveil:ie,_aLSL:se}}(),M=(W=_(function(e,t,a,n){var i,r,s;if(e._lazysizesWidth=n,n+="px",e.setAttribute("sizes",n),u.test(t.nodeName||""))for(i=t.getElementsByTagName("source"),r=0,s=i.length;r<s;r++)i[r].setAttribute("sizes",n);a.detail.dataAttr||b(e,a.detail)}),S=function(e,t,a){var n,i=e.parentNode;i&&(a=C(e,i,a),(n=p(e,"lazybeforesizes",{width:a,dataAttr:!!t})).defaultPrevented||(a=n.detail.width)&&a!==e._lazysizesWidth&&W(e,i,n,a))},B=L(function(){var e,t=x.length;if(t)for(e=0;e<t;e++)S(x[e])}),{_:function(){x=t.getElementsByClassName(i.autosizesClass),o("resize",B)},checkElems:B,updateElem:S}),N=function(){!N.i&&t.getElementsByClassName&&(N.i=!0,M._(),w._())};var x,W,S,B;var T,F,R,D,k,H,O;return l(function(){i.init&&N()}),n={cfg:i,autoSizer:M,loader:w,init:N,uP:b,aC:y,rC:z,hC:v,fire:p,gW:C,rAF:E}}(e,e.document,Date);e.lazySizes=a,"object"==typeof module&&module.exports&&(module.exports=a)}("undefined"!=typeof window?window:{});
|
||
}, {}];
|
||
window.modules["169"] = [function(require,module,exports){var MapCache=require(590),FUNC_ERROR_TEXT="Expected a function";function memoize(e,a){if("function"!=typeof e||null!=a&&"function"!=typeof a)throw new TypeError(FUNC_ERROR_TEXT);var c=function(){var r=arguments,t=a?a.apply(this,r):r[0],n=c.cache;if(n.has(t))return n.get(t);var o=e.apply(this,r);return c.cache=n.set(t,o)||n,o};return c.cache=new(memoize.Cache||MapCache),c}memoize.Cache=MapCache,module.exports=memoize;
|
||
}, {"590":590}];
|
||
window.modules["575"] = [function(require,module,exports){var freeGlobal=require(734),freeSelf="object"==typeof self&&self&&self.Object===Object&&self,root=freeGlobal||freeSelf||Function("return this")();module.exports=root;
|
||
}, {"734":734}];
|
||
window.modules["576"] = [function(require,module,exports){var baseIsNative=require(665),getValue=require(738);function getNative(e,a){var t=getValue(e,a);return baseIsNative(t)?t:void 0}module.exports=getNative;
|
||
}, {"665":665,"738":738}];
|
||
window.modules["577"] = [function(require,module,exports){var hashClear=require(579),hashDelete=require(578),hashGet=require(582),hashHas=require(580),hashSet=require(581);function Hash(e){var h=-1,a=null==e?0:e.length;for(this.clear();++h<a;){var s=e[h];this.set(s[0],s[1])}}Hash.prototype.clear=hashClear,Hash.prototype.delete=hashDelete,Hash.prototype.get=hashGet,Hash.prototype.has=hashHas,Hash.prototype.set=hashSet,module.exports=Hash;
|
||
}, {"578":578,"579":579,"580":580,"581":581,"582":582}];
|
||
window.modules["578"] = [function(require,module,exports){function hashDelete(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}module.exports=hashDelete;
|
||
}, {}];
|
||
window.modules["579"] = [function(require,module,exports){var nativeCreate=require(744);function hashClear(){this.__data__=nativeCreate?nativeCreate(null):{},this.size=0}module.exports=hashClear;
|
||
}, {"744":744}];
|
||
window.modules["580"] = [function(require,module,exports){var nativeCreate=require(744),objectProto=Object.prototype,hasOwnProperty=objectProto.hasOwnProperty;function hashHas(e){var t=this.__data__;return nativeCreate?void 0!==t[e]:hasOwnProperty.call(t,e)}module.exports=hashHas;
|
||
}, {"744":744}];
|
||
window.modules["581"] = [function(require,module,exports){var nativeCreate=require(744),HASH_UNDEFINED="__lodash_hash_undefined__";function hashSet(e,t){var a=this.__data__;return this.size+=this.has(e)?0:1,a[e]=nativeCreate&&void 0===t?HASH_UNDEFINED:t,this}module.exports=hashSet;
|
||
}, {"744":744}];
|
||
window.modules["582"] = [function(require,module,exports){var nativeCreate=require(744),HASH_UNDEFINED="__lodash_hash_undefined__",objectProto=Object.prototype,hasOwnProperty=objectProto.hasOwnProperty;function hashGet(e){var t=this.__data__;if(nativeCreate){var r=t[e];return r===HASH_UNDEFINED?void 0:r}return hasOwnProperty.call(t,e)?t[e]:void 0}module.exports=hashGet;
|
||
}, {"744":744}];
|
||
window.modules["583"] = [function(require,module,exports){var listCacheClear=require(584),listCacheDelete=require(588),listCacheGet=require(586),listCacheHas=require(585),listCacheSet=require(587);function ListCache(e){var t=-1,a=null==e?0:e.length;for(this.clear();++t<a;){var s=e[t];this.set(s[0],s[1])}}ListCache.prototype.clear=listCacheClear,ListCache.prototype.delete=listCacheDelete,ListCache.prototype.get=listCacheGet,ListCache.prototype.has=listCacheHas,ListCache.prototype.set=listCacheSet,module.exports=ListCache;
|
||
}, {"584":584,"585":585,"586":586,"587":587,"588":588}];
|
||
window.modules["584"] = [function(require,module,exports){function listCacheClear(){this.__data__=[],this.size=0}module.exports=listCacheClear;
|
||
}, {}];
|
||
window.modules["585"] = [function(require,module,exports){var assocIndexOf=require(629);function listCacheHas(s){return assocIndexOf(this.__data__,s)>-1}module.exports=listCacheHas;
|
||
}, {"629":629}];
|
||
window.modules["586"] = [function(require,module,exports){var assocIndexOf=require(629);function listCacheGet(e){var s=this.__data__,a=assocIndexOf(s,e);return a<0?void 0:s[a][1]}module.exports=listCacheGet;
|
||
}, {"629":629}];
|
||
window.modules["587"] = [function(require,module,exports){var assocIndexOf=require(629);function listCacheSet(s,e){var t=this.__data__,a=assocIndexOf(t,s);return a<0?(++this.size,t.push([s,e])):t[a][1]=e,this}module.exports=listCacheSet;
|
||
}, {"629":629}];
|
||
window.modules["588"] = [function(require,module,exports){var assocIndexOf=require(629),arrayProto=Array.prototype,splice=arrayProto.splice;function listCacheDelete(e){var r=this.__data__,a=assocIndexOf(r,e);return!(a<0)&&(a==r.length-1?r.pop():splice.call(r,a,1),--this.size,!0)}module.exports=listCacheDelete;
|
||
}, {"629":629}];
|
||
window.modules["589"] = [function(require,module,exports){var getNative=require(576),root=require(575),Map=getNative(root,"Map");module.exports=Map;
|
||
}, {"575":575,"576":576}];
|
||
window.modules["590"] = [function(require,module,exports){var mapCacheClear=require(595),mapCacheDelete=require(591),mapCacheGet=require(594),mapCacheHas=require(593),mapCacheSet=require(592);function MapCache(e){var a=-1,p=null==e?0:e.length;for(this.clear();++a<p;){var t=e[a];this.set(t[0],t[1])}}MapCache.prototype.clear=mapCacheClear,MapCache.prototype.delete=mapCacheDelete,MapCache.prototype.get=mapCacheGet,MapCache.prototype.has=mapCacheHas,MapCache.prototype.set=mapCacheSet,module.exports=MapCache;
|
||
}, {"591":591,"592":592,"593":593,"594":594,"595":595}];
|
||
window.modules["591"] = [function(require,module,exports){var getMapData=require(736);function mapCacheDelete(e){var a=getMapData(this,e).delete(e);return this.size-=a?1:0,a}module.exports=mapCacheDelete;
|
||
}, {"736":736}];
|
||
window.modules["592"] = [function(require,module,exports){var getMapData=require(736);function mapCacheSet(e,a){var t=getMapData(this,e),i=t.size;return t.set(e,a),this.size+=t.size==i?0:1,this}module.exports=mapCacheSet;
|
||
}, {"736":736}];
|
||
window.modules["593"] = [function(require,module,exports){var getMapData=require(736);function mapCacheHas(a){return getMapData(this,a).has(a)}module.exports=mapCacheHas;
|
||
}, {"736":736}];
|
||
window.modules["594"] = [function(require,module,exports){var getMapData=require(736);function mapCacheGet(a){return getMapData(this,a).get(a)}module.exports=mapCacheGet;
|
||
}, {"736":736}];
|
||
window.modules["595"] = [function(require,module,exports){var Hash=require(577),ListCache=require(583),Map=require(589);function mapCacheClear(){this.size=0,this.__data__={hash:new Hash,map:new(Map||ListCache),string:new Hash}}module.exports=mapCacheClear;
|
||
}, {"577":577,"583":583,"589":589}];
|
||
window.modules["607"] = [function(require,module,exports){var root=require(575),Symbol=root.Symbol;module.exports=Symbol;
|
||
}, {"575":575}];
|
||
window.modules["614"] = [function(require,module,exports){var isArray=Array.isArray;module.exports=isArray;
|
||
}, {}];
|
||
window.modules["619"] = [function(require,module,exports){function arrayMap(r,a){for(var n=-1,e=null==r?0:r.length,l=Array(e);++n<e;)l[n]=a(r[n],n,r);return l}module.exports=arrayMap;
|
||
}, {}];
|
||
window.modules["623"] = [function(require,module,exports){function asciiToArray(r){return r.split("")}module.exports=asciiToArray;
|
||
}, {}];
|
||
window.modules["626"] = [function(require,module,exports){function eq(e,n){return e===n||e!=e&&n!=n}module.exports=eq;
|
||
}, {}];
|
||
window.modules["629"] = [function(require,module,exports){var eq=require(626);function assocIndexOf(e,r){for(var n=e.length;n--;)if(eq(e[n][0],r))return n;return-1}module.exports=assocIndexOf;
|
||
}, {"626":626}];
|
||
window.modules["632"] = [function(require,module,exports){function isObject(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}module.exports=isObject;
|
||
}, {}];
|
||
window.modules["648"] = [function(require,module,exports){var Symbol=require(607),getRawTag=require(650),objectToString=require(649),nullTag="[object Null]",undefinedTag="[object Undefined]",symToStringTag=Symbol?Symbol.toStringTag:void 0;function baseGetTag(e){return null==e?void 0===e?undefinedTag:nullTag:symToStringTag&&symToStringTag in Object(e)?getRawTag(e):objectToString(e)}module.exports=baseGetTag;
|
||
}, {"607":607,"649":649,"650":650}];
|
||
window.modules["649"] = [function(require,module,exports){var objectProto=Object.prototype,nativeObjectToString=objectProto.toString;function objectToString(t){return nativeObjectToString.call(t)}module.exports=objectToString;
|
||
}, {}];
|
||
window.modules["650"] = [function(require,module,exports){var Symbol=require(607),objectProto=Object.prototype,hasOwnProperty=objectProto.hasOwnProperty,nativeObjectToString=objectProto.toString,symToStringTag=Symbol?Symbol.toStringTag:void 0;function getRawTag(t){var o=hasOwnProperty.call(t,symToStringTag),r=t[symToStringTag];try{t[symToStringTag]=void 0;var a=!0}catch(t){}var e=nativeObjectToString.call(t);return a&&(o?t[symToStringTag]=r:delete t[symToStringTag]),e}module.exports=getRawTag;
|
||
}, {"607":607}];
|
||
window.modules["657"] = [function(require,module,exports){function isObjectLike(e){return null!=e&&"object"==typeof e}module.exports=isObjectLike;
|
||
}, {}];
|
||
window.modules["665"] = [function(require,module,exports){var isFunction=require(666),isMasked=require(668),isObject=require(632),toSource=require(667),reRegExpChar=/[\\^$.*+?()[\]{}|]/g,reIsHostCtor=/^\[object .+?Constructor\]$/,funcProto=Function.prototype,objectProto=Object.prototype,funcToString=funcProto.toString,hasOwnProperty=objectProto.hasOwnProperty,reIsNative=RegExp("^"+funcToString.call(hasOwnProperty).replace(reRegExpChar,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function baseIsNative(e){return!(!isObject(e)||isMasked(e))&&(isFunction(e)?reIsNative:reIsHostCtor).test(toSource(e))}module.exports=baseIsNative;
|
||
}, {"632":632,"666":666,"667":667,"668":668}];
|
||
window.modules["666"] = [function(require,module,exports){var baseGetTag=require(648),isObject=require(632),asyncTag="[object AsyncFunction]",funcTag="[object Function]",genTag="[object GeneratorFunction]",proxyTag="[object Proxy]";function isFunction(e){if(!isObject(e))return!1;var n=baseGetTag(e);return n==funcTag||n==genTag||n==asyncTag||n==proxyTag}module.exports=isFunction;
|
||
}, {"632":632,"648":648}];
|
||
window.modules["667"] = [function(require,module,exports){var funcProto=Function.prototype,funcToString=funcProto.toString;function toSource(t){if(null!=t){try{return funcToString.call(t)}catch(t){}try{return t+""}catch(t){}}return""}module.exports=toSource;
|
||
}, {}];
|
||
window.modules["668"] = [function(require,module,exports){var coreJsData=require(719),maskSrcKey=function(){var e=/[^.]+$/.exec(coreJsData&&coreJsData.keys&&coreJsData.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function isMasked(e){return!!maskSrcKey&&maskSrcKey in e}module.exports=isMasked;
|
||
}, {"719":719}];
|
||
window.modules["705"] = [function(require,module,exports){function baseSlice(e,r,a){var l=-1,n=e.length;r<0&&(r=-r>n?0:n+r),(a=a>n?n:a)<0&&(a+=n),n=r>a?0:a-r>>>0,r>>>=0;for(var o=Array(n);++l<n;)o[l]=e[l+r];return o}module.exports=baseSlice;
|
||
}, {}];
|
||
window.modules["706"] = [function(require,module,exports){var Symbol=require(607),arrayMap=require(619),isArray=require(614),isSymbol=require(707),INFINITY=1/0,symbolProto=Symbol?Symbol.prototype:void 0,symbolToString=symbolProto?symbolProto.toString:void 0;function baseToString(r){if("string"==typeof r)return r;if(isArray(r))return arrayMap(r,baseToString)+"";if(isSymbol(r))return symbolToString?symbolToString.call(r):"";var o=r+"";return"0"==o&&1/r==-INFINITY?"-0":o}module.exports=baseToString;
|
||
}, {"607":607,"614":614,"619":619,"707":707}];
|
||
window.modules["707"] = [function(require,module,exports){var baseGetTag=require(648),isObjectLike=require(657),symbolTag="[object Symbol]";function isSymbol(e){return"symbol"==typeof e||isObjectLike(e)&&baseGetTag(e)==symbolTag}module.exports=isSymbol;
|
||
}, {"648":648,"657":657}];
|
||
window.modules["708"] = [function(require,module,exports){var trimmedEndIndex=require(709),reTrimStart=/^\s+/;function baseTrim(e){return e?e.slice(0,trimmedEndIndex(e)+1).replace(reTrimStart,""):e}module.exports=baseTrim;
|
||
}, {"709":709}];
|
||
window.modules["709"] = [function(require,module,exports){var reWhitespace=/\s/;function trimmedEndIndex(e){for(var r=e.length;r--&&reWhitespace.test(e.charAt(r)););return r}module.exports=trimmedEndIndex;
|
||
}, {}];
|
||
window.modules["713"] = [function(require,module,exports){var baseToString=require(706);function toString(r){return null==r?"":baseToString(r)}module.exports=toString;
|
||
}, {"706":706}];
|
||
window.modules["715"] = [function(require,module,exports){var baseSlice=require(705);function castSlice(e,c,i){var a=e.length;return i=void 0===i?a:i,!c&&i>=a?e:baseSlice(e,c,i)}module.exports=castSlice;
|
||
}, {"705":705}];
|
||
window.modules["719"] = [function(require,module,exports){var root=require(575),coreJsData=root["__core-js_shared__"];module.exports=coreJsData;
|
||
}, {"575":575}];
|
||
window.modules["723"] = [function(require,module,exports){var castSlice=require(715),hasUnicode=require(725),stringToArray=require(724),toString=require(713);function createCaseFirst(r){return function(e){e=toString(e);var i=hasUnicode(e)?stringToArray(e):void 0,t=i?i[0]:e.charAt(0),a=i?castSlice(i,1).join(""):e.slice(1);return t[r]()+a}}module.exports=createCaseFirst;
|
||
}, {"713":713,"715":715,"724":724,"725":725}];
|
||
window.modules["724"] = [function(require,module,exports){var asciiToArray=require(623),hasUnicode=require(725),unicodeToArray=require(748);function stringToArray(r){return hasUnicode(r)?unicodeToArray(r):asciiToArray(r)}module.exports=stringToArray;
|
||
}, {"623":623,"725":725,"748":748}];
|
||
window.modules["725"] = [function(require,module,exports){var rsAstralRange="\\ud800-\\udfff",rsComboMarksRange="\\u0300-\\u036f",reComboHalfMarksRange="\\ufe20-\\ufe2f",rsComboSymbolsRange="\\u20d0-\\u20ff",rsComboRange=rsComboMarksRange+reComboHalfMarksRange+rsComboSymbolsRange,rsVarRange="\\ufe0e\\ufe0f",rsZWJ="\\u200d",reHasUnicode=RegExp("["+rsZWJ+rsAstralRange+rsComboRange+rsVarRange+"]");function hasUnicode(e){return reHasUnicode.test(e)}module.exports=hasUnicode;
|
||
}, {}];
|
||
window.modules["734"] = [function(require,module,exports){(function (global){(function (){
|
||
var freeGlobal="object"==typeof global&&global&&global.Object===Object&&global;module.exports=freeGlobal;
|
||
|
||
}).call(this)}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})}, {}];
|
||
window.modules["736"] = [function(require,module,exports){var isKeyable=require(737);function getMapData(a,e){var t=a.__data__;return isKeyable(e)?t["string"==typeof e?"string":"hash"]:t.map}module.exports=getMapData;
|
||
}, {"737":737}];
|
||
window.modules["737"] = [function(require,module,exports){function isKeyable(e){var o=typeof e;return"string"==o||"number"==o||"symbol"==o||"boolean"==o?"__proto__"!==e:null===e}module.exports=isKeyable;
|
||
}, {}];
|
||
window.modules["738"] = [function(require,module,exports){function getValue(e,u){return null==e?void 0:e[u]}module.exports=getValue;
|
||
}, {}];
|
||
window.modules["744"] = [function(require,module,exports){var getNative=require(576),nativeCreate=getNative(Object,"create");module.exports=nativeCreate;
|
||
}, {"576":576}];
|
||
window.modules["748"] = [function(require,module,exports){var rsAstralRange="\\ud800-\\udfff",rsComboMarksRange="\\u0300-\\u036f",reComboHalfMarksRange="\\ufe20-\\ufe2f",rsComboSymbolsRange="\\u20d0-\\u20ff",rsComboRange=rsComboMarksRange+reComboHalfMarksRange+rsComboSymbolsRange,rsVarRange="\\ufe0e\\ufe0f",rsAstral="["+rsAstralRange+"]",rsCombo="["+rsComboRange+"]",rsFitz="\\ud83c[\\udffb-\\udfff]",rsModifier="(?:"+rsCombo+"|"+rsFitz+")",rsNonAstral="[^"+rsAstralRange+"]",rsRegional="(?:\\ud83c[\\udde6-\\uddff]){2}",rsSurrPair="[\\ud800-\\udbff][\\udc00-\\udfff]",rsZWJ="\\u200d",reOptMod=rsModifier+"?",rsOptVar="["+rsVarRange+"]?",rsOptJoin="(?:"+rsZWJ+"(?:"+[rsNonAstral,rsRegional,rsSurrPair].join("|")+")"+rsOptVar+reOptMod+")*",rsSeq=rsOptVar+reOptMod+rsOptJoin,rsSymbol="(?:"+[rsNonAstral+rsCombo+"?",rsCombo,rsRegional,rsSurrPair,rsAstral].join("|")+")",reUnicode=RegExp(rsFitz+"(?="+rsFitz+")|"+rsSymbol+rsSeq,"g");function unicodeToArray(r){return r.match(reUnicode)||[]}module.exports=unicodeToArray;
|
||
}, {}];
|
||
window.modules["750"] = [function(require,module,exports){var toInteger=require(751),FUNC_ERROR_TEXT="Expected a function";function before(e,r){var t;if("function"!=typeof r)throw new TypeError(FUNC_ERROR_TEXT);return e=toInteger(e),function(){return--e>0&&(t=r.apply(this,arguments)),e<=1&&(r=void 0),t}}module.exports=before;
|
||
}, {"751":751}];
|
||
window.modules["751"] = [function(require,module,exports){var toFinite=require(771);function toInteger(t){var e=toFinite(t),r=e%1;return e==e?r?e-r:e:0}module.exports=toInteger;
|
||
}, {"771":771}];
|
||
window.modules["752"] = [function(require,module,exports){var toString=require(713),upperFirst=require(753);function capitalize(r){return upperFirst(toString(r).toLowerCase())}module.exports=capitalize;
|
||
}, {"713":713,"753":753}];
|
||
window.modules["753"] = [function(require,module,exports){var createCaseFirst=require(723),upperFirst=createCaseFirst("toUpperCase");module.exports=upperFirst;
|
||
}, {"723":723}];
|
||
window.modules["754"] = [function(require,module,exports){var baseTrim=require(708),isObject=require(632),isSymbol=require(707),NAN=NaN,reIsBadHex=/^[-+]0x[0-9a-f]+$/i,reIsBinary=/^0b[01]+$/i,reIsOctal=/^0o[0-7]+$/i,freeParseInt=parseInt;function toNumber(e){if("number"==typeof e)return e;if(isSymbol(e))return NAN;if(isObject(e)){var r="function"==typeof e.valueOf?e.valueOf():e;e=isObject(r)?r+"":r}if("string"!=typeof e)return 0===e?e:+e;e=baseTrim(e);var t=reIsBinary.test(e);return t||reIsOctal.test(e)?freeParseInt(e.slice(2),t?2:8):reIsBadHex.test(e)?NAN:+e}module.exports=toNumber;
|
||
}, {"632":632,"707":707,"708":708}];
|
||
window.modules["755"] = [function(require,module,exports){var root=require(575),now=function(){return root.Date.now()};module.exports=now;
|
||
}, {"575":575}];
|
||
window.modules["770"] = [function(require,module,exports){var debounce=require(75),isObject=require(632),FUNC_ERROR_TEXT="Expected a function";function throttle(e,i,t){var n=!0,r=!0;if("function"!=typeof e)throw new TypeError(FUNC_ERROR_TEXT);return isObject(t)&&(n="leading"in t?!!t.leading:n,r="trailing"in t?!!t.trailing:r),debounce(e,i,{leading:n,maxWait:i,trailing:r})}module.exports=throttle;
|
||
}, {"75":75,"632":632}];
|
||
window.modules["771"] = [function(require,module,exports){var toNumber=require(754),INFINITY=1/0,MAX_INTEGER=1.7976931348623157e308;function toFinite(e){return e?(e=toNumber(e))===INFINITY||e===-INFINITY?(e<0?-1:1)*MAX_INTEGER:e==e?e:0:0===e?e:0}module.exports=toFinite;
|
||
}, {"754":754}];
|
||
window.modules["920"] = [function(require,module,exports){"use strict";function isElementInViewport(e){var t=e.getBoundingClientRect();return t.top>=0&&t.left>=0&&t.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&t.right<=(window.innerWidth||document.documentElement.clientWidth)}Object.defineProperty(exports,"__esModule",{value:!0}),exports.isElementInViewport=isElementInViewport;
|
||
}, {}];
|
||
window.modules["921"] = [function(require,module,exports){"use strict";function isElementNotHidden(e){return e&&null!==e.offsetParent&&!e.getAttribute("hidden")&&"none"!==getComputedStyle(e).display&&"hidden"!==getComputedStyle(e).visibility}module.exports.isElementNotHidden=isElementNotHidden;
|
||
}, {}];
|
||
window.modules["922"] = [function(require,module,exports){"use strict";function getLayoutBreakpoint(t){for(var e=[["sm",320],["md",768],["lg",1024],["xl",1440]],r=e.length;r--;)if(t>=e[r][1])return e[r][0];return e[0][0]}module.exports={getLayoutBreakpoint:getLayoutBreakpoint};
|
||
}, {}];
|
||
window.modules["923"] = [function(require,module,exports){"use strict";var Cookies=require(55),VISIT_COOKIE_NAME="slatevisits",MONTHLY_VISIT_COOKIE_NAME="slatevisitsmon",visitStart=!1;function isVisitStart(){try{return window.sessionStorage.getItem("visitstarted")||(window.sessionStorage.setItem("visitstarted","1"),visitStart=!0),visitStart}catch(t){console.error(t)}}function cookieSettings(t){var i={domain:document.documentElement.dataset.trackingdomain,secure:!0,SameSite:"Strict"};return t?Object.assign(t,i):i}function setTotalVisits(t){Cookies.set(VISIT_COOKIE_NAME,t,cookieSettings({expires:1825}))}function setMonthlyVisits(t){Cookies.set(MONTHLY_VISIT_COOKIE_NAME,t,cookieSettings({expires:30}))}function getTotalVisits(){return Cookies.get(VISIT_COOKIE_NAME)}function getMonthlyVisits(){return Cookies.get(MONTHLY_VISIT_COOKIE_NAME)}function incrementVisitCookies(){var t=getTotalVisits();setTotalVisits(t=t?parseInt(t)+1:1);var i=Cookies.get(MONTHLY_VISIT_COOKIE_NAME);setMonthlyVisits(i=i?parseInt(i)+1:1)}function getVisitCounts(){return isVisitStart()&&incrementVisitCookies(),{totalVisits:getTotalVisits()||"1",monthlyVisits:getMonthlyVisits()||"1"}}module.exports.getVisitCounts=getVisitCounts,module.exports.isVisitStart=isVisitStart;
|
||
}, {"55":55}];
|
||
window.modules["925"] = [function(require,module,exports){"use strict";module.exports=function(){return!!document.querySelector("body.kiln-edit-mode")};
|
||
}, {}];
|
||
window.modules["926"] = [function(require,module,exports){"use strict";module.exports.myslateOrigin=document.documentElement.dataset.myslateurl;
|
||
}, {}];
|
||
window.modules["927"] = [function(require,module,exports){"use strict";function _catch(t,e){try{var n=t()}catch(t){return e(t)}return n&&n.then?n.then(void 0,e):n}function _settle(t,e,n){if(!t.s){if(n instanceof _Pact){if(!n.s)return void(n.o=_settle.bind(null,t,e));1&e&&(e=n.s),n=n.v}if(n&&n.then)return void n.then(_settle.bind(null,t,e),_settle.bind(null,t,2));t.s=e,t.v=n;var r=t.o;r&&r(t)}}var _Pact=function(){function t(){}return t.prototype.then=function(e,n){var r=new t,i=this.s;if(i){var o=1&i?e:n;if(o){try{_settle(r,1,o(this.v))}catch(t){_settle(r,2,t)}return r}return this}return this.o=function(t){try{var i=t.v;1&t.s?_settle(r,1,e?e(i):i):n?_settle(r,1,n(i)):_settle(r,2,i)}catch(t){_settle(r,2,t)}},r},t}();function _isSettledPact(t){return t instanceof _Pact&&1&t.s}function _for(t,e,n){for(var r;;){var i=t();if(_isSettledPact(i)&&(i=i.v),!i)return o;if(i.then){r=0;break}var o=n();if(o&&o.then){if(!_isSettledPact(o)){r=1;break}o=o.s}if(e){var s=e();if(s&&s.then&&!_isSettledPact(s)){r=2;break}}}var u=new _Pact,c=_settle.bind(null,u,2);return(0===r?i.then(a):1===r?o.then(h):s.then(f)).then(void 0,c),u;function h(r){o=r;do{if(e&&(s=e())&&s.then&&!_isSettledPact(s))return void s.then(f).then(void 0,c);if(!(i=t())||_isSettledPact(i)&&!i.v)return void _settle(u,1,o);if(i.then)return void i.then(a).then(void 0,c);_isSettledPact(o=n())&&(o=o.v)}while(!o||!o.then);o.then(h).then(void 0,c)}function a(t){t?(o=n())&&o.then?o.then(h).then(void 0,c):h(o):_settle(u,1,o)}function f(){(i=t())?i.then?i.then(a).then(void 0,c):a(i):_settle(u,1,o)}}function checkStatus(t){if(t.status>=200&&t.status<300)return t;var e=new Error(t.statusText);throw e.response=t,e}module.exports.get=function(t,e){return fetch(t,e).then(checkStatus).then(function(t){var e=t.headers.get("content-type");return e.includes("json")?t.json():e.includes("text")?t.text():(console.warn("unable to guess stream reader for response"),t)})},module.exports.retry=function(t,e,n,r){void 0===n&&(n=5),void 0===r&&(r=1e3);try{var i=!1;return Promise.resolve(_for(function(){return!i&&1},void 0,function(){return _catch(function(){return Promise.resolve(t.apply(void 0,e)).then(function(t){return i=!0,t})},function(t){if(!--n)throw t;return Promise.resolve(new Promise(function(t){return setTimeout(t,r)})).then(function(){})})}))}catch(t){return Promise.reject(t)}};
|
||
}, {}];
|
||
window.modules["slate-ad.client"] = [function(require,module,exports){"use strict";var headerBidding=require("headerbidding.legacy"),slateAmplitude=require(21),sticky=require(98),_require=require(95),getCurrentBatch=_require.getCurrentBatch,_require2=require(96),inArticleAds=_require2.inArticleAds,_require3=require(97),isBiddingEnabled=_require3.isBiddingEnabled,_require4=require(1),isArticlePage=_require4.isArticlePage;isGamesPage()||sticky.enableStickyLeaderboard(),isArticlePage()&&inArticleAds();var requestFromAdServer=function(e){window.googletag.cmd.push(function(){var r=e.map(function(e){return e.defineSlot()});window.googletag.pubads().refresh(r)})},slots=document.querySelectorAll(".slate-ad .slate-ad__creative"),callback=function(e,r){var i=getCurrentBatch(e,r),t=i.filter(isBiddingEnabled),s=i.filter(function(e){return!isBiddingEnabled(e)});t.length&&headerBidding.init(t,!1),s.length&&requestFromAdServer(s)},observer=new IntersectionObserver(callback,{rootMargin:"0px 0px 100% 0px"});function isGamesPage(){var e=slateAmplitude.getDomEventData();return e&&e.tags.includes("slate-games")}slots.forEach(function(e){return observer.observe(e)});
|
||
}, {"1":1,"21":21,"95":95,"96":96,"97":97,"98":98,"headerbidding.legacy":"headerbidding.legacy"}];
|
||
window.modules["ads.legacy"] = [function(require,module,exports){"use strict";var _window$googletag,loadAts=function(){try{var e=membership.getUserEmail();return Promise.resolve(getEmailHashes()).then(function(t){var i=document.createElement("script");i.onload=function(){e&&window.ats.setAdditionalData({type:"email",id:e}),t.length>0&&window.ats.setAdditionalData({type:"emailHashes",id:t})},i.src="https://ats-wrapper.privacymanager.io/ats-modules/f6ed6589-5170-40c6-98bc-a4a49ff26fa8/ats.js",document.body.appendChild(i)})}catch(e){return Promise.reject(e)}},metrics=require(121),refresh=require(133),membership=require(7),criteo=require(126),isMember=membership.isMemberSkipLookup(),_require=require(122),getAdNode=_require.getAdNode,_require2=require(127),getEmailHashes=_require2.getEmailHashes,_require3=require(123),sizes=_require3.sizes,_require4=require(124),saveSlotData=_require4.saveSlotData,_require5=require(128),isPlusPage=_require5.isPlusPage,initPaywallTest=require(132),_require6=require(1),getArticleType=_require6.getArticleType,exco=require(129),_require7=require(131),assignIds=_require7.assignIds,_require8=require(6),hasAdBlockBeenDetected=_require8.hasAdBlockBeenDetected,_require9=require(130),setPublisherProvidedId=_require9.setPublisherProvidedId,_require10=require(125),getWatsonCategoriesForGam=_require10.getWatsonCategoriesForGam,testParam=getTestParam(),pageId=getPageId(),firstRequest=!0;function getTestParam(){var e=/[?&]test_ads=([^&#?]+)/.exec(window.location.search);return e?e[1]:""}function requestAd(e){e.defineSlot(),googletag.pubads().refresh([e.gptSlot],{changeCorrelator:!1})}function createAd(e){var t=e.getAttribute("data-type"),i=e.getAttribute("data-zone-id"),r=e.getAttribute("data-criteo-id"),s=e.getAttribute("data-site-id"),a=parseInt(e.getAttribute("data-ll-threshold")),o=sizes[t].adserver,d=sizes[t].bidding;return{id:e.id,type:t,adUnit:getAdUnit(),gpid:getAdNode()+"/"+e.id,dfpSizes:o,prebidSizes:d,rubiconZoneId:i,criteoZoneId:r,indexSiteId:s,threshold:a,gptSlot:null,defineSlot:function(){this.gptSlot=window.googletag.defineSlot(this.adUnit,this.dfpSizes,this.id),saveSlotData(this),this.gptSlot.addService(window.googletag.pubads()),this.gptSlot.setConfig({targeting:{refresh:"no",pos:this.id,threshold:String(this.threshold)}}),hasAdBlockBeenDetected()&&this.gptSlot.setConfig({targeting:{imp_ab_recovered:"true"}});return["mid-article-spot","mid-article-spot-tablet","mid-article-spot-mobile","mid-article-spot-xl","outstream-video","mobile-outstream-video","outstream-video-xl"].includes(this.type)?this.gptSlot.setConfig({targeting:{outstream_eligible:"true"}}):this.gptSlot.setConfig({targeting:{outstream_eligible:"false"}}),window.googletag.display(this.id),this.gptSlot}}}function getAdUnit(){return"91898098/slate.com/"+getAdNode()}function getPageId(){return window.document.documentElement.getAttribute("data-uri").split("/")[2].replace("@published","")}assignIds(),loadAts(),initPaywallTest(),exco(),criteo.syncEmail(),null==(_window$googletag=window.googletag)||_window$googletag.cmd.push(function(){var e=document.querySelector(".js-analytics-js-data").getAttribute("data-pagetype").replace(" ","-");window.googletag.setConfig({disableInitialLoad:!0,singleRequest:!0}),setPublisherProvidedId().finally(function(){window.googletag.enableServices();var t=Math.floor(1e13*Math.random()),i=document.querySelectorAll('meta[name="dfp-cache-buster"]')[0];i&&i.content&&(t=i.content);var r={dfp_cache_buster:t,page_id:pageId,page_type:e,plus_page:isPlusPage().toString(),article_type:getArticleType()},s=getWatsonCategoriesForGam();s.length&&(r.watson_cat=s),window.googletag.setConfig({targeting:r});document.cookie.match(/usprivacy=\d+[YN]Y/)&&window.googletag.pubads().setPrivacySettings({nonPersonalizedAds:!0}),testParam&&window.googletag.setConfig({targeting:{kw:"test_"+testParam}});var a=document.cookie.match(/AB=(\d+_\d+)/);a&&a.length>1&&window.googletag.setConfig({targeting:{ab_var:a[1]}});var o=document.querySelector(".article__right-rail"),d=window.innerWidth>=1440;o&&d?window.googletag.setConfig({targeting:{article_right_rail:"true"}}):window.googletag.setConfig({targeting:{article_right_rail:"false"}}),window.googletag.pubads().addEventListener("slotOnload",function(e){if(firstRequest){var t=Math.round(performance.now()),i=e.slot.getResponseInformation();metrics.firstAdLoaded(t,i.campaignId),firstRequest=!1}}),isMember&&window.googletag.setConfig({targeting:{segs:"plus"}}),refresh.enableAdRefresh()})}),module.exports.createAd=createAd,module.exports.requestAd=requestAd;
|
||
}, {"1":1,"6":6,"7":7,"121":121,"122":122,"123":123,"124":124,"125":125,"126":126,"127":127,"128":128,"129":129,"130":130,"131":131,"132":132,"133":133}];
|
||
window.modules["ad-lightning.client"] = [function(require,module,exports){"use strict";module.exports.loadBoltive=function(){return new Promise(function(t,e){slateGlobal.injectScript("https://tagan.adlightning.com/slate/op.js",t,e)})};
|
||
}, {}];
|
||
window.modules["headerbidding.legacy"] = [function(require,module,exports){"use strict";var adData,triplelift=require(136),amazon=require(138),pubmatic=require(139),kargo=require(140),criteo=require(126),openx=require(137),medianet=require(135),metrics=require(121),_require=require(122),getAdNode=_require.getAdNode,_require2=require(134),slotSupportsOutstream=_require2.slotSupportsOutstream,HARD_TIMEOUT=2500;function init(e,i){(adData=e).isRefreshing=i,adData.biddersManager={adserverRequestSent:!1,prebid:!1,amazon:!1},window.slateCMP.TCF.ready.then(function(e){requestBidsFromExchanges()}),setTimeout(function(){googletag.cmd.push(function(){defineGptSlot(adData),callAdServer(adData)})},HARD_TIMEOUT)}function requestBidsFromExchanges(){getBidsFromPrebidExchanges(),getBidsFromAmazon()}function getBidsFromPrebidExchanges(){var e=[],i=[];adData.forEach(function(t){e.push(createPrebidAdUnit(t)),i.push(t.id)}),pbjs.que.push(function(){pbjs.addAdUnits(e);var t=adData;pbjs.requestBids({adUnitCodes:i,bidsBackHandler:function(){googletag.cmd.push(function(){pbjs.que.push(function(){t.forEach(function(e){var i=pbjs.getBidResponsesForAdUnitCode(e.id).bids;i.length?metrics.prebidWinner(i):metrics.noPrebidBids(e.id)}),defineGptSlot(t),pbjs.setTargetingForGPTAsync(e.map(function(e){return e.code})),t.forEach(function(e){return pbjs.removeAdUnit(e.id)}),t.biddersManager.prebid=!0,bidderFinished(t)})})}})})}function getBidsFromAmazon(){var e=document.querySelector("#amazon-aps"),i=[];adData.forEach(function(e){return i.push(createApsAdUnit(e))});var t=adData;apstag&&apstag.fetchBids({slots:i,timeout:e.bidderTimeout},function(e){googletag.cmd.push(function(){defineGptSlot(t),apstag.setDisplayBids(),t.biddersManager.amazon=!0,bidderFinished(t)})})}function bidderFinished(e){e.biddersManager.amazon&&e.biddersManager.prebid&&callAdServer(e)}function callAdServer(e){if(!e.biddersManager.adserverRequestSent){e.biddersManager.adserverRequestSent=!0;var i=[];e.forEach(function(e){return i.push(e.gptSlot)}),googletag.cmd.push(function(){googletag.pubads().refresh(i,{changeCorrelator:!1})})}}function defineGptSlot(e){e.forEach(function(e){e.gptSlot||e.defineSlot()})}function createPrebidAdUnit(e){var i={sizes:e.prebidSizes};return{code:e.id,ortb2Imp:{ext:{gpid:e.gpid}},mediaTypes:{banner:i},bids:getBidders(e)}}function getBidders(e){var i=[];i.push(rubicon(e)),i.push(openxBidder()),i.push(pubmaticBidder());for(var t=0;t<e.prebidSizes.length;t++){var r=index(e.prebidSizes[t],e);i.push(r)}(i.push(taboola(e)),triplelift.inventoryCodes[e.type]&&i.push(tripleliftBidder(e)),isConcertAdAllowed(e.type)&&i.push(concert(e)),kargo.placementIds[e.type])&&("mob-adhesion"===e.type&&adData.isRefreshing||i.push(kargoBidder(e)));return criteo.zoneIds[e.type]&&i.push(criteoBidder()),i.push(ttd(e)),isTeadsAllowed(e.type)&&i.push(teads()),i.push(medianetBidder(e)),i}function createApsAdUnit(e){var i={};"mob-adhesion"===e.type&&(i.ggProduct="inScreen");var t={slotID:e.id,slotName:e.adUnit};return amazon.oustreamRubrics.includes(getAdNode())&&slotSupportsOutstream(e.type)?(t.mediaType="multi-format",t.multiFormatProperties={display:{sizes:amazon.displaySizes[e.type]},video:{sizes:amazon.videoSize}}):(t.sizes=amazon.displaySizes[e.type],t.slotParams=i),t}function rubicon(e){return{bidder:"rubicon",params:{accountId:"13590",siteId:"60302",zoneId:e.rubiconZoneId}}}function criteoBidder(){return{bidder:"criteo",params:{networkId:"7462"}}}function index(e,i){return{bidder:"ix",params:{siteId:i.indexSiteId,size:e}}}function kargoBidder(e){return{bidder:"kargo",params:{placementId:kargo.placementIds[e.type]}}}function tripleliftBidder(e){return{bidder:"triplelift",params:{inventoryCode:triplelift.inventoryCodes[e.type]}}}function concert(e){return{bidder:"concert",params:{partnerId:"slate",site:"slate.com",placementId:e.id,slot:e.type}}}function pubmaticBidder(){return{bidder:"pubmatic",params:{publisherId:pubmatic.publisherId,adSlot:pubmatic.adSlot()}}}function openxBidder(){return{bidder:"openx",params:{delDomain:openx.domain,unit:openx.getUnit()}}}function ttd(){return{bidder:"ttd",params:{supplySourceId:"slate",publisherId:"1"}}}function teads(){return{bidder:"teads",params:{pageId:"166966",placementId:"181798"}}}function taboola(e){return{bidder:"taboola",params:{tagId:e.id,publisherId:"1719911"}}}function medianetBidder(e){return{bidder:"medianet",params:{cid:medianet.CUSTOMER_ID,crid:medianet.getPlacementId(e)}}}function isConcertAdAllowed(e){return"mid-article-spot"===e||"mid-article-spot-xl"===e||"mid-article-spot-tablet"===e||"mid-article-spot-mobile"===e}function isTeadsAllowed(e){return"mid-article-spot"===e||"mid-article-spot-xl"===e||"mid-article-spot-tablet"===e||"mid-article-spot-mobile"===e}module.exports.init=init;
|
||
}, {"121":121,"122":122,"126":126,"134":134,"135":135,"136":136,"137":137,"138":138,"139":139,"140":140}];
|
||
window.modules["onetrust.client"] = [function(require,module,exports){"use strict";var membership=require(7),pianoService=require(71);window.addEventListener("OneTrustGroupsUpdated",function(e){try{if(!membership.isLoggedIn())return Promise.resolve();var t,n=e.detail.join(",");try{t=localStorage.getItem("pianoConsentCats")}catch(e){t=null}return t===n?Promise.resolve():Promise.resolve(pianoService.getExtendedUserData("consent_management")).then(function(e){var r=pianoService.getCustomFields(e).consent_categories;if(!t)try{localStorage.setItem("pianoConsentCats",JSON.stringify(r))}catch(e){}if(n!==r){pianoService.setCustomFieldValue("consent_categories",n);try{localStorage.setItem("pianoConsentCats",n)}catch(e){}}})}catch(e){return Promise.reject(e)}});var _require=require(72),syncConsent=_require.syncConsent;window.addEventListener("OneTrustGroupsUpdated",function(e){syncConsent(e.detail).catch(function(e){console.error("failed to sync consent to sailthru",e)})});
|
||
}, {"7":7,"71":71,"72":72}];
|
||
window.modules["analytics-js-loader.client"] = [function(require,module,exports){"use strict";var initCriteo=require(17),initParsely=require(18),initSailthru=require(15),loadAmplitudeSdk=require(16),bqLog=require(5);module.exports=function(e){var i,n=parseInt(localStorage.getItem("pv_count")||"0")+1;localStorage.setItem("pv_count",n),bqLog.track("Page View",{ab_taboola_layout_test:null!=(i=window.slateGlobal.abTests.taboolaLayoutTest)?i:null,pv_count:n}),void 0===e.dataset.disableClientJs&&(loadAmplitudeSdk(),window.nonIabVendorApi.registerVendor("amplitude",{categories:["C0002"],initFunc:function(i){var n,t=e.dataset.amplitudeApiKey;try{n=window.amplitude.Types.LogLevel[e.dataset.amplitudeLogLevel]}catch(i){n={0:"None",1:"Error",2:"Warn",3:"Verbose",4:"Debug",None:0,Error:1,Warn:2,Verbose:3,Debug:4}[e.dataset.amplitudeLogLevel]}var a={logLevel:n,domain:e.dataset.amplitudeDomain,defaultTracking:{pageViews:!1,sessions:!0}},o=e.dataset.amplitudeReplaySampleRate;return Math.random()<Number.parseFloat(o)&&slateGlobal.injectScript("https://cdn.amplitude.com/libs/plugin-session-replay-browser-1.13.0-min.js.gz",function(){window.slateAmplitudeQueue.push(function(){var e=window.sessionReplay.plugin({forceSessionTracking:!0,sampleRate:1});window.amplitude.add(e)})}),window.amplitude.init(t,null,a).promise.then(function(){window.slateAmplitudeQueue.init(window.amplitude,i)}).catch(function(e){console.error("Error initializing Amplitude",e)}),!0},updateConsentFunc:function(e){window.slateAmplitudeQueue.push(function(i){i.setOptOut(!e)})}}),initParsely(e.dataset.parselyScriptSrc),window.nonIabVendorApi.registerVendor("linkedin",{categories:["C0002"],initFunc:function(e){return!!e&&(window._linkedin_partner_id="7215236",window._linkedin_data_partner_ids=window._linkedin_data_partner_ids||[],window._linkedin_data_partner_ids.push(window._linkedin_partner_id),window.lintrk=window.lintrk||function(e,i){window.lintrk.q.push([e,i])},window.lintrk.q=window.lintrk.q||[],slateGlobal.injectScript("https://snap.licdn.com/li.lms-analytics/insight.min.js"),!0)},updateConsentFunc:function(e){if(e)window.nonIabVendorApi.vendors.linkedin.initFunc(e);else{var i=document.querySelector('script[src*="insight.min.js"]');i&&i.remove(),delete window._linkedin_partner_id,delete window._linkedin_data_partner_ids,delete window.lintrk}}}),initCriteo(),initSailthru(e.dataset.sailthruCustomerId))};
|
||
}, {"5":5,"15":15,"16":16,"17":17,"18":18}];
|
||
window.modules["slate-ad-aps.client"] = [function(require,module,exports){"use strict";var syncEmailWithAps=function(){try{var e=membership.getUserEmail();return e?Promise.resolve(hash(e,"hex")).then(function(e){e&&(null==window.apstag.rpa||window.apstag.rpa({hashedRecords:[{type:"email",record:e}]}))}):Promise.resolve()}catch(e){return Promise.reject(e)}},membership=require(7),_require=require(74),hash=_require.hash;try{window.__uspapi("getUSPData",1,function(e,r){var t={si_section:getApsSection()};r&&(t.us_privacy=e.uspString),window.slateCMP.TCF.ready.then(function(){window.apstag&&window.apstag.init({pubID:"3075",adServer:"googletag",params:t,deals:!0,gdpr:{cmpTimeout:200}}),syncEmailWithAps()})})}catch(e){console.warn("__uspapi failed",e)}function getApsSection(){var e=document.querySelector("div[data-adnode]"),r="";return e&&(r=e.getAttribute("data-adnode")),r.replace("/"," ").replace(/_/g," ")}
|
||
}, {"7":7,"74":74}];
|
||
window.modules["taboola-head.client"] = [function(require,module,exports){"use strict";function loadTaboola(){var o;window._taboola=window._taboola||[];var e,t,a,n=document.querySelector(".taboola-head").dataset.type;_taboola.push(((o={})[n]="auto",o)),e=document.createElement("script"),t=document.getElementsByTagName("script")[0],a="tb_loader_script",document.getElementById(a)||(e.async=1,e.src="//cdn.taboola.com/libtrc/slate1-network/loader.js",e.id=a,t.parentNode.insertBefore(e,t)),window.performance&&"function"==typeof window.performance.mark&&window.performance.mark("tbl_ic")}module.exports=function(){loadTaboola()};
|
||
}, {}];
|
||
window.modules["global-footer.client"] = [function(require,module,exports){"use strict";var onboarding=require(57);module.exports=function(i){onboarding.init()};
|
||
}, {"57":57}];
|
||
window.modules["piano-mount.client"] = [function(require,module,exports){"use strict";var _debounce=require(75),_require=require(22),isSlatePianoEvent=_require.isSlatePianoEvent,pianoInitPromise=_require.pianoInitPromise,LOADING_CLASS="piano-mount--loading",ERROR_CLASS="piano-mount--error";function waitForPiano(e){e.classList.add(LOADING_CLASS);var i=function(e){isSlatePianoEvent(e)&&t()},t=_debounce(function(){e.classList.remove(LOADING_CLASS,ERROR_CLASS),window.removeEventListener("message",i),clearTimeout(n);var t=e.querySelector("iframe");t&&(t.getAttribute("aria-label")||t.title||t.setAttribute("aria-label","Slate Plus subscription offer"))},200);window.addEventListener("message",i);var n=setTimeout(function(){e.classList.remove(LOADING_CLASS),e.classList.add(ERROR_CLASS)},3e4)}module.exports=function(e){pianoInitPromise.then(function(){waitForPiano(e)}).catch(function(i){e.classList.add(ERROR_CLASS),e.querySelector(".piano-mount__error-message").textContent="You will need to relax strict tracking protection in your browser to continue."})};
|
||
}, {"22":22,"75":75}];
|
||
window.modules["masthead.client"] = [function(require,module,exports){"use strict";var menu,membership=require(7),dropdown=require(64),initializeThemePicker=require(65),_require=require(22),isSlatePianoEvent=_require.isSlatePianoEvent,setResponseVariable=require(23);function toggleMenu(e){(menu=menu||e.target.closest(".menu")).classList.toggle("menu--open"),document.documentElement.classList.toggle("menu-open",menu.classList.contains("menu--open"))}function addRedirectParam(e){var t=new URL(location.href).searchParams.get("redirect_uri"),r=new URL(e.currentTarget.href),n=t||location.href;r.searchParams.set("redirect_uri",n),e.currentTarget.href=r.toString()}function injectPianoVariables(e,t){var r,n=t.desktopMastheadText,i=t.desktopMastheadUrl,a=t.mobileMastheadText,o=t.mobileMastheadUrl,s=t.iconUrl;(r=e.querySelector(".js-account--subscribe"))&&(r.hidden=!1),(r=e.querySelector("[data-piano-href='desktopMastheadUrl']"))&&(r.href=i),(r=e.querySelector("[data-piano-href='mobileMastheadUrl']"))&&(r.href=o),(r=e.querySelector("[data-piano-html='desktopMastheadText']"))&&r.insertAdjacentHTML("beforeend","<span>"+n+"</span>"),(r=e.querySelector("[data-piano-icon-href='iconUrl']"))&&r.setAttribute("href",s),(r=e.querySelector("[data-piano-html='mobileMastheadText']"))&&(r.textContent=a)}function getVisibleSelectors(){return{signedOut:["mobile-subscribe","sign-in"],signedIn:["mobile-subscribe","account","sign-out"]}[membership.isLoggedIn()?"signedIn":"signedOut"]}module.exports=function(e){for(var t=getVisibleSelectors(),r=0;r<t.length;r++){var n=".js-account--"+t[r];document.querySelectorAll(n).forEach(function(e){return e.hidden=!1})}e.querySelectorAll(".js-toggle-menu").forEach(function(e){e.addEventListener("click",toggleMenu)}),e.querySelectorAll(".js-redirect-return").forEach(function(e){e.addEventListener("click",addRedirectParam)}),dropdown(e),initializeThemePicker(e),setResponseVariable.onResponseVariables(function(t){t.masthead&&injectPianoVariables(e,t)}),window.addEventListener("message",function(e){if(isSlatePianoEvent(e)&&"redirect"===e.data.type){var t=e.data.path,r=document.location.href,n=new URL(t,window.location.origin);n.searchParams.append("redirect_uri",r),window.location.href=n}})};
|
||
}, {"7":7,"22":22,"23":23,"64":64,"65":65}];
|
||
window.modules["slate-analytics-js.client"] = [function(require,module,exports){"use strict";var logUserProperties=function(e){var i={};return Promise.resolve(setMemberStatusUserProp(i)).then(function(){setUserLoginId(i),setAndroidAppUserProp(i);var r=new e.Identify;for(var t in i)r.set(t,i[t]);return e.identify(r)})},setMemberStatusUserProp=function(e){try{return Promise.resolve(membership.getUserMembershipType()).then(function(i){i&&(e.plan=i)})}catch(e){return Promise.reject(e)}},logPageView=function(){try{return Promise.resolve(buildPageViewData()).then(function(e){var i=e.page_type,r=e.section;logSophiPageview(i,r),slateAmplitude.page(e)})}catch(e){return Promise.reject(e)}},_require=require(84),buildPageViewData=_require.buildPageViewData,_once=require(85),Cookies=require(55),via=require(100),slateAmplitude=require(21),slatePermutive=require(92),_require2=require(101),isAndroidSession=_require2.isAndroidSession,membership=require(7),_require3=require(102),isValidAbTestString=_require3.isValidAbTestString,webVitals=require(103),_require4=require(2),logSophiPageview=_require4.logSophiPageview,updateSophiCustomProperties=_require4.updateSophiCustomProperties,loginId=membership.getLoginId(),getAffiliateLinks=_once(function(){for(var e=[],i=document.body.querySelectorAll('a[href*="amazon"]'),r=0;r<i.length;r++){var t=i[r];-1===new URL(t.href).host.indexOf("amazon")||t.matches(".product a")||e.push(t)}return e});function trackAffiliateLinks(){getAffiliateLinks().forEach(function(e){e.addEventListener("click",function(e){slateAmplitude.track("Click - Affiliate Link")})})}function setUserLoginId(e){loginId&&(e.signed_in_uuid=loginId)}function setAndroidAppUserProp(e){var i=isAndroidSession();i&&(e.androidUser=i)}function trackEndOfArticle(){var e=document.querySelector(".slate-paragraph--tombstone");if(e){new IntersectionObserver(function(e,i){e[0].isIntersecting&&(slateAmplitude.track("Completed article"),updateSophiCustomProperties({3:!0}),slatePermutive.track("ArticleCompletion"),i.unobserve(e[0].target))}).observe(e)}}module.exports=function(e){window.slateAmplitudeQueue.push(function(i){var r=Cookies.get("AB"),t=new i.Identify;t.set("abTest",isValidAbTestString(r)?r:"0"),i.identify(t),trackAffiliateLinks(),trackEndOfArticle(),webVitals.track(e),logPageView(),logUserProperties(i),via.setPageType(e.dataset.pagetype)})};
|
||
}, {"2":2,"7":7,"21":21,"55":55,"84":84,"85":85,"92":92,"100":100,"101":101,"102":102,"103":103}];
|
||
window.modules["social-share.client"] = [function(require,module,exports){"use strict";var initGiftLinkUi=require(115),_require=require(114),setupSocialShareComponentButtons=_require.setupSocialShareComponentButtons,setupCopyLinkButton=_require.setupCopyLinkButton;module.exports=function(e){try{var t=e.querySelectorAll(".js-share-link"),r=e.querySelector(".js-copy-share-link"),i=e.querySelector(".js-link-copy-text"),o=e.querySelector(".js-web-share-link");return setupSocialShareComponentButtons("social-share",o,t),setupCopyLinkButton(r,i),initGiftLinkUi(e),Promise.resolve()}catch(e){return Promise.reject(e)}};
|
||
}, {"114":114,"115":115}];
|
||
window.modules["slate-external-video.client"] = [function(require,module,exports){"use strict";var lazyloadHtml=require(53),videoObserver=lazyloadHtml.createObserver({limit:2});module.exports=function(e){videoObserver.observe(e)};
|
||
}, {"53":53}];
|
||
window.modules["permutive.client"] = [function(require,module,exports){"use strict";var _require=require(71),getPianoId=_require.getPianoId,_require2=require(74),hash=_require2.hash,membership=require(7);module.exports=function(e){var t=function(t){try{if(!t)throw new Error("Consent not provided for permutive");permutive.consent({opt_in:t,token:r}),permutive.addon("web",window.slatePermutiveData);var n={Slate_Plus_All_Access:"All Access",Slate_Plus_Audio:"Audio",Slate_Plus_Digital:"Digital",Big_Mood_Plus:"Audio"};return Promise.resolve(membership.isMember()).then(function(t){if(t){for(var r,u=membership.getSplusCookie(),a=Object.keys(n),o=u.resourceIds||[],s=0;s<o.length;s++){var c=o[s];if(a.includes(c)){r=n[c];break}}r&&i("slatePlusSubscriptionType",r)}var m=document.createElement("script");m.src="//cdn.permutive.com/"+e.dataset.permutiveProjectId+"-web.js",m.defer=!0;var d=document.getElementsByTagName("script")[0];return d.parentNode.insertBefore(m,d),!0})}catch(e){return Promise.reject(e)}},r="slate-token";function i(e,t){window.slatePermutiveData.page.user||(window.slatePermutiveData.page.user={}),window.slatePermutiveData.page.user[e]=t}window.nonIabVendorApi.registerVendor("permutive",{categories:["C0002","C0003","C0004"],initFunc:function(r){if(!r)return!1;function n(e){var t=document.cookie.match("(^|[^;]+)\\s*"+e+"\\s*=\\s*([^;]+)");return t?t.pop():""}try{var u=new URL(document.location).searchParams;u.get("utm_source")&&(window.slatePermutiveData.page.utmSource=u.get("utm_source")),u.get("utm_medium")&&(window.slatePermutiveData.page.utmMedium=u.get("utm_medium")),u.get("utm_campaign")&&(window.slatePermutiveData.page.utmCampaign=u.get("utm_campaign"))}catch(e){console.error(e)}if(e.dataset.isSplusUser)try{i("slatePlus",!0)}catch(e){console.error(e)}var a=[];function o(e,t){t&&(a.push({tag:e,id:t}),i(e,t))}o("slateId",getPianoId()||n("wapo_login_id")),o("publisherUserId",n("slate-uuid")),o("sailthruId",function(e){try{return new URL(document.location).searchParams.get(e)}catch(t){console.error("could not get "+e+" url param",t)}}("sid"));var s=membership.getUserEmail();return s?hash(s,"hex").then(function(e){e&&(a.push({tag:"email_sha256",id:e}),a.length>0&&window.permutive.identify(a),t(r))}):(a.length>0&&window.permutive.identify(a),t(r)),!0},updateConsentFunc:function(e){if(permutive)try{JSON.parse(localStorage["permutive-consent"]).opt_in!=e&&permutive.consent({opt_in:e,token:r})}catch(t){permutive.consent({opt_in:e,token:r})}}}),permutive.ready(function(){window.slateAmplitudeQueue.push(function(){var e=[];permutive.context&&e.push({tag:"puid",id:permutive.context.user_id});try{var t=window.amplitude.getDeviceId();t&&e.push({tag:"amplitudeId",id:t})}catch(e){console.error("Error setting amplitudeId",e)}e.length>0&&permutive.identify(e)})})};
|
||
}, {"7":7,"71":71,"74":74}];
|
||
window.modules["piano.client"] = [function(require,module,exports){"use strict";var slateAmplitude=require(21),universalPianoService=require(22),pianoScriptState=require(76),_require=require(2),loadSophi=_require.loadSophi,loginSuccessHandler=require(80),afterCheckout=require(81),afterCheckoutClose=require(82),_require2=require(8),afterPianoInit=_require2.afterPianoInit,checkoutStateChangeHandler=require(78),showOffer=require(77),experienceExecute=require(79),setResponseVariable=require(23),_require3=require(46),toUrl=_require3.toUrl,script=document.createElement("script");function loadPianoExperience(e){slateGlobal.injectScript(e.url+"/api/tinypass.min.js",universalPianoService.pianoInitPromiseResolve,universalPianoService.pianoInitPromiseReject),pianoScriptState.setState("requested")}function initPianoExperience(e){window.tp||(window.tp=[]);var t=window.tp;try{var i=slateAmplitude.getDomEventData();for(var a in i=universalPianoService.formatArticleData(i),t.push(["setContentCreated",i.content_created]),t.push(["setContentAuthor",i.content_author]),t.push(["setContentSection",i.content_section]),t.push(["setTags",i.tags]),i.custom_variables)t.push(["setCustomVariable",a,i.custom_variables[a]])}catch(e){console.warn("failed to set article metadata for piano",e)}t.push(["setAid",e.aid]),t.push(["setEndpoint",e.endpoint]),t.push(["setComposerHost",e.url]),t.push(["setPianoIdUrl",e.idUrl]),t.push(["setUsePianoIdUserProvider",!0]),t.push(["setUseTinypassAccounts",!1]),e.cxenseSiteId&&t.push(["setCxenseSiteId",e.cxenseSiteId]),t.push(["init",afterPianoInit]),t.push(["addHandler","loginSuccess",loginSuccessHandler]),t.push(["addHandler","checkoutStateChange",checkoutStateChangeHandler]),t.push(["addHandler","checkoutComplete",afterCheckout]),t.push(["addHandler","checkoutClose",afterCheckoutClose]),t.push(["addHandler","showOffer",showOffer]),t.push(["addHandler","experienceExecute",experienceExecute]),t.push(["addHandler","setResponseVariable",setResponseVariable])}function is404(){var e=document.querySelector("link[rel=canonical]");return!!e&&"/404"===new URL(e.href).pathname}script.src="/piano/scripts/resize.js",document.head.appendChild(script),module.exports=function(e){if(!is404()){if("slate-native"!==toUrl(location.href).searchParams.get("source")){var t=e.dataset.sophiScriptId;loadSophi(t)}var i=JSON.parse(e.dataset.config);initPianoExperience(i),loadPianoExperience(i)}},universalPianoService.pianoInitPromise.then(function(){pianoScriptState.setState("loaded")}).catch(function(){pianoScriptState.setState("failed")});
|
||
}, {"2":2,"8":8,"21":21,"22":22,"23":23,"46":46,"76":76,"77":77,"78":78,"79":79,"80":80,"81":81,"82":82}];
|
||
window.modules["adblock-message.client"] = [function(require,module,exports){"use strict";var _require=require(6),initAdBlockDetection=_require.initAdBlockDetection,_require2=require(7),isMemberSkipLookup=_require2.isMemberSkipLookup,_require3=require(1),isArticlePage=_require3.isArticlePage,_require4=require(8),isPianoInitialized=_require4.isPianoInitialized,_require5=require(3),getModalStatus=_require5.getModalStatus,bqLog=require(5),_require6=require(2),sophiBlocked=_require6.sophiBlocked,_require7=require(1),getRubric=_require7.getRubric,_require8=require(4),getPaywallStatus=_require8.getPaywallStatus;module.exports=function(e){try{return Promise.resolve(initAdBlockDetection()).then(function(r){if(isArticlePage()){var i=getRubric();if(!["slate-fare","open-thread","the-slate-quiz","pears","crossword","soundbites"].includes(i)){var t=function(){if(r){var i=function(){if(isPianoInitialized()&&!sophiBlocked)return Promise.resolve(Promise.all([checkForPlus(),getPaywallStatus(),getModalStatus()])).then(function(r){var i=r[0],t=r[1],o=r[2];i||t.isPaywallDisplayed||"NONE"!==o||displayAdBlockMessage(e)});displayAdBlockMessage(e)}();if(i&&i.then)return i.then(function(){})}}();return t&&t.then?t.then(function(){}):void 0}}})}catch(e){return Promise.reject(e)}};var checkForPlus=function(){try{return Promise.resolve(isMemberSkipLookup())}catch(e){return Promise.reject(e)}},lockBodyScroll=function(){var e=document.documentElement,r=window.pageYOffset||e.scrollTop;e.style.setProperty("--adblock-scroll-top",r);var i=window.innerWidth-document.documentElement.clientWidth;document.body.style.paddingRight=i+"px",e.classList.add("adblock-modal-open")},unlockBodyScroll=function(){var e=document.documentElement,r=e.style.getPropertyValue("--adblock-scroll-top");e.classList.remove("adblock-modal-open"),r&&window.scrollTo(0,parseInt(r,10)),document.body.style.paddingRight=""},displayAdBlockMessage=function(e){if(!window.kiln){var r=e.querySelector(".blocker-intercept__standard");r&&(addRedirectParamToSignInLinks(r),setupModalCloseHandlers(r),bqLog.track("Ad Block Modal Displayed"),lockBodyScroll(),r.showModal())}},addRedirectParamToSignInLinks=function(e){e.querySelectorAll('a[href*="sign-in"], a[href*="/plus"]').forEach(function(e){var r=new URL(e.href,window.location.href);r.searchParams.set("redirect_uri",location.href),e.href=r.toString()})},setupModalCloseHandlers=function(e){var r=e.querySelector(".slate-close");r&&r.addEventListener("click",function(){e.close(),unlockBodyScroll()}),e.addEventListener("close",unlockBodyScroll)};
|
||
}, {"1":1,"2":2,"3":3,"4":4,"5":5,"6":6,"7":7,"8":8}];
|
||
window.modules["webapp-serviceworker.client"] = [function(require,module,exports){"use strict";var slateAmplitude=require(21);module.exports=function(e){navigator.serviceWorker?(window.addEventListener("load",function(){navigator.serviceWorker.register("/sw.js").then(function(e){},function(e){console.error("ServiceWorker registration failed: ",e)})}),window.addEventListener("beforeinstallprompt",function(e){e.userChoice.then(function(e){"dismissed"===e.outcome?slateAmplitude.track("PWA - dismissed install prompt"):slateAmplitude.track("PWA - Added to Home Screen")})})):console.debug("Service worker not supported")};
|
||
}, {"21":21}];
|
||
window.modules["lazyload.legacy"] = [function(require,module,exports){"use strict";function lazyloadSvgUseTags(e,t){for(var r=0;r<e.length;r++){var n=e[r];n.isIntersecting&&(n.target.querySelectorAll("use[data-href]").forEach(function(e){e.setAttribute("href",e.getAttribute("data-href")),e.removeAttribute("data-href")}),t.unobserve(n.target),0==--count&&t.disconnect())}}require(141),require(53);var svgio=new IntersectionObserver(lazyloadSvgUseTags,{rootMargin:"100% 0px 100% 0px"}),count=0;document.addEventListener("DOMContentLoaded",function(){document.querySelectorAll("svg[loading=lazy]").forEach(function(e){svgio.observe(e),count++})});
|
||
}, {"53":53,"141":141}];
|
||
require=(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})(window.modules,{},[]);
|
||
/* eslint-env browser */
|
||
|
||
'use strict';
|
||
|
||
/**
|
||
* mount legacy services from _global.js, if any
|
||
*/
|
||
function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t.return || t.return(); } finally { if (u) throw o; } } }; }
|
||
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
||
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
||
function mountLegacyServices() {
|
||
Object.keys(window.modules).filter(function (key) {
|
||
return typeof key === 'string' && key.match(/\.legacy$/);
|
||
}).forEach(function (key) {
|
||
return window.require(key);
|
||
});
|
||
}
|
||
function tryToMount(fn, el, name) {
|
||
try {
|
||
fn(el); // init the controller
|
||
} catch (e) {
|
||
var elementTag = el.outerHTML.slice(0, el.outerHTML.indexOf(el.innerHTML));
|
||
console.error("Error initializing controller for \"".concat(name, "\" on \"").concat(elementTag, "\""), e);
|
||
}
|
||
}
|
||
|
||
/**
|
||
* mount client.js component controllers
|
||
*/
|
||
function mountComponentModules() {
|
||
Object.keys(window.modules).filter(function (key) {
|
||
return typeof key === 'string' && key.match(/\.client$/);
|
||
}).forEach(function (key) {
|
||
var controllerFn = window.require(key);
|
||
if (typeof controllerFn === 'function') {
|
||
var name = key.replace('.client', ''),
|
||
instancesSelector = "[data-uri*=\"_components/".concat(name, "/\"]"),
|
||
defaultSelector = "[data-uri$=\"_components".concat(name, "\"]"),
|
||
instances = document.querySelectorAll(instancesSelector),
|
||
defaults = document.querySelectorAll(defaultSelector);
|
||
var _iterator = _createForOfIteratorHelper(instances),
|
||
_step;
|
||
try {
|
||
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
||
var el = _step.value;
|
||
tryToMount(controllerFn, el, name);
|
||
}
|
||
} catch (err) {
|
||
_iterator.e(err);
|
||
} finally {
|
||
_iterator.f();
|
||
}
|
||
var _iterator2 = _createForOfIteratorHelper(defaults),
|
||
_step2;
|
||
try {
|
||
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
||
var _el = _step2.value;
|
||
tryToMount(controllerFn, _el, name);
|
||
}
|
||
} catch (err) {
|
||
_iterator2.e(err);
|
||
} finally {
|
||
_iterator2.f();
|
||
}
|
||
}
|
||
});
|
||
}
|
||
|
||
// Make sure that a `window.process.env.NODE_ENV` is available in the client for any dependencies,
|
||
// services, or components that could require it
|
||
// note: the `` value is swapped for the actual environment variable in /lib/cmd/compile/scripts.js
|
||
window.process = window.process || {};
|
||
window.process.env = window.process.env || {};
|
||
if (!window.process.env.NODE_ENV) {
|
||
window.process.env.NODE_ENV = '';
|
||
}
|
||
|
||
// note: legacy controllers that require legacy services (e.g. dollar-slice) must
|
||
// wait for DOMContentLoaded to initialize themselves, as the files themselves must be mounted first
|
||
mountLegacyServices();
|
||
mountComponentModules();
|
||
// ]]
|
||
</script></body>
|
||
</html>
|
||
|