CINXE.COM
Play
<!DOCTYPE html> <html lang="en-US" class="no-js"> <head> <meta charset="UTF-8" /><script type="text/javascript">(window.NREUM||(NREUM={})).init={ajax:{deny_list:["bam.nr-data.net"]}};(window.NREUM||(NREUM={})).loader_config={licenseKey:"b9d80a2312",applicationID:"467627310"};;/*! For license information please see nr-loader-rum-1.274.0.min.js.LICENSE.txt */ (()=>{var e,t,r={8122:(e,t,r)=>{"use strict";r.d(t,{a:()=>i});var n=r(944);function i(e,t){try{if(!e||"object"!=typeof e)return(0,n.R)(3);if(!t||"object"!=typeof t)return(0,n.R)(4);const r=Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t)),o=0===Object.keys(r).length?e:r;for(let a in o)if(void 0!==e[a])try{if(null===e[a]){r[a]=null;continue}Array.isArray(e[a])&&Array.isArray(t[a])?r[a]=Array.from(new Set([...e[a],...t[a]])):"object"==typeof e[a]&&"object"==typeof t[a]?r[a]=i(e[a],t[a]):r[a]=e[a]}catch(e){(0,n.R)(1,e)}return r}catch(e){(0,n.R)(2,e)}}},2555:(e,t,r)=>{"use strict";r.d(t,{Vp:()=>c,fn:()=>s,x1:()=>u});var n=r(384),i=r(8122);const o={beacon:n.NT.beacon,errorBeacon:n.NT.errorBeacon,licenseKey:void 0,applicationID:void 0,sa:void 0,queueTime:void 0,applicationTime:void 0,ttGuid:void 0,user:void 0,account:void 0,product:void 0,extra:void 0,jsAttributes:{},userAttributes:void 0,atts:void 0,transactionName:void 0,tNamePlain:void 0},a={};function s(e){try{const t=c(e);return!!t.licenseKey&&!!t.errorBeacon&&!!t.applicationID}catch(e){return!1}}function c(e){if(!e)throw new Error("All info objects require an agent identifier!");if(!a[e])throw new Error("Info for ".concat(e," was never set"));return a[e]}function u(e,t){if(!e)throw new Error("All info objects require an agent identifier!");a[e]=(0,i.a)(t,o);const r=(0,n.nY)(e);r&&(r.info=a[e])}},9417:(e,t,r)=>{"use strict";r.d(t,{D0:()=>g,gD:()=>h,xN:()=>p});var n=r(993);const i=e=>{if(!e||"string"!=typeof e)return!1;try{document.createDocumentFragment().querySelector(e)}catch{return!1}return!0};var o=r(2614),a=r(944),s=r(384),c=r(8122);const u="[data-nr-mask]",d=()=>{const e={mask_selector:"*",block_selector:"[data-nr-block]",mask_input_options:{color:!1,date:!1,"datetime-local":!1,email:!1,month:!1,number:!1,range:!1,search:!1,tel:!1,text:!1,time:!1,url:!1,week:!1,textarea:!1,select:!1,password:!0}};return{ajax:{deny_list:void 0,block_internal:!0,enabled:!0,harvestTimeSeconds:10,autoStart:!0},distributed_tracing:{enabled:void 0,exclude_newrelic_header:void 0,cors_use_newrelic_header:void 0,cors_use_tracecontext_headers:void 0,allowed_origins:void 0},feature_flags:[],generic_events:{enabled:!0,harvestTimeSeconds:30,autoStart:!0},harvest:{tooManyRequestsDelay:60},jserrors:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},logging:{enabled:!0,harvestTimeSeconds:10,autoStart:!0,level:n.p_.INFO},metrics:{enabled:!0,autoStart:!0},obfuscate:void 0,page_action:{enabled:!0},page_view_event:{enabled:!0,autoStart:!0},page_view_timing:{enabled:!0,harvestTimeSeconds:30,autoStart:!0},performance:{capture_marks:!1,capture_measures:!1},privacy:{cookies_enabled:!0},proxy:{assets:void 0,beacon:void 0},session:{expiresMs:o.wk,inactiveMs:o.BB},session_replay:{autoStart:!0,enabled:!1,harvestTimeSeconds:60,preload:!1,sampling_rate:10,error_sampling_rate:100,collect_fonts:!1,inline_images:!1,fix_stylesheets:!0,mask_all_inputs:!0,get mask_text_selector(){return e.mask_selector},set mask_text_selector(t){i(t)?e.mask_selector="".concat(t,",").concat(u):""===t||null===t?e.mask_selector=u:(0,a.R)(5,t)},get block_class(){return"nr-block"},get ignore_class(){return"nr-ignore"},get mask_text_class(){return"nr-mask"},get block_selector(){return e.block_selector},set block_selector(t){i(t)?e.block_selector+=",".concat(t):""!==t&&(0,a.R)(6,t)},get mask_input_options(){return e.mask_input_options},set mask_input_options(t){t&&"object"==typeof t?e.mask_input_options={...t,password:!0}:(0,a.R)(7,t)}},session_trace:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},soft_navigations:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},spa:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},ssl:void 0,user_actions:{enabled:!0}}},l={},f="All configuration objects require an agent identifier!";function g(e){if(!e)throw new Error(f);if(!l[e])throw new Error("Configuration for ".concat(e," was never set"));return l[e]}function p(e,t){if(!e)throw new Error(f);l[e]=(0,c.a)(t,d());const r=(0,s.nY)(e);r&&(r.init=l[e])}function h(e,t){if(!e)throw new Error(f);var r=g(e);if(r){for(var n=t.split("."),i=0;i<n.length-1;i++)if("object"!=typeof(r=r[n[i]]))return;r=r[n[n.length-1]]}return r}},3371:(e,t,r)=>{"use strict";r.d(t,{V:()=>f,f:()=>l});var n=r(8122),i=r(384),o=r(6154),a=r(9324);let s=0;const c={buildEnv:a.F3,distMethod:a.Xs,version:a.xv,originTime:o.WN},u={customTransaction:void 0,disabled:!1,isolatedBacklog:!1,loaderType:void 0,maxBytes:3e4,onerror:void 0,ptid:void 0,releaseIds:{},appMetadata:{},session:void 0,denyList:void 0,timeKeeper:void 0,obfuscator:void 0},d={};function l(e){if(!e)throw new Error("All runtime objects require an agent identifier!");if(!d[e])throw new Error("Runtime for ".concat(e," was never set"));return d[e]}function f(e,t){if(!e)throw new Error("All runtime objects require an agent identifier!");d[e]={...(0,n.a)(t,u),...c},Object.hasOwnProperty.call(d[e],"harvestCount")||Object.defineProperty(d[e],"harvestCount",{get:()=>++s});const r=(0,i.nY)(e);r&&(r.runtime=d[e])}},9324:(e,t,r)=>{"use strict";r.d(t,{F3:()=>i,Xs:()=>o,xv:()=>n});const n="1.274.0",i="PROD",o="CDN"},6154:(e,t,r)=>{"use strict";r.d(t,{OF:()=>c,RI:()=>i,WN:()=>d,bv:()=>o,gm:()=>a,mw:()=>s,sb:()=>u});var n=r(1863);const i="undefined"!=typeof window&&!!window.document,o="undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self.navigator instanceof WorkerNavigator||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis.navigator instanceof WorkerNavigator),a=i?window:"undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis),s=Boolean("hidden"===a?.document?.visibilityState),c=/iPad|iPhone|iPod/.test(a.navigator?.userAgent),u=c&&"undefined"==typeof SharedWorker,d=((()=>{const e=a.navigator?.userAgent?.match(/Firefox[/\s](\d+\.\d+)/);Array.isArray(e)&&e.length>=2&&e[1]})(),Date.now()-(0,n.t)())},1687:(e,t,r)=>{"use strict";r.d(t,{Ak:()=>c,Ze:()=>l,x3:()=>u});var n=r(7836),i=r(3606),o=r(860),a=r(2646);const s={};function c(e,t){const r={staged:!1,priority:o.P3[t]||0};d(e),s[e].get(t)||s[e].set(t,r)}function u(e,t){e&&s[e]&&(s[e].get(t)&&s[e].delete(t),g(e,t,!1),s[e].size&&f(e))}function d(e){if(!e)throw new Error("agentIdentifier required");s[e]||(s[e]=new Map)}function l(e="",t="feature",r=!1){if(d(e),!e||!s[e].get(t)||r)return g(e,t);s[e].get(t).staged=!0,f(e)}function f(e){const t=Array.from(s[e]);t.every((([e,t])=>t.staged))&&(t.sort(((e,t)=>e[1].priority-t[1].priority)),t.forEach((([t])=>{s[e].delete(t),g(e,t)})))}function g(e,t,r=!0){const o=e?n.ee.get(e):n.ee,s=i.i.handlers;if(!o.aborted&&o.backlog&&s){if(r){const e=o.backlog[t],r=s[t];if(r){for(let t=0;e&&t<e.length;++t)p(e[t],r);Object.entries(r).forEach((([e,t])=>{Object.values(t||{}).forEach((t=>{t[0]?.on&&t[0]?.context()instanceof a.y&&t[0].on(e,t[1])}))}))}}o.isolatedBacklog||delete s[t],o.backlog[t]=null,o.emit("drain-"+t,[])}}function p(e,t){var r=e[1];Object.values(t[r]||{}).forEach((t=>{var r=e[0];if(t[0]===r){var n=t[1],i=e[3],o=e[2];n.apply(i,o)}}))}},7836:(e,t,r)=>{"use strict";r.d(t,{P:()=>c,ee:()=>u});var n=r(384),i=r(8990),o=r(3371),a=r(2646),s=r(5607);const c="nr@context:".concat(s.W),u=function e(t,r){var n={},s={},d={},l=!1;try{l=16===r.length&&(0,o.f)(r).isolatedBacklog}catch(e){}var f={on:p,addEventListener:p,removeEventListener:function(e,t){var r=n[e];if(!r)return;for(var i=0;i<r.length;i++)r[i]===t&&r.splice(i,1)},emit:function(e,r,n,i,o){!1!==o&&(o=!0);if(u.aborted&&!i)return;t&&o&&t.emit(e,r,n);for(var a=g(n),c=h(e),d=c.length,l=0;l<d;l++)c[l].apply(a,r);var p=m()[s[e]];p&&p.push([f,e,r,a]);return a},get:v,listeners:h,context:g,buffer:function(e,t){const r=m();if(t=t||"feature",f.aborted)return;Object.entries(e||{}).forEach((([e,n])=>{s[n]=t,t in r||(r[t]=[])}))},abort:function(){f._aborted=!0,Object.keys(f.backlog).forEach((e=>{delete f.backlog[e]}))},isBuffering:function(e){return!!m()[s[e]]},debugId:r,backlog:l?{}:t&&"object"==typeof t.backlog?t.backlog:{},isolatedBacklog:l};return Object.defineProperty(f,"aborted",{get:()=>{let e=f._aborted||!1;return e||(t&&(e=t.aborted),e)}}),f;function g(e){return e&&e instanceof a.y?e:e?(0,i.I)(e,c,(()=>new a.y(c))):new a.y(c)}function p(e,t){n[e]=h(e).concat(t)}function h(e){return n[e]||[]}function v(t){return d[t]=d[t]||e(f,t)}function m(){return f.backlog}}(void 0,"globalEE"),d=(0,n.Zm)();d.ee||(d.ee=u)},2646:(e,t,r)=>{"use strict";r.d(t,{y:()=>n});class n{constructor(e){this.contextId=e}}},9908:(e,t,r)=>{"use strict";r.d(t,{d:()=>n,p:()=>i});var n=r(7836).ee.get("handle");function i(e,t,r,i,o){o?(o.buffer([e],i),o.emit(e,t,r)):(n.buffer([e],i),n.emit(e,t,r))}},3606:(e,t,r)=>{"use strict";r.d(t,{i:()=>o});var n=r(9908);o.on=a;var i=o.handlers={};function o(e,t,r,o){a(o||n.d,i,e,t,r)}function a(e,t,r,i,o){o||(o="feature"),e||(e=n.d);var a=t[o]=t[o]||{};(a[r]=a[r]||[]).push([e,i])}},3878:(e,t,r)=>{"use strict";function n(e,t){return{capture:e,passive:!1,signal:t}}function i(e,t,r=!1,i){window.addEventListener(e,t,n(r,i))}function o(e,t,r=!1,i){document.addEventListener(e,t,n(r,i))}r.d(t,{DD:()=>o,jT:()=>n,sp:()=>i})},5607:(e,t,r)=>{"use strict";r.d(t,{W:()=>n});const n=(0,r(9566).bz)()},9566:(e,t,r)=>{"use strict";r.d(t,{LA:()=>s,bz:()=>a});var n=r(6154);const i="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx";function o(e,t){return e?15&e[t]:16*Math.random()|0}function a(){const e=n.gm?.crypto||n.gm?.msCrypto;let t,r=0;return e&&e.getRandomValues&&(t=e.getRandomValues(new Uint8Array(30))),i.split("").map((e=>"x"===e?o(t,r++).toString(16):"y"===e?(3&o()|8).toString(16):e)).join("")}function s(e){const t=n.gm?.crypto||n.gm?.msCrypto;let r,i=0;t&&t.getRandomValues&&(r=t.getRandomValues(new Uint8Array(e)));const a=[];for(var s=0;s<e;s++)a.push(o(r,i++).toString(16));return a.join("")}},2614:(e,t,r)=>{"use strict";r.d(t,{BB:()=>a,H3:()=>n,g:()=>u,iL:()=>c,tS:()=>s,uh:()=>i,wk:()=>o});const n="NRBA",i="SESSION",o=144e5,a=18e5,s={STARTED:"session-started",PAUSE:"session-pause",RESET:"session-reset",RESUME:"session-resume",UPDATE:"session-update"},c={SAME_TAB:"same-tab",CROSS_TAB:"cross-tab"},u={OFF:0,FULL:1,ERROR:2}},1863:(e,t,r)=>{"use strict";function n(){return Math.floor(performance.now())}r.d(t,{t:()=>n})},944:(e,t,r)=>{"use strict";function n(e,t){"function"==typeof console.debug&&console.debug("New Relic Warning: https://github.com/newrelic/newrelic-browser-agent/blob/main/docs/warning-codes.md#".concat(e),t)}r.d(t,{R:()=>n})},5284:(e,t,r)=>{"use strict";r.d(t,{t:()=>c,B:()=>s});var n=r(7836),i=r(6154);const o="newrelic";const a=new Set,s={};function c(e,t){const r=n.ee.get(t);s[t]??={},e&&"object"==typeof e&&(a.has(t)||(r.emit("rumresp",[e]),s[t]=e,a.add(t),function(e={}){try{i.gm.dispatchEvent(new CustomEvent(o,{detail:e}))}catch(e){}}({loaded:!0})))}},8990:(e,t,r)=>{"use strict";r.d(t,{I:()=>i});var n=Object.prototype.hasOwnProperty;function i(e,t,r){if(n.call(e,t))return e[t];var i=r();if(Object.defineProperty&&Object.keys)try{return Object.defineProperty(e,t,{value:i,writable:!0,enumerable:!1}),i}catch(e){}return e[t]=i,i}},6389:(e,t,r)=>{"use strict";function n(e,t=500,r={}){const n=r?.leading||!1;let i;return(...r)=>{n&&void 0===i&&(e.apply(this,r),i=setTimeout((()=>{i=clearTimeout(i)}),t)),n||(clearTimeout(i),i=setTimeout((()=>{e.apply(this,r)}),t))}}function i(e){let t=!1;return(...r)=>{t||(t=!0,e.apply(this,r))}}r.d(t,{J:()=>i,s:()=>n})},5289:(e,t,r)=>{"use strict";r.d(t,{GG:()=>o,sB:()=>a});var n=r(3878);function i(){return"undefined"==typeof document||"complete"===document.readyState}function o(e,t){if(i())return e();(0,n.sp)("load",e,t)}function a(e){if(i())return e();(0,n.DD)("DOMContentLoaded",e)}},384:(e,t,r)=>{"use strict";r.d(t,{NT:()=>o,US:()=>d,Zm:()=>a,bQ:()=>c,dV:()=>s,nY:()=>u,pV:()=>l});var n=r(6154),i=r(1863);const o={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net"};function a(){return n.gm.NREUM||(n.gm.NREUM={}),void 0===n.gm.newrelic&&(n.gm.newrelic=n.gm.NREUM),n.gm.NREUM}function s(){let e=a();return e.o||(e.o={ST:n.gm.setTimeout,SI:n.gm.setImmediate,CT:n.gm.clearTimeout,XHR:n.gm.XMLHttpRequest,REQ:n.gm.Request,EV:n.gm.Event,PR:n.gm.Promise,MO:n.gm.MutationObserver,FETCH:n.gm.fetch,WS:n.gm.WebSocket}),e}function c(e,t){let r=a();r.initializedAgents??={},t.initializedAt={ms:(0,i.t)(),date:new Date},r.initializedAgents[e]=t}function u(e){let t=a();return t.initializedAgents?.[e]}function d(e,t){a()[e]=t}function l(){return function(){let e=a();const t=e.info||{};e.info={beacon:o.beacon,errorBeacon:o.errorBeacon,...t}}(),function(){let e=a();const t=e.init||{};e.init={...t}}(),s(),function(){let e=a();const t=e.loader_config||{};e.loader_config={...t}}(),a()}},2843:(e,t,r)=>{"use strict";r.d(t,{u:()=>i});var n=r(3878);function i(e,t=!1,r,i){(0,n.DD)("visibilitychange",(function(){if(t)return void("hidden"===document.visibilityState&&e());e(document.visibilityState)}),r,i)}},3434:(e,t,r)=>{"use strict";r.d(t,{YM:()=>c});var n=r(7836),i=r(5607);const o="nr@original:".concat(i.W);var a=Object.prototype.hasOwnProperty,s=!1;function c(e,t){return e||(e=n.ee),r.inPlace=function(e,t,n,i,o){n||(n="");const a="-"===n.charAt(0);for(let s=0;s<t.length;s++){const c=t[s],u=e[c];d(u)||(e[c]=r(u,a?c+n:n,i,c,o))}},r.flag=o,r;function r(t,r,n,s,c){return d(t)?t:(r||(r=""),nrWrapper[o]=t,function(e,t,r){if(Object.defineProperty&&Object.keys)try{return Object.keys(e).forEach((function(r){Object.defineProperty(t,r,{get:function(){return e[r]},set:function(t){return e[r]=t,t}})})),t}catch(e){u([e],r)}for(var n in e)a.call(e,n)&&(t[n]=e[n])}(t,nrWrapper,e),nrWrapper);function nrWrapper(){var o,a,d,l;try{a=this,o=[...arguments],d="function"==typeof n?n(o,a):n||{}}catch(t){u([t,"",[o,a,s],d],e)}i(r+"start",[o,a,s],d,c);try{return l=t.apply(a,o)}catch(e){throw i(r+"err",[o,a,e],d,c),e}finally{i(r+"end",[o,a,l],d,c)}}}function i(r,n,i,o){if(!s||t){var a=s;s=!0;try{e.emit(r,n,i,t,o)}catch(t){u([t,r,n,i],e)}s=a}}}function u(e,t){t||(t=n.ee);try{t.emit("internal-error",e)}catch(e){}}function d(e){return!(e&&"function"==typeof e&&e.apply&&!e[o])}},993:(e,t,r)=>{"use strict";r.d(t,{ET:()=>o,p_:()=>i});var n=r(860);const i={ERROR:"ERROR",WARN:"WARN",INFO:"INFO",DEBUG:"DEBUG",TRACE:"TRACE"},o="log";n.K7.logging},3969:(e,t,r)=>{"use strict";r.d(t,{TZ:()=>n,XG:()=>s,rs:()=>i,xV:()=>a,z_:()=>o});const n=r(860).K7.metrics,i="sm",o="cm",a="storeSupportabilityMetrics",s="storeEventMetrics"},6630:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.pageViewEvent},782:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.pageViewTiming},6344:(e,t,r)=>{"use strict";r.d(t,{G4:()=>i});var n=r(2614);r(860).K7.sessionReplay;const i={RECORD:"recordReplay",PAUSE:"pauseReplay",REPLAY_RUNNING:"replayRunning",ERROR_DURING_REPLAY:"errorDuringReplay"};n.g.ERROR,n.g.FULL,n.g.OFF},4234:(e,t,r)=>{"use strict";r.d(t,{W:()=>o});var n=r(7836),i=r(1687);class o{constructor(e,t){this.agentIdentifier=e,this.ee=n.ee.get(e),this.featureName=t,this.blocked=!1}deregisterDrain(){(0,i.x3)(this.agentIdentifier,this.featureName)}}},7603:(e,t,r)=>{"use strict";r.d(t,{j:()=>P});var n=r(860),i=r(2555),o=r(3371),a=r(9908),s=r(7836),c=r(1687),u=r(5289),d=r(6154),l=r(944),f=r(3969),g=r(384),p=r(6344);const h=["setErrorHandler","finished","addToTrace","addRelease","addPageAction","setCurrentRouteName","setPageViewName","setCustomAttribute","interaction","noticeError","setUserId","setApplicationVersion","start",p.G4.RECORD,p.G4.PAUSE,"log","wrapLogger"],v=["setErrorHandler","finished","addToTrace","addRelease"];var m=r(1863),b=r(2614),y=r(993);var w=r(2646),A=r(3434);function R(e,t,r,n){if("object"!=typeof t||!t||"string"!=typeof r||!r||"function"!=typeof t[r])return(0,l.R)(29);const i=function(e){return(e||s.ee).get("logger")}(e),o=(0,A.YM)(i),a=new w.y(s.P);return a.level=n.level,a.customAttributes=n.customAttributes,o.inPlace(t,[r],"wrap-logger-",a),i}function E(){const e=(0,g.pV)();h.forEach((t=>{e[t]=(...r)=>function(t,...r){let n=[];return Object.values(e.initializedAgents).forEach((e=>{e&&e.api?e.exposed&&e.api[t]&&n.push(e.api[t](...r)):(0,l.R)(38,t)})),n.length>1?n:n[0]}(t,...r)}))}const x={};function _(e,t,g=!1){t||(0,c.Ak)(e,"api");const h={};var w=s.ee.get(e),A=w.get("tracer");x[e]=b.g.OFF,w.on(p.G4.REPLAY_RUNNING,(t=>{x[e]=t}));var E="api-",_=E+"ixn-";function N(t,r,n,o){const a=(0,i.Vp)(e);return null===r?delete a.jsAttributes[t]:(0,i.x1)(e,{...a,jsAttributes:{...a.jsAttributes,[t]:r}}),j(E,n,!0,o||null===r?"session":void 0)(t,r)}function T(){}h.log=function(e,{customAttributes:t={},level:r=y.p_.INFO}={}){(0,a.p)(f.xV,["API/log/called"],void 0,n.K7.metrics,w),function(e,t,r={},i=y.p_.INFO){(0,a.p)(f.xV,["API/logging/".concat(i.toLowerCase(),"/called")],void 0,n.K7.metrics,e),(0,a.p)(y.ET,[(0,m.t)(),t,r,i],void 0,n.K7.logging,e)}(w,e,t,r)},h.wrapLogger=(e,t,{customAttributes:r={},level:i=y.p_.INFO}={})=>{(0,a.p)(f.xV,["API/wrapLogger/called"],void 0,n.K7.metrics,w),R(w,e,t,{customAttributes:r,level:i})},v.forEach((e=>{h[e]=j(E,e,!0,"api")})),h.addPageAction=j(E,"addPageAction",!0,n.K7.genericEvents),h.setPageViewName=function(t,r){if("string"==typeof t)return"/"!==t.charAt(0)&&(t="/"+t),(0,o.f)(e).customTransaction=(r||"http://custom.transaction")+t,j(E,"setPageViewName",!0)()},h.setCustomAttribute=function(e,t,r=!1){if("string"==typeof e){if(["string","number","boolean"].includes(typeof t)||null===t)return N(e,t,"setCustomAttribute",r);(0,l.R)(40,typeof t)}else(0,l.R)(39,typeof e)},h.setUserId=function(e){if("string"==typeof e||null===e)return N("enduser.id",e,"setUserId",!0);(0,l.R)(41,typeof e)},h.setApplicationVersion=function(e){if("string"==typeof e||null===e)return N("application.version",e,"setApplicationVersion",!1);(0,l.R)(42,typeof e)},h.start=()=>{try{(0,a.p)(f.xV,["API/start/called"],void 0,n.K7.metrics,w),w.emit("manual-start-all")}catch(e){(0,l.R)(23,e)}},h[p.G4.RECORD]=function(){(0,a.p)(f.xV,["API/recordReplay/called"],void 0,n.K7.metrics,w),(0,a.p)(p.G4.RECORD,[],void 0,n.K7.sessionReplay,w)},h[p.G4.PAUSE]=function(){(0,a.p)(f.xV,["API/pauseReplay/called"],void 0,n.K7.metrics,w),(0,a.p)(p.G4.PAUSE,[],void 0,n.K7.sessionReplay,w)},h.interaction=function(e){return(new T).get("object"==typeof e?e:{})};const S=T.prototype={createTracer:function(e,t){var r={},i=this,o="function"==typeof t;return(0,a.p)(f.xV,["API/createTracer/called"],void 0,n.K7.metrics,w),g||(0,a.p)(_+"tracer",[(0,m.t)(),e,r],i,n.K7.spa,w),function(){if(A.emit((o?"":"no-")+"fn-start",[(0,m.t)(),i,o],r),o)try{return t.apply(this,arguments)}catch(e){const t="string"==typeof e?new Error(e):e;throw A.emit("fn-err",[arguments,this,t],r),t}finally{A.emit("fn-end",[(0,m.t)()],r)}}}};function j(e,t,r,i){return function(){return(0,a.p)(f.xV,["API/"+t+"/called"],void 0,n.K7.metrics,w),i&&(0,a.p)(e+t,[(0,m.t)(),...arguments],r?null:this,i,w),r?void 0:this}}function k(){r.e(296).then(r.bind(r,8778)).then((({setAPI:t})=>{t(e),(0,c.Ze)(e,"api")})).catch((e=>{(0,l.R)(27,e),w.abort()}))}return["actionText","setName","setAttribute","save","ignore","onEnd","getContext","end","get"].forEach((e=>{S[e]=j(_,e,void 0,g?n.K7.softNav:n.K7.spa)})),h.setCurrentRouteName=g?j(_,"routeName",void 0,n.K7.softNav):j(E,"routeName",!0,n.K7.spa),h.noticeError=function(t,r){"string"==typeof t&&(t=new Error(t)),(0,a.p)(f.xV,["API/noticeError/called"],void 0,n.K7.metrics,w),(0,a.p)("err",[t,(0,m.t)(),!1,r,!!x[e]],void 0,n.K7.jserrors,w)},d.RI?(0,u.GG)((()=>k()),!0):k(),h}var N=r(9417),T=r(8122);const S={accountID:void 0,trustKey:void 0,agentID:void 0,licenseKey:void 0,applicationID:void 0,xpid:void 0},j={};var k=r(5284);const I=e=>{const t=e.startsWith("http");e+="/",r.p=t?e:"https://"+e};let O=!1;function P(e,t={},r,n){let{init:a,info:c,loader_config:u,runtime:l={},exposed:f=!0}=t;l.loaderType=r;const p=(0,g.pV)();c||(a=p.init,c=p.info,u=p.loader_config),(0,N.xN)(e.agentIdentifier,a||{}),function(e,t){if(!e)throw new Error("All loader-config objects require an agent identifier!");j[e]=(0,T.a)(t,S);const r=(0,g.nY)(e);r&&(r.loader_config=j[e])}(e.agentIdentifier,u||{}),c.jsAttributes??={},d.bv&&(c.jsAttributes.isWorker=!0),(0,i.x1)(e.agentIdentifier,c);const h=(0,N.D0)(e.agentIdentifier),v=[c.beacon,c.errorBeacon];O||(h.proxy.assets&&(I(h.proxy.assets),v.push(h.proxy.assets)),h.proxy.beacon&&v.push(h.proxy.beacon),E(),(0,g.US)("activatedFeatures",k.B),e.runSoftNavOverSpa&&=!0===h.soft_navigations.enabled&&h.feature_flags.includes("soft_nav")),l.denyList=[...h.ajax.deny_list||[],...h.ajax.block_internal?v:[]],l.ptid=e.agentIdentifier,(0,o.V)(e.agentIdentifier,l),e.ee=s.ee.get(e.agentIdentifier),void 0===e.api&&(e.api=_(e.agentIdentifier,n,e.runSoftNavOverSpa)),void 0===e.exposed&&(e.exposed=f),O=!0}},8374:(e,t,r)=>{r.nc=(()=>{try{return document?.currentScript?.nonce}catch(e){}return""})()},860:(e,t,r)=>{"use strict";r.d(t,{$J:()=>o,K7:()=>n,P3:()=>i});const n={ajax:"ajax",genericEvents:"generic_events",jserrors:"jserrors",logging:"logging",metrics:"metrics",pageAction:"page_action",pageViewEvent:"page_view_event",pageViewTiming:"page_view_timing",sessionReplay:"session_replay",sessionTrace:"session_trace",softNav:"soft_navigations",spa:"spa"},i={[n.pageViewEvent]:1,[n.pageViewTiming]:2,[n.metrics]:3,[n.jserrors]:4,[n.spa]:5,[n.ajax]:6,[n.sessionTrace]:7,[n.softNav]:8,[n.sessionReplay]:9,[n.logging]:10,[n.genericEvents]:11},o={[n.pageViewTiming]:"events",[n.ajax]:"events",[n.spa]:"events",[n.softNav]:"events",[n.metrics]:"jserrors",[n.jserrors]:"jserrors",[n.sessionTrace]:"browser/blobs",[n.sessionReplay]:"browser/blobs",[n.logging]:"browser/logs",[n.genericEvents]:"ins"}}},n={};function i(e){var t=n[e];if(void 0!==t)return t.exports;var o=n[e]={exports:{}};return r[e](o,o.exports,i),o.exports}i.m=r,i.d=(e,t)=>{for(var r in t)i.o(t,r)&&!i.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce(((t,r)=>(i.f[r](e,t),t)),[])),i.u=e=>"nr-rum-1.274.0.min.js",i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),e={},t="NRBA-1.274.0.PROD:",i.l=(r,n,o,a)=>{if(e[r])e[r].push(n);else{var s,c;if(void 0!==o)for(var u=document.getElementsByTagName("script"),d=0;d<u.length;d++){var l=u[d];if(l.getAttribute("src")==r||l.getAttribute("data-webpack")==t+o){s=l;break}}if(!s){c=!0;var f={296:"sha512-gkYkZDAwQ9PwaDXs2YM+rNIdRej1Ac1mupWobRJ8eahQcXz6/sunGZCKklrzi5kWxhOGRZr2tn0rEKuLTXzfAA=="};(s=document.createElement("script")).charset="utf-8",s.timeout=120,i.nc&&s.setAttribute("nonce",i.nc),s.setAttribute("data-webpack",t+o),s.src=r,0!==s.src.indexOf(window.location.origin+"/")&&(s.crossOrigin="anonymous"),f[a]&&(s.integrity=f[a])}e[r]=[n];var g=(t,n)=>{s.onerror=s.onload=null,clearTimeout(p);var i=e[r];if(delete e[r],s.parentNode&&s.parentNode.removeChild(s),i&&i.forEach((e=>e(n))),t)return t(n)},p=setTimeout(g.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=g.bind(null,s.onerror),s.onload=g.bind(null,s.onload),c&&document.head.appendChild(s)}},i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.p="https://js-agent.newrelic.com/",(()=>{var e={840:0,374:0};i.f.j=(t,r)=>{var n=i.o(e,t)?e[t]:void 0;if(0!==n)if(n)r.push(n[2]);else{var o=new Promise(((r,i)=>n=e[t]=[r,i]));r.push(n[2]=o);var a=i.p+i.u(t),s=new Error;i.l(a,(r=>{if(i.o(e,t)&&(0!==(n=e[t])&&(e[t]=void 0),n)){var o=r&&("load"===r.type?"missing":r.type),a=r&&r.target&&r.target.src;s.message="Loading chunk "+t+" failed.\n("+o+": "+a+")",s.name="ChunkLoadError",s.type=o,s.request=a,n[1](s)}}),"chunk-"+t,t)}};var t=(t,r)=>{var n,o,[a,s,c]=r,u=0;if(a.some((t=>0!==e[t]))){for(n in s)i.o(s,n)&&(i.m[n]=s[n]);if(c)c(i)}for(t&&t(r);u<a.length;u++)o=a[u],i.o(e,o)&&e[o]&&e[o][0](),e[o]=0},r=self["webpackChunk:NRBA-1.274.0.PROD"]=self["webpackChunk:NRBA-1.274.0.PROD"]||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})(),(()=>{"use strict";i(8374);var e=i(944),t=i(6344),r=i(9566);class n{agentIdentifier;constructor(e=(0,r.LA)(16)){this.agentIdentifier=e}#e(t,...r){if("function"==typeof this.api?.[t])return this.api[t](...r);(0,e.R)(35,t)}addPageAction(e,t){return this.#e("addPageAction",e,t)}setPageViewName(e,t){return this.#e("setPageViewName",e,t)}setCustomAttribute(e,t,r){return this.#e("setCustomAttribute",e,t,r)}noticeError(e,t){return this.#e("noticeError",e,t)}setUserId(e){return this.#e("setUserId",e)}setApplicationVersion(e){return this.#e("setApplicationVersion",e)}setErrorHandler(e){return this.#e("setErrorHandler",e)}addRelease(e,t){return this.#e("addRelease",e,t)}log(e,t){return this.#e("log",e,t)}}class o extends n{#e(t,...r){if("function"==typeof this.api?.[t])return this.api[t](...r);(0,e.R)(35,t)}start(){return this.#e("start")}finished(e){return this.#e("finished",e)}recordReplay(){return this.#e(t.G4.RECORD)}pauseReplay(){return this.#e(t.G4.PAUSE)}addToTrace(e){return this.#e("addToTrace",e)}setCurrentRouteName(e){return this.#e("setCurrentRouteName",e)}interaction(){return this.#e("interaction")}wrapLogger(e,t,r){return this.#e("wrapLogger",e,t,r)}}var a=i(860),s=i(9417);const c=Object.values(a.K7);function u(e){const t={};return c.forEach((r=>{t[r]=function(e,t){return!0===(0,s.gD)(t,"".concat(e,".enabled"))}(r,e)})),t}var d=i(7603);var l=i(1687),f=i(4234),g=i(5289),p=i(6154),h=i(384);const v=e=>p.RI&&!0===(0,s.gD)(e,"privacy.cookies_enabled");function m(e){return!!(0,h.dV)().o.MO&&v(e)&&!0===(0,s.gD)(e,"session_trace.enabled")}var b=i(6389);class y extends f.W{constructor(e,t,r=!0){super(e.agentIdentifier,t),this.auto=r,this.abortHandler=void 0,this.featAggregate=void 0,this.onAggregateImported=void 0,!1===e.init[this.featureName].autoStart&&(this.auto=!1),this.auto?(0,l.Ak)(e.agentIdentifier,t):this.ee.on("manual-start-all",(0,b.J)((()=>{(0,l.Ak)(e.agentIdentifier,this.featureName),this.auto=!0,this.importAggregator(e)})))}importAggregator(t,r={}){if(this.featAggregate||!this.auto)return;let n;this.onAggregateImported=new Promise((e=>{n=e}));const o=async()=>{let o;try{if(v(this.agentIdentifier)){const{setupAgentSession:e}=await i.e(296).then(i.bind(i,3861));o=e(t)}}catch(t){(0,e.R)(20,t),this.ee.emit("internal-error",[t]),this.featureName===a.K7.sessionReplay&&this.abortHandler?.()}try{if(t.sharedAggregator)await t.sharedAggregator;else{t.sharedAggregator=i.e(296).then(i.bind(i,9337));const{EventAggregator:e}=await t.sharedAggregator;t.sharedAggregator=new e}if(!this.#t(this.featureName,o))return(0,l.Ze)(this.agentIdentifier,this.featureName),void n(!1);const{lazyFeatureLoader:e}=await i.e(296).then(i.bind(i,6103)),{Aggregate:a}=await e(this.featureName,"aggregate");this.featAggregate=new a(t,r),n(!0)}catch(t){(0,e.R)(34,t),this.abortHandler?.(),(0,l.Ze)(this.agentIdentifier,this.featureName,!0),n(!1),this.ee&&this.ee.abort()}};p.RI?(0,g.GG)((()=>o()),!0):o()}#t(e,t){switch(e){case a.K7.sessionReplay:return m(this.agentIdentifier)&&!!t;case a.K7.sessionTrace:return!!t;default:return!0}}}var w=i(6630);class A extends y{static featureName=w.T;constructor(e,t=!0){super(e,w.T,t),this.importAggregator(e)}}var R=i(9908),E=i(2843),x=i(3878),_=i(782),N=i(1863);class T extends y{static featureName=_.T;constructor(e,t=!0){super(e,_.T,t),p.RI&&((0,E.u)((()=>(0,R.p)("docHidden",[(0,N.t)()],void 0,_.T,this.ee)),!0),(0,x.sp)("pagehide",(()=>(0,R.p)("winPagehide",[(0,N.t)()],void 0,_.T,this.ee))),this.importAggregator(e))}}var S=i(3969);class j extends y{static featureName=S.TZ;constructor(e,t=!0){super(e,S.TZ,t),this.importAggregator(e)}}new class extends o{constructor(t,r){super(r),p.gm?(this.features={},(0,h.bQ)(this.agentIdentifier,this),this.desiredFeatures=new Set(t.features||[]),this.desiredFeatures.add(A),this.runSoftNavOverSpa=[...this.desiredFeatures].some((e=>e.featureName===a.K7.softNav)),(0,d.j)(this,t,t.loaderType||"agent"),this.run()):(0,e.R)(21)}get config(){return{info:this.info,init:this.init,loader_config:this.loader_config,runtime:this.runtime}}run(){try{const t=u(this.agentIdentifier),r=[...this.desiredFeatures];r.sort(((e,t)=>a.P3[e.featureName]-a.P3[t.featureName])),r.forEach((r=>{if(!t[r.featureName]&&r.featureName!==a.K7.pageViewEvent)return;if(this.runSoftNavOverSpa&&r.featureName===a.K7.spa)return;if(!this.runSoftNavOverSpa&&r.featureName===a.K7.softNav)return;const n=function(e){switch(e){case a.K7.ajax:return[a.K7.jserrors];case a.K7.sessionTrace:return[a.K7.ajax,a.K7.pageViewEvent];case a.K7.sessionReplay:return[a.K7.sessionTrace];case a.K7.pageViewTiming:return[a.K7.pageViewEvent];default:return[]}}(r.featureName).filter((e=>!(e in this.features)));n.length>0&&(0,e.R)(36,{targetFeature:r.featureName,missingDependencies:n}),this.features[r.featureName]=new r(this)}))}catch(t){(0,e.R)(22,t);for(const e in this.features)this.features[e].abortHandler?.();const r=(0,h.Zm)();delete r.initializedAgents[this.agentIdentifier]?.api,delete r.initializedAgents[this.agentIdentifier]?.features,delete this.sharedAggregator;return r.ee.get(this.agentIdentifier).abort(),!1}}}({features:[A,T,j],loaderType:"lite"})})()})();</script> <meta name="viewport" content="width=device-width, initial-scale=1" /> <script type="text/javascript" id="cmp-inserter"> (function() { window.performance.mark('cmpstub start'); const cmpUrl = 'https://cdn.cookielaw.org/consent/cmp.stub.js'; const cmpScript = document.createElement('script'); cmpScript.async = true; cmpScript.type = 'text/javascript'; cmpScript.src = cmpUrl; cmpScript.setAttribute( 'charset', 'UTF-8' ); cmpScript.setAttribute('id', 'cmp-stub'); const cmpNode = document.getElementById('cmp-inserter'); cmpNode.parentNode.insertBefore(cmpScript, cmpNode.nextSibling); window.performance.mark('cmpstub end'); })(); </script> <script type="text/javascript"> /** * OptanonWrapper callback function. We use the OptanonWrapper function to listen for a user event and determine script behavior based on the user event. * * @return void */ function OptanonWrapper() { const otherRegionApplies = ( localStorage.getItem( 'otherRegion' ) !== null ) ? localStorage.getItem( 'otherRegion' ) : false; const ccpaApplies = ( localStorage.getItem( 'ccpaApplies' ) !== null ) ? localStorage.getItem( 'ccpaApplies' ) : false; const OTgeolocation = OneTrust.getGeolocationData(); // We use a block to be able to break from this in order to gain performance. regionFunctionBlock: { if ( otherRegionApplies === 'true' ) { // Performance. No need to execute other Javascript if the user is not GDPR/CCPA on subsequent visits. break regionFunctionBlock; } else if ( ( ccpaApplies === 'true' ) || ( ( OTgeolocation.country === 'US' ) && ( OTgeolocation.state === 'CA' ) ) ) { // User is within CCPA region. ccpaHelper(); } else { /* User may be visiting for the first time and we now * need to know if this user is from GDPR or other region. */ gdprHelper(); } } let OTConsentCookieInit = OneTrustGetCookie( 'OptanonConsent' ); let OTConsentGroups = OneTrustGetGroups ( OTConsentCookieInit ); OneTrustGetInitialGroups(); OneTrustSetConsentValues( OTConsentGroups ); /** * Sets a localStorageItem based on its updated value. * */ function setLocalStorageItem( key, value ) { localStorage.setItem( key, value); } /** * Checks presence of query parameter within the URL * Returns true/false depending if it has the word 'regionLog' * and if it's equal to 1. */ function regionLogger() { const queryString = window.location.search; const searchParams = new URLSearchParams( queryString ); return ( ( searchParams.has( 'regionLog' ) ) && ( ( searchParams.get('regionLog') === '1' ) ) ); } /** * Inserts the GDPR stub script. * Then it checks if the user is from a GDPR specific region * using the __tcfapi function which in turn, uses the * getTCData command, which is to retrieve end-user consent * data for IAB purposes, vendors, legitimate interest, publisher * restrictions and more. Calls the gdprUpdateStorage function which is * what sets the localStorage item. */ function gdprHelper() { const tcfApplies = ( localStorage.getItem( 'gdprApplies' ) !== null ) ? localStorage.getItem( 'gdprApplies' ) : false; const gdprLogger = regionLogger(); if ( gdprLogger ) { console.log('gdprHelper helper running'); } // User is a GDPR visitor. if ( ( tcfApplies === true ) || ( typeof __tcfapi === 'function' ) ) { // This will give us a response that the user is within GDPR. __tcfapi('ping', 2, (pingReturn) => { const tcfScriptID = 'tfc-stub'; // We run this only once. if( ( document.getElementById( tcfScriptID ) === null ) && ( true === pingReturn.gdprApplies ) ) { const tcfURL = 'https://cdn.cookielaw.org/consent/tcf.stub.js'; const tcfScript = document.createElement('script'); tcfScript.async = true; tcfScript.type = 'text/javascript'; tcfScript.src = tcfURL; tcfScript.setAttribute( 'charset', 'UTF-8' ); tcfScript.setAttribute('id', tcfScriptID); const tfcNode = document.getElementById('cmp-stub'); tfcNode.parentNode.insertBefore(tcfScript, tfcNode.nextSibling); } }); gdprUpdateStorage(); } else { // User is not GDPR and not CCPA. So it is from outside. We set a localStorage item for performance. const otherRegionApplies = ( localStorage.getItem( 'otherRegion' ) !== null ) ? localStorage.getItem( 'otherRegion' ) : false; if ( otherRegionApplies === false ) { setLocalStorageItem('otherRegion', true); } } } /** * Updates the storage for GDPR only. It checks that the string has changed and if so, it updates the localStorage * for GDPR. */ function gdprUpdateStorage() { const gdprLogger = regionLogger(); __tcfapi( 'addEventListener' , 2, ( tcData, success ) => { if ( success ) { const gdprString = tcData.tcString; const gdprCurrentString = localStorage.getItem( 'gdprString' ); if( gdprLogger ) { console.log('GDPR applies and is set to:' + gdprString); console.log('GDPRData:'); console.log(tcData); } if ( gdprString !== gdprCurrentString ) { if( gdprLogger ) { console.log('GDPR Consent will change on refresh' ); console.log('Old Value: ' + gdprCurrentString ); console.log('New Value: ' + gdprString ); } setLocalStorageItem('gdprApplies', true); setLocalStorageItem('gdprString', gdprString); } } }); } /** * Inserts the CCPA stub script. * Then on page load, it checks if the user is from a CCPA specific region * using the __uspapi function which in turn, uses the * getUSPData command, which is to retrieve end-user consent * data for IAB purposes, vendors, legitimate interest, publisher * restrictions and more. Calls the ccpaUpdateStorage function which is * what sets the localStorage item. */ function ccpaHelper() { setLocalStorageItem('ccpaApplies', true); const ccpaApplies = ( localStorage.getItem( 'ccpaApplies' ) !== null ) ? localStorage.getItem( 'ccpaApplies' ) : false; const ccpaLogger = regionLogger(); if ( ccpaLogger ) { console.log('ccpaHelper helper running'); } const ccpaScriptID = 'ccpa-stub'; const ccpaURL = 'https://cdn.cookielaw.org/opt-out/otCCPAiab.js'; const ccpaScript = document.createElement('script'); ccpaScript.async = true; ccpaScript.type = 'text/javascript'; ccpaScript.src = ccpaURL; ccpaScript.setAttribute('id', ccpaScriptID); ccpaScript.setAttribute('ccpa-opt-out-ids', 'C0001,C0002,C0003,C0004'); ccpaScript.setAttribute( 'charset', 'UTF-8' ); ccpaScript.setAttribute('ccpa-opt-out-geo', 'ca'); ccpaScript.setAttribute('ccpa-opt-out-lspa', 'true'); const ccpaNode = document.getElementById('cmp-stub'); ccpaNode.parentNode.insertBefore(ccpaScript, ccpaNode.nextSibling); // We update the local Storage Item for CCPA. window.addEventListener("load", function () { if ( typeof __uspapi === "function" ) { ccpaUpdateStorage(); } }); } /** * Updates the storage for CCPA only. It checks that the string has changed and if so, it updates the localStorage * for CCPA. */ function ccpaUpdateStorage() { const ccpaLogger = regionLogger(); __uspapi( 'getUSPData' , 1, ( uspData, success ) => { if ( (success) && ( uspData.uspString !== '1---' ) ) { const ccpaString = uspData.uspString; const ccpaCurrentString = localStorage.getItem( 'ccpaString' ); if( ccpaLogger ) { console.log('USPA applies and is set to:' + ccpaString); console.log('USPA Data: '); console.log(uspData); } if ( ccpaString !== ccpaCurrentString ) { if( ccpaLogger ) { console.log('CCPA Consent will change on refresh' ); console.log('Old Value: ' + ccpaCurrentString ); console.log('New Value: ' + ccpaString ); } setLocalStorageItem('ccpaString', ccpaString); } } }); } // Assign OnetrustActiveGroups to a custom initial variable so we can compare any changes to this data layer. function OneTrustGetInitialGroups() { OptanonWrapperCount = ''; OTinitGroups = OnetrustActiveGroups; // See https://community.cookiepro.com/s/article/UUID-66bcaaf1-c7ca-5f32-6760-c75a1337c226?language=en_US } // Returns the OptanonConsent cookie using its name as a parameter. Not parsed. function OneTrustGetCookie( name ) { const value = `; ${document.cookie}`; const parts = value.split(`; ${name}=`); if (parts.length === 2) { return decodeURIComponent( parts.pop().split(';').shift() ); } return; } // Parses the OptanonConsent Cookie values only. We are interested in the groups (which carry the consent). Returns an object with all the values of said cookie. function OneTrustGetConsentObject( OTcookie ) { let OTConsentObj = {}; OTcookie.split('&').forEach( ( pair ) => { if( pair !== '' ) { let splitpair = pair.split('='); let key = splitpair[0].charAt(0).toLowerCase() + splitpair[0].slice(1).split(' ').join(''); OTConsentObj[key] = splitpair[1]; } }); return OTConsentObj; } // Grabs the OptanonConsent cookie, turns this into an object (using OneTrustGetConsentObject), targets the 'groups' value, turns it into an array, removes the first element of the array. function OneTrustGetGroups ( cookie ) { let OTConsentArr = []; let OTConsentGroupsStr = OneTrustGetConsentObject(cookie).groups; OTConsentArr = OTConsentGroupsStr.split(","); OTConsentArr.shift(); return OTConsentArr; } // Sets the consent values based on the groups paramater, which is an array of consent categories that has been parsed from the OptanonConsent cookie. function OneTrustSetConsentValues( groups ){ // Create a json list with the values of each consent. These values will be updated if the user starts to toggle consent. // We then create a local storage item to read these values in other parts of the theme that require it. Converted to json in case we need to keep adding items. let json_consent = {}; json_consent[ "C0002" ] = groups[0].includes('2:1') ? true : false; json_consent[ "C0003" ] = groups[1].includes('3:1') ? true : false; json_consent[ "C0004" ] = groups[2].includes('4:1') ? true : false; let consent = JSON.stringify( json_consent ); localStorage.setItem( 'consent_one_trust_bdc', consent ); } // OneTrust event listener that fires whenever someone confirms cosent preferences (banner). Optanon.OnConsentChanged( function() { OTinitGroups = OnetrustActiveGroups; let OTConsentCookieChanged = OneTrustGetCookie( 'OptanonConsent' ); let OTConsentGroups = OneTrustGetGroups ( OTConsentCookieChanged ); OneTrustSetConsentValues( OTConsentGroups ); }); } </script> <script type="text/javascript" id="ot-inserter"> (function() { const otUrl = 'https://cdn.cookielaw.org/scripttemplates/otSDKStub.js'; const otScript = document.createElement('script'); otScript.async = true; otScript.type = 'text/javascript'; otScript.src = otUrl; otScript.setAttribute('id', 'onetrustSDK'); otScript.setAttribute('charset', 'UTF-8'); otScript.setAttribute('data-domain-script', '1744ffcc-f9fb-436a-97fd-6530afa75829'); const otNode = document.getElementById('ot-inserter'); otNode.parentNode.insertBefore(otScript, otNode.nextSibling); })(); </script> <script>(function(html){html.className = html.className.replace(/\bno-js\b/,'js')})(document.documentElement);</script> <style id="typekit-font-loading"> @import url("https://p.typekit.net/p.css?s=1&k=ewj0jxz&ht=tk&f=12784.12094.12095&a=43290994&app=typekit&e=css"); @font-face { font-family:"franklin-gothic-urw-cond"; src:url("https://use.typekit.net/af/f4a030/000000000000000077359dfc/30/l?primer=fff1a989570eb474b8c22c57cc7199e63bfc7e911b750165d0199218f0b7e7cc&fvd=n5&v=3") format("woff2"),url("https://use.typekit.net/af/f4a030/000000000000000077359dfc/30/d?primer=fff1a989570eb474b8c22c57cc7199e63bfc7e911b750165d0199218f0b7e7cc&fvd=n5&v=3") format("woff"),url("https://use.typekit.net/af/f4a030/000000000000000077359dfc/30/a?primer=fff1a989570eb474b8c22c57cc7199e63bfc7e911b750165d0199218f0b7e7cc&fvd=n5&v=3") format("opentype"); font-display:swap;font-style:normal;font-weight:500;font-stretch:normal; } @font-face { font-family:"franklin-gothic-urw-cond"; src:url("https://use.typekit.net/af/a2031c/0000000000000000000118b9/27/l?primer=fff1a989570eb474b8c22c57cc7199e63bfc7e911b750165d0199218f0b7e7cc&fvd=n7&v=3") format("woff2"),url("https://use.typekit.net/af/a2031c/0000000000000000000118b9/27/d?primer=fff1a989570eb474b8c22c57cc7199e63bfc7e911b750165d0199218f0b7e7cc&fvd=n7&v=3") format("woff"),url("https://use.typekit.net/af/a2031c/0000000000000000000118b9/27/a?primer=fff1a989570eb474b8c22c57cc7199e63bfc7e911b750165d0199218f0b7e7cc&fvd=n7&v=3") format("opentype"); font-display:swap;font-style:normal;font-weight:700;font-stretch:normal; } </style> <style id="cls-ad-css"> [id="ad_lead1"] { min-height: 50px; } @media only screen and (min-width: 768px) { [id="ad_lead1"] { min-height: 90px; } } [id="ad_sectionfront1"], [id="ad_sectionfront2"], [id="ad_articlerail1"], [id="ad_articlerail2"] { position: relative; } [id="ad_sectionfront1"]::before, [id="ad_sectionfront2"]::before, [id="ad_articlerail1"]::before, [id="ad_articlerail2"]::before { content: "Advertisement"; color: #68686d; display: block; font-family:"franklin-gothic-urw-cond"; font-size: .875rem; font-weight: 700; padding-bottom: 0.25rem; text-align: center; text-transform: uppercase; } .m-real-estate-listing__content [id="ad_sectionfront1"]::before, .m-real-estate-listing__content [id="ad_sectionfront2"]::before, .m-real-estate-listing__content [id="ad_articlerail1"]::before, .m-real-estate-listing__content [id="ad_articlerail2"]::before { display: none; } @media only screen and (min-width: 768px) { .m-real-estate-listing__content [id="ad_sectionfront1"]::before, .m-real-estate-listing__content [id="ad_sectionfront2"]::before, .m-real-estate-listing__content [id="ad_articlerail1"]::before, .m-real-estate-listing__content [id="ad_articlerail2"]::before { display: block; } } .m-advert--600 { height: 600px; } .m-sports-bar { min-height: 59px; } </style> <link rel="preconnect" href="https://cdn.cookielaw.org" crossorigin /><link rel="preconnect" href="//ads.pubmatic.com" crossorigin /><link rel="dns-prefetch" href="https://c.amazon-adsystem.com"><link rel="preconnect" href="https://c.amazon-adsystem.com" crossorigin><link rel="preconnect" href="//securepubads.g.doubleclick.net" crossorigin /><link rel="preconnect" href="https://use.typekit.net" crossorigin /><link rel="preconnect" href="https://p.typekit.net" crossorigin /><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin /><link rel="preload" as="font" href="https://fonts.googleapis.com/css2?family=Source+Serif+Pro:ital,wght@0,400;0,600;0,700;1,400;1,600;1,700&display=swap" as="style" /><link href="https://fonts.googleapis.com/css2?family=Source+Serif+Pro:ital,wght@0,400;0,600;0,700;1,400;1,600;1,700&display=swap" rel="stylesheet"><link rel="preload" as="font" href="https://use.typekit.net/af/f4a030/000000000000000077359dfa/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3" /><link rel="preload" as="font" href="https://use.typekit.net/af/f4a030/000000000000000077359dfa/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3" /><link rel="preload" as="font" href="https://use.typekit.net/af/a2031c/0000000000000000000118b9/27/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3" /><link rel="preload" as="font" href="https://use.typekit.net/af/a2031c/0000000000000000000118b9/27/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3" /><meta name='robots' content='index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1' /> <style>img:is([sizes="auto" i], [sizes^="auto," i]) { contain-intrinsic-size: 3000px 1500px }</style> <script type="text/javascript" id="pwt-inserter"> (function() { window.performance.mark('pwt start'); let setProfile = window.matchMedia('(min-width: 1024px)').matches; const mobileNonGDPR = '12624'; const desktopNonGDPR = '12623'; const mobileGDPR = '12502'; const desktopGDPR = '12501'; let reportingId = ''; function setPWTScript (PWTid) { var url = '//ads.pubmatic.com/AdServer/js/pwt/159928/' + reportingId; var profileVersionId = ''; var wtads = document.createElement('script'); wtads.async = true; wtads.type = 'text/javascript'; wtads.src = url + profileVersionId + '/pwt.js'; var node = document.getElementById('pwt-inserter'); node.parentNode.insertBefore(wtads, node.nextSibling); window.performance.mark('pwt end'); } let regionLock = false; let otherRegionApplies = localStorage.getItem( 'otherRegion' ); let ccpaApplies = localStorage.getItem( 'ccpaApplies' ); let gdprApplies = localStorage.getItem( 'gdprApplies' ); // This check is on subsequent page loads, since the localStorage item // has been already been set. We use a regionLock variable as a lock // to determine whether we need to run a Promise or not. if ( ( 'true' === otherRegionApplies ) || ( 'true' === ccpaApplies ) ){ reportingId = setProfile ? desktopNonGDPR : mobileNonGDPR; regionLock = true; } else if ( 'true' === gdprApplies ) { // It's GDPR, so load GDPR PWT Profile reportingId = setProfile ? desktopGDPR : mobileGDPR; regionLock = true; } // We are unsure what region the first time visitor is, so we need to run // a promise in order to wait until OneTrust is loaded, and two, which // region is this user from? if ( !regionLock ) { // On first load, it is not obvious which region the user is from. const CMPTIMEOUT = 5500; // 1000ms = 1 seconds. // This is the promise callback function, with a SetTimeout that runs every 30ms. function ensureRegionIsSet( CMPTIMEOUT ) { var start = Date.now(); return new Promise( waitForRegion ); // Set the promise object within the ensureRegionIsSet function // waitForRegion makes the decision whether the condition is met // or the timeout has been exceeded which means // this promise will be rejected. function waitForRegion(resolve, reject) { otherRegionApplies = localStorage.getItem( 'otherRegion' ); ccpaApplies = localStorage.getItem( 'ccpaApplies' ); gdprApplies = localStorage.getItem( 'gdprApplies' ); // We want OneTrust to be loaded and two, wait until the localStorage item is set to true for any region. if ( ( typeof OptanonWrapper === 'function') && ( ( 'true' === otherRegionApplies ) || ( 'true' === ccpaApplies ) || ( 'true' === gdprApplies ) )) { resolve("Region is determined"); } else if ( CMPTIMEOUT && ( Date.now() - start ) >= CMPTIMEOUT ) { reject( new Error("timeout") ); } else { setTimeout( waitForRegion.bind(this, resolve, reject), 30 ); } } } // This will run the promise. ensureRegionIsSet( CMPTIMEOUT ).then(function(){ // If it's 'other' or CCPA region, load non GDPR PWT profiles. if ( ( 'true' === otherRegionApplies ) || ( 'true' === ccpaApplies ) ) { reportingId = setProfile ? desktopNonGDPR : mobileNonGDPR; setPWTScript(reportingId); } else { // It's GDPR, load PWT Profile with those modules baked in. reportingId = setProfile ? desktopGDPR : mobileGDPR; setPWTScript(reportingId); } }); } else { setPWTScript(reportingId); } })(); </script> <script src="https://www.boston.com/wp-content/themes/bdc-2020/includes/gam/lazy-load-ad.min.js" type="text/javascript"></script> <script src="//securepubads.g.doubleclick.net/tag/js/gpt.js" type="text/javascript" id="securepubads.g" async></script> <script async src="https://c.amazon-adsystem.com/aax2/apstag.js"></script> <script> window.apstag = window.apstag || { init: function() { apstag._Q.push(["i", arguments, (new Date).getTime()]) }, fetchBids: function() { apstag._Q.push(["f", arguments, (new Date).getTime()]) }, setDisplayBids: function() {}, _Q: [] }; </script> <script id="boston-ads" type="text/javascript"> var PWT = {}; var adLazyLoading = false; var googletag = googletag || {}; var gptRan = false; window.initAdserverFlag = false; var FAILSAFE_TIMEOUT = 600; const DYNAMIC_NAME = ''; var adSlots = []; googletag.cmd = googletag.cmd || []; </script> <script id="boston-init-adserver" type="text/javascript"> // this function will act as a lock and will call the GPT API function initAdserver(forced) { if((forced === true && window.initAdserverFlag !== true) || (PWT.a9_BidsReceived && PWT.ow_BidsReceived)){ window.initAdserverFlag = true; PWT.a9_BidsReceived = PWT.ow_BidsReceived = false; if( 'undefined' !== typeof AdLazyLoader ) { adLazyLoading = true; var slotsToLazyLoad = []; for ( var prop in window.adSlots ) { if ( window.adSlots.hasOwnProperty( prop ) ) { slotsToLazyLoad.push( window.adSlots[ prop ] ); } } AdLazyLoader.registerSlots( slotsToLazyLoad ); } else { googletag.pubads().refresh(); } } } </script> <script id="boston-init-tam" type="text/javascript"> var initParams = { pubID: '3453', adServer: 'googletag', videoAdServer: 'DFP' }; /* * If we have CCPA user, pass the consent along. */ const ccpaApplies = localStorage.getItem( 'ccpaApplies' ); if( null !== ccpaApplies ) { //This is a CCPA user, pass the consent. let storageCCPA = localStorage.getItem( 'ccpaString' ); initParams.params = { us_privacy: storageCCPA }; } apstag.init(initParams); let slots = []; slots = [ { slotID: 'ad_lead1', sizes: [[728, 90], [970, 90], [320, 50]] }, ]; slots.push( { slotID: 'ad_sectionfront1', sizes: [[300,250], [300,600], [160,600]] }, { slotID: 'ad_sectionfront2', sizes: [[300,250], [300,600], [160,600]] } ); slots.push({ slotID: 'ad_stream1', sizes: [[ 728, 90 ], [ 970, 90 ], [ 970, 250 ], [ 300, 250 ], [ 320, 100 ], [ 320, 50 ]] }); slots.push({ slotID: 'ad_stream2', sizes: [[ 728, 90 ], [ 970, 90 ], [ 970, 250 ], [ 300, 250 ], [ 320, 100 ], [ 320, 50 ]] }); slots.push({ slotID: 'ad_stream3', sizes: [[ 728, 90 ], [ 970, 90 ], [ 970, 250 ], [ 300, 250 ], [ 320, 100 ], [ 320, 50 ]] }); slots.push({ slotID: 'ad_stream4', sizes: [[ 728, 90 ], [ 970, 90 ], [ 970, 250 ], [ 300, 250 ], [ 320, 100 ], [ 320, 50 ]] }); apstag.fetchBids({ slots: slots, timeout: 2e3 // Make Sure this timeout is less than or equal to OpenWrap TimeOut. }, function(bids) { googletag.cmd.push(function(){ apstag.setDisplayBids(); PWT.a9_BidsReceived = true; initAdserver(false); }); }); </script> <script id="boston-gam" type="text/javascript"> googletag.cmd.push(function() { var leaderMapping = googletag .sizeMapping() .addSize([0, 0], [[300, 250], [320, 50], [320, 100], [ 325, 508 ], [ 325, 204 ]]) .addSize([768, 200], [[728, 90], [300,250]]) .addSize([960, 200], [[728, 90], [620, 366], [300, 250]]) .addSize([1280, 200], [[970, 250], [970, 90], [728, 90], [620, 366], [300, 250]]) .build(); var leader1Mapping = googletag .sizeMapping() .addSize([0, 0], [320, 50]) .addSize([768, 200], [[768, 90], [728, 90]]) .addSize([1050, 200], [[970, 90], [728, 90]]) .build(); var leader2Mapping = googletag .sizeMapping() .addSize([0, 0], [[300, 250], [320, 100], [320, 50], [ 325, 508 ], [ 325, 204 ]]) .addSize([768, 200], [[728, 90], [300, 250]]) .addSize([1050, 200], [[728, 90], [620, 366], [300, 250]]) .build(); var railMapping = googletag .sizeMapping() .addSize([0, 0], []) .addSize([768, 200], []) .addSize([1050, 200], [[300, 250], [300, 600], [160,600]]) .build(); var videoMapping = googletag .sizeMapping() .addSize([0, 0], [[1, 1], [640, 480]]) .addSize([768, 200], [[1, 1], [640, 480]]) .addSize([1050, 200], [[1, 1], [640, 480]]) .build(); adSlots['ad_lead1'] = googletag .defineSlot('/61381659/boston.com' + DYNAMIC_NAME, [[768, 90], [728, 90], [970, 90], [320, 50]], 'ad_lead1' ) .setTargeting('pos', [['lead1'], ['atf']]) .defineSizeMapping( leader1Mapping ) .addService( googletag.pubads() ); adSlots['ad_sectionfront1'] = googletag .defineSlot('/61381659/boston.com' + DYNAMIC_NAME, [[300,250], [300,600], [160,600]], 'ad_sectionfront1') .setTargeting('pos', [['sectfront1'], ['atf']]) .defineSizeMapping(railMapping) .addService( googletag.pubads() ); adSlots['ad_sectionfront2'] = googletag .defineSlot('/61381659/boston.com' + DYNAMIC_NAME, [[300,250], [300,600], [160,600]], 'ad_sectionfront2') .setTargeting('pos', [['sectfront2'], ['atf']]) .defineSizeMapping(railMapping) .addService( googletag.pubads() ); // Define Real Estate GAM Slots (Special Section). // Dynamically build the in-article ad definitoins and add to the config definition based off of the number of in-article ads adSlots['ad_stream1'] = googletag .defineSlot('/61381659/boston.com'+ DYNAMIC_NAME, [[ 728, 90 ], [ 970, 90 ], [ 970, 250 ], [ 300, 250 ], [ 320, 100 ], [ 320, 50 ]], 'ad_stream1' ) .setTargeting('pos', [['stream1'], ['btf']]) .defineSizeMapping( leaderMapping ) .addService( googletag.pubads() ); adSlots['ad_stream2'] = googletag .defineSlot('/61381659/boston.com'+ DYNAMIC_NAME, [[ 728, 90 ], [ 970, 90 ], [ 970, 250 ], [ 300, 250 ], [ 320, 100 ], [ 320, 50 ]], 'ad_stream2' ) .setTargeting('pos', [['stream2'], ['btf']]) .defineSizeMapping( leaderMapping ) .addService( googletag.pubads() ); adSlots['ad_stream3'] = googletag .defineSlot('/61381659/boston.com'+ DYNAMIC_NAME, [[ 728, 90 ], [ 970, 90 ], [ 970, 250 ], [ 300, 250 ], [ 320, 100 ], [ 320, 50 ]], 'ad_stream3' ) .setTargeting('pos', [['stream3'], ['btf']]) .defineSizeMapping( leaderMapping ) .addService( googletag.pubads() ); adSlots['ad_stream4'] = googletag .defineSlot('/61381659/boston.com'+ DYNAMIC_NAME, [[ 728, 90 ], [ 970, 90 ], [ 970, 250 ], [ 300, 250 ], [ 320, 100 ], [ 320, 50 ]], 'ad_stream4' ) .setTargeting('pos', [['stream4'], ['btf']]) .defineSizeMapping( leaderMapping ) .addService( googletag.pubads() ); // common targetings googletag.pubads() .setTargeting( 'pgtype', 'page' ) .setTargeting( 's1', 'boston.com' ) .setTargeting( 'pageurl', '_online-gambling-content-disclaimer_' ) .setTargeting( 'environment', ['production']) .setTargeting( 'adunblock', ['undefined' !== typeof( window._bcm_il ) ? 'true' : 'false'] ); /* * * BlueConic Reference * https://support.blueconic.com/hc/en-us/articles/115004519689-doubleclick-for-publishers--targeting-only-#adjust-your-google-ad-manager-implementation-code-0-1 * */ if ( typeof Storage !== "undefined" ) { const targetingParamStr = localStorage.getItem("bcDFPTargetingParams"); if ( targetingParamStr ) { const targetingParameters = JSON.parse( targetingParamStr ); targetingParameters.forEach( function( param, index ) { googletag.pubads().setTargeting( param.key, param.value ); }); } } // Register event handlers to observe lazy loading behavior. (this for the QA instructions) googletag.pubads().addEventListener( 'slotRequested', function( event ) { updateSlotStatus( event.slot.getSlotElementId(), 'fetched' ); }); googletag.pubads().addEventListener( 'slotOnload', function( event ) { updateSlotStatus( event.slot.getSlotElementId(), 'rendered' ); }); googletag.pubads().addEventListener('slotRenderEnded', function(event) { var size = event.size; if(size === null) return; var slot = event.slot; var slotDiv = document.getElementById(slot.getSlotElementId()); if (size[0] > slotDiv.clientWidth) { slotDiv.style.width = size[0] + 'px'; } if (size[1] > slotDiv.clientHeight) { slotDiv.style.height = size[1] + 'px'; } }); googletag.pubads().enableSingleRequest(); googletag.pubads().disableInitialLoad(); googletag.enableServices(); /* The above code is a snippet of code that is used to call the Prebid.js library. */ if( typeof PWT.requestBids === 'function' ) { PWT.requestBids( PWT.generateConfForGPT(googletag.pubads().getSlots()), function(adUnitsArray) { PWT.addKeyValuePairsToGPTSlots(adUnitsArray); PWT.ow_BidsReceived = true; initAdserver(false); } ); } // No need to handle "else" part as we have A9 wrapper on page // OpenWrap code END here setTimeout(function() { initAdserver(true); // calling this function with forced mode set to true so that GPT API is always executed }, FAILSAFE_TIMEOUT); if ( (PWT.a9_BidsReceived && PWT.ow_BidsReceived) && ! adLazyLoading && 'undefined' !== typeof AdLazyLoader ) { // This is a fallback for if prebid has already returned and // attempted to register ads to lazy load before the ads have // all been defined. adLazyLoading = true; var slotsToLazyLoad = []; for ( var prop in window.adSlots ) { if ( window.adSlots.hasOwnProperty( prop ) ) { slotsToLazyLoad.push( window.adSlots[ prop ] ); } } AdLazyLoader.registerSlots( slotsToLazyLoad ); } // Checks that there is a video with ads available in the markup. const hasArcVideo = document.getElementsByClassName( 'a-video' ).length > 0 || ( typeof hasArcVideoPlayerAd !== 'undefined' && hasArcVideoPlayerAd ); /** * =================== * Arc Video * =================== */ if ( hasArcVideo ) { const params = [ 'sz=640x480', `iu=/61381659/boston.com${DYNAMIC_NAME}`, 'gdfp_req=1', 'env=vp', 'output=xml_vast3', 'unviewed_position_start=1', 'description_url=https%3A%2F%2Fboston.com', 'ciu_szs=300x250', `cust_params=${buildCustomParams()}`, ].join('&') window.PoWaSettings = window.PoWaSettings || {}; window.PoWaSettings.advertising = window.PoWaSettings.advertising || {}; if ( typeof hasArcVideoPlayerAd !== 'undefined' && hasArcVideoPlayerAd ) { /** * Calculates the formatted duration of a video in hours, minutes, and seconds. * * @param {Object} videoData - An object containing video data such as duration. * @param {number} videoData.duration - The duration of the video in milliseconds. * * @return {string} - The formatted duration of the video in the format hh:mm:ss. */ const getTime = (videoData) => { if ( !videoData.duration ) return ''; const duration = videoData.duration / 1000; const hours = Math.floor(duration / 3600); const minutes = Math.floor(duration / 60) % 60; const seconds = Math.floor(duration % 60); const hourDisplay = hours ? `${hours}:` : ''; const minuteDisplay = hours && minutes < 10 ? `0${minutes}:` : `${minutes}:`; const secondDisplay = seconds < 10 ? `0${seconds}` : seconds; return `${hourDisplay}${minuteDisplay}${secondDisplay}`; }; // Saves the listener interval ID. let intervalPoWaId; /** * In order to create the promo markup, the script needs to override values of a variable stored in the window object. * That is the reason to create an interval that listens to PoWaSettings as early in the execution as possible. */ function setWindowPoWaSettingsPromo() { if ( window.PoWaSettings ) { const playButtonSVG = `<svg class="bdc-arc-promo__play" height="20px" viewBox="0 0 24 40" width="12px"><title>Play</title><g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"><g id="Play" transform="translate(0.916016, 0.000000)" fill="#FFFFFF" fill-rule="nonzero"><path d="M22.150346,18.47837 L19.03045,15.69057 L19.032738,15.68853 L2.182097,0.62952 C1.708623,0.20849 1.091049,-0.00203 0.473474,9.99999998e-06 C0.372832,9.99999998e-06 0.274478,0.00615 0.171549,0.01841 L0.002287,0.0368 L0.002287,25.268 L0,25.268 L0,39.9673 L0.176123,39.98365 C0.276765,39.99591 0.375119,40 0.473474,40 L0.480336,40 C1.093336,40 1.708623,39.79153 2.17981,39.37663 L22.150346,21.52778 C22.62382,21.10879 22.859414,20.55491 22.857126,20.00103 C22.859414,19.45124 22.62382,18.8994 22.150346,18.47837"></path></g></g></svg> `; // Play button SVG. const logoSVG = `<svg class="bdc-arc-promo__logo" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="svg47" version="1.1" viewBox="0 0 104 40" height="40" width="104"><title id="title2">BDC Logo</title><defs id="defs9"><path id="path-1" d="M 0.99414923,0.99002979 V 330.92546 H 79.979206 c 43.720834,0 66.151404,-22.04811 66.151404,-62.086 v 0 -62.09308 c 0,-20.20663 -10.56015,-37.62272 -30.3914,-45.42773 v 0 c 18.90343,-6.84179 28.54284,-23.34423 28.54284,-43.55086 v 0 -54.677601 c 0,-40.052053 -22.96884,-62.10015921 -66.165566,-62.10015921 v 0 z M 58.101082,49.739505 h 13.704814 c 10.014783,0 15.574618,6.863031 15.574618,18.733453 v 0 49.103602 c 0,12.06166 -5.38277,18.91052 -15.574618,18.91052 v 0 H 58.101082 Z m -0.19123,134.569235 h 12.401617 c 13.364849,0 18.917601,7.42963 18.733453,21.50983 v 0 57.45397 c 0,12.06166 -5.368604,18.90344 -15.567535,18.90344 v 0 H 57.909852 Z" /><path id="path-3" d="M 0.30715319,65.691033 V 271.43322 c 0,39.83958 29.27943181,65.61313 73.02151481,65.61313 v 0 c 43.749162,0 72.681552,-25.58232 72.681552,-65.61313 v 0 -205.742187 c 0,-39.867906 -28.74116,-65.62020709 -72.476157,-65.62020709 v 0 C 29.79198,0.07082591 0.49838315,25.823127 0.30715319,65.691033 Z M 57.768215,267.90609 V 69.388145 c 0,-12.422864 5.552752,-20.178302 15.560453,-20.178302 v 0 c 10.206014,0 15.213406,7.755438 15.213406,20.178302 v 0 198.517945 c 0,12.43703 -5.007392,20.21372 -15.213406,20.21372 v 0 c -10.007701,0 -15.560453,-7.77669 -15.560453,-20.21372 z" /><path id="path-5" d="m 0.74508222,65.322738 v 45.597722 c 0,26.50306 8.72575228,40.77448 25.77354878,54.11808 v 0 l 47.998721,39.83957 c 7.797933,7.43672 10.942603,12.99656 10.942603,26.70846 v 0 H 85.09166 v 36.31952 c 0,12.43703 -4.10082,20.21372 -14.278503,20.21372 v 0 c -10.007702,0 -14.646799,-7.77669 -14.646799,-20.21372 v 0 -59.67791 H 0.19264011 v 63.94163 c 0,40.04497 26.70136889,65.26608 70.25930389,65.26608 v 0 c 43.182556,0 72.100776,-25.22111 72.100776,-65.26608 v 0 -53.38857 c 0,-26.50306 -9.08696,-40.76031 -26.12768,-54.111 v 0 L 68.617553,124.63236 C 60.805455,117.22397 57.660785,111.64997 57.660785,97.93807 v 0 -28.549925 c 0,-12.422864 4.447867,-20.178302 14.632633,-20.178302 v 0 c 10.206014,0 14.271421,7.755438 14.271421,20.178302 v 0 53.756865 H 142.17026 V 65.322738 c 0,-40.052053 -26.68012,-65.25191209 -70.238054,-65.25191209 v 0 c -43.565018,0 -71.18712378,25.19985909 -71.18712378,65.25191209 z" /><path id="path-7" d="M 0.18414737,65.691033 V 271.43322 c 0,39.83958 29.28651463,65.61313 73.02859763,65.61313 v 0 c 43.734995,0 72.646135,-25.58232 72.646135,-65.61313 v 0 -205.742187 c 0,-39.867906 -29.08112,-65.62020709 -72.646135,-65.62020709 v 0 C 29.647727,0.07082591 0.18414737,25.823127 0.18414737,65.691033 Z M 57.638127,267.90609 V 69.388145 c 0,-12.422864 5.566917,-20.178302 15.574618,-20.178302 v 0 c 10.191848,0 15.192158,7.755438 15.192158,20.178302 v 0 198.517945 c 0,12.43703 -5.00031,20.21372 -15.192158,20.21372 v 0 c -10.007701,0 -15.574618,-7.77669 -15.574618,-20.21372 z" /><path id="path-9" d="m 1106.8983,130.37634 v 76.47073 c 0,14.81678 10.8788,24.38537 27.1475,24.38537 v 0 c 16.2546,0 26.9989,-9.49776 26.9989,-24.38537 v 0 -76.47073 c 0,-14.8097 -10.7443,-24.38536 -26.9989,-24.38536 v 0 c -16.2687,0 -27.1475,9.57566 -27.1475,24.38536 z m 21.354,75.16754 v -73.77935 c 0,-4.62494 2.0044,-7.51463 5.7935,-7.51463 v 0 c 3.7892,0 5.6449,2.88969 5.6449,7.51463 v 0 73.77935 c 0,4.62493 -1.8557,7.50046 -5.6449,7.50046 v 0 c -3.7183,0 -5.7935,-2.87553 -5.7935,-7.50046 z" /></defs><g style="fill:none;fill-rule:evenodd;stroke:none;stroke-width:1" transform="matrix(0.06987876,0,0,0.06987876,7.3493524,8.3563326)" id="BDC_Logo_2020_Full_White"><g transform="translate(27,22.137254)" id="COM"><g transform="translate(0,2.784991)" id="Group-3"><mask fill="white" id="mask-2"><use height="100%" width="100%" y="0" x="0" id="use11" xlink:href="#path-1" /></mask><g id="Clip-2" /><polygon style="fill:#ffffff" points="239.40125,424.18902 239.40125,-92.273531 -92.262328,-92.273531 -92.262328,424.18902 " mask="url(#mask-2)" id="Fill-1" /></g><g transform="translate(162.32589)" id="Group-6"><mask fill="white" id="mask-4"><use height="100%" width="100%" y="0" x="0" id="use17" xlink:href="#path-3" /></mask><g id="Clip-5" /><polygon style="fill:#ffffff" points="239.2667,430.30991 239.2667,-93.192734 -92.956407,-93.192734 -92.956407,430.30991 " mask="url(#mask-4)" id="Fill-4" /></g><g transform="translate(325.0142)" id="Group-9"><mask fill="white" id="mask-6"><use height="100%" width="100%" y="0" x="0" id="use23" xlink:href="#path-5" /></mask><g id="Clip-8" /><polygon style="fill:#ffffff" points="235.81628,430.69945 235.81628,-93.192734 -93.056755,-93.192734 -93.056755,430.69945 " mask="url(#mask-6)" id="Fill-7" /></g><polygon style="fill:#ffffff" points="616.20077,55.310787 616.20077,3.7778541 475.14388,3.7778541 475.14388,55.112475 517.05157,55.112475 517.05157,333.69912 574.4843,333.69912 574.4843,55.112475 574.4843,55.310787 " id="Fill-10" /><polygon style="fill:#ffffff" points="892.02236,333.69912 941.16138,333.69912 941.16138,3.7778541 889.24599,3.7778541 889.24599,108.49396 890.16672,177.82545 889.24599,177.82545 851.99156,3.7778541 793.2273,3.7778541 793.2273,333.69912 845.13561,333.69912 845.13561,196.37475 844.21487,132.42604 845.13561,132.42604 " id="Fill-14" /><g transform="translate(625.65744)" id="Group-13"><mask fill="white" id="mask-8"><use height="100%" width="100%" y="0" x="0" id="use31" xlink:href="#path-7" /></mask><g id="Clip-12" /><polygon style="fill:#ffffff" points="239.12244,430.30991 239.12244,-93.192734 -93.086495,-93.192734 -93.086495,430.30991 " mask="url(#mask-8)" id="Fill-11" /></g><polygon style="fill:#ffffff" points="1280.7886,333.59429 1356.1191,333.59429 1356.1191,3.6659492 973.64498,3.6659492 973.64498,56.119619 1304.9898,56.119619 1304.9898,281.13354 1241.9831,281.13354 1241.9831,324.98186 1142.8977,281.13354 973.64498,281.13354 973.64498,333.59429 1144.895,333.59429 1280.7886,393.72549 " id="Fill-15" /><polygon style="fill:#ffffff" points="1026.8791,231.25368 1026.8791,202.2009 997.84761,202.2009 997.84761,231.25368 " id="Fill-16" /><polygon style="fill:#ffffff" points="1188.5549,176.95146 1188.4203,152.70066 1188.7603,152.70066 1197.1036,231.23244 1213.2873,231.23244 1221.7651,152.70066 1222.1051,152.70066 1221.7651,176.95146 1221.7651,231.23244 1241.2706,231.23244 1241.2706,108.60445 1212.9473,108.60445 1205.4327,184.11904 1205.0927,184.11904 1197.5852,108.60445 1169.0565,108.60445 1169.0565,231.23244 1188.5549,231.23244 " id="Fill-23" /><mask fill="white" id="mask-10"><use height="100%" width="100%" y="0" x="0" id="use40" xlink:href="#path-9" /></mask><use height="100%" width="100%" y="0" x="0" style="fill:#ffffff" xlink:href="#path-9" id="Clip-21" /><path style="fill:#ffffff" id="Clip-18" d="m 1046.8804,130.37634 v 76.47073 c 0,14.81678 10.7514,24.38537 26.8005,24.38537 v 0 c 16.1979,0 26.1135,-9.49776 26.1135,-24.38537 v 0 -24.7324 h -20.8086 v 23.42921 c 0,4.62493 -1.5157,7.51463 -5.3049,7.51463 v 0 c -3.7254,0 -5.4394,-2.8897 -5.4394,-7.51463 v 0 -73.79352 c 0,-4.61077 1.6573,-7.50046 5.4394,-7.50046 v 0 c 3.7892,0 5.3049,2.88969 5.3049,7.50046 v 0 21.70106 h 20.8086 v -23.07508 c 0,-14.8097 -9.9156,-24.39953 -26.1135,-24.39953 v 0 c -16.0491,0 -26.8005,9.58983 -26.8005,24.39953 z" /></g></g></svg> `; // Play button SVG. window.PoWaSettings.promo = window.PoWaSettings.promo || { template: (settings) => { return ` <div class="bdc-arc-promo powa-click-promo-play" ${settings.image ? ` style="background-image: url('${settings.image}')"` : ''}> <div class="bdc-arc-promo__bar"> <div class="bdc-arc-promo__controls"> ${playButtonSVG} <span class="bdc-arc-promo__duration">${getTime(settings.videoData)}</span> </div> ${logoSVG} </div> </div> `; }, style: () => ` .powa-shot { background-position: center; background-size: cover; height: 100%; position: absolute; width: 100%; } .bdc-arc-promo { background-position: center; background-size: cover; display: flex; height: 100%; } .bdc-arc-promo__bar { display: flex; margin-top: auto; padding: 10px; width: 100%; } .bdc-arc-promo__controls { align-items: center; background: #0000007d; display: inline-flex; margin-bottom: -10px; margin-left: -10px; margin-top: auto; max-height: 40px; padding: 10px; } .bdc-arc-promo__controls .bdc-arc-promo__play { margin-right: 10px; } .bdc-arc-promo__logo { margin-left: auto; opacity: .5; } .bdc-arc-promo__duration { color: #FFFFFF; font-family: "franklin-gothic-urw-cond", arial; } .bdc-arc-promo, .bdc-arc-promo__controls svg { cursor: pointer; } `, }; stopWindowPoWaListening(); } } // Starts the listener interval. function startWindowPoWaListening() { intervalPoWaId = setInterval(setWindowPoWaSettingsPromo, 100); } // Stops the listener interval. function stopWindowPoWaListening() { clearInterval(intervalPoWaId); } // Loads the listener interval as soon as the site has started. window.addEventListener('DOMContentLoaded', startWindowPoWaListening); window.PoWaSettings.advertising.adBar = true; window.addEventListener('powaError', function () { document.getElementsByClassName('a-arc-video-advert')[0].remove(); }); } // Define the ad tag to be used by the player. window.PoWaSettings.advertising.adTag = function () { return `//pubads.g.doubleclick.net/gampad/ads?${params}`; }; /** * Builds the custom parameters needed for the ARC video preroll * * @return string - URL encoded string of parameters */ function buildCustomParams() { const getCurrentBreakPoint = function() { if ( window.outerWidth < 768 ) { return 'mobile'; } if ( window.outerWidth < 960 ) { return 'tablet'; } return 'desktop'; }; const getTestQueryString = function() { var queryString = window.location.search; var regex = /[\?\&]test=([^&]*)/; return queryString.match( regex ) ? queryString.match( regex )[1] : ''; }; const customParams = [ 'pos=preroll', 'breakpoint=' + getCurrentBreakPoint(), 'test=' + getTestQueryString(), ]; googletag .pubads() .getTargetingKeys() .forEach((key) => customParams.push(`${key}=${googletag.pubads().getTargeting(key)}`)); return encodeURIComponent( customParams.join('&') .replace('pgtype=post', 'pgtype=article') // Match legacy ad call format ); }; } }); //googletag.cmd.push /* * Updating the status of the slot. * This is only to check behaivor on branch env */ function updateSlotStatus( slotId, state ) { var elem = document.getElementById( slotId ); elem.className = 'activated'; console.log( slotId + ' status: ' + state ); } </script> <!-- This site is optimized with the Yoast SEO Premium plugin v23.0 (Yoast SEO v23.0) - https://yoast.com/wordpress/plugins/seo/ --> <title>Online Gambling Content Disclaimer | Boston.com</title> <link rel="canonical" href="https://www.boston.com/online-gambling-content-disclaimer/" /> <meta property="og:locale" content="en_US" /> <meta property="og:type" content="article" /> <meta property="og:title" content="Online Gambling Content Disclaimer" /> <meta property="og:description" content="This policy was last updated on December 15, 2022 The following Online Gambling Content Disclaimer (the “Disclaimer”), together with our Terms of Use and Privacy Policy (each incorporated herein), collectively apply to your use of this web site and any web site owned by Boston Globe Media Partners, LLC (as defined below) (including, without limitation, […]" /> <meta property="og:url" content="https://www.boston.com/online-gambling-content-disclaimer/" /> <meta property="og:site_name" content="Boston.com" /> <meta property="article:publisher" content="https://www.facebook.com/boston" /> <meta property="article:modified_time" content="2022-12-15T16:20:30+00:00" /> <meta property="og:image" content="https://bdc2020.o0bc.com/wp-content/uploads/2021/06/BDC_Logo_2020_256x256-60d0abc34135e.png" /> <meta property="og:image:width" content="256" /> <meta property="og:image:height" content="256" /> <meta property="og:image:type" content="image/png" /> <meta name="twitter:card" content="summary_large_image" /> <meta name="twitter:site" content="@BostonDotCom" /> <meta name="twitter:label1" content="Est. reading time" /> <meta name="twitter:data1" content="6 minutes" /> <meta name="twitter:label2" content="Written by" /> <meta name="twitter:data2" content="Leza Olmer" /> <script type="application/ld+json" class="yoast-schema-graph">{ "@context": "https://schema.org", "@graph": [ { "@type": "WebPage", "@id": "https://www.boston.com/online-gambling-content-disclaimer/", "url": "https://www.boston.com/online-gambling-content-disclaimer/", "name": "Online Gambling Content Disclaimer | Boston.com", "isPartOf": { "@id": "https://www.boston.com/#website" }, "datePublished": "2022-12-15T16:20:23+00:00", "dateModified": "2022-12-15T16:20:30+00:00", "breadcrumb": { "@id": "https://www.boston.com/online-gambling-content-disclaimer/#breadcrumb" }, "inLanguage": "en-US", "potentialAction": [ { "@type": "ReadAction", "target": [ "https://www.boston.com/online-gambling-content-disclaimer/" ] } ] }, { "@type": "BreadcrumbList", "@id": "https://www.boston.com/online-gambling-content-disclaimer/#breadcrumb", "itemListElement": [ { "@type": "ListItem", "position": 1, "name": "Home", "item": "https://www.boston.com/" }, { "@type": "ListItem", "position": 2, "name": "Online Gambling Content Disclaimer" } ] }, { "@type": "WebSite", "@id": "https://www.boston.com/#website", "url": "https://www.boston.com/", "name": "Boston.com", "description": "Boston.com", "publisher": { "@id": "https://www.boston.com/#organization" }, "potentialAction": [ { "@type": "SearchAction", "target": { "@type": "EntryPoint", "urlTemplate": "https://www.boston.com/?s={search_term_string}" }, "query-input": "required name=search_term_string" } ], "inLanguage": "en-US" }, { "@type": "NewsMediaOrganization", "@id": "https://www.boston.com/#organization", "name": "Boston.com", "url": "https://www.boston.com", "logo": "https://bdc2020.o0bc.com/wp-content/uploads/2021/05/Boston.com-Logo-609cb231cf4d6.png", "image": { "@id": "https://www.boston.com/#/schema/logo/image/" }, "sameAs": [ "https://www.facebook.com/boston", "https://x.com/BostonDotCom", "https://www.instagram.com/boston/", "https://www.youtube.com/channel/UC8IkdxFyPXgw11n4Ew0osHQ" ], "address": "1 Exchange Place, Boston, MA 02109", "areaServed": [ "Boston", "Massachusetts", "New England" ], "description": "Boston.com is the region’s leading digital destination for information on all things Boston. Millions of visitors turn to our site for the best coverage of breaking news, things to do, sports, and entertainment in Greater Boston and beyond.", "email": "tips@boston.com", "foundingDate": "1995-10-30", "legalName": "Boston Globe Media Partners", "location": "Boston", "masthead": "https://www.boston.com/contact-us/" } ] }</script> <!-- / Yoast SEO Premium plugin. --> <link rel='dns-prefetch' href='//apps.bostonglobe.com' /> <link rel='dns-prefetch' href='//static.chartbeat.com' /> <link rel='dns-prefetch' href='//cdn.blueconic.net' /> <link rel="alternate" type="application/rss+xml" title="Boston.com » Feed" href="https://www.boston.com/feed/" /> <link rel='stylesheet' id='wp-block-library-css' href='https://bdc2020.o0bc.com/wp-includes/css/dist/block-library/style.min.css?ver=6.7.1' type='text/css' media='all' /> <style id='co-authors-plus-coauthors-style-inline-css' type='text/css'> .wp-block-co-authors-plus-coauthors.is-layout-flow [class*=wp-block-co-authors-plus]{display:inline} </style> <style id='co-authors-plus-avatar-style-inline-css' type='text/css'> .wp-block-co-authors-plus-avatar :where(img){height:auto;max-width:100%;vertical-align:bottom}.wp-block-co-authors-plus-coauthors.is-layout-flow .wp-block-co-authors-plus-avatar :where(img){vertical-align:middle}.wp-block-co-authors-plus-avatar:is(.alignleft,.alignright){display:table}.wp-block-co-authors-plus-avatar.aligncenter{display:table;margin-inline:auto} </style> <style id='co-authors-plus-image-style-inline-css' type='text/css'> .wp-block-co-authors-plus-image{margin-bottom:0}.wp-block-co-authors-plus-image :where(img){height:auto;max-width:100%;vertical-align:bottom}.wp-block-co-authors-plus-coauthors.is-layout-flow .wp-block-co-authors-plus-image :where(img){vertical-align:middle}.wp-block-co-authors-plus-image:is(.alignfull,.alignwide) :where(img){width:100%}.wp-block-co-authors-plus-image:is(.alignleft,.alignright){display:table}.wp-block-co-authors-plus-image.aligncenter{display:table;margin-inline:auto} </style> <link rel='stylesheet' id='wp_blocks_embed_weather_podcast-cgb-style-css-css' href='https://bdc2020.o0bc.com/wp-content/plugins/wp-block-embed-weather-podcast/dist/blocks.style.build.css' type='text/css' media='all' /> <style id='elasticpress-related-posts-style-inline-css' type='text/css'> .editor-styles-wrapper .wp-block-elasticpress-related-posts ul,.wp-block-elasticpress-related-posts ul{list-style-type:none;padding:0}.editor-styles-wrapper .wp-block-elasticpress-related-posts ul li a>div{display:inline} </style> <style id='classic-theme-styles-inline-css' type='text/css'> /*! This file is auto-generated */ .wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none} </style> <style id='global-styles-inline-css' type='text/css'> :root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--color--red: #bb2525;--wp--preset--color--background-black: #1a1a1a;--wp--preset--color--line-gray: #e1e1e1;--wp--preset--color--blue: #2c74de;--wp--preset--color--light-gray: #f1f1f1;--wp--preset--color--off-white: #fbf1e7;--wp--preset--color--mid-gray: #b6b6b6;--wp--preset--color--dark-gray: #68686d;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgba(252,185,0,1) 0%,rgba(255,105,0,1) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgba(255,105,0,1) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgba(255, 255, 255, 1), 6px 6px rgba(0, 0, 0, 1);--wp--preset--shadow--crisp: 6px 6px 0px rgba(0, 0, 0, 1);}:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}:where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;}:where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;} :where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;} :where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;} :root :where(.wp-block-pullquote){font-size: 1.5em;line-height: 1.6;} </style> <link rel='stylesheet' id='tenup-block-library-frontend-accordion-styles-css' href='https://bdc2020.o0bc.com/wp-content/plugins/block-library/dist/css/frontend-accordion-styles.css?ver=d899f5cabdebab30a4d631759350a871' type='text/css' media='all' /> <link rel='stylesheet' id='tablepress-default-css' href='https://bdc2020.o0bc.com/wp-content/plugins/tablepress-premium/css/build/default.css?ver=2.4.4-BGMP' type='text/css' media='all' /> <style id='tablepress-default-inline-css' type='text/css'> .tablepress{--style-variation:custom;--head-text-color:#7e7e7e;--head-bg-color:#fff;--head-active-bg-color:#d0d0d0;--odd-bg-color:#fff;--hover-bg-color:#d0d0d0;border:1px solid grey;border-collapse:collapse}.tablepress thead th{text-transform:uppercase;font-weight:700;border-left:1px solid grey;border-right:1px solid grey;border-bottom:3px solid grey}.tablepress tbody td a{color:var(--c-red);font-weight:700;text-decoration:none}.tablepress tbody td a:hover{color:var(--c-red);font-weight:700;text-decoration:underline}.tablepress tbody td{border-left:1px solid grey;border-right:1px solid grey}.tablepress td,.tablepress th,.dt-search,.dt-length,.dt-info,.dt-paging a,.dt-buttons{font-family:var(--f-primary)}.tablepress img{max-width:100%;height:auto}.tablepress-id-109 .column-1,.tablepress-id-109 .column-4{background-color:#d3dff2}.tablepress-id-109 .column-2,.tablepress-id-109 .column-6{background-color:#e6e6e6} </style> <link rel='stylesheet' id='tablepress-datatables-buttons-css' href='https://bdc2020.o0bc.com/wp-content/plugins/tablepress-premium/modules/css/build/datatables.buttons.css?ver=2.4.4-BGMP' type='text/css' media='all' /> <link rel='stylesheet' id='tablepress-datatables-columnfilterwidgets-css' href='https://bdc2020.o0bc.com/wp-content/plugins/tablepress-premium/modules/css/build/datatables.columnfilterwidgets.css?ver=2.4.4-BGMP' type='text/css' media='all' /> <link rel='stylesheet' id='tablepress-responsive-tables-css' href='https://bdc2020.o0bc.com/wp-content/plugins/tablepress-premium/modules/css/build/responsive-tables.css?ver=2.4.4-BGMP' type='text/css' media='all' /> <link rel='stylesheet' id='global-css' href='https://bdc2020.o0bc.com/wp-content/themes/bdc-2020/dist/css/global.css?ver=476348999e4a910c7553fd27c05ad0c1' type='text/css' media='all' /> <link rel='stylesheet' id='base-css' href='https://bdc2020.o0bc.com/wp-content/themes/bdc-2020/dist/css/base.css?ver=d64ef26a96a53d14751b910ee35561c9' type='text/css' media='all' /> <link rel='stylesheet' id='blocks-css' href='https://bdc2020.o0bc.com/wp-content/themes/bdc-2020/dist/css/blocks.css?ver=abad910b7fadab2ee42437f732afcc64' type='text/css' media='all' /> <link rel='stylesheet' id='molecules-css' href='https://bdc2020.o0bc.com/wp-content/themes/bdc-2020/dist/css/molecules.css?ver=d50be52b9131c76d19e52e9c1ea53d94' type='text/css' media='all' /> <link rel='stylesheet' id='organisms-css' href='https://bdc2020.o0bc.com/wp-content/themes/bdc-2020/dist/css/organisms.css?ver=36a76ec6777c776b85cb4ff9e25d27e3' type='text/css' media='all' /> <link rel='stylesheet' id='styles-css' href='https://bdc2020.o0bc.com/wp-content/themes/bdc-2020/dist/css/style.css?ver=b610b5ef488414def203249726c78463' type='text/css' media='all' /> <link rel='stylesheet' id='bdc-real-estate-css' href='https://bdc2020.o0bc.com/wp-content/themes/bdc-2020/dist/css/real-estate.css?ver=b300d7d969043b3ff84dbf12c9f98dd1' type='text/css' media='all' /> <script type="text/javascript" src="https://apps.bostonglobe.com/common/js/enter-view/enter-view-0.1.0.min.js" id="enter-view--script-js"></script> <script type="text/javascript" src="https://apps.bostonglobe.com/common/js/pym/pym-1.3.2.min.js" id="pym--script-js"></script> <script type="text/javascript" id="chartbeat_head_js-js-extra"> /* <![CDATA[ */ var chartbeat_config = {"domain":"boston.com","uid":"8544","useCanonical":"1","oneTrusActive":"1","useAB":"","authors":"","sections":"","title":"Online Gambling Content Disclaimer"}; /* ]]> */ </script> <script type="text/javascript" src="https://bdc2020.o0bc.com/wp-content/plugins/bdc-chartbeat/js/bdc.chartbeat-head.js?ver=1732639015" id="chartbeat_head_js-js"></script> <script type="text/javascript" src="//static.chartbeat.com/js/chartbeat_mab.js?ver=6.7.1" id="chartbeat_mab-js"></script> <script type="text/javascript" src="https://bdc2020.o0bc.com/wp-includes/js/jquery/jquery.min.js?ver=3.7.1" id="jquery-core-js"></script> <script type="text/javascript" id="ua-wn-js-extra"> /* <![CDATA[ */ var uaWnSettings = {"prompt":{"enabled":true,"prompt_views":2,"prompt_again_views":8}}; /* ]]> */ </script> <script type="text/plain" src="https://bdc2020.o0bc.com/wp-content/plugins/urban-airship-web-push-notifications/assets/js/notification.js?ver=1.3.4" id="ua-wn" class="optanon-category-C0003"></script><script type="text/plain" src="//cdn.blueconic.net/bostonglobemedia.js" id="blueconic_js" class="optanon-category-C0004"></script> <script type="text/plain" class="optanon-category-C0003"> !(function(o,n,t){t=o.createElement(n),o=o.getElementsByTagName(n)[0],t.async=1,t.src="https://fallaciousfifth.com/v2ojfJQXItusfVrUEda5saSZ5uxEMzujCipb6jl01lNcP_fOujjlpKPeM-wc-_90A",o.parentNode.insertBefore(t,o)})(document,"script"),(function(o,n){o[n]=o[n]||function(){(o[n].q=o[n].q||[]).push(arguments)}})(window,"admiral");!(function(c,e,o,t,n){function r(o,t){(function n(){try{return 0<(localStorage.getItem("v4ac1eiZr0")||"").split(",")[4]}catch(o){}return!1})()&&(t=c[e].pubads())&&t.setTargeting("admiral-engaged","true")}(n=c[e]=c[e]||{}).cmd=n.cmd||[],typeof n.pubads===o?r():typeof n.cmd.unshift===o?n.cmd.unshift(r):n.cmd.push(r)})(window,"googletag","function"); </script> <script type="text/javascript"> /* * This is checking if the user has opted out of analytics. * OptanonWrapper plugins/bdc-functionality/includes/BDC/Theme/OneTrustCMP.php:220 */ var ConsentOnetrust = localStorage.getItem( 'consent_one_trust_bdc' ); var CleanCreative = document.createElement( 'script' ); CleanCreative.setAttribute( 'src','//cadmus.script.ac/dz9qn8fh4jznm/script.js' ); CleanCreative.setAttribute( 'type','text/javascript' ); /* * The above code is checking if the user has given consent for the category "Marketing" * and if the user has given consent, then the script is appended to the head tag. */ if ( typeof OptanonWrapper === 'function' && ConsentOnetrust && JSON.parse( ConsentOnetrust ).C0003 === true ) { document.getElementsByTagName( 'head' )[0].appendChild( CleanCreative ); } if ( typeof OptanonWrapper !== 'function' ) { document.getElementsByTagName( 'head' )[0].appendChild( CleanCreative ); } </script> <!-- REGI ENV = PRD--><script type="text/javascript"> //Registration base URL regiBaseUrl = 'http://tomcat.boston.com/profiles/outside/REST/'; </script><link rel='manifest' href='https://www.boston.com/wp-content/themes/bdc-2020/manifest.json' /><!-- There is no amphtml version available for this URL. --> <!-- The following line must be placed in the head tag --> <script type="text/javascript" src="https://p.teads.tv/teads-fellow.js" async="true"></script> <script> if (typeof(window.bgmpGdpr) !== 'undefined' && !window.bgmpGdpr.isOptedOut()) { window.teads_e = window.teads_e || []; window.teads_adv_id = 39960;} </script> <!-- Start of global snippet: Please do not remove Place this snippet between the <head> and </head> tags on every page of your site. --> <!-- Global site tag (gtag.js) - Google Marketing Platform --> <script async src="https://www.googletagmanager.com/gtag/js?id=DC-11164343"></script> <script> const onetrustLibrary = 1; const onetrustConsent = localStorage.getItem('consent_one_trust_bdc'); window.dataLayer = window.dataLayer || []; function gtag() { dataLayer.push( arguments ); } gtag( 'js', new Date() ); /* * Setting the default consent for the user. * By default we granted */ gtag( 'consent', 'default', { 'analytics_storage': 'granted' } ); gtag( 'consent', 'default', { 'ad_storage': 'granted' } ); if ( 1 === onetrustLibrary && onetrustConsent && JSON.parse(onetrustConsent).C0002 === false ) { gtag( 'consent', 'update', { 'analytics_storage': 'denied' } ); } if ( 1 === onetrustLibrary && onetrustConsent && JSON.parse(onetrustConsent).C0004 === false ) { gtag( 'consent', 'update', { 'ads_storage': 'denied' } ); } gtag( 'config', 'DC-11164343' ); </script> <!-- End of global snippet: Please do not remove --> <link rel="icon" href="https://bdc2020.o0bc.com/wp-content/uploads/2021/05/BDC_Logo_2020_Social_WhiteBG-609c79a967eee-150x150.png" sizes="32x32" /> <link rel="icon" href="https://bdc2020.o0bc.com/wp-content/uploads/2021/05/BDC_Logo_2020_Social_WhiteBG-609c79a967eee-200x200.png" sizes="192x192" /> <link rel="apple-touch-icon" href="https://bdc2020.o0bc.com/wp-content/uploads/2021/05/BDC_Logo_2020_Social_WhiteBG-609c79a967eee-200x200.png" /> <meta name="msapplication-TileImage" content="https://bdc2020.o0bc.com/wp-content/uploads/2021/05/BDC_Logo_2020_Social_WhiteBG-609c79a967eee.png" /> <style type="text/css" id="wp-custom-css"> .m-gforms-poll-block .gpoll_button { display: none } </style> </head> <body class="page-template-default page page-id-26537964 wp-embed-responsive site-body "> <script src="https://www.boston.com/wp-content/plugins/bdc-chartbeat/js/bdc.chartbeat-body.js"></script> <!-- Begin Comscore Tag --> <script async> // Ensure _comscore is globally available window._comscore = window._comscore || []; function loadComscoreScript(bypassConsent) { var options = { enableFirstPartyCookie: true }; if (bypassConsent) { options.bypassUserConsentRequirementFor1PCookie = true; } window._comscore.push({ c1: "2", c2: "6035042", options: options }); (function() { var s = document.createElement("script"), el = document.getElementsByTagName("script")[0]; s.async = true; s.src = "https://sb.scorecardresearch.com/cs/6035042/beacon.js"; s.onerror = function() { console.error("Failed to load Comscore script."); }; el.parentNode.insertBefore(s, el); })(); } // Check consent before loading Comscore script function checkConsent() { const timeoutDuration = 7000; // Timeout duration in milliseconds (e.g., 5000ms = 5 seconds) const checkInterval = 30; // Interval duration in milliseconds (e.g., 100ms) const startTime = Date.now(); function checkValues() { var otherRegionApplies = localStorage.getItem('otherRegion'); var ccpaApplies = localStorage.getItem('ccpaApplies'); var gdprApplies = localStorage.getItem('gdprApplies'); if (otherRegionApplies === 'true') { loadComscoreScript(true); // Bypass consent if other region applies } else if (gdprApplies === 'true') { loadComscoreScript(false); // Load without bypass if GDPR applies } else if (ccpaApplies === 'true') { loadComscoreScript(false); // Load without bypass if CCPA applies } else if (Date.now() - startTime < timeoutDuration) { setTimeout(checkValues, checkInterval); // Check again after the interval } else { loadComscoreScript(true); // Bypass consent if timeout is reached } } checkValues(); } // Ensure OneTrust is loaded before checking consent function ensureOneTrustLoaded(callback) { var interval = setInterval(function() { if (typeof OneTrust !== 'undefined' && typeof OptanonWrapper !== 'undefined') { clearInterval(interval); callback(); } }, 10); // Check every 10ms // Timeout to avoid infinite loop in case OneTrust never loads setTimeout(function() { clearInterval(interval); callback(); }, 7000); // 7 seconds timeout } // Flag to ensure checkConsent is called only once var checkConsentCalled = false; ensureOneTrustLoaded(function() { if (!checkConsentCalled) { checkConsentCalled = true; checkConsent(); } }); </script> <!-- End Comscore Tag --> <!-- Facebook Pixel Code --> <script> var consent = 'grant'; /* The above code is parsing the JSON data from the local storage and storing it in a variable. */ const onetrustStorageConsent = JSON.parse(localStorage.getItem( 'consent_one_trust_bdc' ) ); if ( ( onetrustStorageConsent !== null ) ) { /* Checking to see if the user has consented to the use of cookies. * If they have not, it is deleting the cookie. * This will comment for now, until further notice. */ //if ( onetrustStorageConsent.C0002 === false ) { // document.cookie = '_fbp=;expires=Thu, 01 Jan 2010 00:00:00 UTC; path=/; domain=.boston.com'; //} /* Checking if the user has given consent for the cookie C0002. * If the user has given consent, the variable consent will be set to 'grant'. * If the user has not given consent,the variable consent will be set to 'revoke'. * Documentation https://developers.facebook.com/docs/meta-pixel/implementation/gdpr */ if ( onetrustStorageConsent.C0002 !== true ) { consent = 'revoke'; } } !function(f,b,e,v,n,t,s) {if(f.fbq)return;n=f.fbq=function(){n.callMethod? n.callMethod.apply(n,arguments):n.queue.push(arguments)}; if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0'; n.queue=[];t=b.createElement(e);t.async=!0; t.src=v;s=b.getElementsByTagName(e)[0]; s.parentNode.insertBefore(t,s)}(window, document,'script', 'https://connect.facebook.net/en_US/fbevents.js'); fbq('consent', consent); fbq('init', '989222871864976'); fbq('track', 'PageView'); </script> <noscript><img height="1" width="1" style="display:none" src="https://www.facebook.com/tr?id=989222871864976&ev=PageView&noscript=1" /></noscript> <!-- End Facebook Pixel Code --> <header class="o-site-header" id="site-header" aria-label="Site Header"> <section class="o-site-header__advert" aria-label="Leaderboard Advert"> <div id="js-advert--lead1" class="m-advert m-advert--lead1 m-advert--with-gray m-advert--header "><div class="m-advert__container"><div id="ad_lead1"><script type="type/javascript">googletag.cmd.push(function() { googletag.display("ad_lead1") })</script></div></div></div> </section> <a class="screen-reader-text" href="#site-content"> Skip to Main Content </a> <div class="o-site-header__masthead"> <div class="m-grid m-grid-container"> <div class="m-panel-menu"> <button aria-label="Toggle Panel menu" class="a-button a-button--with-icon m-panel-navigation__toggle" id="js-panel-navigation-trigger" aria-haspopup="true" aria-controls="js-panel-navigation" aria-expanded="false"> <svg class="a-icon m-panel-navigation__open" aria-hidden="true" width="19" height="15"><use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.boston.com/wp-content/themes/bdc-2020/assets/symbol-defs.svg#menu"></use><use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.boston.com/wp-content/themes/bdc-2020/assets/symbol-defs.svg#menu"></use></svg><span class="screen-reader-text">Open</span> <svg class="a-icon m-panel-navigation__close" aria-hidden="true" width="19" height="15"><use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.boston.com/wp-content/themes/bdc-2020/assets/symbol-defs.svg#close-symbol"></use><use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.boston.com/wp-content/themes/bdc-2020/assets/symbol-defs.svg#close-symbol"></use></svg><span class="screen-reader-text">Close</span> <span class="a-hide-mobile">Menu</span> </button> <nav id="js-panel-navigation" class="m-panel-navigation" aria-label="Mobile Navigation" aria-hidden="true"> <div class="m-panel-navigation__wrap" tabindex="-1"> <div class="m-panel-navigation_expose"> <ul class="a-list a-list--no-style m-panel-navigation__list"> <li class="m-panel-navigation__list-item menu-item"> <a href="https://www.boston.com"> Home </a> </li> </ul> <div class="menu-bdc-main-container"><ul id="panel-primary-nav" class="a-list a-list--no-style m-panel-navigation__menu"><li id="menu-item-22274386" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-has-children menu-item-22274386"><a href="https://www.boston.com/category/news/">News</a> <ul class="sub-menu"> <li id="menu-item-22667248" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22667248"><a href="https://www.boston.com/tag/local-news/">Local News</a></li> <li id="menu-item-22667254" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22667254"><a href="https://www.boston.com/tag/national-news/">National News</a></li> <li id="menu-item-22667253" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22667253"><a href="https://www.boston.com/tag/politics/">Politics</a></li> <li id="menu-item-22667264" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22667264"><a href="https://www.boston.com/tag/crime/">Crime</a></li> <li id="menu-item-22667276" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22667276"><a href="https://www.boston.com/tag/coronavirus/">COVID</a></li> <li id="menu-item-28992764" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-28992764"><a href="https://www.boston.com/tag/traffic/">Traffic</a></li> </ul> </li> <li id="menu-item-22274480" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-has-children menu-item-22274480"><a href="https://www.boston.com/category/sports/">Sports</a> <ul class="sub-menu"> <li id="menu-item-22497525" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22497525"><a href="https://www.boston.com/tag/boston-celtics/">Celtics</a></li> <li id="menu-item-32255017" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-32255017"><a href="https://www.boston.com/tag/jayson-tatum/">Jayson Tatum</a></li> <li id="menu-item-32255024" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-32255024"><a href="https://www.boston.com/tag/jaylen-brown/">Jaylen Brown</a></li> <li id="menu-item-22497515" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22497515"><a href="https://www.boston.com/tag/new-england-patriots/">Patriots</a></li> <li id="menu-item-22497530" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22497530"><a href="https://www.boston.com/tag/boston-bruins/">Bruins</a></li> <li id="menu-item-22497520" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22497520"><a href="https://www.boston.com/tag/boston-red-sox/">Red Sox</a></li> <li id="menu-item-22672278" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22672278"><a href="https://www.boston.com/tag/new-england-revolution/">Revs</a></li> <li id="menu-item-22360533" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-22360533"><a href="https://www.boston.com/author/chad-finn/">Chad Finn</a></li> </ul> </li> <li id="menu-item-22359876" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-has-children menu-item-22359876"><a href="https://www.boston.com/category/weather/">Weather</a> <ul class="sub-menu"> <li id="menu-item-23008219" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-23008219"><a href="https://www.boston.com/tag/weather-maps/">Maps</a></li> <li id="menu-item-23008224" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-23008224"><a href="https://www.boston.com/tag/storms/">Storms</a></li> <li id="menu-item-23008199" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-23008199"><a href="https://www.boston.com/tag/climate-change/">Climate Change</a></li> <li id="menu-item-23008255" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-23008255"><a href="https://www.boston.com/tag/snow/">Snow</a></li> <li id="menu-item-22360741" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-22360741"><a href="https://www.boston.com/author/david-epstein/">David Epstein</a></li> </ul> </li> <li id="menu-item-25890194" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-has-children menu-item-25890194"><a href="https://www.boston.com/category/real-estate/">Real Estate</a> <ul class="sub-menu"> <li id="menu-item-25890218" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-25890218"><a href="https://www.boston.com/tag/home-improvement/">Reno</a></li> <li id="menu-item-25890221" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-25890221"><a href="https://www.boston.com/tag/new-developments/">Developments</a></li> <li id="menu-item-25890196" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-25890196"><a href="https://www.boston.com/tag/real-estate-news/">News</a></li> <li id="menu-item-25890197" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-25890197"><a href="https://www.boston.com/tag/home-buying/">Buying</a></li> <li id="menu-item-25890200" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-25890200"><a href="https://www.boston.com/tag/open-houses/">Open Houses</a></li> <li id="menu-item-25890207" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-25890207"><a href="https://www.boston.com/tag/renting/">Renting</a></li> <li id="menu-item-25890215" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-25890215"><a href="https://www.boston.com/tag/luxury-homes/">Luxury</a></li> </ul> </li> <li id="menu-item-22274495" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-has-children menu-item-22274495"><a href="https://www.boston.com/category/food/">Food</a> <ul class="sub-menu"> <li id="menu-item-22672249" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22672249"><a href="https://www.boston.com/tag/restaurants/">Restaurants</a></li> <li id="menu-item-22672303" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22672303"><a href="https://www.boston.com/tag/food-news/">News</a></li> <li id="menu-item-22672295" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22672295"><a href="https://www.boston.com/tag/restaurant-reviews/">Reviews</a></li> <li id="menu-item-22672298" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22672298"><a href="https://www.boston.com/tag/food-events/">Events</a></li> <li id="menu-item-22672251" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22672251"><a href="https://www.boston.com/tag/breweries-bars/">Breweries & Bars</a></li> <li id="menu-item-22672285" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22672285"><a href="https://www.boston.com/tag/restaurant-closings/">Closings</a></li> <li id="menu-item-22672290" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22672290"><a href="https://www.boston.com/tag/restaurant-openings/">Openings</a></li> <li id="menu-item-32256222" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-32256222"><a href="https://www.boston.com/newsletters-food-restaurants-bars/">Sign up for The Dish 🍽️</a></li> </ul> </li> <li id="menu-item-28296783" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-has-children menu-item-28296783"><a href="https://www.boston.com/category/love-letters/">Love Letters</a> <ul class="sub-menu"> <li id="menu-item-28296788" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-28296788"><a href="https://www.boston.com/latest-love-letter">Latest Post</a></li> <li id="menu-item-28297436" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-28297436"><a href="https://www.boston.com/question-for-meredith/">Send Letter</a></li> <li id="menu-item-28297426" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-28297426"><a href="https://www.boston.com/meredith-goldstein/">About</a></li> <li id="menu-item-28297421" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-28297421"><a href="https://www.boston.com/love-letters-podcast/">Podcast</a></li> <li id="menu-item-28297431" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-28297431"><a href="https://www.boston.com/cant-help-myself/">Book</a></li> </ul> </li> <li id="menu-item-22274485" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-has-children menu-item-22274485"><a href="https://www.boston.com/category/culture/">Culture</a> <ul class="sub-menu"> <li id="menu-item-22672218" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22672218"><a href="https://www.boston.com/tag/arts/">Arts</a></li> <li id="menu-item-22672229" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22672229"><a href="https://www.boston.com/tag/entertainment/">Entertainment</a></li> <li id="menu-item-22672234" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22672234"><a href="https://www.boston.com/tag/movies/">Movies</a></li> <li id="menu-item-22672235" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22672235"><a href="https://www.boston.com/tag/tv/">TV</a></li> <li id="menu-item-24669784" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-24669784"><a href="https://www.boston.com/tag/streaming/">Streaming</a></li> <li id="menu-item-22672238" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22672238"><a href="https://www.boston.com/tag/celebs/">Celebs</a></li> <li id="menu-item-22672241" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22672241"><a href="https://www.boston.com/tag/music/">Music</a></li> </ul> </li> <li id="menu-item-30874078" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-has-children menu-item-30874078"><a href="https://www.boston.com/category/things-to-do/">Things To Do</a> <ul class="sub-menu"> <li id="menu-item-31587664" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-31587664"><a href="https://www.boston.com/newsletters-things-to-do/">Newsletter</a></li> </ul> </li> <li id="menu-item-22360356" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-has-children menu-item-22360356"><a href="https://www.boston.com/category/travel/">Travel</a> <ul class="sub-menu"> <li id="menu-item-22993850" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22993850"><a href="https://www.boston.com/tag/visiting-boston/">Visiting Boston</a></li> <li id="menu-item-24976055" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-24976055"><a href="https://www.boston.com/tag/cape-cod-travel/">Cape Cod</a></li> <li id="menu-item-22672269" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22672269"><a href="https://www.boston.com/tag/new-england-travel/">New England</a></li> <li id="menu-item-24976054" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-24976054"><a href="https://www.boston.com/tag/flights/">Flights</a></li> <li id="menu-item-24676057" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-24676057"><a href="https://www.boston.com/tag/outdoors/">Outdoors</a></li> <li id="menu-item-28323763" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-28323763"><a href="https://www.boston.com/tag/skiing/">Skiing</a></li> <li id="menu-item-32256227" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-32256227"><a href="https://www.boston.com/newsletters-scenic-six/">Sign up for Scenic Six</a></li> </ul> </li> <li id="menu-item-24270121" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-has-children menu-item-24270121"><a href="https://www.boston.com/category/community/">Community</a> <ul class="sub-menu"> <li id="menu-item-24063234" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-24063234"><a href="https://www.boston.com/tag/tell-us/">Tell Us</a></li> <li id="menu-item-28204065" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-28204065"><a href="https://www.boston.com/tag/neighborhoods/">Neighborhoods</a></li> <li id="menu-item-24063232" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-24063232"><a href="https://www.boston.com/tag/readers-say/">Readers Say</a></li> <li id="menu-item-24063239" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-24063239"><a href="https://www.boston.com/tag/book-club/">Book Club</a></li> <li id="menu-item-28991660" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-28991660"><a href="https://www.boston.com/tag/wickedpedia/">Wickedpedia</a></li> <li id="menu-item-26377957" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-26377957"><a href="https://www.boston.com/tag/the-b-side/">The B-Side</a></li> <li id="menu-item-24063244" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-24063244"><a href="https://www.boston.com/tag/cocktail-club/">Cocktail Club</a></li> </ul> </li> <li id="menu-item-22360995" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-home menu-item-has-children menu-item-22360995 menu-item-hamburger-only"><a href="https://www.boston.com/">Extra</a> <ul class="sub-menu"> <li id="menu-item-22361025" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-22361025 menu-item-hamburger-only"><a href="https://www.boston.com/customer-support/">Customer Support</a></li> <li id="menu-item-22360999" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-22360999 menu-item-hamburger-only"><a href="https://www.bostonglobemedia.com/">Advertise</a></li> <li id="menu-item-22361010" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-22361010 menu-item-hamburger-only"><a href="https://advertising.bostonglobemedia.com/">Classified Ads</a></li> <li id="menu-item-22361055" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-22361055 menu-item-hamburger-only"><a href="https://bostonglobemediapartners.applytojob.com/apply">Careers</a></li> <li id="menu-item-22361026" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-22361026 menu-item-hamburger-only"><a href="https://www.boston.com/contact-us/">Contact Us</a></li> <li id="menu-item-22361019" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-22361019 menu-item-hamburger-only"><a href="https://www.legacy.com/obituaries/bostonglobe/">Obituaries</a></li> <li id="menu-item-28173757" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-28173757"><a href="https://www.boston.com/newsletter-signup/">Newsletters</a></li> <li id="menu-item-25927243" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-25927243"><a href="/tag/massachusetts-lottery/">Mass. Lottery</a></li> <li id="menu-item-25927251" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-25927251"><a href="https://www.boston.com/tag/powerball/">Powerball</a></li> <li id="menu-item-25927254" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-25927254"><a href="https://www.boston.com/tag/mega-millions/">Mega Millions</a></li> <li id="menu-item-22361035" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-22361035 menu-item-hamburger-only"><a href="https://www.boston.com/horoscope/">Horoscopes</a></li> <li id="menu-item-22361043" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-22361043 menu-item-hamburger-only"><a href="https://www.boston.com/comics/">Comics</a></li> <li id="menu-item-22361045" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-22361045 menu-item-hamburger-only"><a href="https://www.boston.com/today-in-history/">Today in History</a></li> <li id="menu-item-22360996" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-22360996 menu-item-hamburger-only"><a href="https://www.boston.com/fresh-start-submit-your-appeal/">Fresh Start</a></li> </ul> </li> <li id="menu-item-31235133" class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-31235133 menu-item-hamburger-only"><a href="https://www.boston.com/tag/weddings/">Weddings</a></li> <li id="menu-item-25195153" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-has-children menu-item-25195153"><a href="https://www.boston.com/category/cars/">Cars</a> <ul class="sub-menu"> <li id="menu-item-25195157" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-25195157"><a href="https://www.boston.com/new-car-specials/">New Car Specials</a></li> </ul> </li> <li id="menu-item-24512309" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-24512309 menu-item-hamburger-only"><a href="https://games.boston.com/">Games</a></li> </ul></div> </div> </div> </nav> <div class="m-panel-overlay"></div> </div> <div id="site-logo" class="m-site-logo"> <a class="m-site-logo__link" href="https://www.boston.com"> <span class="screen-reader-text">Boston.com</span> <img width="133" height="39" src="https://www.boston.com/wp-content/themes/bdc-2020/dist/images/boston-com-logo.png" aria-hidden="true" alt="" /> </a> </div> <nav class="m-secondary-menu" aria-label="Utility Navigation" id="utility-navigation"> <ul class="m-secondary-menu__list a-list--no-style"> <li class="m-header-search"> <button id="js-search-button" aria-controls="header-search-form" aria-expanded="false" aria-haspopup="true" class="a-button a-button--icon a-button--icon-svg" type="button"> <svg class="a-icon" aria-hidden="true" width="20" height="20"><use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.boston.com/wp-content/themes/bdc-2020/assets/symbol-defs.svg#search"></use><use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.boston.com/wp-content/themes/bdc-2020/assets/symbol-defs.svg#search"></use></svg> <svg class="a-icon a-icon--close" aria-hidden="true" width="20" height="20"><use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.boston.com/wp-content/themes/bdc-2020/assets/symbol-defs.svg#close"></use><use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.boston.com/wp-content/themes/bdc-2020/assets/symbol-defs.svg#close"></use></svg> <span class="screen-reader-text">Search</span> </button> <div id="js-search-form" class="m-header-search__form" aria-hidden="true"> <form role="search" id="searchform--header" class="m-search-form m-search-form--header" method="get" action="https://www.boston.com/"> <label for="search-field-search-form-1" class="screen-reader-text m-search-form__label"> Search for: </label> <input class="m-search-form__input" type="text" id="search-field-search-form-1" value="" placeholder="Search Boston.com" name="s" /> <button class="m-search-form__button" tabindex="-1" type="submit" aria-label="Submit"> <svg class="a-icon a-icon--no-action" aria-hidden="true" width="20" height="20"><use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.boston.com/wp-content/themes/bdc-2020/assets/symbol-defs.svg#search"></use><use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.boston.com/wp-content/themes/bdc-2020/assets/symbol-defs.svg#search"></use></svg><span class="screen-reader-text">Search Boston.com</span> </button> </form> </div> </li> </ul> </nav> </div> </div> <div class="o-site-header__menu"> <div class="m-grid-container m-grid-container-inline"> <nav aria-label="Main Site Navigation" class="m-site-navigation m-site-navigation--left" id="site-navigation" itemscope itemtype="https://schema.org/SiteNavigationElement"> <div class="menu-bdc-main-container"><ul id="menu-bdc-main" class="m-primary-menu a-list--no-style"><li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-has-children menu-item-22274386"><a href="https://www.boston.com/category/news/">News</a> <ul class="sub-menu"> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22667248"><a href="https://www.boston.com/tag/local-news/">Local News</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22667254"><a href="https://www.boston.com/tag/national-news/">National News</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22667253"><a href="https://www.boston.com/tag/politics/">Politics</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22667264"><a href="https://www.boston.com/tag/crime/">Crime</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22667276"><a href="https://www.boston.com/tag/coronavirus/">COVID</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-28992764"><a href="https://www.boston.com/tag/traffic/">Traffic</a></li> </ul> </li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-has-children menu-item-22274480"><a href="https://www.boston.com/category/sports/">Sports</a> <ul class="sub-menu"> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22497525"><a href="https://www.boston.com/tag/boston-celtics/">Celtics</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-32255017"><a href="https://www.boston.com/tag/jayson-tatum/">Jayson Tatum</a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-32255024"><a href="https://www.boston.com/tag/jaylen-brown/">Jaylen Brown</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22497515"><a href="https://www.boston.com/tag/new-england-patriots/">Patriots</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22497530"><a href="https://www.boston.com/tag/boston-bruins/">Bruins</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22497520"><a href="https://www.boston.com/tag/boston-red-sox/">Red Sox</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22672278"><a href="https://www.boston.com/tag/new-england-revolution/">Revs</a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-22360533"><a href="https://www.boston.com/author/chad-finn/">Chad Finn</a></li> </ul> </li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-has-children menu-item-22359876"><a href="https://www.boston.com/category/weather/">Weather</a> <ul class="sub-menu"> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-23008219"><a href="https://www.boston.com/tag/weather-maps/">Maps</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-23008224"><a href="https://www.boston.com/tag/storms/">Storms</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-23008199"><a href="https://www.boston.com/tag/climate-change/">Climate Change</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-23008255"><a href="https://www.boston.com/tag/snow/">Snow</a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-22360741"><a href="https://www.boston.com/author/david-epstein/">David Epstein</a></li> </ul> </li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-has-children menu-item-25890194"><a href="https://www.boston.com/category/real-estate/">Real Estate</a> <ul class="sub-menu"> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-25890218"><a href="https://www.boston.com/tag/home-improvement/">Reno</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-25890221"><a href="https://www.boston.com/tag/new-developments/">Developments</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-25890196"><a href="https://www.boston.com/tag/real-estate-news/">News</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-25890197"><a href="https://www.boston.com/tag/home-buying/">Buying</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-25890200"><a href="https://www.boston.com/tag/open-houses/">Open Houses</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-25890207"><a href="https://www.boston.com/tag/renting/">Renting</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-25890215"><a href="https://www.boston.com/tag/luxury-homes/">Luxury</a></li> </ul> </li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-has-children menu-item-22274495"><a href="https://www.boston.com/category/food/">Food</a> <ul class="sub-menu"> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22672249"><a href="https://www.boston.com/tag/restaurants/">Restaurants</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22672303"><a href="https://www.boston.com/tag/food-news/">News</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22672295"><a href="https://www.boston.com/tag/restaurant-reviews/">Reviews</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22672298"><a href="https://www.boston.com/tag/food-events/">Events</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22672251"><a href="https://www.boston.com/tag/breweries-bars/">Breweries & Bars</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22672285"><a href="https://www.boston.com/tag/restaurant-closings/">Closings</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22672290"><a href="https://www.boston.com/tag/restaurant-openings/">Openings</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-32256222"><a href="https://www.boston.com/newsletters-food-restaurants-bars/">Sign up for The Dish 🍽️</a></li> </ul> </li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-has-children menu-item-28296783"><a href="https://www.boston.com/category/love-letters/">Love Letters</a> <ul class="sub-menu"> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-28296788"><a href="https://www.boston.com/latest-love-letter">Latest Post</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-28297436"><a href="https://www.boston.com/question-for-meredith/">Send Letter</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-28297426"><a href="https://www.boston.com/meredith-goldstein/">About</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-28297421"><a href="https://www.boston.com/love-letters-podcast/">Podcast</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-28297431"><a href="https://www.boston.com/cant-help-myself/">Book</a></li> </ul> </li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-has-children menu-item-22274485"><a href="https://www.boston.com/category/culture/">Culture</a> <ul class="sub-menu"> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22672218"><a href="https://www.boston.com/tag/arts/">Arts</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22672229"><a href="https://www.boston.com/tag/entertainment/">Entertainment</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22672234"><a href="https://www.boston.com/tag/movies/">Movies</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22672235"><a href="https://www.boston.com/tag/tv/">TV</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-24669784"><a href="https://www.boston.com/tag/streaming/">Streaming</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22672238"><a href="https://www.boston.com/tag/celebs/">Celebs</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22672241"><a href="https://www.boston.com/tag/music/">Music</a></li> </ul> </li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-has-children menu-item-30874078"><a href="https://www.boston.com/category/things-to-do/">Things To Do</a> <ul class="sub-menu"> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-31587664"><a href="https://www.boston.com/newsletters-things-to-do/">Newsletter</a></li> </ul> </li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-has-children menu-item-22360356"><a href="https://www.boston.com/category/travel/">Travel</a> <ul class="sub-menu"> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22993850"><a href="https://www.boston.com/tag/visiting-boston/">Visiting Boston</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-24976055"><a href="https://www.boston.com/tag/cape-cod-travel/">Cape Cod</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-22672269"><a href="https://www.boston.com/tag/new-england-travel/">New England</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-24976054"><a href="https://www.boston.com/tag/flights/">Flights</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-24676057"><a href="https://www.boston.com/tag/outdoors/">Outdoors</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-28323763"><a href="https://www.boston.com/tag/skiing/">Skiing</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-32256227"><a href="https://www.boston.com/newsletters-scenic-six/">Sign up for Scenic Six</a></li> </ul> </li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-has-children menu-item-24270121"><a href="https://www.boston.com/category/community/">Community</a> <ul class="sub-menu"> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-24063234"><a href="https://www.boston.com/tag/tell-us/">Tell Us</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-28204065"><a href="https://www.boston.com/tag/neighborhoods/">Neighborhoods</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-24063232"><a href="https://www.boston.com/tag/readers-say/">Readers Say</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-24063239"><a href="https://www.boston.com/tag/book-club/">Book Club</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-28991660"><a href="https://www.boston.com/tag/wickedpedia/">Wickedpedia</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-26377957"><a href="https://www.boston.com/tag/the-b-side/">The B-Side</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-24063244"><a href="https://www.boston.com/tag/cocktail-club/">Cocktail Club</a></li> </ul> </li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-home menu-item-has-children menu-item-22360995 menu-item-hamburger-only"><a href="https://www.boston.com/">Extra</a> <ul class="sub-menu"> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-22361025 menu-item-hamburger-only"><a href="https://www.boston.com/customer-support/">Customer Support</a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-22360999 menu-item-hamburger-only"><a href="https://www.bostonglobemedia.com/">Advertise</a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-22361010 menu-item-hamburger-only"><a href="https://advertising.bostonglobemedia.com/">Classified Ads</a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-22361055 menu-item-hamburger-only"><a href="https://bostonglobemediapartners.applytojob.com/apply">Careers</a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-22361026 menu-item-hamburger-only"><a href="https://www.boston.com/contact-us/">Contact Us</a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-22361019 menu-item-hamburger-only"><a href="https://www.legacy.com/obituaries/bostonglobe/">Obituaries</a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-28173757"><a href="https://www.boston.com/newsletter-signup/">Newsletters</a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-25927243"><a href="/tag/massachusetts-lottery/">Mass. Lottery</a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-25927251"><a href="https://www.boston.com/tag/powerball/">Powerball</a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-25927254"><a href="https://www.boston.com/tag/mega-millions/">Mega Millions</a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-22361035 menu-item-hamburger-only"><a href="https://www.boston.com/horoscope/">Horoscopes</a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-22361043 menu-item-hamburger-only"><a href="https://www.boston.com/comics/">Comics</a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-22361045 menu-item-hamburger-only"><a href="https://www.boston.com/today-in-history/">Today in History</a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-22360996 menu-item-hamburger-only"><a href="https://www.boston.com/fresh-start-submit-your-appeal/">Fresh Start</a></li> </ul> </li> <li class="menu-item menu-item-type-taxonomy menu-item-object-post_tag menu-item-31235133 menu-item-hamburger-only"><a href="https://www.boston.com/tag/weddings/">Weddings</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-has-children menu-item-25195153"><a href="https://www.boston.com/category/cars/">Cars</a> <ul class="sub-menu"> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-25195157"><a href="https://www.boston.com/new-car-specials/">New Car Specials</a></li> </ul> </li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-24512309 menu-item-hamburger-only"><a href="https://games.boston.com/">Games</a></li> </ul></div> </nav> <nav aria-label="Trending Navigation" class="m-site-navigation m-site-navigation--right m-site-navigation--trending" id="trending-navigation" itemscope itemtype="https://schema.org/SiteNavigationElement"> <div class="menu-bdc-trending-container"><ul id="menu-bdc-trending" class="m-primary-menu m-primary-menu--trending a-list--no-style"><li id="menu-item-29648242" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-29648242"><a href="https://www.boston.com/weather/weather/2024/11/26/boston-meterologists-thanksgiving-rain-snow-forecast/">Thanksgiving storm</a></li> <li id="menu-item-29838788" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-29838788"><a href="https://www.boston.com/tag/new-england-patriots/">Patriots</a></li> <li id="menu-item-32299117" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-32299117"><a href="https://www.boston.com/culture/movie-reviews/2024/11/21/wicked-movie-review-2024/">‘Wicked’ review</a></li> </ul></div> </nav> </div> </div> </header> <main class="t-main" id="site-content" aria-label="Main Site Content"> <div class="m-grid-container t-layout t-layout--is-single t-layout--with-sidebar"> <section class="t-layout__main"> <article class="content-well content-well--article" role="main"> <header class="m-article-header"> <h1 class="m-article-header__headline"> Online Gambling Content Disclaimer </h1> </header> <p>This policy was last updated on <strong>December 15, 2022</strong></p> <p></p> <p>The following Online Gambling Content Disclaimer (the “Disclaimer”), together with our <a href="https://www.boston.com/terms-of-service/">Terms of Use</a> and <a href="https://www.boston.com/privacy-policy/">Privacy Policy</a> (each incorporated herein), collectively apply to your use of this web site and any web site owned by Boston Globe Media Partners, LLC (as defined below) (including, without limitation, www.bostonglobe.com and www.boston.com) (each a “Web Site”) and our mobile application(s) (the “Application”) (the Application and Web Site are collectively referred to herein as the “Platform”). In particular, this Disclaimer also applies to and governs your access to, and use of, any information, content, advertising materials, or educational materials relating to online gambling or online sports betting on any combination of this Web Site, the Application, or the Platform (the “Gaming Content”). In this Disclaimer, “Boston Globe Media Partners” means Boston Globe Media Partners, LLC, including its affiliates and subsidiaries. In this Disclaimer, “you” or “your” means any end-user of any combination of this Web Site, the Application, or the Platform, regardless of whether or not any such end-user is an individual person or legal entity. You acknowledge and agree that online sports betting is recognized as a form of online gambling in many jurisdictions.</p> <p>Please read this Disclaimer as well as the <a href="https://www.boston.com/terms-of-service/">Terms of Use</a> and <a href="https://www.boston.com/privacy-policy/">Privacy Policy</a> carefully. If you do not agree to this Disclaimer or the Terms of Use or Privacy Policy, please exit this Web Site, the Application, and the Platform, and any Web Site affiliated with the Platform, and discontinue your further use of each of them. Access to this Disclaimer is available to all end-users (including you) via an obvious and conspicuous link of the Web Site, Application, or the Platform that displays or features Gaming Content.</p> <p>Any access to this Web Site, the Application, or the Platform constitutes your express acknowledgement of, and acceptance to, this Disclaimer. Any and all access to and use of this Web Site, the Application, or the Platform (including any access to, or use of, the Gaming Content) is at your sole discretion, option, and risk. All Gaming Content contained on or made available via any combination of this Web Site, the Application, or the Platform is for news, entertainment, educational, informational, and/or advertising purposes only. Any of your access to, or use of, the Gaming Content, this Website, the Application, or the Platform in violation of local, state, federal, tribal, provincial, or national law or regulation is strictly prohibited. There is nothing contained in the Gaming Content, this Website, the Application, or the Platform that constitutes any guarantee of winning any online gambling or online sports betting bet or wager that you may undertake, nor is there any intention to induce you or any other person into engaging in any gambling or sports betting activities or violating any local, tribal, state, federal, provincial or national law or regulation. Recognizing that the laws and regulations involving online gambling and online sports betting are different everywhere, you expressly acknowledge and agree that it is your sole responsibility and obligation to ensure that any online gambling or sports betting activities that you undertake are legal in your relevant jurisdiction. You are expressly advised to check the applicable laws and regulations in your own relevant jurisdiction to understand the legality of any online gambling or online sports betting activities that you may undertake. Furthermore, it is your sole responsibility to ensure that you meet all age and other legal and regulatory requirements prior to registering an account with any online gambling or online sports betting operator referenced in the Gaming Content or on this Web Site, the Application, or the Platform. Boston Globe Media Partners does not endorse or promote any form of wagering or gambling. Please note that all forms of online gambling and sports betting carry with them a certain degree of financial risk. You should be aware of this risk and govern yourself accordingly. Moreover, you should exercise responsibility when engaging in any online gambling or online sports betting activities. </p> <p>Boston Globe Media Partners is not a gambling operator or sports betting operator or a gambling site of any kind, and none of its affiliates or subsidiaries constitute gambling operators or sports betting operators. Boston Globe Media Partners (including its affiliates and subsidiaries) operates independently from any gambling operator’s or sports betting operator’s control. Although Gaming Content on this Web Site, the Application, or the Platform may feature or link to other websites where end-users (including you) may be able to place online bets and wagers, this Web Site, the Application, and the Platform do not offer or provide real currency gambling services of any kind. This Web Site, the Application, the Platform, and Boston Globe Media Partners do not contain any non-public information or inside information about any online gambling or online sports betting activities that you may undertake. However, this does not prohibit or limit Boston Globe Media Partners in any way from receiving compensation in certain circumstances for the Gaming Content accessible via any combination of this Web Site, the Application, or the Platform. Boston Globe Media Partners may receive payments in connection with Gaming Content related advertising on this Web Site, the Application, and the Platform.</p> <p>Boston Globe Media Partners takes commercially reasonable efforts to ensure that all Gaming Content available on this Website, the Application, or the Platform is accurate at the time of publication, but Boston Globe Media Partners does not explicitly implicitly guarantee the completeness, correctness, timeliness, or perpetuation of the subject matter provided, nor that any errors or omissions will be corrected, deleted, or otherwise made fit for their purposes. Circumstances change, and this Web Site, the Application, or the Platform has no control over any other websites or sources referenced by, or externally linked to in, the Gaming Content. Any advice or information provided on this Web Site, the Application, or the Platform that relates to the Gaming Content should not be considered as legal or professional advice in any way.</p> <p>YOU ACKNOWLEDGE AND AGREE THAT THE GAMING CONTENT IS PROVIDED “AS IS” AND THAT BOSTON GLOBE MEDIA PARTNERS EXPRESSLY DISCLAIMES ANY REPRESENTATIONS OR WARRANTIES OF ANY KIND WITH RESPECT TO THE GAMING CONTENT, EXPRESS OR IMPLIED, WHETHER ORAL OR WRITTEN, INCLUDING WITHOUT LIMITATION, THE WARRANTIES OF MERCHANTIBILITY, FITNESS FOR A PARTICULAR PURPOSE, ACCURACY, SUITABILITY, QUALITY, TTLE, AND NON-INFRINGEMENT. BY ACCESSING ANY GAMING CONTENT OR THIS WEBSITE, THE APPLICATION, OR THE PLATFORM, YOU EXPRESSLY ACKNOWLEDGE AND AGREE THAT BOSTON GLOBE MEDIA PARTNERS SHALL NOT BE LIABLE TO YOU OR ANY THIRD PARTY FOR ANY LOSSES, DAMAGES, CLAIMS, SUITS, COSTS OR EXPENSES (INCLUDING REASONABLE ATTORNEYS’ FEES) OF ANY KIND ARISING OUT OF OR IN CONNECTION WITH YOUR USE OF THE GAMING CONTENT, INCLUDING, WITHOUT LIMITATION, ANY LOST PROFITS OR DIRECT, INDIRECT, INCIDENTAL, SPECIAL, PUNATIVE, OR CONSEQUENTIAL DAMAGES, REGARDLESS OF WHETHER BOSTON GLOBE MEDIA PARTNERS HAS BEEN NOTIFIED IN ADVANCE THAT ANY SUCH DAMAGES OR LOSSES WOULD OCCUR.</p> <p>This Web Site, the Application, or the Platform may contain content submitted by its end-users that does not reflect the official opinions of MediaNews Group or its licensors or business partners. Boston Globe Media Partners reserves the right to edit, remove, or modify any content (including, without limitation, the Gaming Content) on this Web Site, the Application, or the Platform at any time at its sole discretion, as well as amending this Disclaimer at any time without prior notice to you.</p> <p>Boston Globe Media Partners maintains no responsibility for customer service issues that are particular to any gambling operator, or online gambling or sports betting information or activities, that are referenced in the Gaming Content. Moreover, Boston Globe Media Partners does not serve as a clearinghouse for specific customer complaints relating to such matters. You are advised to directly contact the relevant gambling operators and gaming establishments using the contact information that has been provided to you by them in connection with any such inquires or matters that you may have.</p> </article> </section> <div class="t-layout__sidebar"> <div class="m-widget"> <div class="m-advert m-advert--sidebar m-advert--600"> <div class="m-content-advert-wrap"> <div id="js-advert--sectionfront1" class="m-advert m-advert--sectionfront1 "><div class="m-advert__container"><div id="ad_sectionfront1"><script type="type/javascript">googletag.cmd.push(function() { googletag.display("ad_sectionfront1") })</script></div></div></div> </div> </div> </div> <div class="m-widget"> <div id="most-popular-posts" class="m-widget m-numbered-post-list"> <header class="m-numbered-post-list__header"> <h3 class="m-numbered-post-list__header-title"> Most Popular </h3> </header> <div class="m-numbered-post-list__posts"> <article id="m-numbered-post-list-1" class="m-numbered-post-list__post"> <a aria-label="'Morning Joe' hosts grapple with aftermath of Trump meeting" class="m-numbered-post-list__link" href="https://www.boston.com/news/media/2024/11/26/at-the-crossroads-of-news-and-opinion-morning-joe-hosts-grapple-with-aftermath-of-trump-meeting/"> <div class="m-numbered-post-list__image" data-count="1"> <img alt="'Morning Joe' hosts grapple with aftermath of Trump meeting" height="95" loading="lazy" src="//bdc2020.o0bc.com/wp-content/uploads/2024/11/Media_Morning_Joes_Woes_14726-67467310c1303-768x432.jpg?width=190" width="95"/> </div> <div class="m-numbered-post-list__pseudo-link-container"> <span class="m-numbered-post-list__pseudo-link" > 'Morning Joe' hosts grapple with aftermath of Trump meeting </span> </div> </a> </article> <article id="m-numbered-post-list-2" class="m-numbered-post-list__post"> <a aria-label="Boston serial sex offender attacks court officers during sentencing" class="m-numbered-post-list__link" href="https://www.boston.com/news/local-news/2024/11/26/boston-serial-sex-offender-attacks-court-officers-during-sentencing-on-21-charges/"> <div class="m-numbered-post-list__image" data-count="2"> <img alt="Boston serial sex offender attacks court officers during sentencing" height="95" loading="lazy" src="//boston.com/wp-content/uploads/2023/02/https___arcmigration-prdweb.bostonglobe.com_r_Boston_2011-2020_2019_06_04_BostonGlobe.com_Regional_Images_PlusNoConsent-63f53b05da2a8-scaled.jpeg?width=190" width="95"/> </div> <div class="m-numbered-post-list__pseudo-link-container"> <span class="m-numbered-post-list__pseudo-link" > Boston serial sex offender attacks court officers during sentencing </span> </div> </a> </article> <article id="m-numbered-post-list-3" class="m-numbered-post-list__post"> <a aria-label="MLB insider: Red Sox ‘stepping up efforts’ for Juan Soto" class="m-numbered-post-list__link" href="https://www.boston.com/sports/boston-red-sox/2024/11/26/mlb-insider-red-sox-stepping-up-efforts-in-juan-soto-sweepstakes/"> <div class="m-numbered-post-list__image" data-count="3"> <img alt="MLB insider: Red Sox ‘stepping up efforts’ for Juan Soto" height="95" loading="lazy" src="//bdc2020.o0bc.com/wp-content/uploads/2024/11/AZT34MLRZQZALWEY74FCXFNRJE-674684e3332ab-768x432.jpg?width=190" width="95"/> </div> <div class="m-numbered-post-list__pseudo-link-container"> <span class="m-numbered-post-list__pseudo-link" > MLB insider: Red Sox ‘stepping up efforts’ for Juan Soto </span> </div> </a> </article> <article id="m-numbered-post-list-4" class="m-numbered-post-list__post"> <a aria-label="CDC contacted after 2 flights arriving at Logan report ill passengers" class="m-numbered-post-list__link" href="https://www.boston.com/news/travel/2024/11/25/cdc-contacted-after-two-flights-arriving-at-boston-logan-international-airport-reported-ill-passengers/"> <div class="m-numbered-post-list__image" data-count="4"> <img alt="CDC contacted after 2 flights arriving at Logan report ill passengers" height="95" loading="lazy" src="//bdc2020.o0bc.com/wp-content/uploads/2024/11/Tech_Outage_Airlines_36381-6744cd55aaa38-768x432.jpg?width=190" width="95"/> </div> <div class="m-numbered-post-list__pseudo-link-container"> <span class="m-numbered-post-list__pseudo-link" > CDC contacted after 2 flights arriving at Logan report ill passengers </span> </div> </a> </article> <article id="m-numbered-post-list-5" class="m-numbered-post-list__post"> <a aria-label="Watch: Karen Read returns to court for motions hearing" class="m-numbered-post-list__link" href="https://www.boston.com/news/crime/2024/11/26/karen-read-case-motions-hearing-livestream-november-26/"> <div class="m-numbered-post-list__image" data-count="5"> <img alt="Watch: Karen Read returns to court for motions hearing" height="95" loading="lazy" src="//bdc2020.o0bc.com/wp-content/uploads/2024/11/Officer_Killed_Girlfriend_Trial_42722-6746209f6b39a-768x432.jpg?width=190" width="95"/> </div> <div class="m-numbered-post-list__pseudo-link-container"> <span class="m-numbered-post-list__pseudo-link" > Watch: Karen Read returns to court for motions hearing </span> </div> </a> </article> </div> </div> </div> <div class="m-widget"> <div class="m-advert m-advert--sidebar"> <div class="m-content-advert-wrap"> <div id="js-advert--sectionfront2" class="m-advert m-advert--sectionfront2 m-advert--sticky"><div class="m-advert__container"><div id="ad_sectionfront2"><script type="type/javascript">googletag.cmd.push(function() { googletag.display("ad_sectionfront2") })</script></div></div></div> </div> </div> </div> </div> </div> <!-- Page Content --> </main> <footer id="site-footer" class="o-site-footer" aria-label="Site Footer"> <div class="m-grid-container"> <section class="o-site-footer__meta m-grid"> <div class="o-site-footer__social m-grid-span-4"> <ul class="a-list--no-style m-social-share m-social-share--block m-social-share--footer"> <li class="m-social-share__item"> <a href="https://www.instagram.com/boston/" class="m-social-share__link" rel="nopenner noreferrer" target="_blank"> <svg class="a-icon a-icon--social" aria-hidden="true" width="21" height="17"><use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.boston.com/wp-content/themes/bdc-2020/assets/symbol-defs.svg#instagram-white"></use><use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.boston.com/wp-content/themes/bdc-2020/assets/symbol-defs.svg#instagram-white"></use></svg><span class="screen-reader-text">Follow Boston.com on Instagram (Opens in a New Tab)</span> </a> </li> <li class="m-social-share__item"> <a href="https://twitter.com/intent/user?screen_name=BostonDotCom" class="m-social-share__link" rel="nopenner noreferrer" target="_blank"> <svg class="a-icon a-icon--social" aria-hidden="true" width="21" height="17"><use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.boston.com/wp-content/themes/bdc-2020/assets/symbol-defs.svg#twitter-white"></use><use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.boston.com/wp-content/themes/bdc-2020/assets/symbol-defs.svg#twitter-white"></use></svg><span class="screen-reader-text">Follow Boston.com on Twitter (Opens in a New Tab)</span> </a> </li> <li class="m-social-share__item"> <a href="https://www.facebook.com/boston" class="m-social-share__link" rel="nopenner noreferrer" target="_blank"> <svg class="a-icon a-icon--social" aria-hidden="true" width="11" height="20"><use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.boston.com/wp-content/themes/bdc-2020/assets/symbol-defs.svg#facebook-white"></use><use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.boston.com/wp-content/themes/bdc-2020/assets/symbol-defs.svg#facebook-white"></use></svg><span class="screen-reader-text">Like Boston.com on Facebook (Opens in a New Tab)</span> </a> </li> </ul> </div> <div class="o-site-footer__colophon m-site-colophon m-grid-span-4"> <p class="m-site-colophon__text">©2024 Boston Globe Media Partners, LLC</p> </div> <div class="o-site-footer__survey m-grid-span-4"> <a href="https://www.research.net/r/7W87PRW" class="a-link__survey">Tell Us What You Think</a> </div> <div class="o-site-footer__menu m-grid-span-12"> <nav class="o-site-footer__nav m-secondary-menu m-secondary-menu--footer a-list--no-style" aria-label="Footer Navigation"> <div class="menu-footer-container"><ul id="footer-menu" class="o-site-footer__menu-list m-secondary-menu__list a-list--no-style"><li id="menu-item-22362950" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-22362950"><a href="https://www.boston.com/privacy-policy">Do not sell my data</a></li> <li id="menu-item-26585081" class="menu-item menu-item-type-custom menu-item-object-custom current-menu-item menu-item-26585081"><a href="https://www.boston.com/online-gambling-content-disclaimer" aria-current="page">GAMBLING DISCLAIMER</a></li> <li id="menu-item-22362921" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-22362921"><a rel="privacy-policy" href="https://www.boston.com/privacy-policy/">Privacy Policy</a></li> <li id="menu-item-31876254" class="ot-info-display menu-item menu-item-type-custom menu-item-object-custom menu-item-31876254"><a href="#">Your Privacy Choices</a></li> <li id="menu-item-26304418" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-26304418"><a href="https://www.bostonglobemedia.com/advertise/">ADVERTISE</a></li> <li id="menu-item-22362900" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-22362900"><a href="https://www.boston.com/terms-of-service">Terms of Service</a></li> <li id="menu-item-22362926" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-22362926"><a href="https://www.boston.com/member-agreement">Member Agreement</a></li> <li id="menu-item-26304411" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-26304411"><a href="https://www.boston.com/contact-us/">CONTACT US</a></li> <li id="menu-item-23287074" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-23287074"><a href="https://globe.rec.pro.ukg.net/BOS1501BGMP/JobBoard/3ebc7d47-2d31-4b8d-817d-db673315517a/?q=&o=postedDateDesc">CAREERS</a></li> <li id="menu-item-28837199" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-28837199"><a href="https://www.boston.com/html-sitemap/">Site Map</a></li> </ul></div> </nav> </div> </section> </div> </footer> <!-- Site Modal --> <div id="site-modal" class="o-site-modal" aria-hidden="true"> <div class="o-site-modal__overlay" tabindex="-1" data-a11y-dialog-hide></div> <div role="dialog" class="o-site-modal__content" aria-labelledby="m-site-modal-logo" aria-describedby="modal-description"> <button data-a11y-dialog-hide="site-modal" class="a-button o-site-modal__close" aria-label="Close this dialog window"> <svg class="a-icon" aria-hidden="true" width="17" height="17"><use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.boston.com/wp-content/themes/bdc-2020/assets/symbol-defs.svg#close-symbol"></use><use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.boston.com/wp-content/themes/bdc-2020/assets/symbol-defs.svg#close-symbol"></use></svg><span class="screen-reader-text">Close Modal</span> </button> <h3 id="m-site-modal-logo" class="m-site-logo"> <span class="screen-reader-text"> Boston.com Newsletter Signup </span> <svg class="a-icon" aria-hidden="true" width="200" height="50"><use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.boston.com/wp-content/themes/bdc-2020/assets/symbol-defs.svg#logo"></use><use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.boston.com/wp-content/themes/bdc-2020/assets/symbol-defs.svg#logo"></use></svg><span class="screen-reader-text">Boston.com Logo</span> </h3> <p id="modal-description" class="o-site-modal__description"> Stay up to date with everything Boston. Receive the latest news and breaking updates, straight from our newsroom to your inbox. </p> <!-- form id should match fieldset 'form' attribute --> <form id="newsletter-form-2" class="m-form-newsletter m-form-newsletter--vertical" action="" method="" data-mailchimp-list-ids="" > <h4 class="m-form-newsletter__heading"> Enter your email address </h4> <fieldset form="newsletter-form"> <legend class="screen-reader-text"> Submit your email </legend> <label class="m-form-newsletter__label" for="email-form-2"> <span class="screen-reader-text">Enter your email address</span> <input class="a-input m-form-newsletter__input" type="email" id="email-form-2" name="email" placeholder="Email Address" aria-required="true" required> <p class="m-form-newsletter-error"></p> </label> <div id="email_hp_wrap" style="display: none" aria-hidden="true"> <input id="name_3" name="name_3" type="text" value="" autocomplete="nope" tabindex="-1" > </div> <button type="submit" name="submit" class="a-button a-button--primary m-form-newsletter__button"> Subscribe </button> </fieldset> </form> <button type="button" name="cancel" class="a-button a-button--is-link a-c-red a-uppercase" data-a11y-dialog-hide="site-modal" > No thanks <span class="screen-reader-text"> - Closes Modal window </span> </button> </div> </div> <!-- / Site Modal --> <script type="text/javascript" id="ad-refresh-callback"> /** * Refresh the OpenWrap/Amazon ads. * * @param array slotsToRefresh The slots due to be refreshed. */ function refreshOpenWrapAds( slotsToRefresh ) { // Don't refresh "out of page" ads. const adsToNotRefresh = ['oosvideo', 'presentedby', 'outofpage']; slotsToRefresh = slotsToRefresh.filter((slot) => !adsToNotRefresh.includes(slot.getSlotElementId())) if (!slotsToRefresh.length) { return } // Remove the previous bids from GPT. PWT.removeKeyValuePairsFromGPTSlots( slotsToRefresh ); // Add targeting Refresh=true to ads that are being refreshed. slotsToRefresh.forEach((slot) => slot.setTargeting('refresh', 'true')) /* * The above code is checking if the Onetrust script is active or not. * If it is active, it checks if the user has given consent for the country code or not. * If the user has given consent, it will display the ads. */ apstag.setDisplayBids(); PWT.a9_BidsReceived = PWT.ow_BidsReceived = false; const amazonSlotsToRefresh = formatSlotsToAmazon( slotsToRefresh ), a9Promise = fetchAmazonBids( amazonSlotsToRefresh ), pubmaticPromise = fetchPubmaticBids( slotsToRefresh ); Promise.allSettled([a9Promise, pubmaticPromise]).then(results => { const allBiddersPromisesRejected = results.every(result => result.status === 'rejected'); if (!allBiddersPromisesRejected) { refreshAds(slotsToRefresh); } }); } /** * Converts the slots in the format required by Amazon. * * @param array slots The slots due to be refreshed. */ function formatSlotsToAmazon( slots ) { const amazonSlotsToRefresh = []; for (let index = 0; index < slots.length; index++) { const slotItem = slots[index], element = {}, slotSizes = [], size = []; element.slotID = slots[index].getSlotElementId(); element.slotName = slots[index].getAdUnitPath(); if ( slots[index].getSizes() ) { sizes = slots[index].getSizes(); for (let indexJ = 0; indexJ < sizes.length; indexJ++) { size[indexJ] = []; size[indexJ].push(sizes[indexJ].width, sizes[indexJ].height); slotSizes.push(size[indexJ]); } } element.sizes = slotSizes; amazonSlotsToRefresh.push(element); } return amazonSlotsToRefresh; } // Gets bids from Amazon for the provided adSlots. fetchAmazonBids = ( slots ) => { return new Promise( ((resolve) => { try { apstag.fetchBids({ slots: slots }, ( bids ) => { apstag.setDisplayBids(); PWT.a9_BidsReceived = true; resolve( bids ); }); } catch ( e ) { resolve( null ); } }) ); } // Gets bids from PubMatic for the provided adSlots. fetchPubmaticBids = ( slots ) => { PWT.removeKeyValuePairsFromGPTSlots( slots ); return new Promise( ( resolve ) => { try { PWT.requestBids( PWT.generateConfForGPT( slots ), ( adUnitsArray ) => { PWT.addKeyValuePairsToGPTSlots( adUnitsArray ); PWT.ow_BidsReceived = true; resolve( adUnitsArray ); }, ); } catch (e) { resolve( null ); } } ); } // Displays the adSlot provided using googletag. displayAdSlots = ( slots ) => { return new Promise( (( resolve ) => { try { for ( let i = 0; i < slots.length; i++ ) { googletag.display( slots[i] ); } resolve( slots ); } catch ( e ) { resolve( null ); } }) ); } // Refreshes the adSlots provided. refreshAds = ( slots ) => { PWT.initAdserverSet = true; displayAdSlots( slots ).then( slots => { googletag.pubads().refresh( slots ); } ) } </script> <script type="text/javascript"> (function (){ // The widget ID is set in PHP. const widget_id = 'rc-widget-7f90ab'; // IntersectionObserver is a vanilla JS api that detects where an element is // relative to the viewport. It eliminates the need for scroll listeners. // https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API const observer = new IntersectionObserver( entries => { // Initialize if the widget is within 500px of the bottom of the viewport. if ( entries[0].isIntersecting ) { initialize(); // Stop observing once the widget has been initialized. observer.unobserve( document.getElementById( widget_id )); } }, // The options for the IntersectionObserver. { rootMargin: '0px 0px 500px 0px' } ); // Start observing the widget observer.observe( document.getElementById( widget_id ) ); function initialize(){ const onetrust_active = 1; const gdprApplies = JSON.parse(localStorage.getItem( 'gdprApplies' ) ); const ccpaApplies = localStorage.getItem( 'ccpaApplies' ); const widget_revcontent = document.getElementById( widget_id ); const scripts_initialize = document.createElement( "script" ); // OneTrust (CMP) is on if ( onetrust_active ) { // User is from CCPA if ( ( null !== ccpaApplies ) ) { const storageCCPA = localStorage.getItem( 'ccpaString' ); widget_revcontent.setAttribute( "data-us-privacy", storageCCPA ); } // User is from GDPR if ( ( null !== gdprApplies ) ) { const storageGDPR = localStorage.getItem( 'gdprString' ); widget_revcontent.setAttribute( "data-gdpr", 1 ); widget_revcontent.setAttribute( "data-gdpr-consent", storageGDPR ); } } scripts_initialize.setAttribute( "type", "text/javascript" ); scripts_initialize.setAttribute( "src", "https://assets.revcontent.com/master/delivery.js" ); scripts_initialize.setAttribute( "defer", "defer" ); // Append the script to the widget widget_revcontent.after( scripts_initialize ); } })(); </script> <script type="text/javascript"> !function(n,t,c,e,u){function r(n){try{f=n(u)}catch(n){return h=n,void i(p,n)}i(s,f)}function i(n,t){for(var c=0;c<n.length;c++)d(n[c],t); }function o(n,t){return n&&(f?d(n,f):s.push(n)),t&&(h?d(t,h):p.push(t)),l}function a(n){return o(!1,n)}function d(t,c){ n.setTimeout(function(){t(c)},0)}var f,h,s=[],p=[],l={then:o,catch:a,_setup:r};n[e]=l;var v=t.createElement("script"); v.src=c,v.async=!0,v.id="_uasdk",v.rel=e,t.head.appendChild(v)}(window,document,'https://aswpsdkus.com/notify/v1/ua-sdk.min.js', 'UA', { appKey: 'XJoCGW0GRDietgEhEXpsJg', token: 'MTpYSm9DR1cwR1JEaWV0Z0VoRVhwc0pnOndCZ3RiWnpwQnFXakEtckxkQnlyTkE1NmRDaWxSMm5vNUFQNkRRZHFjN28', websitePushId: 'web.boston.com.remix', secureIframeUrl: 'https://www.boston.com/secure-bridge.html', vapidPublicKey: 'BHRLCpgLazdtSrznUKdHmTSjqjEg5PjeRqWDX2g1ezJ40WUFkKMeifMIXqjWC2OQlNoA9KYbl47GloxsgLdbYtE=' }); </script> <script type="module"> var consent = 'grant'; /* The above code is parsing the JSON data from the local storage and storing it in a variable. */ const onetrustStorageConsent = JSON.parse(localStorage.getItem( 'consent_one_trust_bdc' ) ); /* Checking to see if the user has consented to the use of cookies. * If they have not, it is deleting the cookie. * This will comment for now, until further notice. */ //if ( onetrustStorageConsent.C0002 === false ) { // document.cookie = '_fbp=;expires=Thu, 01 Jan 2010 00:00:00 UTC; path=/; domain=.boston.com'; //} /* Checking if the user has given consent for the cookie C0002. * If the user has given consent, the variable consent will be set to 'grant'. * If the user has not given consent,the variable consent will be set to 'revoke'. * Documentation https://developers.facebook.com/docs/meta-pixel/implementation/gdpr */ if ( ( onetrustStorageConsent !== null ) && (onetrustStorageConsent.C0002 !== true ) ) { consent = 'revoke'; } !function(f,b,e,v,n,t,s){if(f.fbq)return;n=f.fbq=function() {n.callMethod? n.callMethod.apply(n,arguments):n.queue.push(arguments)} ;if(!f._fbq)f._fbq=n; n.push=n;n.loaded=!0;n.version='2.0';n.queue=[];t=b.createElement(e);t.async=!0; t.src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s)}(window, document,'script','https://connect.facebook.net/en_US/fbevents.js'); fbq('consent', consent); fbq('init', '813236348753005'); fbq('track', "PageView"); </script> <noscript><img height="1" width="1" class="hidden" src="https://www.facebook.com/tr?id=813236348753005&ev=PageView&noscript=1" /></noscript> <script type="text/javascript" id="ot-manage-links"> const otDisplayClassEl = document.getElementsByClassName("ot-info-display"); for ( const otLinkEl of otDisplayClassEl ) { let otLinks = otLinkEl.getElementsByTagName("a"); for ( const otLinkEl of otLinks ) { let otLinkElAttr = otLinkEl.getAttribute("href") if( otLinkElAttr === "#" ) { otLinkEl.addEventListener( "click", function() { OneTrust.ToggleInfoDisplay(); event.preventDefault(); }); } } } </script> <script type="text/javascript" src="https://bdc2020.o0bc.com/wp-includes/js/dist/vendor/wp-polyfill.min.js?ver=3.15.0" id="wp-polyfill-js"></script> <script type="text/javascript" id="frontend-js-extra"> /* <![CDATA[ */ var bdcFeatureFlags = {"real-estate":"1","arc-video-ads":"0","archive-pagination-schema-removal":"0","love-letters":"1","bdc-events":"1","bdc-time-to-read":"0","election-widgets-lazy-load":"0"}; var sportsbarData = {"is_home":"","tags":"","category":""}; var breakingNews = {"post_id":"26537964","category_id":""}; var gformsData = {"ajaxurl":"https:\/\/www.boston.com\/wp-admin\/admin-ajax.php"}; var bdc2020Webpack = {"path":"https:\/\/www.boston.com\/wp-content\/themes\/bdc-2020\/dist\/"}; /* ]]> */ </script> <script type="text/javascript" src="https://bdc2020.o0bc.com/wp-content/themes/bdc-2020/dist/js/frontend.js?ver=186f392f6caeac7c85301fc35781151e" id="frontend-js" async></script> <script type="text/javascript" id="avc_frontend-js-extra"> /* <![CDATA[ */ var AdRefreshControl = {"advertiserIds":[],"lineItemIds":[],"sizesToExclude":"","slotIdsToExclude":[],"viewabilityThreshold":"70","refreshInterval":"30","maximumRefreshes":"10","refreshCallback":"refreshOpenWrapAds"}; /* ]]> */ </script> <script type="text/javascript" src="https://bdc2020.o0bc.com/wp-content/plugins/ad-refresh-control/dist/js/frontend.js?ver=1.1.0" id="avc_frontend-js"></script> <script type="text/javascript" src="https://bdc2020.o0bc.com/wp-content/plugins/block-library/dist/js/frontend-accordion-scripts.js?ver=8563120eb740c7cc17ee526901535e7c" id="tenup-block-library-frontend-accordion-scripts-js"></script> <script type="text/javascript" id="bgmp-regi-bundle-js-js-extra"> /* <![CDATA[ */ var bgmpRegi = {"regi_signup_form_path":"https:\/\/www.boston.com\/wp-content\/plugins\/wp-plugin-regi-spot-im\/markup\/signup-form.php?blog_name=Boston.com","blog_name":"Boston.com"}; /* ]]> */ </script> <script type="text/javascript" src="https://bdc2020.o0bc.com/wp-content/plugins/wp-plugin-regi-spot-im//bgmp-regi-bundle.js?ver=0.0.3" id="bgmp-regi-bundle-js-js"></script> <script type="text/javascript" src="https://bdc2020.o0bc.com/wp-content/plugins/bdc-functionality/assets/js/tracker/lib/AppMeasurement/AppMeasurement.js?ver=2.22.0" id="app_measurement-js"></script> <script type="text/javascript" id="bdc_tracker-js-extra"> /* <![CDATA[ */ var bdcfunctionalityWebpack = {"path":"https:\/\/www.boston.com\/wp-content\/plugins\/bdc-functionality\/dist\/"}; var bdcDigitalData = {"settings":{"reportSuite":"nytbglobe,nytbgglobal","customLinksReportSuite":"nytbglobe","trackingServer":"smetrics.boston.com"},"pageInstanceID":"Online Gambling Content Disclaimer-www.boston.com","page":{"pageInfo":{"pageID":"Online Gambling Content Disclaimer","internalLinks":"javascript:,cars.com,boston.com,bostonglobe.com,globe.com,cityfeet.com,legacy.com,monstermoving.com,movietickets.com,newsbank.com,salary.com,snocountry.com,travidia.com,uclick.com,zap2it.com,bostondirtdogs.com,adperfect.com,bankrate.com,ce.com,flightview.com,gabriels.com,harvestadsdepot.com,interviewmastery.com,localattitude.com,pair.com,resume.com,sportsballot.com,vanlines.com,boston.addresses.com,boston.jiwire.com,boston.stats.com,gadzoo.com,jobview.boston.monster.com,mrboffo.com,mypublicnotices.com,upickem.com,realtraffic.maptuit.com,caspio.com,upickem.net,boston.houzz.com,localhost,www.boston.com","destinationURL":"https:\/\/www.boston.com\/online-gambling-content-disclaimer\/","pageURL":"https:\/\/www.boston.com\/online-gambling-content-disclaimer\/","channel":"","campaign":"","subsection":"","rssID":"","authors":"","pageLayout":"rail-header-standard","pagination":"","p1":"","pageType":"article page","publishDate":"","videoName":"","cms":"WordPress","environment":"Live","summaryLength":"","searchKeyword":"","trackingCode":"","keywords":"","sponsorName":"","loginStatus":"logged out","publicationName":"Boston.com","galleryName":null,"codeVersion":"2.22.0","articleID":"","refresh":"","registrationID":"","newsletter":""}}}; /* ]]> */ </script> <script type="text/javascript" src="https://bdc2020.o0bc.com/wp-content/plugins/bdc-functionality/dist/js/tracker.js?ver=066be91808d3dcc33bd01e863ee3b7dc" id="bdc_tracker-js"></script> <script> const oneTrustEl = document.getElementsByClassName( 'onetrust-revcontent' ); if ( oneTrustEl.length > 0 ) { // If less than 1, no RevContent is running. // Is this if really needed? let ccpaSet = localStorage.getItem( 'ccpaApplies' ); if ( ( null !== ccpaSet ) ) { let storageCCPA = localStorage.getItem( 'ccpaString' ); oneTrustEl[0].setAttribute( "data-us-privacy", storageCCPA ); } let gdprSet = localStorage.getItem( 'gdprApplies' ); if ( ( null !== gdprSet ) ) { let storageGDPR = localStorage.getItem( 'gdprString' ); oneTrustEl[0].setAttribute( "data-gdpr", 1 ); oneTrustEl[0].setAttribute( "data-gdpr-consent", storageGDPR ); } } </script> <script type="text/javascript"> window.addEventListener('DOMContentLoaded', (event) => { const airshipExtrajs = document.getElementById("ua-wn-js-extra"); const ConsentFromOnetrustStorage = JSON.parse(localStorage.getItem( 'consent_one_trust_bdc' ) ); if ( airshipExtrajs ) { if ( ( null !== ConsentFromOnetrustStorage ) && ( ConsentFromOnetrustStorage.C0003 ) ) { document.getElementById('ua-wn-js-extra').setAttribute('type', 'text/plain'); document.getElementById('ua-wn-js-extra').setAttribute('class', 'optanon-category-C0003'); } } }); </script> <script type="text/javascript">window.NREUM||(NREUM={});NREUM.info={"beacon":"bam.nr-data.net","licenseKey":"b9d80a2312","applicationID":"467627310","transactionName":"ZFNbMkJTVxVYVRcMDV0ZehNDRlYLFmYCAgc=","queueTime":0,"applicationTime":339,"atts":"SBRMRApJREobV0FfGU5L","errorBeacon":"bam.nr-data.net","agent":""}</script></body> </html> <!-- plugin=object-cache-pro client=phpredis metric#hits=12162 metric#misses=37 metric#hit-ratio=99.7 metric#bytes=2988051 metric#prefetches=0 metric#store-reads=111 metric#store-writes=9 metric#store-hits=441 metric#store-misses=30 metric#sql-queries=8 metric#ms-total=443.33 metric#ms-cache=102.84 metric#ms-cache-avg=0.8642 metric#ms-cache-ratio=23.2 -->