NEWSAR
Multi-perspective news intelligence
SRCAssociated Press (AP)
LANGEN
LEANCenter
WORDS2 768
ENT9
FRI · 2026-04-17 · 17:23 GMTBRIEF NSR-2026-0417-70379
News/Patients and dental community mourn Dr. /Patients and dental community mourn Dr. Cerina Fairfax, kill…
NSR-2026-0417-70379News Report·EN·Human Interest

Patients and dental community mourn Dr. Cerina Fairfax, killed by Virginia’s ex-lieutenant governor

Dr. Cerina Fairfax, a dentist in Fairfax, Virginia, was found dead in her Annandale home on Thursday, along with her estranged husband, former Virginia Lt.

Associated Press (AP)Filed 2026-04-17 · 17:23 GMTLean · CenterRead · 12 min
Patients and dental community mourn Dr. Cerina Fairfax, killed by Virginia’s ex-lieutenant governor
Associated Press (AP)FIG 01
Reading time
12min
Word count
2 768words
Sources cited
1cited
Entities identified
9entities
Quality score
100%
§ 01

Briefing Summary

AI-generated
NEWSAR · AI

Dr. Cerina Fairfax, a dentist in Fairfax, Virginia, was found dead in her Annandale home on Thursday, along with her estranged husband, former Virginia Lt. Gov. Justin Fairfax. Police believe Justin Fairfax fatally shot Cerina before taking his own life. The couple was in the process of divorcing, and Justin Fairfax had been ordered to move out of the house. Cerina Fairfax, 49, was remembered by patients and colleagues as a devoted mother and caring dentist who ran a successful family practice. She is survived by her two teenage children.

Confidence 0.90Sources 1Claims 5Entities 9
§ 02

Article analysis

Model · rule-based
Framing
Human Interest
Legal & Judicial
Tone
Measured
AI-assessed
CalmNeutralAlarmist
Factuality
0.90 / 1.00
Factual
LowHigh
Sources cited
1
Limited
FewMany
§ 03

Key claims

5 extracted
01

They were going through a divorce and Justin Fairfax had been ordered by a judge to move out.

factualnull
Confidence
1.00
02

Police found both dead in their home in Annandale, Virginia, early Thursday.

factualpolice
Confidence
1.00
03

Dr. Cerina Fairfax was killed by her estranged husband, former Virginia Lt. Gov. Justin Fairfax.

factualpolice
Confidence
0.95
04

Cerina Fairfax ran a thriving family dentistry practice in the city of Fairfax.

factualnull
Confidence
0.90
05

Justin Fairfax fatally shot his wife and then killed himself.

factualpolice
Confidence
0.90
§ 04

Full report

12 min read · 2 768 words
Lt. Gov. Fairfax" class="entity-link entity-person" data-entity-id="116793" data-entity-type="person">Justin Fairfax, right, and his wife, Cerina, at the inauguration of Gov. Ralph Northam at the Capitol in Richmond, Va., Saturday, Sept. 13, 2018. (AP Photo/Kevin Morley, File) 2026-04-17T16:54:40Z Patients and colleagues are remembering Dr. Fairfax" class="entity-link entity-person" data-entity-id="116792" data-entity-type="person">Cerina Fairfax as a devoted mother, a caring dentist and the rock at the center of her family, after police say she was killed by her estranged husband, former Virginia Lt. Gov. Fairfax" class="entity-link entity-person" data-entity-id="116793" data-entity-type="person">Justin Fairfax. Police found both dead in their home in the Washington, D.C., suburb of Annandale, Virginia, early Thursday. They believe Fairfax" class="entity-link entity-person" data-entity-id="116793" data-entity-type="person">Justin Fairfax fatally shot his wife and then killed himself. They were going through a divorce and Fairfax" class="entity-link entity-person" data-entity-id="116793" data-entity-type="person">Justin Fairfax had been ordered by a judge to move out of the house by the end of the month. Fairfax" class="entity-link entity-person" data-entity-id="116792" data-entity-type="person">Cerina Fairfax, 49, ran a thriving family dentistry practice in the nearby city of Fairfax. A profile page on its described her as an avid reader who liked to travel, practice yoga, go on trail runs with her Vizsla-breed dogs and “spend time with her wonderful family.” ___ EDITOR’S NOTE — This story includes discussion of suicide. If you or someone you know needs help, the national suicide and crisis lifeline in the U.S. is available by calling or texting 988. There is also an online chat at 988lifeline.org freestar.queue.push(function () { window.fsAdCount = window.fsAdCount + 1 || 0; let customChannel = '/dynamic_' + fsAdCount; let adList = document.querySelectorAll(".fs-feed-ad") let thisAd = adList[fsAdCount]; let randId = Math.random().toString(36).slice(2); thisAd.id = randId; let thisPlacement = fsAdCount == 0 ? "apnews_story_feed" : "apnews_story_feed_dynamic"; freestar.newAdSlots({ placementName: thisPlacement, slotId: randId }, customChannel); }); ___ Virginia Rep. Jennifer McClellan, who knew Fairfax through her husband’s campaign and the time he spent in office, said their two teenaged children were “the people she cherished most.” “Fairfax" class="entity-link entity-person" data-entity-id="116792" data-entity-type="person">Cerina Fairfax was a loving and dedicated mother and the rock at the center of her large family,” McClellan wrote in a statement. /* Desktop-first: fully collapse by default */ #ap-readmore-embed { display: none; margin: 0; padding: 0; height: 0; min-height: 0; overflow: hidden; text-align: center; position: relative; z-index: 2; } /* Only show on mobile */ @media (max-width: 767px) { #ap-readmore-embed { display: block; margin: 28px 0; height: auto; overflow: visible; } } #ap-readmore-embed .ap-readmore-btn { appearance: none; -webkit-appearance: none; border: 0; background: #000; color: #fff; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; gap: 10px; padding: 14px 22px; border-radius: 999px; font-family: inherit, "AP Sans", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif; font-weight: 700; font-size: 16px; letter-spacing: 0.2px; line-height: 1; box-shadow: 0 10px 18px rgba(0,0,0,0.12); transition: transform 120ms ease, box-shadow 120ms ease, opacity 120ms ease; touch-action: manipulation; -webkit-tap-highlight-color: transparent; position: relative; z-index: 3; } #ap-readmore-embed .ap-readmore-btn:hover { transform: translateY(-1px); box-shadow: 0 14px 22px rgba(0,0,0,0.16); } #ap-readmore-embed .ap-readmore-btn:active { transform: translateY(0); box-shadow: 0 10px 18px rgba(0,0,0,0.12); opacity: 0.95; } #ap-readmore-embed .ap-readmore-btn:focus-visible { outline: 3px solid rgba(228, 0, 43, 0.35); outline-offset: 3px; } #ap-readmore-embed .ap-readmore-icon { width: 10px; height: 10px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg); margin-top: -2px; } #ap-readmore-embed .ap-readmore-fade { display: none; height: 48px; margin-top: -48px; pointer-events: none; background: linear-gradient(to bottom, rgba(255,255,255,0), rgba(255,255,255,1)); } Read More (function () { var APRM_EMBED_ID = "ap-readmore-embed"; var APRM_MOBILE_MQ = "(max-width: 767px)"; function APRM_onReady(fn) { if (document.readyState === "loading") { document.addEventListener("DOMContentLoaded", fn); } else { fn(); } } APRM_onReady(function () { var APRM_embedEl = document.getElementById(APRM_EMBED_ID); if (!APRM_embedEl) return; // 🚨 DESKTOP: remove entire module wrapper and bail early if (!window.matchMedia(APRM_MOBILE_MQ).matches) { var APRM_rootModule = APRM_embedEl.closest(".HTMLModuleEnhancement") || APRM_embedEl.closest(".HtmlModule"); if (APRM_rootModule && APRM_rootModule.parentNode) { APRM_rootModule.parentNode.removeChild(APRM_rootModule); } else if (APRM_embedEl.parentNode) { APRM_embedEl.parentNode.removeChild(APRM_embedEl); } return; // stop the rest of the script from running } }); })(); (function () { var EMBED_ID = "ap-readmore-embed"; var BTN_ID = "apReadMoreBtn"; var FADE_ID = "apReadMoreFade"; var STOP_SELECTOR = ".Page-below"; var SIGN_IN_GATE_SELECTOR = ".sign-in-gate-content"; var HIDDEN_ATTR = "data-ap-readmore-hidden"; var MOBILE_MQ = "(max-width: 767px)"; function ready(fn) { if (document.readyState === "loading") { document.addEventListener("DOMContentLoaded", fn); } else { fn(); } } function isElementNode(n) { return n && n.nodeType === 1; } function cancelEvent(e) { if (!e) return; if (typeof e.preventDefault === "function") e.preventDefault(); if (typeof e.stopPropagation === "function") e.stopPropagation(); if (typeof e.stopImmediatePropagation === "function") e.stopImmediatePropagation(); e.cancelBubble = true; e.returnValue = false; } function collapseDesktopEmbed(embed) { if (!embed) return true; if (!window.matchMedia(MOBILE_MQ).matches) { var maybeWrappers = [ embed.parentElement, embed.closest(".html-embed"), embed.closest("[data-type='htmlembed']"), embed.closest("[class*='embed']"), embed.closest("[class*='Embed']") ].filter(Boolean); embed.style.display = "none"; embed.style.margin = "0"; embed.style.padding = "0"; embed.style.height = "0"; embed.style.minHeight = "0"; embed.style.overflow = "hidden"; maybeWrappers.forEach(function (el) { el.style.margin = "0"; el.style.padding = "0"; el.style.height = "0"; el.style.minHeight = "0"; el.style.overflow = "hidden"; }); if (embed.parentNode) { embed.parentNode.removeChild(embed); } return true; } return false; } ready(function () { var embed = document.getElementById(EMBED_ID); var btn = document.getElementById(BTN_ID); var fade = document.getElementById(FADE_ID); if (!embed || !btn) return; if (collapseDesktopEmbed(embed)) return; var signInGate = document.querySelector(SIGN_IN_GATE_SELECTOR); if (signInGate) { embed.innerHTML = ""; return; } // — Analytics: impression when embed enters viewport — if ("IntersectionObserver" in window) { var io = new IntersectionObserver(function (entries, observer) { if (entries[0].isIntersecting) { window.dataLayer = window.dataLayer || []; window.dataLayer.push({ event: "ap_readmore_impression" }); observer.disconnect(); } }, { threshold: 0 }); io.observe(btn); } var stopEl = document.querySelector(STOP_SELECTOR); if (!stopEl) return; var rootCandidates = [ embed.closest(".Page"), embed.closest("article"), embed.closest("main"), document.body ].filter(Boolean); var root = rootCandidates.find(function (c) { return c.contains(stopEl); }) || document.body; var all = root.getElementsByTagName("*"); var hidden = []; for (var i = 0; i Terron Sims II, a friend and patient, remembered her as a quiet and caring friend, whose dentistry was more than a profession. “It was an expression of love and compassion,” Sims told WUSA-TV. “It was her way of service to others.” Fairfax was recognized in 2015 as the Outstanding Graduate of the Last Decade by the Virginia Commonwealth School of Dentistry. Dr. Jeffrey Johnson, the interim dean of the dental school, wrote that her loss is deeply felt by many who knew her. freestar.queue.push(function () { window.fsAdCount = window.fsAdCount + 1 || 0; let customChannel = '/dynamic_' + fsAdCount; let adList = document.querySelectorAll(".fs-feed-ad") let thisAd = adList[fsAdCount]; let randId = Math.random().toString(36).slice(2); thisAd.id = randId; let thisPlacement = fsAdCount == 0 ? "apnews_story_feed" : "apnews_story_feed_dynamic"; freestar.newAdSlots({ placementName: thisPlacement, slotId: randId }, customChannel); }); “As a clinician and alumna, Dr. Fairfax embodied the ideals of our profession — dedication to her patients, commitment to growth, and a deep sense of purpose in her work each day,” Johnson wrote. “I know she was a mentor, role model, and friend to many in our school.” Leaders in the state’s dental community also praised her accomplishments and commitment to patients. “In addition to being a beloved practitioner in her community, Dr. Fairfax loved giving back through volunteer work and contributions to local charities focused on helping those in need,” said Ryan Dunn, CEO of the Virginia Dental Association, in a statement. “As we remember Dr. Fairfax, we honor the impact she made and the connections she helped build within the VDA and her community.” Sign up for Morning Wire: Our flagship newsletter breaks down the biggest headlines of the day. Email address Sign up By checking this box, you agree to AP's Terms of Use and acknowledge that AP may collect and use your data pursuant to our Privacy Policy . [data-ap-newsletter-embed-nlmw25] { display: flex; flex-direction: column; align-items: flex-start; gap: 16px; width: 100%; max-width: 720px; min-width: 0; padding: 16px 16px 16px 16px; box-sizing: border-box; border-radius: 8px; border: 1px solid #E6E6E7; background: #F2F2F2; box-shadow: 0 4px 4px 4px rgba(102, 102, 102, 0.40); font-family: "AP Var", system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif; color: #000; container-type: inline-size; container-name: ap-nl-nlmw25; margin-left: auto; margin-right: auto; align-self: center; justify-self: center; } [data-ap-newsletter-embed-nlmw25] .ap-newsletter-accent-nlmw25 { width: 48px; height: 6px; } [data-ap-newsletter-embed-nlmw25] .ap-newsletter-title-nlmw25 { align-self: stretch; color: #000; font-family: "AP Var", system-ui, sans-serif; font-size: 18px; font-style: normal; font-weight: 400; line-height: 150%; margin: 0; } [data-ap-newsletter-embed-nlmw25] .ap-newsletter-title-nlmw25 strong { font-weight: 700; line-height: 130%; } [data-ap-newsletter-embed-nlmw25] .ap-newsletter-form-nlmw25 { margin: 0; display: flex; flex-direction: column; gap: 16px; width: 100%; } [data-ap-newsletter-embed-nlmw25] .ap-newsletter-row-nlmw25 { display: flex; align-items: center; gap: 12px; width: 100%; flex-wrap: nowrap; } [data-ap-newsletter-embed-nlmw25] .ap-newsletter-input-nlmw25 { width: 100%; min-width: 0; border: 1px solid #E6E6E7; border-radius: 10px; padding: 11px 12px; font-size: 14px; line-height: 1.2; outline: none; box-sizing: border-box; background: #fff; color: #000; } [data-ap-newsletter-embed-nlmw25] .ap-newsletter-input-wrapper-nlmw25 { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; flex: 1 0 0; } [data-ap-newsletter-embed-nlmw25] .ap-newsletter-input-nlmw25:focus { border-color: rgba(0,0,0,.35); box-shadow: 0 0 0 3px rgba(255, 50, 46, 0.18); } [data-ap-newsletter-embed-nlmw25] .ap-newsletter-button-nlmw25 { display: flex; justify-content: center; align-items: center; height: 40px; max-height: 40px; padding: 8px 16px; border-radius: 24px; background: #191919; color: #ffffff; border: none; font-size: 14px; font-weight: 600; line-height: 1; cursor: pointer; white-space: nowrap; transition: background 150ms ease, transform 120ms ease; flex: 0 0 auto; } [data-ap-newsletter-embed-nlmw25] .ap-newsletter-button-nlmw25:hover { background: #000000; } [data-ap-newsletter-embed-nlmw25] .ap-newsletter-button-nlmw25:active { transform: scale(0.98); } [data-ap-newsletter-embed-nlmw25] .ap-newsletter-disclaimer-nlmw25 { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; align-self: stretch; background: rgba(255, 255, 255, 0); background-blend-mode: multiply; margin: 0; } [data-ap-newsletter-embed-nlmw25] .ap-newsletter-check-nlmw25 { display: flex; gap: 8px; align-items: flex-start; user-select: none; cursor: pointer; } [data-ap-newsletter-embed-nlmw25] .ap-newsletter-checkbox-nlmw25 { margin-top: 2px; width: 16px; height: 16px; accent-color: var(--ap-accent); flex: 0 0 auto; } [data-ap-newsletter-embed-nlmw25] .ap-newsletter-checktext-nlmw25 { font-size: 12px; line-height: 1.35; color: var(--ap-muted); } [data-ap-newsletter-embed-nlmw25] a { color: var(--ap-text); text-decoration: underline; text-underline-offset: 2px; } [data-ap-newsletter-embed-nlmw25] a:hover { color: var(--ap-accent); } [data-ap-newsletter-embed-nlmw25] .ap-newsletter-messages-nlmw25 { margin: 0; } [data-ap-newsletter-embed-nlmw25] .ap-newsletter-error-nlmw25:empty, [data-ap-newsletter-embed-nlmw25] .ap-newsletter-help-nlmw25:empty { display: none; } [data-ap-newsletter-embed-nlmw25] .ap-newsletter-help-nlmw25 { margin: 0; } [data-ap-newsletter-embed-nlmw25] .ap-newsletter-messages-nlmw25:has(.ap-newsletter-error-nlmw25:empty):has(.ap-newsletter-help-nlmw25:empty) { display: none; } [data-ap-newsletter-embed-nlmw25] .ap-newsletter-error-nlmw25 { margin: 0; font-size: 12px; line-height: 1.35; color: var(--ap-error); min-height: 1.2em; } [data-ap-newsletter-embed-nlmw25] .ap-newsletter-help-nlmw25 { margin: 6px 0 0; font-size: 12px; line-height: 1.35; color: var(--ap-muted); } [data-ap-newsletter-embed-nlmw25].is-submitted-nlmw25 .ap-newsletter-input-nlmw25 { background: rgba(0,0,0,.04); border-color: rgba(0,0,0,.10); color: rgba(0,0,0,.70); cursor: default; } [data-ap-newsletter-embed-nlmw25].is-submitted-nlmw25 .ap-newsletter-button-nlmw25 { display: none; } [data-ap-newsletter-embed-nlmw25].is-submitted-nlmw25 .ap-newsletter-disclaimer-nlmw25 { display: none; } [data-ap-newsletter-embed-nlmw25] .ap-newsletter-bot-field-nlmw25 { position: absolute !important; left: -9999px; top: -9999px; width: 1px; height: 1px; opacity: 0; pointer-events: none; } [data-ap-newsletter-embed-nlmw25] .ap-sr-only-nlmw25 { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; } @container ap-nl-nlmw25 (max-width: 420px) { [data-ap-newsletter-embed-nlmw25] { max-width: 350px; padding: 16px; gap: 12px; } [data-ap-newsletter-embed-nlmw25] .ap-newsletter-form-nlmw25 { gap: 12px; } [data-ap-newsletter-embed-nlmw25] .ap-newsletter-row-nlmw25 { flex-direction: column; align-items: stretch; gap: 12px; } [data-ap-newsletter-embed-nlmw25] .ap-newsletter-button-nlmw25 { width: 100%; } [data-ap-newsletter-embed-nlmw25] .ap-newsletter-input-wrapper-nlmw25, [data-ap-newsletter-embed-nlmw25] .ap-newsletter-input-nlmw25 { width: 100%; } } @media (max-width: 420px) { [data-ap-newsletter-embed-nlmw25] { max-width: 350px; padding: 16px; gap: 12px; } [data-ap-newsletter-embed-nlmw25] .ap-newsletter-form-nlmw25 { gap: 12px; } [data-ap-newsletter-embed-nlmw25] .ap-newsletter-row-nlmw25 { flex-direction: column; align-items: stretch; gap: 12px; } [data-ap-newsletter-embed-nlmw25] .ap-newsletter-button-nlmw25 { width: 100%; } [data-ap-newsletter-embed-nlmw25] .ap-newsletter-input-wrapper-nlmw25, [data-ap-newsletter-embed-nlmw25] .ap-newsletter-input-nlmw25 { width: 100%; } } const NL_DEFAULT_CONFIG_NLMW25 = { apiUrl: '/api/newsletter/signup', defaultNewsletterList: ['Morning Wire Subscribers'], recaptchaSiteKey: '6Lf06WQrAAAAABB9Ms3Gru2SFLSxUYrLqP5YLDMn', recaptchaHeader: 'X-ReCaptcha-Token', /* UTM params to append to the page URL used as the request referrer. This does NOT modify the subscription payload. */ referrerUtmParams: { utm_source: 'embed' }, messages: { invalidEmail: 'Please use a valid email address.', disclaimerRequired: 'Please check disclaimer before proceeding.', invalidBoth: 'Please provide a valid email address, and check disclaimer.', genericError: 'Something went wrong. Please try again later.', botBlocked: 'Please try again.', recaptchaLoadFail: 'Failed to load reCAPTCHA. Please refresh the page and try again.', recaptchaRequired: 'reCAPTCHA verification is required. Please ensure reCAPTCHA is loaded on this page.', recaptchaFailed: 'reCAPTCHA verification failed. Please refresh the page and try again.', verificationFailed: 'Verification failed. Please try again.' } }; (function (nlConfigNLMW25) { const nlEmailRegexNLMW25 = /^[^\s@]+@[^\s@]+\.[^\s@]{2,}$/; const nlRecaptchaCheckIntervalNLMW25 = 100; const nlRecaptchaMaxAttemptsNLMW25 = 50; function nlIsValidEmailNLMW25(email) { return nlEmailRegexNLMW25.test(String(email || '').trim()); } function nlBuildReferrerUrlNLMW25(utmParams) { try { const url = new URL(window.location.href); Object.entries(utmParams || {}).forEach(([key, value]) => { if (value !== undefined && value !== null && value !== '') { url.searchParams.set(key, value); } }); return url.toString(); } catch (err) { console.warn('Unable to build referrer URL with UTM params:', err); return window.location.href; } } function nlLoadRecaptchaScriptNLMW25(siteKey, callback) { if (typeof window.grecaptcha !== 'undefined') { callback && callback(); return; } const existingScript = document.querySelector('script[src*="recaptcha/api.js"]'); if (existingScript) { const checkInterval = setInterval(() => { if (typeof window.grecaptcha !== 'undefined') { clearInterval(checkInterval); callback && callback(); } }, nlRecaptchaCheckIntervalNLMW25); return; } const script = document.createElement('script'); script.src = `https://www.google.com/recaptcha/api.js?render=${encodeURIComponent(siteKey)}`; script.async = true; script.defer = true; script.onload = () => callback && callback(); script.onerror = () => { console.error('Failed to load reCAPTCHA script'); callback && callback(false); }; document.head.appendChild(script); } function nlWaitForRecaptchaNLMW25(callback, maxAttempts = nlRecaptchaMaxAttemptsNLMW25) { let attempts = 0; const checkRecaptcha = () => { attempts++; if ( typeof window.grecaptcha !== 'undefined' && typeof window.grecaptcha.execute === 'function' ) { callback(true); } else if (attempts token && token.length > 0 ? token : null) .catch(error => { const errorMsg = error?.message || String(error); if ( errorMsg.includes('No reCAPTCHA clients') || errorMsg.includes('not initialized') || errorMsg.includes('Invalid site key') ) { throw new Error('recaptcha_failed'); } throw error; }); } const nlEmbedsNLMW25 = document.querySelectorAll('[data-ap-newsletter-embed-nlmw25]'); nlEmbedsNLMW25.forEach((rootNLMW25, idxNLMW25) => { const formNLMW25 = rootNLMW25.querySelector('.ap-newsletter-form-nlmw25'); const emailInputNLMW25 = rootNLMW25.querySelector('.ap-newsletter-input-nlmw25'); const checkboxNLMW25 = rootNLMW25.querySelector('.ap-newsletter-checkbox-nlmw25'); const errorElNLMW25 = rootNLMW25.querySelector('.ap-newsletter-error-nlmw25'); const helpElNLMW25 = rootNLMW25.querySelector('.ap-newsletter-help-nlmw25'); const botFieldNLMW25 = rootNLMW25.querySelector('.ap-newsletter-bot-field-nlmw25'); const recaptchaDivNLMW25 = rootNLMW25.querySelector('.ap-newsletter-recaptcha-nlmw25'); let nlIsSubmittingNLMW25 = false; const newsletterListNLMW25 = nlConfigNLMW25.defaultNewsletterList; const recaptchaSiteKeyNLMW25 = nlConfigNLMW25.recaptchaSiteKey; const requestReferrerNLMW25 = nlBuildReferrerUrlNLMW25(nlConfigNLMW25.referrerUtmParams); const emailIdNLMW25 = `nl-email-nlmw25-${idxNLMW25}`; const helpIdNLMW25 = `nl-help-nlmw25-${idxNLMW25}`; const errIdNLMW25 = `nl-error-nlmw25-${idxNLMW25}`; const recaptchaIdNLMW25 = `recaptcha-nlmw25-${idxNLMW25}`; emailInputNLMW25.id = emailIdNLMW25; helpElNLMW25.id = helpIdNLMW25; errorElNLMW25.id = errIdNLMW25; if (recaptchaDivNLMW25) { recaptchaDivNLMW25.id = recaptchaIdNLMW25; if (recaptchaSiteKeyNLMW25) { recaptchaDivNLMW25.setAttribute('data-sitekey', recaptchaSiteKeyNLMW25); } } emailInputNLMW25.setAttribute('aria-describedby', `${helpIdNLMW25} ${errIdNLMW25}`); const nlSetErrorNLMW25 = (msg) => { errorElNLMW25.textContent = msg || ''; errorElNLMW25.style.display = msg ? 'block' : 'none'; }; const nlHideErrorNLMW25 = () => nlSetErrorNLMW25(''); const nlSetSubmittedNLMW25 = () => { rootNLMW25.classList.add('is-submitted-nlmw25'); emailInputNLMW25.value = 'SUBMITTED'; emailInputNLMW25.style.fontWeight = 'bold'; emailInputNLMW25.setAttribute('readonly', 'readonly'); emailInputNLMW25.setAttribute('aria-invalid', 'false'); nlHideErrorNLMW25(); }; const nlSubscribeNLMW25 = (tokenNLMW25) => { if (nlIsSubmittingNLMW25) return; if (botFieldNLMW25?.value) { console.warn('Bot field filled --', botFieldNLMW25.value); nlSetErrorNLMW25(nlConfigNLMW25.messages.botBlocked); return; } const emailNLMW25 = String(emailInputNLMW25.value || '').trim(); const emailOkNLMW25 = nlIsValidEmailNLMW25(emailNLMW25); const disclaimerOkNLMW25 = checkboxNLMW25.checked; if (!emailOkNLMW25 && !disclaimerOkNLMW25) { nlSetErrorNLMW25(nlConfigNLMW25.messages.invalidBoth); emailInputNLMW25.setAttribute('aria-invalid', 'true'); emailInputNLMW25.focus(); return; } if (!emailOkNLMW25) { nlSetErrorNLMW25(nlConfigNLMW25.messages.invalidEmail); emailInputNLMW25.setAttribute('aria-invalid', 'true'); emailInputNLMW25.focus(); return; } if (!disclaimerOkNLMW25) { nlSetErrorNLMW25(nlConfigNLMW25.messages.disclaimerRequired); checkboxNLMW25.focus(); return; } nlIsSubmittingNLMW25 = true; const headersNLMW25 = { 'Content-Type': 'application/json' }; if (tokenNLMW25) { headersNLMW25[nlConfigNLMW25.recaptchaHeader] = tokenNLMW25; } fetch(nlConfigNLMW25.apiUrl, { method: 'POST', headers: headersNLMW25, body: JSON.stringify({ emailId: emailNLMW25, newsLetterListToSubscribe: newsletterListNLMW25 }), /* This is the key change: send the current page URL + UTM params as the referrer. Example: https://.../article/... ?utm_source=embed */ referrer: requestReferrerNLMW25, referrerPolicy: 'strict-origin-when-cross-origin' }) .then(response => response.json() .then(data => ({ status: response.status, data })) .catch(() => ({ status: response.status, data: null })) ) .then(result => { nlIsSubmittingNLMW25 = false; const hasVerificationErrorNLMW25 = result.data && ( result.data.message?.includes('Verification Failed') || result.data.error?.includes('Verification Failed') ); if (hasVerificationErrorNLMW25) { nlSetErrorNLMW25(nlConfigNLMW25.messages.verificationFailed); return; } if (result.status === 200) { if (typeof window.NLSignup === 'function') { try { window.NLSignup(emailNLMW25); } catch (err) {} } window.dispatchEvent(new CustomEvent('nl:newsletterSignup:nlmw25', { detail: { email: emailNLMW25, source: 'Morning Wire Embed', newsletters: newsletterListNLMW25, referrer: requestReferrerNLMW25 } })); nlSetSubmittedNLMW25(); } else { const errorMsgNLMW25 = result.data?.message || result.data?.error || nlConfigNLMW25.messages.genericError; nlSetErrorNLMW25(errorMsgNLMW25); } }) .catch(error => { nlIsSubmittingNLMW25 = false; console.error('Newsletter subscription error:', error); nlSetErrorNLMW25(nlConfigNLMW25.messages.genericError); }); }; const nlAttemptRecaptchaNLMW25 = () => { if (!recaptchaSiteKeyNLMW25) { nlWaitForRecaptchaNLMW25(isAvailable => { if (!isAvailable) { nlSetErrorNLMW25(nlConfigNLMW25.messages.recaptchaRequired); nlIsSubmittingNLMW25 = false; return; } nlExecuteRecaptchaNLMW25() .then(token => nlSubscribeNLMW25(token)) .catch(() => nlSubscribeNLMW25(null)); }); return; } nlLoadRecaptchaScriptNLMW25(recaptchaSiteKeyNLMW25, success => { if (success === false) { nlSetErrorNLMW25(nlConfigNLMW25.messages.recaptchaLoadFail); nlIsSubmittingNLMW25 = false; return; } nlWaitForRecaptchaNLMW25(isAvailable => { if (!isAvailable) { nlSetErrorNLMW25(nlConfigNLMW25.messages.recaptchaRequired); nlIsSubmittingNLMW25 = false; return; } const runExecuteNLMW25 = () => { nlExecuteRecaptchaNLMW25() .then(token => nlSubscribeNLMW25(token)) .catch(error => { if (error?.message === 'recaptcha_failed') { nlSetErrorNLMW25(nlConfigNLMW25.messages.recaptchaFailed); nlIsSubmittingNLMW25 = false; } else { console.warn('reCAPTCHA error:', error); nlSubscribeNLMW25(null); } }); }; if (typeof window.grecaptcha.ready === 'function') { window.grecaptcha.ready(runExecuteNLMW25); } else { runExecuteNLMW25(); } }); }); }; formNLMW25.addEventListener('submit', e => { e.preventDefault(); if (rootNLMW25.classList.contains('is-submitted-nlmw25') || nlIsSubmittingNLMW25) return; nlHideErrorNLMW25(); nlAttemptRecaptchaNLMW25(); }); emailInputNLMW25.addEventListener('input', () => { nlHideErrorNLMW25(); emailInputNLMW25.setAttribute('aria-invalid', 'false'); }); checkboxNLMW25.addEventListener('change', nlHideErrorNLMW25); }); })(NL_DEFAULT_CONFIG_NLMW25); Cerina and Fairfax" class="entity-link entity-person" data-entity-id="116793" data-entity-type="person">Justin Fairfax met as undergraduates at Duke University and married in 2006. Fairfax" class="entity-link entity-person" data-entity-id="116793" data-entity-type="person">Justin Fairfax unsuccessfully sought the Democratic nomination for attorney general in 2013, then won the race for lieutenant governor in 2017. He was considered a rising star in the Democratic Party until two women came forward accusing him of sexually assaulting them years earlier, before he and Cerina were married. He left office at the end of his term in 2022, following an unsuccessful run for governor. freestar.queue.push(function () { window.fsAdCount = window.fsAdCount + 1 || 0; let customChannel = '/dynamic_' + fsAdCount; let adList = document.querySelectorAll(".fs-feed-ad") let thisAd = adList[fsAdCount]; let randId = Math.random().toString(36).slice(2); thisAd.id = randId; let thisPlacement = fsAdCount == 0 ? "apnews_story_feed" : "apnews_story_feed_dynamic"; freestar.newAdSlots({ placementName: thisPlacement, slotId: randId }, customChannel); }); Fairfax" class="entity-link entity-person" data-entity-id="116792" data-entity-type="person">Cerina Fairfax said in court filings that they separated nearly two years ago. But they were still living in the same house with their children, who police said were both home at the time of their deaths. The judge overseeing the divorce had told Fairfax" class="entity-link entity-person" data-entity-id="116793" data-entity-type="person">Justin Fairfax to move out by the end of April, writing “it is clear tensions in the Fairfax home have been extremely high for an extended period of time.” 获取更多RSS: https://feedx.net https://feedx.site
§ 05

Entities

9 identified
§ 06

Keywords & salience

8 terms
cerina fairfax
1.00
justin fairfax
0.90
murder-suicide
0.90
domestic violence
0.70
divorce
0.60
family dentistry
0.60
mental health
0.50
virginia
0.50
§ 07

Topic connections

Interactive graph
Network visualization showing 7 related topics
View Full Graph
Person Organization Location Event|Click node to navigate|Edge numbers = shared articles