1 <!DOCTYPE html> 2 <html lang="en-US"> 3 <head> 4 <link rel="preconnect" href="https://fonts.googleapis.com"><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin="anonymous"><meta charset="UTF-8"><meta name="application-name" id="app-name" content="sentinelandenterprise"><meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="msvalidate.01" content="4B535F7EB2971D1FCBA5D1D3E3E292C3" /> 5 <meta name="robots" content="noarchive" /> 6 <meta name="tdm-reservation" content="1" /> 7 <title>Contact Us – Sentinel and Enterprise</title> 8<link rel='preload' as='image' fetchpriority='high' href='https://www.sentinelandenterprise.com/wp-content/uploads/2022/04/SE1.png' type='image/png' /> 9<meta name='robots' content='max-image-preview:large' />
10<script type='text/javascript'> 11/* <![CDATA[ */ 12var scriptHelpers = {"staticPath":"https:\/\/www.sentinelandenterprise.com\/wp-content\/themes\/assets\/static\/"}; 13/* ]]> */ 14</script>
vendor: 1 bytes, line 14
14
15<script id="mng_admiral_script" type="text/javascript"> 16!(function(h,_name,r,Q,i){i=function(){(i.q=i.q||[]).push(arguments)},h[_name=r(r(_name))]=h[_name]||i,h[_name].v=h[_name].v||4,h[_name].s=3+0})(window,'%25%36%31dm%25%369%72%61%6C',decodeURI);!(function(h,r,Q,i,E,e,d,x,B){e=function(r,s){return r<2&&s};try{r[Q]=r[Q]||function(h){h?d[h]=!0:e()},d=r[Q]}catch(l){return void e()}!(function y(r,Q,T,O){function c(){try{if(d[T&&T.src||Q]||d[x])return}catch(l){return void e()}T&&(T.remove(),T=null),clearTimeout(B),!r&&Q&&(Q+=(-1===Q.indexOf("?")?"?":"&")+"r=1"),(Q=e(++r,Q))&&y(r,Q)}(T=h.createElement(i)).__apNoHold=!0,O=h.getElementsByTagName(i)[0],T.async=1,T.src=Q,r>0&&(T.fetchPriority="high"),B=setTimeout(c,6e3+2e3*r),T[E]("error",c),T[E]("load",c),O.parentNode.insertBefore(T,O)})(0,x="https://thebestpaints.com/j/o3yme0x/cuk_mv.v2.js")})(document,window,"QS02OEVGQTIzNzJFODI0QTAxMTQ4Njc3MUItNjQ","script","addEventListener",{});; 17; 18!(function(h,r,Q,i,E,e,d,x,B,l,y,_name,T,O,c,v,t,S,N,p,C,n){_name=(y=function(h){return r(r(h))})('%61d%25%36%44%25%36%39%257%32%2561%256C'),T=h.localStorage,O=h.sessionStorage,c=y('_%25%361%256%34%6D%72%6C%25%363%6Bvp'),t=h.location;try{0===document.referrer.indexOf(t.origin)?(v=new URLSearchParams(t.search)).get(y('%5F%2561c%25%372%25%36%39'))?((S=v.get(y('%255%46%256%31%2563%25%374')))===y('%256%35x%25%374en%25%36%34')?N=[["admir\u0061l\u002d\u0065\u0078t\u0065\u006e\u0064ed","true"||_name]]:S===y('%25%37%33%68%256%31%257%30%65')&&(N=[["a\u0064\u006di\u0072al\u002d\u0073\u0068ap\u0065\u0064","true"||_name]]),N&&(O[c]=JSON.stringify(N))):N=JSON.parse(O[c]||"[]"):delete O[c]}catch(b){N=[]}function I(r,Q){try{r=JSON.parse(T["_aQS02OEVGQTIzNzJFODI0QTAxMTQ4Njc3MUItNjQ"]||"{}").lgk||[]}catch(b){r=[]}N&&(r=r.concat(N)),r&&r.length&&(Q=h[p].pubads())&&r.forEach((function(h){h&&h[0]&&Q.setTargeting(h[0],h[1]||"")}))}p=y('g%6F%6Fgle%74%25%36%31%2567');try{n=(C=h[p]=h[p]||{}).cmd=C.cmd||[],typeof C.pubads===Q?I():typeof n.unshift===Q?n.unshift(I):n.push(I)}catch(b){}})(window,decodeURI,"function"); 19</script>
19 20<link rel='dns-prefetch' href='//metrics.rapidedge.io' /> 21<link rel='dns-prefetch' href='//htlbid.com' /> 22<link rel='dns-prefetch' href='//cmp.osano.com' /> 23<link rel='dns-prefetch' href='//ak.sail-horizon.com' /> 24<link rel='dns-prefetch' href='//cdn.parsely.com' /> 25<link rel='dns-prefetch' href='//ajax.googleapis.com' /> 26<link rel='dns-prefetch' href='//t969.sentinelandenterprise.com' /> 27<link rel='dns-prefetch' href='//cdn.sophi.io' /> 28<link rel='dns-prefetch' href='//applepay.cdn-apple.com' /> 29<link rel='dns-prefetch' href='//fonts.googleapis.com' /> 30<link rel='dns-prefetch' href='//cdn.jsdelivr.net' /> 31<link rel='dns-prefetch' href='//v0.wordpress.com' /> 32<link rel="alternate" type="application/rss+xml" title="Sentinel and Enterprise » Feed" href="https://www.sentinelandenterprise.com/feed/" /> 33<link rel="alternate" type="application/rss+xml" title="Sentinel and Enterprise » Comments Feed" href="https://www.sentinelandenterprise.com/comments/feed/" /> 34<link rel="alternate" title="oEmbed (JSON)" type="application/json+oembed" href="https://www.sentinelandenterprise.com/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fwww.sentinelandenterprise.com%2Fcontact-us%2F" /> 35<link rel="alternate" title="oEmbed (XML)" type="text/xml+oembed" href="https://www.sentinelandenterprise.com/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fwww.sentinelandenterprise.com%2Fcontact-us%2F&format=xml" /> 36<meta name='description' content='Sentinel & Enterprise P. O. Box 4004 Westford, MA 01886 (978) 343-6911 Main Office Hours Monday – Friday: 8am to 5pm Closed Weekends Customer Service Hours Monday – Friday: 7:30am to 6pm Saturday – Sunday: 6:30am to 11am Phone: 866-221-9157 DISPLAY ADVERTISING 617-619-6213, [email protected] RECRUITMENT &
36 LINE ADVERTISING 978-970-4628 Classified Advertising Office Hours: Monday â […]' /><!-- WP SEO --> 37<link rel='stylesheet' id='__htl_style-css' href='https://htlbid.com/v3/sentinelandenterprise.com/htlbid.css' media='screen' /> 38<style id='__htl_style-inline-css'> 39@media screen and (max-width:1000px) { #mobile-adhesion { display: block !important; } } 40/*# sourceURL=__htl_style-inline-css */ 41</style> 42<link rel='stylesheet' id='all-css-1f3f' href='https://www.sentinelandenterprise.com/_static/??/wp-content/themes/wp-mason/dist/css/styleOsanoCustom.min.css,/wp-content/client-mu-plugins/src/Sitemap/includes/style.css?m=1790798714' type='text/css' media='all' /> 43<style id='wp-emoji-styles-inline-css'> 44 45 img.wp-smiley, img.emoji { 46 display: inline !important; 47 border: none !important; 48 box-shadow: none !important; 49 height: 1em !important; 50 width: 1em !important; 51 margin: 0 0.07em !important; 52 vertical-align: -0.1em !important; 53 background: none !important; 54 padding: 0 !important; 55 } 56/*# sourceURL=wp-emoji-styles-inline-css */ 57</style> 58<link rel='stylesheet' id='digisubs_plugin_css-css' href='https://www.sentinelandenterprise.com/wp-content/plugins/mng-digisubs/static/mng-digisubs.styles.css?ver=1790890291' media='all' /> 59<link rel='stylesheet' id='all-css-aae2' href='https://www.sentinelandenterprise.com/_static/??-eJx9zEEKAjEMheELGePgos5CxKPMdEIbaJMySZG5vUUQXLl4/PAWH74aRBUncYyFR6B2aKUnFsNvqyQwUsh9xcWM3DDamLZj55QdRJ0jncd5wr+i7RGfm/0qVVcuBMuWyVgFzI/yoR71PoX5EuZbmK5vSeQ+VA==' type='text/css' media='all' /> 60<link rel='stylesheet' id='mason-fonts-css' href='https://fonts.googleapis.com/css?family=Noto+Sans%3A400%2C700%2C800%7CNoto+Serif%3A400%2C400i%2C700%2C700i%2C800&display=swap&ver=6.9.9' media='all' /> 61<link rel='stylesheet' id='all-css-0e99' href='https://www.sentinelandenterprise.com/wp-content/themes/assets/static/css/modernearthy.css?m=1790890291g' type='text/css' media='all' /> 62<link rel='stylesheet' id='dfm-accuweather-bootstrap-icons-css' href='//cdn.jsdelivr.net/npm/[email protected]/font/bootstrap-icons.min.css?ver=5.2.0' media='screen' /> 63<link rel='stylesheet' id='all-css-3529' href='https://www.sentinelandenterprise.com/wp-content/plugins/dfm-ad-mods/dist/css/style.min.css?m=1790798713g' type='text/css' media='all' />
64<script src="https://metrics.rapidedge.io/gamera.js?ltv=1&audience=1&tpcs=1&partner=medianewsgroup" id="gamera-js" async data-wp-strategy="async"></script>
vendor: 1 bytes, line 64
64
65<script id="mng-ad-free-7day-js-before"> 66window.mngAdFree7DayConfig = {"flagId":"adfree-for-7-day-print-subs","cacheKey":"MNG_FF_AD_FREE_7DAY","cacheTtlMs":86400000,"userCookie":"auth0_sub","sessionKey":"__MNG_Session"}; 67//# sourceURL=mng-ad-free-7day-js-before 68</script>
vendor: 1 bytes, line 68
68
69<script id="mng-ad-free-7day-js-after"> 70 ( function () { 71 const config = window.mngAdFree7DayConfig; 72 if ( ! config ) { 73 return; 74 } 75 76 function currentUserId() { 77 const parts = document.cookie ? document.cookie.split( ';' ) : []; 78 for ( let i = 0; i < parts.length; i++ ) { 79 const pair = parts[ i ].split( '=' ); 80 if ( pair[ 0 ].trim() === config.userCookie ) { 81 try { 82 return decodeURIComponent( pair.slice( 1 ).join( '=' ) ); 83 } catch ( e ) { 84 return ''; 85 } 86 } 87 } 88 return ''; 89 } 90 91 function decodeJwtPayload( token ) { 92 try { 93 const segment = token.split( '.' )[ 1 ]; 94 if ( ! segment ) { 95 return null; 96 } 97 let b64 = segment.replace( /-/g, '+' ).replace( /_/g, '/' ); 98 while ( b64.length % 4 ) { 99 b64 += '='; 100 } 101 return JSON.parse( atob( b64 ) ); 102 } catch ( e ) { 103 return null; 104 } 105 } 106 107 function entitlementClaims() { 108 try { 109 const session = JSON.parse( 110 window.localStorage.getItem( config.sessionKey ) || '{}' 111 ); 112 return ( session.entitlementToken && 113 decodeJwtPayload( session.entitlementToken ) ) || {}; 114 } catch ( e ) { 115 return {}; 116 } 117 } 118 119 function clearCachedEnabled() { 120 try { 121 window.localStorage.removeItem( config.cacheKey ); 122 } catch ( e ) {} 123 } 124 125 // Bound to the reader it was resolved for, so it cannot outlive a 126 // logout or leak on a shared device. Positive results expire after TTL. 127 function readCachedEnabled() { 128 try { 129 const raw = window.localStorage.getItem( config.cacheKey ); 130 if ( ! raw ) { 131 return false; 132 } 133 const cached = JSON.parse( raw ); 134 const userId = currentUserId(); 135 if ( 136 ! userId || 137 cached.userId !== userId || 138 cached.enabled !== true || 139 ! cached.expiresAt || 140 Date.now() > cached.expiresAt 141 ) { 142 clearCachedEnabled(); 143 return false; 144 } 145 return true; 146 } catch ( e ) { 147 clearCachedEnabled(); 148 return false; 149 } 150 } 151 152 function writeCachedEnabled( enabled ) { 153 if ( ! enabled ) { 154 clearCachedEnabled(); 155 return; 156 } 157 try { 158 const userId = currentUserId(); 159 if ( ! userId ) { 160 clearCachedEnabled(); 161 return; 162 } 163 window.localStorage.setItem( config.cacheKey, JSON.stringify( { 164 userId: userId, 165 enabled: true, 166 expiresAt: Date.now() + config.cacheTtlMs 167 } ) ); 168 } catch ( e ) {} 169 } 170 171 function ensureLogoutClear() { 172 window.MNGAuthentication = window.MNGAuthentication || {}; 173 const callbacks = window.MNGAuthentication.logoutCallbacks; 174 if ( 175 Array.isArray( callbacks ) && 176 callbacks.indexOf( clearCachedEnabled ) === -1 177 ) { 178 callbacks.push( clearCachedEnabled ); 179 } 180 } 181 182 window.MNGAuthentication = window.MNGAuthentication || {}; 183 184 let originalIsUserAdFree = window.MNGAuthentication.isUserAdFree; 185 186 // Existing ad-free users (premium, employees, ad-free templates) 187 // must stay ad-free even if they are not in this experiment. 188 function underlyingSaysAdFree() { 189 if ( originalIsUserAdFree === true ) { 190 return true; 191 } 192 if ( typeof originalIsUserAdFree === 'function' ) { 193 return !! originalIsUserAdFree.call( window.MNGAuthentication ); 194 } 195 return false; 196 } 197 198 function isUserAdFree() { 199 return underlyingSaysAdFree() || readCachedEnabled(); 200 } 201 202 // entitlements.js may assign isUserAdFree before or after this runs. 203 Object.defineProperty( window.MNGAuthentication, 'isUserAdFree', { 204 configurable: true, 205 get: function () { 206 return isUserAdFree; 207 }, 208 set: function ( value ) { 209 originalIsUserAdFree = value; 210 } 211 } ); 212 213 // Context is passed per evaluation, so this only waits on the 214 // datafile. Still resolves after this page's ad scripts have run, 215 // so the arm applies from the next page view. 216 function resolve() { 217 ensureLogoutClear(); 218 const visor = window.mngfeatures && window.mngfeatures.visor; 219 if ( ! visor ) { 220 return; 221 } 222 const userId = currentUserId(); 223 const claims = entitlementClaims(); 224 if ( ! userId || ! claims.entitlement_level ) { 225 return; 226 } 227 const level = String( claims.entitlement_level ).trim().toLowerCase(); 228 const service = String( claims.entitlement_serviceCode || 'unknown' ).trim(); 229 230 const enabled = visor.isEnabled( config.flagId, { 231 userId: userId, 232 subscriptionLevel: level + '-' + service 233 } ); 234 writeCachedEnabled( enabled ); 235 } 236 237 ensureLogoutClear(); 238 239 // Whichever fires first: the session may land before the datafile 240 // or after it. 241 if ( window.mngfeatures && window.mngfeatures.visor ) { 242 resolve(); 243 } 244 window.addEventListener( 'mng-feature-flags-init', resolve ); 245 window.addEventListener( 'mng-feature-flags-ready', resolve ); 246 } )(); 247//# sourceURL=mng-ad-free-7day-js-after 248</script>
vendor: 1 bytes, line 248
248
249<script src="https://cmp.osano.com/16A1AnRt2Fn8i1unj/1edc45d9-1a78-48b2-9035-037b31df744a/osano.js" id="osano-js"></script>
vendor: 1 bytes, line 249
249
250<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js?ver=3.5.1" id="jquery-js"></script>
vendor: 1 bytes, line 250
250
251<script type="text/javascript" src="https://www.sentinelandenterprise.com/wp-content/client-mu-plugins/src/SSO/assets/js/sso-tools.min.js?m=1790371220g" ></script>
251<script id="mg2_loader_loader-js-extra"> 252var MG2 = {"settings":{"environment":"prod","version":"dfm","useDocumentReady":false,"xCode":"","randomURLChoosing":false,"plugins":[{"name":"FP","required":true,"initOptions":{"version":"dfm","environment":"prod"}},{"name":"DL","required":true,"initOptions":{"version":"dfm","environment":"prod","tagManager":"GTM","containerId":"GTM-NFD2QGD","collectors":["connext"]}},{"name":"NXT","required":true,"initOptions":{"environment":"prod","siteCode":"DFM","configCode":"SophiLOWFIT","clientCode":"dfm","debug":true,"silentmode":true,"attr":"SE","settingsKey":"NORCAL,SE","userAuthenticationTime":365,"authSettings":{"domain":"login.npuserlogin.com","client_id":"8ognhVhyzUP44073PTD38FrAaPLA8k4o","redirect_uri":"https://www.sentinelandenterprise.com/login"}}}],"FP_CNAME":"fp.sentinelandenterprise.com","DL_CNAME":"g2i.sentinelandenterprise.com","NXT_CNAME":"engage.sentinelandenterprise.com","CONFIG_URL":"https://loader-config.sentinelandenterprise.com/prod/dfm/loader-config.json","appInsightsKey":"8241cbc2-50a5-47c4-b91f-462506490fad"}}; 253//# sourceURL=mg2_loader_loader-js-extra 254</script>
vendor: 1 bytes, line 254
254
255<script src="https://www.sentinelandenterprise.com/wp-content/plugins/loader-wp/static/loader.min.js?ver=1.6.4" id="mg2_loader_loader-js"></script>
vendor: 1 bytes, line 255
255
256<script id="mg2_loader_loader-js-after"> 257(function( MG2, MG2Loader ) { 258 if ( 'undefined' !== typeof MG2 && 'undefined' !== typeof MG2Loader) { 259 console.log("mg2loader: not waiting"); 260 MG2Loader.init( MG2.settings ); 261 } 262})( MG2, MG2Loader ); 263//# sourceURL=mg2_loader_loader-js-after 264</script>
vendor: 1 bytes, line 264
264
265<script id="digisubs_settings-js-extra"> 266var authentication_config = {"debug":"","entitlementsEnabled":"1","oneTapEnabled":"1","useTribMainGoogle":"","googleClientId":"186687227862-jvre7ge77vo0sh91amb0vq5qmf6kap3i.apps.googleusercontent.com","gotPositionEnabled":"","gotModalPosition":"","dropdownEnabled":"1","forceLogoutOnExpiredIdToken":"","auth0Domain":"login.npuserlogin.com","auth0ClientId":"8ognhVhyzUP44073PTD38FrAaPLA8k4o","auth0RegwallUserEmail":"","sessionManagement":"1","sessionServer":"https://session.sentinelandenterprise.com","newsletterId":"385","newslettersEnabled":"","myAccountLink":"","entitlementsEndpoint":"https://user.mng-digisubs-prod.com/","entitlementsAPIKey":"DHL8Vs1UNo9u0WO52dVBzSuLi4kw2so25cXK1fy7","linaCheckOnArticles":"","serverEntitlements":"1","bcLowaSegements":"","blueconicEnabled":"1","enableReaderDashboardLink":"1","enableDashboardCancel":"","enableReaderDashboardv2":"1","enableDashboardBenefitHub":"","prosperstackClientid":"","enableUpdatePayment":"","enableUpgradeSubscription":"","enableDatadog":"","sophiOnDevice":"1","sophiSDKEnabled":"","regwallPrefId":"","cookieSize":"","whiteList":"","paywallId":"paywall-sspw-mg2pw01-fg24","articleSavingEnabled":"","articleSharingEnabled":"1","isEmbedLoginEnabled":"1","enableSocialSigninModal":"","subHeaderText":"","enableSocialAllPages":"","enableSocialHomepage":"","enableSocialArticle":"","enableSocialSection":"","isAdfreeArticle":""}; 267//# sourceURL=digisubs_settings-js-extra 268</script>
vendor: 1 bytes, line 268
268
269<script id="connext_utils-js-extra"> 270var authentication_config = {"debug":"","entitlementsEnabled":"1","oneTapEnabled":"1","useTribMainGoogle":"","googleClientId":"186687227862-jvre7ge77vo0sh91amb0vq5qmf6kap3i.apps.googleusercontent.com","gotPositionEnabled":"","gotModalPosition":"","dropdownEnabled":"1","forceLogoutOnExpiredIdToken":"","auth0Domain":"login.npuserlogin.com","auth0ClientId":"8ognhVhyzUP44073PTD38FrAaPLA8k4o","auth0RegwallUserEmail":"","sessionManagement":"1","sessionServer":"https://session.sentinelandenterprise.com","newsletterId":"385","newslettersEnabled":"","myAccountLink":"","entitlementsEndpoint":"https://user.mng-digisubs-prod.com/","entitlementsAPIKey":"DHL8Vs1UNo9u0WO52dVBzSuLi4kw2so25cXK1fy7","linaCheckOnArticles":"","serverEntitlements":"1","bcLowaSegements":"","blueconicEnabled":"1","enableReaderDashboardLink":"1","enableDashboardCancel":"","enableReaderDashboardv2":"1","enableDashboardBenefitHub":"","prosperstackClientid":"","enableUpdatePayment":"","enableUpgradeSubscription":"","enableDatadog":"","sophiOnDevice":"1","sophiSDKEnabled":"","regwallPrefId":"","cookieSize":"","whiteList":"","paywallId":"paywall-sspw-mg2pw01-fg24","articleSavingEnabled":"","articleSharingEnabled":"1","isEmbedLoginEnabled":"1","enableSocialSigninModal":"","subHeaderText":"","enableSocialAllPages":"","enableSocialHomepage":"","enableSocialArticle":"","enableSocialSection":"","isAdfreeArticle":""}; 271//# sourceURL=connext_utils-js-extra 272</script>
vendor: 1 bytes, line 272
272
273<script type="text/javascript" src="https://www.sentinelandenterprise.com/_static/??-eJydzDEOwjAMQNELkbhlgQyIC7BygKSxLFeJG8WuWm4PC1IHJtYvvQ9bc9MihmLQykosCmWJGbvbGqhF4wlQKBI+OPXYX76y+FlP8ENWIZeZWNekX3xsXtGMhdSnVXLBvz8fILjb07gcXvd6Gy9huIbhHMb5Dd4SUfE=" ></script>
273<script src="https://cdn.auth0.com/js/auth0-spa-js/1.13/auth0-spa-js.production.js?ver=6.9.9" id="auth0_sdk-js"></script>
vendor: 1 bytes, line 273
273
274<script src="https://accounts.google.com/gsi/client?ver=6.9.9" id="google_one_tap-js"></script>
vendor: 1 bytes, line 274
274
275<script type="text/javascript" src="https://www.sentinelandenterprise.com/_static/??-eJylzMEOQDAQBNAfoosLPYir36hqmpV2id2Gz1cnceU0yWTmwbGVdiVxJLCF5JEYIvlyRo+cJgYWI2hfnYoGSU2J5uDUwgV8MfKB3Cl/mTxGCS7m5L9WwtHcwP5AQ+zrVledrhpdLxe/kHEe" ></script>
275<script id="auth0-session-storage-js-before"> 276window.auth0WPAdminMeta = '{"auth0WPAdminMeta":{"auth0UserMeta":null,"auth0AppMeta":null}}'; 277//# sourceURL=auth0-session-storage-js-before 278</script>
vendor: 1 bytes, line 278
278
279<script src="https://www.sentinelandenterprise.com/wp-content/client-mu-plugins/src/Auth0/assets/dist/auth0-session-storage.min.js?ver=1.0.4" id="auth0-session-storage-js"></script>
vendor: 1 bytes, line 279
279
280<script src="https://t969.sentinelandenterprise.com/script.js" id="t969-js"></script>
vendor: 1 bytes, line 280
280
281<script id="hhsl-check-js-extra"> 282var DFM_AD_MODS_LEVEL = ["355"]; 283//# sourceURL=hhsl-check-js-extra 284</script>
vendor: 1 bytes, line 284
284
285<script type="text/javascript" src="https://www.sentinelandenterprise.com/_static/??/wp-content/plugins/dfm-ad-mods/dist/js/hhslCheck.min.js,/wp-content/plugins/mng-digisubs/assets/js/sophi/mather.min.js?m=1790798713j" ></script>
285<script id="static-sophi-script-handle-js-after"> 286 window.sophi = window.sophi || {}; 287 sophi.demeter = { actions: [], initStatus: "" }; 288 289 // Lightweight lifecycle tracking helper: appends "{code}{seconds}" to 290 // demeter.initStatus, seconds since navigation start truncated to 10ms. 291 window._s = function (c) { 292 var d = window.sophi.demeter; 293 var f = String(Math.floor(performance.now() / 10) / 100).replace(/^0\./, "."); 294 d.initStatus = (d.initStatus ? d.initStatus + "," : "") + c + f; 295 }; 296 297 window.demeter = window.demeter || function () { 298 var resolve, reject; 299 var s = new Promise(function (res, rej) { 300 resolve = res; 301 reject = rej; 302 }); 303 sophi.demeter.actions.push([arguments, resolve, reject]); 304 return s; 305 }; 306 307 _s("i"); 308//# sourceURL=static-sophi-script-handle-js-after 309</script>
vendor: 1 bytes, line 309
309
310<script id="mng_sophi-js-extra"> 311var sophi_config = {"sophiGetDesicionTimer":"","sophiPluginEnabled":"1","sophiHostname":"","enableSophiSSPW":"","useEventListener":"","enableSophiEngageVsSophiSSPW":""}; 312//# sourceURL=mng_sophi-js-extra 313</script>
vendor: 1 bytes, line 313
313
314<script type="text/javascript" src="https://www.sentinelandenterprise.com/wp-content/plugins/mng-digisubs/static/mng-digisubs.sophi.bundle.js?m=1790890291g" ></script>
314<script>if(window._s){_s('l');}</script>
vendor: 1 bytes, line 314
314
315<script onerror="if(window._s){_s('xsl');}" src="https://cdn.sophi.io/assets/demeter/1/stable/2497340132.js?ver=6.9.9" id="sophi_demeter-js" async data-wp-strategy="async"></script>
vendor: 1 bytes, line 315
315
316<script id="article_sharing-js-extra"> 317var article_config = {"article_sharing_faq":""}; 318//# sourceURL=article_sharing-js-extra 319</script>
vendor: 1 bytes, line 319
319
320<script type="text/javascript" src="https://www.sentinelandenterprise.com/wp-content/plugins/mng-digisubs/static/mng-digisubs.articleShare.bundle.js?m=1790890291g" ></script>
320<link rel="https://api.w.org/" href="https://www.sentinelandenterprise.com/wp-json/" /><link rel="alternate" title="JSON" type="application/json" href="https://www.sentinelandenterprise.com/wp-json/wp/v2/pages/12" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://www.sentinelandenterprise.com/xmlrpc.php?rsd" /> 321<meta name="generator" content="WordPress 6.9.9" /> 322<link rel='shortlink' href='https://wp.me/PaAVxL-c' />
323<script id="cnx-init-script">!function(n){if(!window.cnx){window.cnx={},window.cnx.cmd=[];var t=n.createElement('iframe');t.display='none',t.onload=function(){var n=t.contentWindow.document,c=n.createElement('script');c.src='//cd.connatix.com/connatix.player.js',c.setAttribute('async','1'),c.setAttribute('type','text/javascript'),n.body.appendChild(c)},n.head.appendChild(t)}}(document);</script>
323 <style> 324 .getty.aligncenter { 325 text-align: center; 326 } 327 .getty.alignleft { 328 float: none; 329 margin-right: 0; 330 } 331 .getty.alignleft > div { 332 float: left; 333 margin-right: 5px; 334 } 335 .getty.alignright { 336 float: none; 337 margin-left: 0; 338 } 339 .getty.alignright > div { 340 float: right; 341 margin-left: 5px; 342 } 343 </style> 344 <style>img#wpstats{display:none}</style> 345
345<script type="application/ld+json" id="mng-metadata">{"@context":"https:\/\/schema.org","@type":"WebPage","headline":"Contact Us","url":"https:\/\/www.sentinelandenterprise.com\/contact-us\/"}</script>
345<script type="application/ld+json" id="mng-breadcrumb-0">{"@context":"https:\/\/schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"item":{"@id":"https:\/\/www.sentinelandenterprise.com","name":"Home"}},{"@type":"ListItem","position":2,"item":{"@id":"https:\/\/www.sentinelandenterprise.com\/contact-us\/","name":"Contact Us"}}]}</script>
345<script type="application/ld+json" id="mng-localbusiness">{"@context":"https:\/\/schema.org","@type":"LocalBusiness","name":"Sentinel and Enterprise","url":"https:\/\/www.sentinelandenterprise.com\/","logo":"https:\/\/www.sentinelandenterprise.com\/wp-content\/uploads\/2022\/04\/SE1.png","telephone":"+19783436911","address":{"@type":"PostalAddress","streetAddress":"P. O. Box 4004","addressLocality":"Westford","addressRegion":"MA","postalCode":"01886"},"description":"The Sentinel & Enterprise (sentinelandenterprise.com) is a morning daily newspaper and website published in Fitchburg, Massachusetts, with a satellite news bureau in neighboring Leominster.","email":"[email protected]","openingHoursSpecification":[{"@type":"OpeningHoursSpecification","dayOfWeek":"Monday","opens":"7:30AM","closes":"6PM"},{"@type":"OpeningHoursSpecification","dayOfWeek":"Tuesday","opens":"7:30AM","closes":"6PM"},{"@type":"OpeningHoursSpecification","dayOfWeek":"Wednesday","opens":"7:30AM","closes":"6PM"},{"@type":"OpeningHoursSpecification","dayOfWeek":"Thursday","opens":"7:30AM","closes":"6PM"},{"@type":"OpeningHoursSpecification","dayOfWeek":"Friday","opens":"7:30AM","closes":"6PM"},{"@type":"OpeningHoursSpecification","dayOfWeek":"Saturday","opens":"6:30AM","closes":"11AM"},{"@type":"OpeningHoursSpecification","dayOfWeek":"Sunday","opens":"6:30AM","closes":"11AM"}],"areaServed":"Cities & Towns: Fitchburg, Leominster, Lunenburg, Ashby, Shirley, Townsend, Westminster, and Harvard. Counties: Northern Worcester County and northwestern Middlesex County. Region: North Central Massachusetts.","sameAs":["https:\/\/www.facebook.com\/sentinelandenterprise","https:\/\/twitter.com\/sentandent"],"foundingDate":"1973","publishingPrinciples":"https:\/\/www.sentinelandenterprise.com\/contact-us\/","contactPoint":[{"@type":"ContactPoint","contactType":"newsroom","telephone":"+19785162281","email":"[email protected]"},{"@type":"ContactPoint","contactType":"sales","telephone":"+16176196213","email":"[email protected]"},{"@type":"ContactPoint","contactType":"subscriptions","email":"[email protected]"}],"numberOfEmployees":{"@type":"QuantitativeValue","value":10}}</script>
345 346<link rel="canonical" href="https://www.sentinelandenterprise.com/contact-us/" />
346<script> 347 var PushlySDK = window.PushlySDK || []; 348 function pushly() { PushlySDK.push(arguments) } 349 pushly('load', { 350 domainKey: decodeURIComponent("36lGkzP045YAnMC14hCvoAmOGCcNFA5yDCwe"), 351 sw: "https://www.sentinelandenterprise.com/wp-content/plugins/pushly/assets/js/pushly-sdk-worker.js.php", 352 swScope: "https://www.sentinelandenterprise.com/wp-content/plugins/pushly/" }); 353</script>
353 354 355<style id="customizer-styles"></style>
355<script>window.addEventListener('message', 356 function s2nEventCallback(a){if('s2nEvent'===a.data.type) 357 {let t={event:'SendToNews load',sendtonews_player_key: 358 a.data.playerKey};window.dataLayer.push(t), 359 window.removeEventListener('message',s2nEventCallback)}});</script>
359<!-- Google Tag Manager Data Layer -->
360<script type='text/javascript'> 361 analyticsEvent = function() {}; 362 analyticsSocial = function() {}; 363 analyticsVPV = function() {}; 364 analyticsClearVPV = function() {}; 365 analyticsForm = function() {}; 366 window.dataLayer = window.dataLayer || []; 367 dataLayer.push({ 368 'quantcast' : 'p-4ctCQwtnNBNs2', 369 'quantcast label' : 'Lowell', 370 'comscore' : '6035443', 371 'Publisher Domain' : 'sentinelandenterprise.com', 372 'Publisher Product' : 'sentinelandenterprise.com', 373 'kv' : 'page', 374 'Platform' : 'Web CMS', 375 'Release Version' : '6.9.9', 376 'Digital Publisher' : '', 377 'Section' : 'Contact Us', 378 'Taxonomy1' : '', 379 'Taxonomy2' : '', 380 'Taxonomy3' : '', 381 'Taxonomy4' : '', 382 'Taxonomy5' : '', 383 'Publisher State' : 'MASSACHUSETTS', 384 'Page Type' : 'page', 385 'User ID' : '', 386 'SiteName' : 'Sentinel and Enterprise', 387 'Cluster' : 'MNG Boston', 388 'Mobile Presentation' : 'no', 389 'Content ID' : '12', 390 'Publish Hour of Day' : '2019-01-11T17:54:15-05:00', 391 'Create Hour of Day' : '2019-01-11T17:54:15-05:00', 392 'Update Hour of Day' : '2026-07-08T16:10:31-04:00', 393 'Content Source' : '', 394 'Canonical URL' : 'https://www.sentinelandenterprise.com/contact-us/', 395 'Slug' : 'contact-us', 396 'Primary_Section' : '', 397 'Primary_Tag' : '', 398 'Associated_Tags' : '', 399 'Associated_Sections' : '', 400 'Associated_Taxonomies' : '', 401 'Byline' : 'Jendhamuni Sos', 402 'Byline_Email' : '[email protected]', 403 'Affiliation' : 'Lowell Sun', 404 'Content Title' : 'Contact Us', 405 'URL' : 'https://www.sentinelandenterprise.com/contact-us/', 406 'Page Title' : 'Contact Us', 407 'Article Characters' : '2378', 408 'Article Words' : '285', 409 'Print Export' : 'false', 410 'Paywall_Level' : 'metered', 411 'Dateline' : '', 412 'Paragraph Count' : '34', 413 'Behind Paywall' : 'true', 414 'Article Template' : '' 415 }); 416</script>
416 417<!-- End Google Tag Manager Data Layer --> 418<!-- Google Tag Manager -->
419<script>
vendor: 347 bytes, lines 419-427
419 420(function(w,d,s,l,i) { 421 w[l]=w[l]||[]; 422 w[l].push({'gtm.start':new Date().getTime(),event:'gtm.js'}); 423 var f=d.getElementsByTagName(s)[0],j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:''; 424 j.async=true; 425 j.src='https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 426}) 427(window,document,'script','dataLayer','
427GTM-TLFP4R
vendor: 4 bytes, line 427
427');
428</script>
428<!-- End Google Tag Manager --> 429 430<!-- Jetpack Open Graph Tags --> 431<meta property="og:type" content="article" /> 432<meta property="og:title" content="Contact Us" /> 433<meta property="og:url" content="https://www.sentinelandenterprise.com/contact-us/" /> 434<meta property="og:description" content="Sentinel & Enterprise 435 436P. O. Box 4004 437Westford, MA 01886 438 439(978) 343-6911 440 441Main Office Hours 442Monday – Friday: 8am to 5pm 443Closed Weekends 444 445Customer Service Hours 446Monday – Friday: 7:30am to 6pm 447Saturday –â¦" /> 448<meta property="article:published_time" content="2019-01-11T17:54:15+00:00" /> 449<meta property="article:modified_time" content="2026-07-08T20:10:31+00:00" /> 450<meta property="og:site_name" content="Sentinel and Enterprise" /> 451<meta property="og:image" content="https://www.sentinelandenterprise.com/wp-content/uploads/2019/07/Sentinel-fallback-image.jpg" /> 452<meta property="og:image:width" content="1200" /> 453<meta property="og:image:height" content="630" /> 454<meta property="og:image:alt" content="" /> 455<meta property="og:locale" content="en_US" /> 456<meta name="twitter:image" content="https://www.sentinelandenterprise.com/wp-content/uploads/2019/07/Sentinel-fallback-image.jpg" /> 457<meta name="twitter:text:title" content="Contact Us" /> 458<meta name="twitter:card" content="summary" /> 459 460<!-- End Jetpack Open Graph Tags --> 461<link rel="icon" href="https://www.sentinelandenterprise.com/wp-content/uploads/2019/07/cropped-sentinel-site-icon1.png?w=32" sizes="32x32" /> 462<link rel="icon" href="https://www.sentinelandenterprise.com/wp-content/uploads/2019/07/cropped-sentinel-site-icon1.png?w=192" sizes="192x192" /> 463<link rel="apple-touch-icon" href="https://www.sentinelandenterprise.com/wp-content/uploads/2019/07/cropped-sentinel-site-icon1.png?w=180" /> 464<meta name="msapplication-TileImage" content="https://www.sentinelandenterprise.com/wp-content/uploads/2019/07/cropped-sentinel-site-icon1.png?w=270" /> 465 </head> 466 467 <body class="wp-singular page-template-default page page-id-12 wp-custom-logo wp-theme-wp-mason wp-child-theme-scng"> 468 469 <!-- Google Tag Manager (noscript) -->
vendor: 68 bytes, lines 469-470
469 470<noscript><iframe src='https://www.googletagmanager.com/ns.html?id=
470GTM-TLFP4R
vendor: 83 bytes, line 470
470' height='0' width='0' style='display:none;visibility:hidden'></iframe></noscript>
471<!-- End Google Tag Manager (noscript) --> 472 <a href="#content" class="sr-only">Skip to content</a> 473 474 <div id="page" class="hfeed site"> 475 476 <div class="header-placeholder"></div><header class="site-header default headroom--top"> 477 <div class="nav-wrapper-primary"> 478 479 <div class="nav-wrapper-secondary "> 480 481 <div class="screen-wrapper"> 482 483 <div class="nav-primary-top"> 484 485 <div class="pushnav-flex-wrapper"> 486 <nav class="pushnav" role="navigation" aria-label="Main Menu" id="pushnav-container"><div id="menu-toggle" class="menu-toggle" role="button" aria-expanded="false" tabindex="0" aria-label="Open menu of all sections"><span class="icon-hamburger"></span><span class="menu-label">All Sections</span></div> 487 <div class="wrapper-nav pushnav"> 488 <div class="border-container"> 489 <div class="top-pushnav-container"> 490 <a href="https://checkout.sentinelandenterprise.com/?&g2i_or_o=Internet&g2i_or_p=mg2nav&g2i_source=SB&g2i_medium=side-nav&g2i_campaign=nav&returnUrl=https%253A%252F%252Fwww.sentinelandenterprise.com%252F" id="mega-subscribe-button" class="subscribe-button" > 491 <span>Subscribe Now</span> </a> 492 <div class="accuweather-wrap"> 493 <div class="weather-date"> 494 <div class='dfm_accuweather_current_conditions'> 495 <a target="_blank" href="http://www.accuweather.com/en/us/fitchburg-ma/01420/current-weather/472_pc?lang=en-us&partner=mng_41" title="Current Weather Conditions" aria-label="Current temperature is 71°F, view full weather conditions in a new window"> 496 <span>71°F</span> 497 <i class="bi-clouds" role="img" aria-label="weather icon clouds"></i> 498 </a> 499 </div> <div class="date"> 500 Thursday, October 1st 2026 <a title="Link to E-Edition opens in a new window" target="_blank" href="https://enewspaper.sentinelandenterprise.com/"> 501 <p class="e-edition">E-Edition</p> </a> 502 </div> 503 </div> 504 </div> 505 <a href="https://www.sentinelandenterprise.com" class="home-link icon-home3" title="Link to Home Page"> 506 <span>Home Page</span> 507 </a> 508 </div> 509 <ul id="pushnav" class="menu"><li id="menu-item-134" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-has-children menu-item-134 menu-large"><a href="https://www.sentinelandenterprise.com/news/" aria-expanded="false" aria-haspopup="true">News</a> 510<ul class="sub-menu"> 511 <li id="menu-item-135" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-135 menu-large"><a href="https://www.sentinelandenterprise.com/news/">News</a></li> 512 <li id="menu-item-748246" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-748246 menu-large"><a href="https://www.sentinelandenterprise.com/latest-headlines/">Latest Headlines</a></li> 513 <li id="menu-item-137" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-137 menu-large"><a href="https://www.sentinelandenterprise.com/local-news/">Local News</a></li> 514 <li id="menu-item-138" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-138 menu-large"><a href="https://www.sentinelandenterprise.com/news/crime-public-safety/">Crime and Public Safety</a></li> 515 <li id="menu-item-139" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-139 menu-large"><a href="https://www.sentinelandenterprise.com/news/politics/">Politics</a></li> 516 <li id="menu-item-141" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-141 menu-large"><a href="https://www.sentinelandenterprise.com/business/">Business</a></li> 517 <li id="menu-item-1061597" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1061597 menu-large"><a href="https://www.sentinelandenterprise.com/best-reviews/">Best Reviews</a></li> 518 <li id="menu-item-143" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-143 menu-large"><a href="https://www.sentinelandenterprise.com/contact-us/">Contact Us</a></li> 519 <li id="menu-item-1365982" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1365982 menu-large"><a href="https://www.sentinelandenterprise.com/news/health/">Health</a></li> 520 <li id="menu-item-144" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-144 menu-large"><a href="https://mng-sen.smugmug.com/">Purchase Photos</a></li> 521 <li id="menu-item-1359378" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1359378 menu-large"><a href="https://www.sentinelandenterprise.com/news/national/">National News</a></li> 522 <li id="menu-item-1365949" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1365949 menu-large"><a href="https://www.sentinelandenterprise.com/news/world/">World News</a></li> 523</ul> 524</li> 525<li id="menu-item-145" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-has-children menu-item-145 menu-large"><a href="https://www.sentinelandenterprise.com/sports/" aria-expanded="false" aria-haspopup="true">Sports</a> 526<ul class="sub-menu"> 527 <li id="menu-item-146" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-146 menu-large"><a href="https://www.sentinelandenterprise.com/sports/">Sports</a></li> 528 <li id="menu-item-147" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-147 menu-large"><a href="https://www.sentinelandenterprise.com/sports/high-school/">High School Sports</a></li> 529 <li id="menu-item-148" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-148 menu-large"><a href="https://www.sentinelandenterprise.com/sports/nfl/new-england-patriots/">New England Patriots</a></li> 530 <li id="menu-item-149" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-149 menu-large"><a href="https://www.sentinelandenterprise.com/sports/nba/boston-celtics/">Boston Celtics</a></li> 531 <li id="menu-item-150" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-150 menu-large"><a href="https://www.sentinelandenterprise.com/sports/mlb/boston-red-sox/">Boston Red Sox</a></li> 532 <li id="menu-item-151" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-151 menu-large"><a href="https://www.sentinelandenterprise.com/sports/nhl/bruins/">Boston Bruins</a></li> 533 <li id="menu-item-152" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-152 menu-large"><a href="https://www.sentinelandenterprise.com/sports/golf/">Golf</a></li> 534</ul> 535</li> 536<li id="menu-item-153" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-has-children menu-item-153 menu-large"><a href="https://www.sentinelandenterprise.com/things-to-do/entertainment/" aria-expanded="false" aria-haspopup="true">Entertainment</a> 537<ul class="sub-menu"> 538 <li id="menu-item-748228" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-748228 menu-large"><a href="https://www.sentinelandenterprise.com/things-to-do/entertainment/">Entertainment</a></li> 539 <li id="menu-item-157" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-157 menu-large"><a href="https://www.comicskingdom.com/?utm_source=dfm">Comics</a></li> 540 <li id="menu-item-158" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-158 menu-large"><a href="https://www.comicskingdom.com/puzzles?utm_source=dfm">Puzzles</a></li> 541 <li id="menu-item-905874" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-905874 menu-large"><a href="https://www.sentinelandenterprise.com/events/">Events</a></li> 542 <li id="menu-item-878959" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-878959 menu-large"><a href="https://www.sentinelandenterprise.com/fun-and-games/">Fun and Games</a></li> 543 <li id="menu-item-902324" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-902324 menu-large"><a href="https://www.sentinelandenterprise.com/special-sections/">Special Sections</a></li> 544 <li id="menu-item-902325" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-902325 menu-large"><a href="https://www.sentinelandenterprise.com/contest/">Contests</a></li> 545</ul> 546</li> 547<li id="menu-item-748229" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-has-children menu-item-748229 menu-large"><a href="https://www.sentinelandenterprise.com/things-to-do/" aria-expanded="false" aria-haspopup="true">Lifestyle</a> 548<ul class="sub-menu"> 549 <li id="menu-item-748230" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-748230 menu-large"><a href="https://www.sentinelandenterprise.com/things-to-do/">Lifestyle</a></li> 550 <li id="menu-item-748245" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-748245 menu-large"><a href="/tag/weekender">Weekender</a></li> 551 <li id="menu-item-423641" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-423641 menu-large"><a href="/tag/dear-annie">Dear Annie</a></li> 552 <li id="menu-item-423642" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-423642 menu-large"><a href="/tag/dream-retriever">Dream Retriever</a></li> 553 <li id="menu-item-423644" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-423644 menu-large"><a href="/tag/ask-the-psychic">Ask the Psychic</a></li> 554 <li id="menu-item-423645" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-423645 menu-large"><a href="/tag/hopeful-thinking">Hopeful Thinking</a></li> 555 <li id="menu-item-423646" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-423646 menu-large"><a href="/tag/community-conversations">Community Conversations</a></li> 556 <li id="menu-item-624178" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-624178 menu-large"><a href="https://www.sentinelandenterprise.com/tag/parent-forward/">Parent Forward</a></li> 557</ul> 558</li> 559<li id="menu-item-952211" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-has-children menu-item-952211 menu-large"><a href="https://www.sentinelandenterprise.com/obituaries/" aria-expanded="false" aria-haspopup="true">Obituaries</a> 560<ul class="sub-menu">
561 <li id="menu-item-952212" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-952212 menu-large"><a href="https://www.sentinelandenterprise.com/obituaries/">Obituaries</a></li> 562 <li id="menu-item-952213" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-952213 menu-large"><a href="https://www.sentinelandenterprise.com/news/news-obituaries/">News Obituaries</a></li> 563 <li id="menu-item-181" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-181 menu-large"><a href="https://placeobits.rememberingma.us/nygroup-adportal/lowell-obits/index.html">Place an Obituary</a></li> 564 <li id="menu-item-180" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-180 menu-large"><a href="https://www.lowellsun.com/memoriams/">Memoriams Form</a></li> 565</ul> 566</li> 567<li id="menu-item-1759370" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1759370 menu-large"><a href="https://marketplace.newspaperclassifiedsma.com/">Classifieds</a></li> 568<li id="menu-item-183" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-has-children menu-item-183 menu-large"><a href="https://www.sentinelandenterprise.com/opinion/" aria-expanded="false" aria-haspopup="true">Opinion</a> 569<ul class="sub-menu"> 570 <li id="menu-item-184" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-184 menu-large"><a href="https://www.sentinelandenterprise.com/opinion/">Opinion</a></li> 571 <li id="menu-item-185" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-185 menu-large"><a href="https://www.sentinelandenterprise.com/opinion/editorials/">Editorials</a></li> 572 <li id="menu-item-423650" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-423650 menu-large"><a href="/tag/letters">Letters to the Editor</a></li> 573 <li id="menu-item-189" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-189 menu-large"><a href="https://www.sentinelandenterprise.com/submit-a-letter/">Submit a Letter</a></li> 574</ul> 575</li> 576<li id="menu-item-1737730" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1737730 menu-large"><a href="https://www.sentinelandenterprise.com/best-reviews/">BestReviews</a></li> 577<li id="menu-item-1317849" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-has-children menu-item-1317849 menu-large"><a href="https://www.sentinelandenterprise.com/branded-content/" aria-expanded="false" aria-haspopup="true">Branded Content</a> 578<ul class="sub-menu"> 579 <li id="menu-item-1317854" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1317854 menu-large"><a href="https://www.sentinelandenterprise.com/sponsor-content-hub/?ntv_adpz=4099">Paid Content by Brandpoint</a></li> 580</ul> 581</li> 582<li id="menu-item-855009" class="subscribe-visibility subscribe-special custom-button menu-item menu-item-type-custom menu-item-object-custom menu-item-855009"><a href="https://checkout.sentinelandenterprise.com/?&g2i_or_o=Internet&g2i_or_p=mg2nav&g2i_source=SB&g2i_medium=side-nav&g2i_campaign=nav&returnUrl=https%253A%252F%252Fwww.sentinelandenterprise.com%252F">Subscribe</a></li> 583<li id="menu-item-696918" class="log-in-button subscribe-special custom-button menu-item menu-item-type-custom menu-item-object-custom menu-item-696918"><a href="https://www.sentinelandenterprise.com/login">Log In</a></li> 584<li id="menu-item-770926" class="log-out-button menu-item menu-item-type-custom menu-item-object-custom menu-item-770926 menu-large"><a href="/logout">Logout</a></li> 585</ul> </div> 586 <div class="newsletter-nav"> 587 <div class="newsletter-simple"> 588 <div class="newsletter-item"> 589 <p class="prompt">Sign up for email newsletters</p> 590 <a class="sign-up-button" href="https://myaccount.sentinelandenterprise.com/se/preference" 591 aria-label="Click here to go to the newsletter sign up page"> 592 Sign Up</a> 593 </div> 594 </div> 595 </div> 596 </div> 597 </nav> 598 </div> 599 <div class="hidden-logo logo-display"> 600 <div class="logo custom-logo"><a href="https://www.sentinelandenterprise.com" aria-label="Sentinel and Enterprise"><img src="https://www.sentinelandenterprise.com/wp-content/uploads/2022/04/SE1.png" alt="Sentinel and Enterprise"></a></div> </div> 601 <div class="digisubs-wrapper"> 602 <nav class="digisubs-pushmenu hidden" role="navigation" aria-label="Account Menu" id="digisubs-push-container"> 603 <div id="digisubs-toggle" class="digisubs-toggle pushnav" role="button" aria-expanded="false" tabindex="0" aria-label="Open menu"> 604 <div id="mng-icon-image"> 605 <img id="pushnav-icon" alt=""> 606 <div id="blank-icon-user"> 607 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="20" height="20" viewBox="0 0 32 32"> 608 <path fill="#000000" d="M18 22.082v-1.649c2.203-1.241 4-4.337 4-7.432 0-4.971 0-9-6-9s-6 4.029-6 9c0 3.096 1.797 6.191 4 7.432v1.649c-6.784 0.555-12 3.888-12 7.918h28c0-4.030-5.216-7.364-12-7.918z"></path> 609 </svg> 610 </div> 611 <span class="icon-arrow-down"></span> 612 </div> 613 </div>
614 <div class="wrapper-nav-subs pushnav"> 615 <div class="border-container"> 616 <ul id="dfm-digisubs-push-menu" class="menu"><li id="menu-item-913861" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-913861"><a href="https://checkout.sentinelandenterprise.com/?&g2i_or_o=Internet&g2i_or_p=mg2nav&g2i_source=SB&g2i_medium=nav2&g2i_campaign=nav&returnUrl=https%253A%252F%252Fwww.sentinelandenterprise.com%252F">Subscribe</a></li> 617<li id="menu-item-913862" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-913862"><a href="/login/">Login</a></li> 618</ul> <div id="push-account-content"> 619 <div class="show-digisubs-push" id="email-source-wrapper"> 620 <a class="account-link" id="push-email-link"></a> 621 <p class="logged-in-source" id="push-auth-source"></p> 622 </div> 623 <a class="show-digisubs-push account-link" id="push-account-link" data-mng-click="account-settings" data-mng-category="account-link" data-mng-action="account-settings">Account Settings</a> 624 <a class="show-digisubs-push" id="push-contact-us" href="/contact-us" data-mng-click="contact-us" data-mng-category="account-link" data-mng-action="contact-us">Contact Us</a> 625 <a class="show-digisubs-push" id="push-log-out" href="/logout" data-mng-click="log-out" data-mng-category="account-link" data-mng-action="log-out">Log Out</a> 626 <div class="show-digisubs-push marketing-slot" id="push-marketing-slot"></div> 627 <label class="user-spoof">Spoof a user</label> 628 <input id="push-user-spoof-control" class="user-spoof" type="checkbox"> 629 <ul id="newsLetterItem-push" class="newsLetterContent"></ul> 630 </div> 631 </div> 632 <div class="newsletter-nav"> 633 <div class="newsletter-simple"> 634 <div class="newsletter-item"> 635 <p class="prompt">Sign up for email newsletters</p> 636 <a class="sign-up-button" href="https://myaccount.sentinelandenterprise.com/se/preference" 637 aria-label="Click here to go to the newsletter sign up page"> 638 Sign Up</a> 639 </div> 640 </div> 641 </div> 642 </div> 643 </nav> 644 <div class="digisubs-wrapper-large" id="digisubs-wrapper-large"> 645 <ul id="dfm-digisubs-menu" class="menu"><li id="menu-item-855003" class="subscribe-visibility subscribe-special custom-button menu-item menu-item-type-custom menu-item-object-custom menu-item-855003"><a href="https://checkout.sentinelandenterprise.com/?&g2i_or_o=Internet&g2i_or_p=mg2nav&g2i_source=SB&g2i_medium=nav2&g2i_campaign=nav&returnUrl=https%253A%252F%252Fwww.sentinelandenterprise.com%252F">Subscribe</a></li> 646<li id="menu-item-839856" class="log-in-button subscribe-special custom-button menu-item menu-item-type-custom menu-item-object-custom menu-item-839856"><a href="/login/">Login</a></li> 647</ul> </div> 648 </div> 649 <div class="search-icon-wrapper"><span class="icon-search" aria-label="Click here or hit enter to open a Search box" id="dfm-search-icon" role="button" tabindex=0 aria-expanded="false"></span></div><form class="search-form header-search" method="GET" id="search-bar" action="https://www.sentinelandenterprise.com/"> 650 651 <div class="input-wrapper"> 652 <span class="icon-search" aria-hidden="true"></span> 653 <input id="mng-search-focus" type="text" placeholder="Type your search" name="s" aria-label="Type your search"> 654 <input name="orderby" type="hidden" value="relevance"/> 655 <input name="order" type="hidden" value="desc"/> 656 <div class="search-button-container"> 657 <button class="search-button" type="submit"> 658 <span>Search</span> 659 </button> 660 </div> 661 </div> 662 663</form> 664 665 666 </div> 667 668 </div> 669 670 <div class="nav-primary-middle"> 671 672 <div class="accuweather-wrap"> 673 <div class="weather-date"> 674 <div class='dfm_accuweather_current_conditions'> 675 <a target="_blank" href="http://www.accuweather.com/en/us/fitchburg-ma/01420/current-weather/472_pc?lang=en-us&partner=mng_41" title="Current Weather Conditions" aria-label="Current temperature is 71°F, view full weather conditions in a new window"> 676 <span>71°F</span> 677 <i class="bi-clouds" role="img" aria-label="weather icon clouds"></i> 678 </a> 679 </div> <div class="date"> 680 Thursday, October 1st 2026 <a title="Link to E-Edition opens in a new window" target="_blank" href="https://enewspaper.sentinelandenterprise.com/"> 681 <p class="e-edition">E-Edition</p> </a> 682 </div> 683 </div>
684 </div> 685 <div class="hidden-logo"><div class="logo custom-logo"><a href="https://www.sentinelandenterprise.com" aria-label="Sentinel and Enterprise"><img src="https://www.sentinelandenterprise.com/wp-content/uploads/2022/04/SE1.png" alt="Sentinel and Enterprise"></a></div></div> <div class="sponsorship-ad-wrapper"> 686 <div class="dfp-ad dfp-sponsorship_1" id="div-gpt-ad-sponsorship_1" style="visibility:hidden"> 687 <div class="htlad-sponsorship_1" data-unit='sentinelandenterprise.com/contact-us/sponsorship_1' data-targeting=''></div> 688 </div> </div> 689 690 </div> 691 692 <div class="nav-primary-bottom"> 693 694 <div class="nav-primary"> 695 <ul id="subnav-news-menu" class="menu"><li id="menu-item-839121" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-839121"><a href="https://www.sentinelandenterprise.com/latest-headlines/">Latest Headlines</a></li> 696<li id="menu-item-839122" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-839122"><a href="https://www.sentinelandenterprise.com/local-news/">Local</a></li> 697<li id="menu-item-839123" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-839123"><a href="https://www.sentinelandenterprise.com/news/police/">Crime</a></li> 698<li id="menu-item-839124" class="menu-item menu-item-type-taxonomy menu-item-object-category current-post-ancestor current-menu-parent current-post-parent menu-item-839124"><a href="https://www.sentinelandenterprise.com/news/politics/">Politics</a></li> 699<li id="menu-item-839125" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-839125"><a href="https://www.sentinelandenterprise.com/business/">Business</a></li> 700<li id="menu-item-839126" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-839126"><a href="https://www.sentinelandenterprise.com/contact-us/">Contact Us</a></li> 701<li id="menu-item-839127" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-839127"><a href="https://mng-sen.smugmug.com/">Purchase Photos</a></li> 702</ul> </div> 703 704 </div> 705 706 </div> 707 708 709<div class="widget widget-trending-stories"> 710</div><div class="breadcrumbs"> 711 <div class="breadcrumbs-bar"><a href="https://www.sentinelandenterprise.com/" class="page-home">Home</a><span class="icon-arrow-right"></span><span class="current-page">Contact Us</span></div></div> 712 713 </div> 714 </header><div id="content" class="site-content"> 715 <div class="header-banners"> 716 <div class="dfp-ad dfp-interstitial" id="div-gpt-ad-interstitial" style="visibility:hidden"> 717 <div class="htlad-interstitial" data-unit='sentinelandenterprise.com/contact-us/interstitial' data-targeting=''></div> 718 </div> <div class="dfp-ad dfp-top_leaderboard" id="div-gpt-ad-top_leaderboard" style="visibility:hidden"> 719 <div class="htlad-top_leaderboard" data-unit='sentinelandenterprise.com/contact-us/top_leaderboard' data-targeting=''></div> 720 </div> </div> 721 722 <div id="primary" class="content-area"><main id="main" class="site-main" role="main"> <article id="page-12" class="post-12 page type-page status-publish hentry"> 723 <div class="article-body"> 724 <div class="body-copy"> 725 <p><strong>Sentinel & Enterprise</strong></p> 726<p><strong>P. O. Box 4004<br /> 727Westford, MA 01886 </strong></p> 728<p><strong>(978) 343-6911</strong></p> 729<p><strong>Main Office Hours</strong><br /> 730Monday – Friday: 8am to 5pm<br /> 731<strong>Closed Weekends</strong></p> 732<p><strong>Customer Service Hours</strong><br /> 733Monday – Friday: 7:30am to 6pm<br /> 734Saturday – Sunday: 6:30am to 11am<br /> 735Phone: 866-221-9157</p> 736<hr /> 737<p><strong>DISPLAY ADVERTISING</strong> 617-619-6213, <a href="mailto:[email protected]">[email protected]</a><br /> 738<strong>RECRUITMENT & LINE ADVERTISING</strong> 978-970-4628</p> 739<p><strong>
739Classified Advertising </strong><br /> 740Office Hours: Monday â Friday, 9 a.m. to 5 p.m.<br /> 741To place a classified ad: 978-970-4628; <a href="mailto:[email protected]">[email protected] </a></p> 742<p><strong>Legals/Public Notices </strong><br /> 743978-970-4628; [email protected]<br /> 744Place your <a href="https://placeobits.rememberingma.us/nygroup-adportal/ma-legals/index.html" target="_blank" rel="noopener">public notice</a> using our self-serve site</p> 745<p><strong>Obituaries </strong><br /> 746978-970-4652; [email protected]<br /> 747Place an <a href="https://placeobits.rememberingma.us/nygroup-adportal/lowell-obits/index.html" target="_blank" rel="noopener">obituary</a> on our self-serve site</p> 748<p><strong>TIM GARVEY</strong><br /> 749<em>Advertising Manager</em><br /> 750Email: <a href="[email protected]">[email protected]</a><br /> 751Phone: 617-619-6134</p> 752<p><strong>RAE TETLOW</strong><br /> 753<em>Marketing & Special Section Coordinator</em><br /> 754Phone: 413-351-1078<br /> 755E-mail: <a href="mailto:[email protected]">[email protected]</a></p> 756<hr /> 757<p><strong>For Letters to the Editor Questions</strong><br /> 758Please email <a href="mailto:[email protected]">[email protected]</a></p> 759<p><strong>To reach the newsroom at night</strong><br /> 760Monday through Friday until 10 p.m.: 617-619-6328</p> 761<p><strong>Main Contact Email Addresses</strong><br /> 762News……………………….<a href="mailto:[email protected]">[email protected]</a><br /> 763Letters to the Editor……<a href="mailto:[email protected]">[email protected]</a><br /> 764Sports……………………..<a href="mailto:[email protected]">[email protected]</a><br /> 765Circulation………………..<a href="mailto:[email protected]">[email protected]</a><br /> 766Community News……….<a href="mailto:[email protected]">[email protected]</a><br /> 767Obituaries…………………<a href="mailto:[email protected]">[email protected]</a></p> 768<p>If your paper does not arrive in good dry condition before 6am Monday through Friday, 7am weekends and holidays, call <strong>866-221-9157</strong> before 6:00 p.m. weekdays or 10:30 a.m. weekends.</p> 769<hr /> 770<p><strong>EXECUTIVEÂ OFFICE</strong></p> 771<hr /> 772<p><strong>KEVIN CORRADO<br /> 773</strong><em>Publisher</em><br /> 774978-970-4807<br /> 775<a href="mailto:[email protected]">[email protected]</a></p> 776<p><strong>ED WOODS</strong><br /> 777<em>Regional Vice President/CRO</em><br /> 778617-619-6394<br /> 779<a href="mailto:[email protected]">[email protected]</a></p> 780<p><strong>MIKE SHEEHAN</strong><br /> 781<em>Regional Vice President of Circulation</em><br /> 782978-970-4855<br /> 783<a href="mailto:[email protected]">[email protected]</a></p> 784<hr /> 785<p><strong>EDITORIAL</strong></p> 786<hr /> 787<p><strong>JOHN VINCENT</strong><br /> 788<em>Senior Editor</em><br /> 789<strong>Phone:</strong> 617-619-6328<br /> 790<strong>Email:</strong> <a href="[email protected]">[email protected]</a></p> 791<hr /> 792<p><img loading="lazy" decoding="async" style="float: left;margin-right: 15px;margin-bottom: 10px" src="https://www.sentinelandenterprise.com/wp-content/uploads/2020/12/danielle-ray.jpg" alt="" width="63" height="" /><strong>DANIELLE RAY<br /> 793</strong><em>News Reporter</em><strong><br /> 794E-mail: </strong><a href="mailto:[email protected]" target="_blank" rel="noopener noreferrer">[email protected]</a></p> 795<p> </p> 796<hr /> 797<p><strong> SPORTS</strong></p> 798<hr /> 799<p><strong>NICK MALLARD </strong><em>Sports Reporter</em><br /> 800<strong>Phone:</strong> (978) 516-2283<br /> 801<strong>E-mail:</strong> <a href="mailto:[email protected]">[email protected]</a><br /> 802<strong>Twitter:</strong> @n_mallard<br /> 803<strong>Facebook:</strong> Nicholas Mallard</p> 804<p> </p> 805 </div> 806 </div> 807 </article><!-- #post-## --> 808 <div class="dfp-ad dfp-bottom_leaderboard" id="div-gpt-ad-bottom_leaderboard" style="visibility:hidden"> 809 <div class="htlad-bottom_leaderboard" data-unit='sentinelandenterprise.com/contact-us/bottom_leaderboard' data-targeting=''></div>
810 </div></main></div> 811 812 </div><!-- #content --> 813 814 <footer class="site-footer"> 815 816 <div class="main-footer-wrapper"> 817 818 <div class="footer-logo"> 819 820 <div class="logo custom-logo"><a href="https://www.sentinelandenterprise.com" aria-label="Sentinel and Enterprise"><img src="https://www.sentinelandenterprise.com/wp-content/uploads/2022/04/SE1.png" alt="Sentinel and Enterprise"></a></div> 821 </div> 822 823 <ul id="footer-menu" class="footer-menus"><li id="menu-item-847424" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-847424"><a href="https://checkout.sentinelandenterprise.com/?g2i_source=SB&g2i_medium=footer&g2i_campaign=nav&g2i_or_o=Internet&g2i_or_p=footer">Subscribe</a><span class="expander"><a href="#" class="icon-plus" aria-label="Click here to expand the menu"></a></span> 824 825<ul class="footer-menu"> 826 <li id="menu-item-847425" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-847425"><a href="https://enewspaper.sentinelandenterprise.com/">e-Edition</a></li> 827 <li id="menu-item-847426" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-847426"><a href="https://myaccount.sentinelandenterprise.com/se/preference">Sign Up For Newsletters</a></li> 828 <li id="menu-item-847427" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-847427"><a href="https://www.sentinelandenterprise.com/mobile-apps">Mobile Apps</a></li> 829</ul> 830</li> 831<li id="menu-item-847428" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-847428"><a href="https://www.sentinelandenterprise.com/contact-us">Contact Us</a><span class="expander"><a href="#" class="icon-plus" aria-label="Click here to expand the menu"></a></span> 832 833<ul class="footer-menu"> 834 <li id="menu-item-1433989" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1433989"><a href="https://www.sentinelandenterprise.com/digital-subscription-frequently-asked-questions/">Digital Subscription FAQ</a></li> 835 <li id="menu-item-847429" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-847429"><a href="https://mng-sen.smugmug.com/">Purchase Photos</a></li> 836 <li id="menu-item-847430" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-847430"><a href="https://www.sentinelandenterprise.com/contest/">Contests</a></li> 837 <li id="menu-item-847431" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-847431"><a href="https://myworkdaycenter.wd5.myworkdayjobs.com/MNG">Work for Us</a></li> 838 <li id="menu-item-847432" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-847432"><a href="https://www.medianewsgroup.com/privacy-policy/">Privacy Policy</a></li> 839 <li id="menu-item-847433" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-847433"><a href="https://www.medianewsgroup.com/accessibility-statement/">Accessibility</a></li> 840 <li id="menu-item-896552" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-896552"><a href="https://www.sentinelandenterprise.com/sitemap/">Sitemap</a></li> 841</ul> 842</li> 843<li id="menu-item-847434" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-847434"><a href="http://marketplace.newspaperclassifiedsma.com/">Classifieds</a><span class="expander"><a href="#" class="icon-plus" aria-label="Click here to expand the menu"></a></span> 844 845<ul class="footer-menu"> 846 <li id="menu-item-847435" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-847435"><a href="https://marketplace.newspaperclassifiedsma.com/">Public Notices</a></li> 847 <li id="menu-item-847436" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-847436"><a href="https://marketplace.newspaperclassifiedsma.com/">Homes</a></li> 848 <li id="menu-item-847437" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-847437"><a href="https://www.findjobsinne.com/">Jobs</a></li> 849</ul> 850</li> 851<li id="menu-item-847439" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-847439"><a href="https://www.medianewsgroup.com/advertise-with-us/">MNG Network Advertising</a><span class="expander"><a href="#" class="icon-plus" aria-label="Click here to expand the menu"></a></span> 852 853<ul class="footer-menu"> 854 <li id="menu-item-847440" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-847440"><a href="https://businessdirectory.sentinelandenterprise.com/marketplace/todays_ads/">Todayâs Print Ads</a></li> 855 <li id="menu-item-847441" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-847441"><a href="https://www.sentinelandenterprise.com/special-sections/">Special Sections</a></li> 856 <li id="menu-item-847442" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-847442"><a href="https://www.adtaxi.com/our-approach/">Adtaxi Solutions</a></li> 857</ul> 858</li> 859<li class="mng-follow"><div class="footer-follow"></div> 860 <a href="https://checkout.sentinelandenterprise.com/?&g2i_or_o=Internet&g2i_or_p=mg2nav&g2i_source=SB&g2i_medium=side-nav&g2i_campaign=nav&returnUrl=https%253A%252F%252Fwww.sentinelandenterprise.com%252F" class="subscribe-button"> 861 <span>Subscribe Now</span> </a> 862 863 </li></ul> 864 </div> 865 866 <div class="dfm-site-info"> 867 868 <div class="colophon"> 869 870 <div class="footer-flex-menu-wrap"><ul id="footer-bottom-menu" class="menu"><li id="menu-item-214" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-214"><a href="https://www.medianewsgroup.com/terms-of-use/">Terms of Use</a></li> 871<li id="menu-item-215" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-215"><a href="https://www.medianewsgroup.com/cookie-policy/">Cookie Policy</a></li> 872<li id="menu-item-1123202" class="cookie-policy-click menu-item menu-item-type-custom menu-item-object-custom menu-item-1123202"><a href="#">Cookie Preferences</a></li> 873<li id="menu-item-877455" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-877455"><a href="https://www.medianewsgroup.com/privacy-policy/#911-notice-at-collection-the-personal-information-that-we-collect">California Notice at Collection</a></li> 874<li id="menu-item-877456" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-877456"><a href="https://www.medianewsgroup.com/privacy-policy/#916-notice-
874of-financial-incentive">Notice of Financial Incentive</a></li> 875<li id="menu-item-877457" class="cookie-policy-click menu-item menu-item-type-custom menu-item-object-custom menu-item-877457"><a href="#">Do Not Sell/Share My Personal Informatio</a></li> 876<li id="menu-item-216" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-216"><a href="https://www.medianewsgroup.com/arbitration">Arbitration</a></li> 877<li id="menu-item-217" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-217"><a href="https://www.medianewsgroup.com/">MediaNews Group</a></li> 878<li id="menu-item-218" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-218"><a href="https://vip.wordpress.com/">Powered by WordPress.com VIP</a></li> 879</ul><div class="footer-copyright-notice"><p>Copyright 2026 Sentinel and Enterprise. All rights reserved. The use of any content on this website for the purpose of training artificial intelligence systems, algorithms, machine learning models, text and data mining, or similar use is strictly prohibited without explicit written consent.</p></div> </div> 880 </div> 881 882 </div> 883 884 </footer><!-- .site-footer --> 885 886 </div><!-- #page --> 887 888
888<script> 889 (function(w) { 890 if ( null !== document.cookie.match(/^(.*;)?\s*auth0_sub\s*=\s*[^;]+(.*)?$/) ) { 891 w.PARSELY = { 892 autotrack: false, 893 onReady: function() { 894 PARSELY.updateDefaults({ 895 data: { 896 plan: "subscriber" 897 } 898 }); 899 PARSELY.beacon.trackPageView(); 900 } 901 }; 902 } 903 })(window); 904 </script>
904<div id="mobile-adhesion" class="closed"><button class="close-mobile-adhesion" onclick="closeMobileAdhesionAd()" onkeydown="keyboardHandler(event)">Close</button> 905
905<script> 906 function closeMobileAdhesionAd() { 907 document.getElementById("mobile-adhesion").classList.add("closed"); 908 } 909 910 function keyboardHandler(e) { 911 var keycode = ( e.keyCode ? e.keyCode : e.which ); 912 if (keycode == "13") { 913 closeMobileAdhesionAd(); 914 } 915 } 916 </script>
916 917 <div class="dfp-ad dfp-mobile_adhesion" id="div-gpt-ad-mobile_adhesion" style="visibility:hidden"> 918 <div class="htlad-mobile_adhesion" data-unit='sentinelandenterprise.com/contact-us/mobile_adhesion' data-targeting=''></div> 919 </div></div>
919<script type='text/javascript'> 920/* <![CDATA[ */ 921if ( 'undefined' !== typeof _snaq ) { 922_snaq.push(['setAuthor', 'Jendhamuni Sos']); 923_snaq.push(['setArticlePublishTime','2019-01-11T17:54:15-05:00']); 924_snaq.push(['setSection', 'Contact Us']); 925} 926/* ]]> */ 927</script>
927 928<div id="mg2Widget-newsletter-container"></div>
928<script type="importmap" id="wp-importmap"> 929{"imports":{"react":"https://esm.sh/[email protected]","react/jsx-runtime":"https://esm.sh/[email protected]/jsx-runtime","react-dom":"https://esm.sh/[email protected]","react-dom/client":"https://esm.sh/[email protected]/client"}} 930</script>
vendor: 1 bytes, line 930
930
931<script type="module" src="https://www.sentinelandenterprise.com/wp-content/plugins/mng-islands/launcher-static/island-launcher.js" id="island-launcher-js-module"></script>
vendor: 1 bytes, line 931
931
932<script type="module" src="/var/www/wp-content/plugins/mng-digital-subscriber-widgets/static/assets/main-6vr_nK05.js?ver=1790890291" id="vite_js_assets_main-6vr_nK05.js-js-module"></script>
vendor: 1 bytes, line 932
932
933<script type="module" src="https://plugins.mngdigisubs.com/mng-auth.min.js?siteCode=SEProd_WP&autoInit=true&ver=6.9.9" id="mng_auth_cdn-js-module"></script>
933 934<link rel="modulepreload" href="https://esm.sh/[email protected]" id="react-js-modulepreload"> 935<link rel="modulepreload" href="https://esm.sh/[email protected]/jsx-runtime" id="react/jsx-runtime-js-modulepreload"> 936<link rel="modulepreload" href="https://esm.sh/[email protected]" id="react-dom-js-modulepreload"> 937<link rel="modulepreload" href="https://esm.sh/[email protected]/client" id="react-dom/client-js-modulepreload">
938<script src="https://www.sentinelandenterprise.com/var/www/wp-content/plugins/mng-htl/dist/js/mngHtlMods.min.js?ver=1790371222" id="__htl_mods-js"></script>
vendor: 1 bytes, line 938
938
939<script src="https://htlbid.com/v3/sentinelandenterprise.com/htlbid.js" id="__htl_script-js" data-wp-strategy="async"></script>
vendor: 1 bytes, line 939
939
940<script id="__htl_script-js-after"> 941 window.htlbid = window.htlbid || {}; 942 htlbid.cmd = htlbid.cmd || []; 943 htlbid.cmd.push( function() { 944 htlbid.layout( 'universal' ); 945 htlbid.setTargeting( "is_testing","no" ); 946 htlbid.setTargeting( "kv", ["contact-us","page"] ); 947 htlbid.setTargeting( "page", "page" ); 948 htlbid.setTargeting( "content", [] ); 949 htlbid.setTargeting( "RPN", "15724250650" ); 950 htlbid.setTargeting( "rurl", "" ); 951 htlbid.setTargeting( "articleid", "" ); 952 window.htlbid.pubads().setPublisherProvidedId( "1aad4d32cbb02f0b00b2cdb61def57936d76893ad6651c4ad0499020144938e1" ); 953 } ); 954//# sourceURL=__htl_script-js-after 955</script>
vendor: 1 bytes, line 955
955
956<script type="text/javascript" src="https://www.sentinelandenterprise.com/wp-content/themes/wp-mason/dist/js/osanoCustom.min.js?m=1790798714g" ></script>
956<script id="mng-dummy-flag-js-after"> 957 function checkDummyFlagAndShowBanner() { 958 if ( !window.mngfeatures || !window.mngfeatures.visor ) { 959 return; 960 } 961 var isEnabled = window.mngfeatures.visor.isEnabled( 'say-hello' ); 962 if ( isEnabled ) { 963 var banner = document.createElement( 'div' ); 964 banner.textContent = 'Hello, I\'m a dummy banner!'; 965 banner.style.cssText = 966 'position:fixed;bottom:0;left:0;right:0;padding:12px;text-align:center;' + 967 'background:#111;color:#fff;font-family:sans-serif;z-index:9999;'; 968 document.body.appendChild( banner ); 969 } 970 } 971 972 if ( window.mngfeatures && window.mngfeatures.visor ) { 973 checkDummyFlagAndShowBanner(); 974 } else { 975 window.addEventListener( 'mng-feature-flags-ready', checkDummyFlagAndShowBanner ); 976 } 977//# sourceURL=mng-dummy-flag-js-after 978</script>
vendor: 1 bytes, line 978
978
979<script type="text/javascript" src="https://www.sentinelandenterprise.com/_static/??/wp-content/plugins/photonfill/vendor/picturefill.min.js,/wp-content/plugins/photonfill/vendor/lazysizes.min.js?m=1790371222j" ></script>
979<script src="https://ak.sail-horizon.com/spm/spm.v1.min.js" id="mng-newsletters-sailthru-scout-js" data-wp-strategy="async"></script>
vendor: 1 bytes, line 979
979
980<script id="mng-newsletters-sailthru-scout-js-after"> 981Sailthru.init( {"customerId":"ca78a3a2ac950c3765168cd0547c8adb","autoTrackPageview":true,"useStoredTags":true,"excludeContent":false} ); 982//# sourceURL=mng-newsletters-sailthru-scout-js-after 983</script>
vendor: 1 bytes, line 983
983
984<script type="text/javascript" src="https://www.sentinelandenterprise.com/wp-includes/js/dist/hooks.min.js?m=1790088657g" ></script>
984<script src="https://www.sentinelandenterprise.com/wp-includes/js/dist/i18n.min.js?ver=c26c3dc7bed366793375" id="wp-i18n-js"></script>
vendor: 1 bytes, line 984
984
985<script id="wp-i18n-js-after"> 986wp.i18n.setLocaleData( { 'text direction\u0004ltr': [ 'ltr' ] } ); 987wp.i18n.setLocaleData( { 'text direction\u0004ltr': [ 'ltr' ] } ); 988//# sourceURL=wp-i18n-js-after 989</script>
vendor: 1 bytes, line 989
989
990<script id="wp-parsely-loader-js-before"> 991window.wpParselySiteId = 'sentinelandenterprise.com'; 992//# sourceURL=wp-parsely-loader-js-before 993</script>
vendor: 1 bytes, line 993
993
994<script src="https://www.sentinelandenterprise.com/wp-content/mu-plugins/wp-parsely-3.24/build/loader.js?ver=ecf94842061bea03d54b" id="wp-parsely-loader-js"></script>
vendor: 1 bytes, line 994
994
995<script data-parsely-site="sentinelandenterprise.com" src="https://cdn.parsely.com/keys/sentinelandenterprise.com/p.js?ver=3.24.1" id="parsely-cfg"></script>
vendor: 1 bytes, line 995
995
996<script src="https://www.sentinelandenterprise.com/wp-content/themes/wp-mason/dist/js/ads.min.js?ver=1.0" id="can-run-ads-js"></script>
vendor: 1 bytes, line 996
996
997<script type="text/javascript" src="https://www.sentinelandenterprise.com/_static/??-eJyVzkEOgkAMheELiQU2ysIYlpzAdWXKMDjtEFo13F40LlwYI9uXfHk/3MesTWIkBtYTkwKqkimooYUWBoUxxbkLMeqWg2wH3cAfiJOjSQgn6+cfblkYNQm4oPZ0MfnUsK/Npm9sjFcfRMF1nKHLlhf9oOjqV8daqaXcgqO0KjTIBc+RGkZPp+A82Zsf+VDsqnxf5WVVDA+GKIMH" ></script>
997<script id="digisubs-social-login-js-after"> 998(function () { 999 var logPrefix = '[digisubs-social-login]'; 1000 var readyTimeoutMs = 10000; 1001 var pendingFlag = 'mng-digisubs-regwall-social'; 1002 var reloadedFlag = 'mng-digisubs-regwall-social-reloaded'; 1003 var newsletterDoneFlag = 'mng-digisubs-regwall-nl-done'; 1004 1005 function isEmbedReady() { 1006 return !!document.querySelector('#mng-modal'); 1007 } 1008 1009 function getAuthReady() { 1010 return (window.MNGAuth && window.MNGAuth.authenticationReady) 1011 || (window.MNGAuthentication && window.MNGAuthentication.authenticationReady) 1012 || null; 1013 } 1014 1015 function decodeJwt(token) { 1016 try { 1017 var parts = token.split('.'); 1018 if (parts.length < 2) { 1019 return null; 1020 } 1021 var base64 = parts[1].replace(/-/g, '+').replace(/_/g, '/'); 1022 while (base64.length % 4) { 1023 base64 += '='; 1024 } 1025 return JSON.parse(atob(base64)); 1026 } catch (e) { 1027 return null; 1028 } 1029 } 1030 1031 function isAuthenticated() { 1032 var ready = getAuthReady(); 1033 if (ready && ready.isAuthenticated) { 1034 return true; 1035 } 1036 return hasMngSessionIdToken(); 1037 } 1038 1039 function getMngSession() { 1040 try { 1041 return JSON.parse(window.localStorage.getItem('__MNG_Session') || 'null'); 1042 } catch (e) { 1043 return null; 1044 } 1045 } 1046 1047 function hasMngSessionIdToken() { 1048 var session = getMngSession(); 1049 return !!(session && typeof session.idToken === 'string' && session.idToken.length > 20); 1050 } 1051 1052 function waitForNativeSession() { 1053 return new Promise(function (resolve) { 1054 if (hasMngSessionIdToken()) { 1055 resolve(true); 1056 return; 1057 } 1058 var started = Date.now(); 1059 var poll = window.setInterval(function () { 1060 if (hasMngSessionIdToken()) { 1061 window.clearInterval(poll); 1062 console.info(logPrefix, 'native __MNG_Session is ready'); 1063 resolve(true); 1064 } else if (Date.now() - started > 15000) { 1065 window.clearInterval(poll); 1066 console.warn(logPrefix, 'timed out waiting for native __MNG_Session'); 1067 resolve(false); 1068 } 1069 }, 100); 1070 }); 1071 } 1072 1073 function isEntitledSubscriber() { 1074 var match = document.cookie.match(/(?:^|; )mng-entitlements=([^;]*)/); 1075 if (!match) { 1076 return false; 1077 } 1078 var payload = decodeJwt(decodeURIComponent(match[1])); 1079 return !!(payload && payload.entitlement_entitled); 1080 } 1081 1082 function getAuthEmail() { 1083 var ready = getAuthReady(); 1084 if (ready && ready.claims && ready.claims.email) { 1085 return ready.claims.email; 1086 } 1087 if (ready && typeof ready.idToken === 'string') { 1088 var claims = decodeJwt(ready.idToken); 1089 if (claims && claims.email) { 1090 return claims.email; 1091 } 1092 } 1093 var session = getMngSession(); 1094 if (session && session.email) { 1095 return session.email; 1096 } 1097 if (session && session.idToken) { 1098 var sessionClaims = decodeJwt(session.idToken); 1099 if (sessionClaims && sessionClaims.email) { 1100 return sessionClaims.email; 1101 } 1102 } 1103 return ''; 1104 } 1105 1106 function hideSocialLogin() { 1107 document.querySelectorAll('.digisubs-social-login').forEach(function (el) { 1108 el.classList.add('is-hidden'); 1109 el.setAttribute('hidden', 'hidden'); 1110 }); 1111 } 1112 1113 function grantRegwallAccessCookies() { 1114 var pathname = window.location.pathname; 1115 document.cookie = 'entitled_via_newsletter=true; path=' + pathname + '; max-age=1800'; 1116 document.cookie = 'sspw_has-nl-registration=true; path=/; max-age=604800'; 1117 if (typeof demeter === 'function') { 1118 demeter('userProperties', { args: { visitorType: 'registered' } }); 1119 } 1120 console.info(logPrefix, 'granted limited article access cookies'); 1121 } 1122 1123 function waitForEngageSubscribe() { 1124 return new Promise(function (resolve, reject) { 1125 if (window.engageLibrary && typeof window.engageLibrary.sspwSuscribeToNewsletter === 'function') { 1126 resolve(); 1127 return; 1128 } 1129 var started = Date.now(); 1130 var poll = window.setInterval(function () { 1131 if (window.engageLibrary && typeof window.engageLibrary.sspwSuscribeToNewsletter === 'function') { 1132 window.clearInterval(poll); 1133 resolve(); 1134 } else if (Date.now() - started > readyTimeoutMs) { 1135 window.clearInterval(poll); 1136 reject(new Error('engageLibrary.sspwSuscribeToNewsletter not available')); 1137 } 1138 }, 100); 1139 }); 1140 } 1141 1142 function subscribeRegwallNewsletter() { 1143 var prefId = window.authentication_config && window.authentication_config.regwallPrefId; 1144 if (!prefId) { 1145 console.info(logPrefix, 'no regwallPrefId, skipping newsletter subscribe'); 1146 return Promise.resolve(false); 1147 } 1148 var email = getAuthEmail(); 1149 if (!email) { 1150 console.warn(logPrefix, 'no auth email, skipping newsletter subscribe'); 1151 return Promise.resolve(false); 1152 } 1153 return waitForEngageSubscribe().then(function () { 1154 console.info(logPrefix, 'subscribing', email, 'to prefId', prefId); 1155 return window.engageLibrary.sspwSuscribeToNewsletter(email, Number(prefId)); 1156 }); 1157 } 1158 1159 function waitForAuthEmail() { 1160 return new Promise(function (resolve) { 1161 var email = getAuthEmail(); 1162 if (email) { 1163 resolve(email); 1164 return; 1165 } 1166 var started = Date.now(); 1167 var poll = window.setInterval(function () { 1168 var nextEmail = getAuthEmail(); 1169 if (nextEmail) { 1170 window.clearInterval(poll); 1171 resolve(nextEmail); 1172 } else if (Date.now() - started > readyTimeoutMs) { 1173 window.clearInterval(poll); 1174 resolve(''); 1175 } 1176 }, 50); 1177 }); 1178 } 1179 1180 function urlWithoutWallOverride() { 1181 var url = new URL(window.location.href); 1182 if (!url.searchParams.has('wall_override')) { 1183 return ''; 1184 } 1185 url.searchParams.delete('wall_override'); 1186 return url.pathname + url.search + url.hash; 1187 } 1188 1189 function dropWallOverrideFromAddressBar() { 1190 var cleanPath = urlWithoutWallOverride(); 1191 if (!cleanPath) { 1192 return false;
1193 } 1194 window.history.replaceState({}, '', window.location.origin + cleanPath); 1195 console.info(logPrefix, 'removed wall_override from the URL before embed login reload'); 1196 return true; 1197 } 1198 1199 (function patchLocationReload() { 1200 try { 1201 var originalReload = window.location.reload.bind(window.location); 1202 window.location.reload = function () { 1203 if (sessionStorage.getItem(pendingFlag) === '1') { 1204 var cleanPath = urlWithoutWallOverride(); 1205 if (cleanPath) { 1206 console.info(logPrefix, 'embed login reload: dropping wall_override'); 1207 window.location.replace(window.location.origin + cleanPath); 1208 return; 1209 } 1210 } 1211 return originalReload(); 1212 }; 1213 } catch (e) {} 1214 })(); 1215 1216 var finishingSocialLogin = false; 1217 1218 function finishRegwallSocialLogin() { 1219 if (finishingSocialLogin) { 1220 return; 1221 } 1222 finishingSocialLogin = true; 1223 hideSocialLogin(); 1224 1225 waitForAuthEmail().then(function () { 1226 if (sessionStorage.getItem(newsletterDoneFlag) === '1') { 1227 return false; 1228 } 1229 return subscribeRegwallNewsletter().then(function (ok) { 1230 sessionStorage.setItem(newsletterDoneFlag, '1'); 1231 console.info(logPrefix, 'newsletter subscribe', ok ? 'succeeded' : 'skipped or failed'); 1232 return ok; 1233 }); 1234 }).catch(function (err) { 1235 console.error(logPrefix, 'newsletter subscribe error', err); 1236 }).then(function () { 1237 if (!isEntitledSubscriber()) { 1238 grantRegwallAccessCookies(); 1239 } 1240 return waitForNativeSession(); 1241 }).then(function (hasSession) { 1242 if (!hasSession) { 1243 console.warn(logPrefix, 'embed login did not persist __MNG_Session'); 1244 } 1245 dropWallOverrideFromAddressBar(); 1246 sessionStorage.removeItem(pendingFlag); 1247 sessionStorage.removeItem(reloadedFlag); 1248 sessionStorage.removeItem(newsletterDoneFlag); 1249 finishingSocialLogin = false; 1250 }); 1251 } 1252 1253 function onAuthenticated() { 1254 hideSocialLogin(); 1255 if (sessionStorage.getItem(pendingFlag) === '1') { 1256 dropWallOverrideFromAddressBar(); 1257 finishRegwallSocialLogin(); 1258 } 1259 } 1260 1261 function getAuthScriptEl() { 1262 return document.querySelector('script[src*="mng-auth"]'); 1263 } 1264 1265 function getAuthScriptSrc() { 1266 var el = getAuthScriptEl(); 1267 return el ? el.src : '(no mng-auth script tag)'; 1268 } 1269 1270 function authDiagnostics() { 1271 return [ 1272 'script=' + getAuthScriptSrc(), 1273 'MNGAuth=' + typeof window.MNGAuth, 1274 'module=' + typeof window.module, 1275 'exports=' + typeof window.exports, 1276 'define=' + typeof window.define, 1277 'define.amd=' + !!(window.define && window.define.amd) 1278 ].join(' '); 1279 } 1280 1281 function adoptMngAuth() { 1282 if (window.MNGAuth && (typeof window.MNGAuth.init === 'function' || typeof window.MNGAuth.showScreen === 'function')) { 1283 return window.MNGAuth; 1284 } 1285 var candidates = []; 1286 if (window.module && window.module.exports) { 1287 candidates.push(window.module.exports.MNGAuth || window.module.exports); 1288 } 1289 if (window.exports) { 1290 candidates.push(window.exports.MNGAuth || window.exports); 1291 } 1292 for (var i = 0; i < candidates.length; i++) { 1293 var candidate = candidates[i]; 1294 if (candidate && (typeof candidate.init === 'function' || typeof candidate.showScreen === 'function')) { 1295 window.MNGAuth = candidate; 1296 console.info(logPrefix, 'adopted MNGAuth from UMD export'); 1297 return candidate; 1298 } 1299 } 1300 return null; 1301 } 1302 1303 function waitForMngAuth() { 1304 if (window.__mngAuthReadyPromise) { 1305 return window.__mngAuthReadyPromise; 1306 } 1307 window.__mngAuthReadyPromise = new Promise(function (resolve, reject) { 1308 if (adoptMngAuth()) { 1309 resolve(); 1310 return; 1311 } 1312 1313 var settled = false; 1314 1315 function succeed() { 1316 if (settled) { 1317 return; 1318 } 1319 settled = true; 1320 resolve(); 1321 } 1322 1323 function fail(message) { 1324 if (settled) { 1325 return; 1326 } 1327 settled = true; 1328 window.__mngAuthReadyPromise = null; 1329 reject(new Error(message + ' ' + authDiagnostics())); 1330 } 1331 1332 function shadowUmdGlobals() { 1333 var saved = { 1334 module: window.module, 1335 exports: window.exports, 1336 define: window.define 1337 };
1338 try { 1339 delete window.module; 1340 delete window.exports; 1341 delete window.define; 1342 } catch (e) { 1343 window.module = undefined; 1344 window.exports = undefined; 1345 window.define = undefined; 1346 } 1347 return saved; 1348 } 1349 1350 function restoreUmdGlobals(saved) { 1351 try { 1352 if (typeof saved.module !== 'undefined') { 1353 window.module = saved.module; 1354 } 1355 if (typeof saved.exports !== 'undefined') { 1356 window.exports = saved.exports; 1357 } 1358 if (typeof saved.define !== 'undefined') { 1359 window.define = saved.define; 1360 } 1361 } catch (e) {} 1362 } 1363 1364 function loadIsolatedCopy() { 1365 var src = getAuthScriptSrc(); 1366 if (src === '(no mng-auth script tag)') { 1367 fail('mng-auth.js is not on the page'); 1368 return; 1369 } 1370 console.info(logPrefix, 'reloading mng-auth.js without UMD globals'); 1371 var saved = shadowUmdGlobals(); 1372 var script = document.createElement('script'); 1373 script.src = src; 1374 script.onload = function () { 1375 restoreUmdGlobals(saved); 1376 if (adoptMngAuth()) { 1377 succeed(); 1378 return; 1379 } 1380 fail('CDN loaded but did not expose window.MNGAuth'); 1381 }; 1382 script.onerror = function () { 1383 restoreUmdGlobals(saved); 1384 fail('mng-auth.js failed to load'); 1385 }; 1386 document.head.appendChild(script); 1387 } 1388 1389 var existing = getAuthScriptEl(); 1390 if (existing && document.readyState === 'loading') { 1391 existing.addEventListener('load', function () { 1392 if (adoptMngAuth()) { 1393 succeed(); 1394 return; 1395 } 1396 loadIsolatedCopy(); 1397 }); 1398 existing.addEventListener('error', function () { 1399 fail('existing mng-auth.js tag failed to load'); 1400 }); 1401 return; 1402 } 1403 1404 loadIsolatedCopy(); 1405 }); 1406 return window.__mngAuthReadyPromise; 1407 } 1408 1409 function waitForEmbedReady() { 1410 return new Promise(function (resolve, reject) { 1411 if (isEmbedReady()) { 1412 resolve(); 1413 return; 1414 } 1415 1416 var settled = false; 1417 var poll; 1418 1419 function cleanup() { 1420 window.clearInterval(poll); 1421 document.removeEventListener('mng.auth.onFinished', onFinished); 1422 } 1423 1424 function succeed() { 1425 if (settled) { 1426 return; 1427 } 1428 settled = true; 1429 cleanup(); 1430 resolve(); 1431 } 1432 1433 function fail(message) { 1434 if (settled) { 1435 return; 1436 } 1437 settled = true; 1438 cleanup(); 1439 reject(new Error(message)); 1440 } 1441 1442 function onFinished() { 1443 if (isEmbedReady()) { 1444 succeed(); 1445 return; 1446 } 1447 fail('mng-auth reported onFinished but #mng-modal was not created. script=' + getAuthScriptSrc()); 1448 } 1449 1450 document.addEventListener('mng.auth.onFinished', onFinished); 1451 poll = window.setInterval(function () { 1452 if (isEmbedReady()) { 1453 succeed(); 1454 } 1455 }, 100); 1456 window.setTimeout(function () { 1457 fail('timed out waiting for #mng-modal. script=' + getAuthScriptSrc()); 1458 }, readyTimeoutMs); 1459 }); 1460 } 1461 1462 function openEmbedLogin(button) { 1463 var connection = button.getAttribute('data-mng-auth-social-action'); 1464 console.info(logPrefix, 'click', button.getAttribute('data-mng-cta'), '- waiting for embed login', connection, getAuthScriptSrc()); 1465 return waitForMngAuth().then(function () { 1466 if (isEmbedReady()) { 1467 button.__mngSocialForward = true; 1468 button.click(); 1469 button.__mngSocialForward = false; 1470 console.info(logPrefix, 'forwarded social click to embed login', connection); 1471 return; 1472 } 1473 return waitForEmbedReady().then(function () { 1474 button.__mngSocialForward = true; 1475 button.click(); 1476 button.__mngSocialForward = false; 1477 console.info(logPrefix, 'forwarded social click to embed login', connection); 1478 }); 1479 }).catch(function (err) { 1480 console.error(logPrefix, 'failed to open embed login', err); 1481 }); 1482 } 1483 1484 document.addEventListener('click', function (event) { 1485 var button = event.target.closest('.digisubs-social-login__button'); 1486 if (!button || button.__mngSocialForward) { 1487 return; 1488 } 1489 sessionStorage.setItem(pendingFlag, '1'); 1490 if (isEmbedReady() && window.MNGAuth) { 1491 console.info(logPrefix, 'click', button.getAttribute('data-mng-cta'), '- letting embed login handle', button.getAttribute('data-mng-auth-social-action')); 1492 return; 1493 } 1494 event.preventDefault(); 1495 event.stopPropagation(); 1496 openEmbedLogin(button); 1497 }); 1498 1499 ['authenticationReady', 'mng-auth-check-complete', 'entitlementsReady'].forEach(function (name) { 1500 window.addEventListener(name, function () { 1501 if (isAuthenticated()) { 1502 onAuthenticated(); 1503 } 1504 }, true); 1505 }); 1506 ['mng.auth.onReady', 'mng.auth.onLogin', 'mng.auth.onAuthDetermined', 'mng.auth.onEntitlementsDetermined'].forEach(function (name) { 1507 document.addEventListener(name, function () { 1508 if (isAuthenticated()) { 1509 onAuthenticated(); 1510 } 1511 }, true); 1512 }); 1513 1514 if (window.authentication_config && window.authentication_config.debug === '1') { 1515 console.info(logPrefix, 'bridge ready', typeof window.MNGAuth, getAuthScriptSrc()); 1516 } 1517 1518 if (isAuthenticated()) { 1519 onAuthenticated(); 1520 } 1521})(); 1522//# sourceURL=digisubs-social-login-js-after 1523</script>
vendor: 1 bytes, line 1523
1523
1524<script src="https://applepay.cdn-apple.com/jsapi/1.latest/apple-pay-sdk.js" id="apple_pay_sdk-js"></script>
vendor: 1 bytes, line 1524
1524
1525<script id="mng_apple-js-extra"> 1526var apple_config = {"applePayEnabled":"1","loggedOutPurchaseEnabled":"","sourceId":"1652"}; 1527//# sourceURL=mng_apple-js-extra 1528</script>
vendor: 1 bytes, line 1528
1528
1529<script type="text/javascript" src="https://www.sentinelandenterprise.com/wp-content/plugins/mng-digisubs/static/mng-digisubs.apple.bundle.js?m=1790890291g" ></script>
1529<script id="mng-cache-control-js-before"> 1530window.cache_control_adminbar_support = {"rootUrl":"https:\/\/www.sentinelandenterprise.com\/wp-admin\/admin-ajax.php","rootAction":"cache_control_adminbar_action","nonce":"904eaef9a8","isSectionFront":true,"isHomepage":false} 1531//# sourceURL=mng-cache-control-js-before 1532</script>
vendor: 1 bytes, line 1532
1532
1533<script src="https://www.sentinelandenterprise.com/wp-content/plugins/mng-cache-control/Src/assets/dist/mng-cache-control-adminbar.js?ver=0.2.1" id="mng-cache-control-js"></script>
vendor: 1 bytes, line 1533
1533
1534<script id="jetpack-stats-js-before"> 1535_stq = window._stq || []; 1536_stq.push([ "view", {"v":"ext","blog":"156564369","post":"12","tz":"-4","srv":"www.sentinelandenterprise.com","hp":"vip","j":"1:16.1.3"} ]); 1537_stq.push([ "clickTrackerInit", "156564369", "12" ]); 1538//# sourceURL=jetpack-stats-js-before 1539</script>
vendor: 1 bytes, line 1539
1539
1540<script src="https://stats.wp.com/e-202640.js" id="jetpack-stats-js" defer data-wp-strategy="defer" fetchpriority="low"></script>
vendor: 1 bytes, line 1540
1540
1541<script async src="https://cdn.p-n.io/pushly-sdk.min.js?domain_key=36lGkzP045YAnMC14hCvoAmOGCcNFA5yDCwe&ver=6.9.9" id="pushly-sdk-js"></script>
vendor: 1 bytes, line 1541
1541
1542<script id="wp-emoji-settings" type="application/json"> 1543{"baseUrl":"https://s.w.org/images/core/emoji/17.0.2/72x72/","ext":".png","svgUrl":"https://s.w.org/images/core/emoji/17.0.2/svg/","svgExt":".svg","source":{"concatemoji":"https://www.sentinelandenterprise.com/wp-includes/js/wp-emoji-release.min.js?ver=6.9.9"}} 1544</script>
vendor: 1 bytes, line 1544
1544
1545<script type="module"> 1546/*! This file is auto-generated */ 1547var e="script#wp-emoji-settings",t=document.querySelector(e);if(!(t instanceof HTMLScriptElement))throw new Error("Element missing: "+e);const r=JSON.parse(t.text),s=(window._wpemojiSettings=r,"wpEmojiSettingsSupports"),o=["flag","emoji"];function i(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(s,JSON.stringify(t))}catch(e){}}function c(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0);const r=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);return t.every((e,t)=>e===r[t])}function p(e,t){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var n=e.getImageData(16,16,1,1);for(let e=0;e<n.data.length;e++)if(0!==n.data[e])return!1;return!0}function u(e,t,n,r){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\udde8\ud83c\uddf6","\ud83c\udde8\u200b\ud83c\uddf6")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!r(e,"\ud83e\u1fac8")}return!1}function f(e,t,n,r){let a;const s=(a="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):document.createElement("canvas")).getContext("2d",{willReadFrequently:!0}),o=(s.textBaseline="top",s.font="600 32px Arial",{});return e.forEach(e=>{o[e]=t(s,e,n,r)}),o}function a(e){var t=document.createElement("script");t.src=e,t.defer=!0,document.head.appendChild(t)}r.supports={everything:!0,everythingExceptFlag:!0},new Promise(t=>{let n=function(){try{var e=JSON.parse(sessionStorage.getItem(s));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+f.toString()+"("+[JSON.stringify(o),u.toString(),c.toString(),p.toString()].join(",")+"));",r=new Blob([e],{type:"text/javascript"});const a=new Worker(URL.createObjectURL(r),{name:"wpTestEmojiSupports"});return void(a.onmessage=e=>{i(n=e.data),a.terminate(),t(n)})}catch(e){}i(n=f(o,u,c,p))}t(n)}).then(e=>{for(const n in e)r.supports[n]=e[n],r.supports.everything=r.supports.everything&&r.supports[n],"flag"!==n&&(r.supports.everythingExceptFlag=r.supports.everythingExceptFlag&&r.supports[n]);var t;r.supports.everythingExceptFlag=r.supports.everythingExceptFlag&&!r.supports.flag,r.supports.everything||((t=r.source||{}).concatemoji?a(t.concatemoji):t.wpemoji&&t.twemoji&&(a(t.twemoji),a(t.wpemoji)))}); 1548//# sourceURL=https://www.sentinelandenterprise.com/wp-includes/js/wp-emoji-loader.min.js 1549</script>
1549 1550 1551 </body> 1552 </html> 1553
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.