Pipes Feed Preview: CBC | Top Stories News & Latest from TechRadar & Associated Press

  1. Ottawa set to reveal tariff counter-measures as Trump, Ford trade insults

    Wed, 12 Aug 2026 19:00:00 -0000

    <img src='https://i.cbc.ca/ais/1d65daad-0d0c-4c3c-9080-fd29d570912f,1787602095592/full/max/0/default.jpg?im=Crop%2Crect%3D%280%2C0%2C1280%2C720%29%3BResize%3D%28620%29' alt='Combination image of Ontario Premier Doug Ford, left, and U.S. President Donald Trump.' width='620' height='349' title='Combination image of Ontario Premier Doug Ford, left, and U.S. President Donald Trump.'/><p></p>
  2. Ford calls Trump 'king of bankruptcies' and a 'loser' in response to latest 50% tariff threat on autos

    Mon, 24 Aug 2026 16:30:27 -0000

    <img src='https://i.cbc.ca/ais/1eb08098-4e3b-444b-850b-914eea4a23eb,1786968615039/full/max/0/default.jpg?im=Crop%2Crect%3D%280%2C0%2C4494%2C2527%29%3BResize%3D%28620%29' alt='A politician speaks in front of a row of Canadian flags.' width='620' height='349' title='Ontario Premier Doug Ford speaks at Toronto Metropolitan University on May 12, 2026.'/><p></p>
  3. The 'world's first audiophile soundbar' is getting expanded with wireless Dolby Atmos surround support, as if this bonkers speaker wasn't immersive enough

    Tue, 25 Aug 2026 02:00:00 -0000

    Canvas has expanded its Canvas L soundbar with Dolby Surround and Atmos support via a new control box
    <article> <ul><li><strong>BACCH 3D virtual surround up front, Dolby Surround/Atmos for rear channels</strong></li><li><strong>New control box also provides additional connectivity</strong></li><li><strong>An open system: use whatever speakers you like</strong></li></ul><p>When Canvas HiFi unveiled <a href="https://www.techradar.com/televisions/soundbars/home-theater-upstart-canvas-just-announced-the-worlds-first-audiophile-soundbar">"the world's first audiophile soundbar"</a> earlier this year, it came with a huge specification: 8-inch drivers pushing out 1,500W of power in a three-way setup. <a href="https://www.techradar.com/televisions/soundbars/i-listened-to-the-worlds-first-audiophile-soundbar">When we actually heard it,</a> we were very impressed – we said it was "astounding" – and now it's even better with a Dolby Atmos upgrade.</p><p>The new setup uses the Canvas soundbar for the front soundstage, with additional active speakers for the surround, rear, and height channels. The soundbar itself uses BACCH 3D for audio positioning and supports Dolby Surround and Dolby Atmos for the additional speakers.</p><figure class="van-image-figure inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:2048px;"><p class="vanilla-image-block" style="padding-top:56.25%;"><img id="kacqRnhHD7LkapndSQTHMS" name="Canvas BACCH 3D" alt="Lifestyle photos of the Canvas BACCH 3D with Silverback speakers from System Audio" src="https://cdn.mos.cms.futurecdn.net/kacqRnhHD7LkapndSQTHMS.png" mos="" align="middle" fullscreen="" width="2048" height="1152" attribution="" endorsement="" class="inline"></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Canvas HiFi)</span></figcaption></figure><h2 id="how-does-the-canvas-soundbar-handle-surround-sound">How does the Canvas soundbar handle surround sound?</h2><p>The BACCH 3D system is a virtual surround system that Canvas says is "fundamentally different" from conventional virtual surround technologies. It controls the acoustic interaction between your left and right ears to deliver a larger, more precise soundstage, with the left, right, center, and bass channels sounding as if they're coming from physical speakers. The rear channels use Dolby Surround or Dolby Atmos as required.</p><p>The heart of the system is a new control box, developed in collaboration with the German electronics specialist Almando. This new box handles surround decoding and signal distribution to the Canvas soundbar and additional speakers. It also acts as a connectivity hub, enabling additional inputs and outputs and better integration with larger AV systems.</p><p>Canvas has deliberately made this an open system, so if you'd rather use another firm's speakers for your rear and height channels, you can. However, it would very much like you to check out its new collaboration with the Danish speaker firm System Audio, which will be adapting some of its Silverback active speakers to match the Canvas design universe and deliver a "visually coherent sound system". The Silverback speakers are the ones on the wall in the above photograph.</p><p>The new system will make its debut at IFA 2026 in Berlin, which runs from the 4th to the 8th of September 2026.</p><h2 id="thinking-of-buying-a-new-tv">Thinking of buying a new TV?</h2><p><em>Try our TV size and model finder! You tell it how far you sit from your TV, we'll tell you what size to buy based on viewing angle advice from image quality experts, and we'll recommend our three top TVs at that size for different prices.</em></p><div style="min-height: 250px;"> <div class="kwizly-quiz kwizly-OKl0mX"></div> </div> <script src="https://kwizly.com/embed/OKl0mX.js" async></script> </article>
  4. What is the release date for Stuart Fails to Save the Universe episode 6 on HBO Max?

    Tue, 25 Aug 2026 01:00:00 -0000

    This week's universe is one where everyone only eats plants — yeah, go figure. But, when does Stuart Fails to Save the Universe episode 6 hit HBO Max?
    <article> <p>There is no such thing as a stupid idea in <a href="https://www.techradar.com/streaming/hbo-max/stuart-fails-to-save-the-universe-review"><em>Stuart Fails to Save the Universe</em></a> — and I'm starting to think that there's no such thing as a boring idea, either.</p><p>As the gang leave behind their tribal oasis from episode 5 — which, let's face it, they ruined — we're back in a familiar suburban setting this week. The difference? Everyone eats plants and grass as if they were a Happy Meal at McDonald's.</p><p>No fast food favoritism here, but you get the idea. So, when does <a href="https://www.techradar.com/streaming/hbo-max/stuart-fails-to-save-the-universe-big-bang-theory-lore-comment"><em>Stuart Fails to Save the Universe</em></a><a href="https://www.techradar.com/streaming/hbo-max/stuart-fails-to-save-the-universe-big-bang-theory-lore-comment"><em> </em></a>episode 6 arrive on<a href="https://www.techradar.com/uk/streaming/hbo-max"> HBO Max</a>?</p><div style="min-height: 250px;"> <div class="kwizly-quiz kwizly-ey4VmX"></div> </div> <script src="https://kwizly.com/embed/ey4VmX.js" async></script><h2 id="what-time-can-i-watch-stuart-fails-to-save-the-universe-episode-6-on-hbo-max">What time can I watch Stuart Fails to Save the Universe episode 6 on HBO Max?</h2><div class="youtube-video" data-nosnippet ><div class="video-aspect-box"><iframe data-lazy-priority="high" data-lazy-src="https://www.youtube-nocookie.com/embed/4ZUgp8TvaOY" allowfullscreen></iframe></div></div><p>For US viewers, <em>Stuart Fails to Save the Universe</em> episode 6 will drop on <strong>Thursday, August 27 at 6pm PT/ 9pm ET</strong>.</p><p>Internationally, you're looking out for these timings:</p><ul><li><strong>US </strong>– Thursday, August 27 at 6pm PT / 9pm ET</li><li><strong>Canada</strong> – Thursday, August 27 at 6pm PT / 9pm ET</li><li><strong>UK </strong>– Friday, August 28 at 2am BST</li><li><strong>India </strong>– Friday, August 28 at 6:30am IST</li><li><strong>Singapore</strong> – Friday, August 28 at 9am SGT</li><li><strong>Australia</strong> – Friday, August 28 at 11am AEST</li><li><strong>New Zealand</strong> – Friday, August 28 at 1pm NZST</li></ul><div data-widget-type="review" data-model-name="Max" class="hawk-root"></div><h2 id="when-do-new-episodes-of-stuart-fails-to-save-the-universe-come-out">When do new episodes of Stuart Fails to Save the Universe come out?</h2><figure class="van-image-figure inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:1920px;"><p class="vanilla-image-block" style="padding-top:56.25%;"><img id="JaYiwyYxDzVvw6H3kaUSZ" name="SFTSTU" alt="Denise looks at Stuart while he crouches down to look in a bag" src="https://cdn.mos.cms.futurecdn.net/JaYiwyYxDzVvw6H3kaUSZ.jpg" mos="" align="middle" fullscreen="" width="1920" height="1080" attribution="" endorsement="" class="inline"></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: HBO Max)</span></figcaption></figure><p>New episodes of <em>Stuart Fails to Save the Universe </em>will make landfall every Thursday in the US and on Fridays everywhere else. Here are the all-important dates you need to know about:</p><ul><li><strong>Episode 1:</strong> out now</li><li><strong>Episode 2: </strong>out now</li><li><strong>Episode 3:</strong> out now</li><li><strong>Episode 4: </strong>out now</li><li><strong>Episode 5: </strong>out now</li><li><strong>Episode 6:</strong> August 27</li><li><strong>Episode 7: </strong>September 3</li><li><strong>Episode 8:</strong> September 10</li><li><strong>Episode 9:</strong> September 17</li><li><strong>Episode 10:</strong> September 24</li></ul> </article>
  5. Samsung thinks Claude Code can help it boost chip design — but admits the AI still makes some worryingly big mistakes

    Tue, 25 Aug 2026 00:25:00 -0000

    Samsung's chip division is finding out what agentic coding tools do when you leave them alone: when asked to deal with a stubborn error, Claude reclassified it as an informational notice to be 'rid' of the issue
    <article> <ul><li><strong>Samsung System LSI division uses Anthropic's Claude Code to reportedly slice working processes</strong></li><li><strong>However the tool also apparently downgraded an error message instead of fixing it, rolling back unrelated finished work, and tried to edit code it was not authorized to touch</strong></li><li><strong>Samsung's engineers currently review everything the tool produces before it is published elsewhere or affects existing chip designs</strong></li></ul><p>Samsung's System LSI division has reportedly used Anthropic's Claude Code to cut a month-long system-on-chip verification job to about two days.</p><p>While Samsung's division has about 6,000 employees, its main rival in mobile application processors, Qualcomm, has roughly 52,000 employees, and the former is apparently not above using AI to bridge the gap as a force multiplier.</p><p>A report from South Korean business outlet <a href="https://biz.chosun.com/it-science/ict/2026/08/12/XIEQWWZCDRFH7BJV5Z3DOY2RLQ/" target="_blank"><em>Chosun Biz (KR)</em></a> claims System LSI leveraged Anthropic's Claude Code by offering it to its software developers in May 2026, then extended it to semiconductor design and verification work, a move which led to much faster progress on certain projects, while also producing interesting failures on other fronts.</p><h2 id="a-mix-of-triumphs-and-gaffes">A mix of triumphs and gaffes</h2><p>Samsung's approach, for the most part, makes an excellent case for future AI use, as one verification project expected to take more than a month was finished in about two days, something the company internally tracked as a 15x gain in efficiency.</p><p>More interestingly, a second-year engineer with no prior exposure to either the tool or USB communication standards built USB device models for an emulator and adapted an Android driver in a single day, work whichwas normally estimated to take about a month.</p><p>Samsung has also had an interesting interaction using Claude Code to verify the internal data connections of a custom system-on-chip. The job was complex in more ways than one: the customer wanted a new architecture, third-party design IP was involved, the documentation was nonstandard, and the RTL for the DRAM controller had not arrived on schedule, making for a perfect storm for Claude.</p><p>Claude built a virtual verification environment using placeholder blocks in place of the missing RTL, along with test scenarios, so that engineers could start catching errors before the real design existed.</p><p>On the other side of the equation, Claude Code did, in certain cases, try to operate outside the boundaries of its assignments, often resulting in incorrect output or an error, or, in one case, an attempt to modify RTL circuit code it had no authorization to touch. It also rolled back unrelated finished work and downgraded an error message instead of fixing it.</p><p>The former is particularly egregious because, unlike software updates, once silicon ships, it can rarely be repurposed or 'updated' to bypass design flaws. Samsung has responded by ensuring engineers manually inspect and verify the output of Anthropic's models before using it elsewhere.</p><p>More interestingly, Claude Code <a href="https://openai.com/index/samsung-electronics-chatgpt-codex-deployment/" target="_blank">isn't the only tool in the building</a>, even if it seems to get the most attention here; Samsung also uses Google Gemini and OpenAI's ChatGPT across research, manufacturing, marketing, and support.</p><p>Despite this, Samsung does not use either of the other models to check input from the former; trusted engineers on-site do that instead in an industry where errors that are not picked up during reviews could be costly for a company that is currently attempting to maximize efficiency, even as its System LSI has posted losses in its SoC business and <a href="https://www.techradar.com/phones/samsung-galaxy-phones/samsung-galaxy-z-fold-8-review" target="_blank">its flagship Galaxy Z Fold 8</a> runs Qualcomm's silicon under the hood.</p> </article>
  6. Russian tech giant VK is suing Apple for blocking its apps — and wants $696,000 a day in compensation

    Mon, 24 Aug 2026 23:35:00 -0000

    VK has sued Apple in Moscow, seeking restored apps and 58 million rubles in daily penalties for continued removals.
    <article> <ul><li><strong>VK wants Apple to restore its apps or face millions in daily fines</strong></li><li><strong>The Russian company is demanding 58 million rubles ($696,000) every day</strong></li><li><strong>Apple removed several major VK apps following European Union sanctions</strong></li></ul><p>Russian firm VK has filed a lawsuit against Apple in a Moscow arbitration court, seeking restoration of several removed applications from the App Store.</p><p>Court records dated August 19 2026 show that the Russian technology company wants its applications restored to the platform without further delay.</p><p>Apple removed a range of VK-owned applications recently, including VKontakte, VK Messenger, VK Video, Odnoklassniki, Zen, Mail Cloud, Mail, Skillbox, and Youla, saying it was following sanctions imposed by the European Union against VK and its messaging subsidiary, Communication Platform LLC.</p><h2 id="vk-demands-steep-daily-penalties-for-continued-app-removal">VK demands steep daily penalties for continued app removal</h2><p>VK is asking the court to impose penalties of 58 million rubles per day, equivalent to roughly $696,000, if Apple fails to comply.</p><p>That figure breaks down across three services, with VKontakte accounting for 50 million rubles, or about $600,000, in daily fines.</p><p>VK Music would carry a penalty of 5 million rubles, or nearly $60,000, while Odnoklassniki would draw 3 million rubles, close to $36,000 daily.</p><p>The lawsuit names three separate Apple entities as defendants, including Apple Rus LLC, Apple Inc., and Apple Distribution International Ltd.</p><p>VK has requested that the daily fines begin accruing six days after the court issues its complete and final ruling in this case.</p><p>The European Union's sanctions accused VK and its messaging subsidiary of enabling surveillance, censorship, and the identification of government critics inside Russia.</p><p>Apple removed the applications from the App Store following that designation, and the same titles later disappeared from Google Play as well.</p><h2 id="kremlin-criticism-adds-to-mounting-pressure-on-apple">Kremlin criticism adds to mounting pressure on Apple</h2><p>The Kremlin responded sharply to Apple's decision, with spokesperson Dmitry Peskov publicly demanding a formal explanation from the company itself.</p><p>Peskov argued that the removals called into question Apple's "reliability as a provider of commercial services" inside the Russian market.</p><p>The dispute unfolds against a broader pattern of legal friction between Western technology companies and Russian government authorities in recent years.</p><p>The Tagansky District Court recently fined Apple 500 thousand rubles (~$6,000) for a repeated violation of Russian federal legislation.</p><p>Similarly, a Moscow arbitration court ordered Google Ireland Limited to return more than $2.1 billion to Google's bankrupt Russian subsidiary.</p><p>That earlier ruling found the payments in question constituted unjust enrichment under Russian commercial law at the time of the case.</p><p>VK's case against Apple follows a similar legal strategy, relying on domestic courts to challenge decisions made by foreign firms.</p><p>Whether Moscow's arbitration system can meaningfully compel compliance from Apple, given its shrinking footprint in Russia, remains a genuinely open question.</p><p>Via <a href="https://united24media.com/world/apple-pulled-vk-apps-over-sanctions-now-the-russian-tech-giant-wants-696000-a-day-21884" target="_blank" rel="nofollow">United24media</a></p><figure class="van-image-figure inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:676px;"><p class="vanilla-image-block" style="padding-top:31.51%;"><img id="diM9tpwF2Lz85R8q85CT78" name="tr-g_news" alt="Google logo on a black background next to text reading 'Click to follow TechRadar'" src="https://cdn.mos.cms.futurecdn.net/diM9tpwF2Lz85R8q85CT78.jpg" mos="" align="middle" fullscreen="" width="676" height="213" attribution="" endorsement="" class="inline"></p></div></div></figure> </article>
  7. Muslims gather for rain prayers in Indonesia’s wildfire-hit South Sumatra

    Tue, 25 Aug 2026 04:23:02 -0000

    <img src="https://dims.apnews.com/dims4/default/7e61026/2147483647/strip/true/crop/3000x1999+0+1/resize/980x653!/quality/90/?url=https%3A%2F%2Fassets.apnews.com%2Fa6%2F38%2F1556fa70a5ef5f32baaae55c4de0%2F47ff37bbd8ce481c853d053dd9ee4792" width="100%"><small style="color: #999;">Firefighters attempt to extinguish a wildfire burning through a peatland field in Ogan Ilir, South Sumatra, Indonesia, Monday, Aug. 24, 2026. (AP Photo/Muhammad Hatta)</small><p>2026-08-25T03:50:37Z</p> <p>PALEMBANG, Indonesia (AP) — Authorities in Indonesia’s South Sumatra, the province with the highest number of wildfire hot spots, turned to spiritual measures on Tuesday as huge <span><a data-gtm-enhancement-style="LinkEnhancementA" href="https://apnews.com/article/indonesia-bromo-park-peatland-wildfires-sumatra-borneo-62225cc55f9cc8e35d05097fd5f024cf">blazes in central and western</a></span> regions <span><a data-gtm-enhancement-style="LinkEnhancementA" href="https://apnews.com/article/indonesia-forest-land-fires-toxic-haze-7d103393659ecc93a4a7d8dee147491a">scorched wide areas</a></span> of forests and peatland, creating a choking haze that blanketed some cities in the world’s most populous Muslim-majority country.</p><p>The prayer gathering initiative comes as the province faces prolonged dry weather that has heightened the risk of <span><a data-gtm-enhancement-style="LinkEnhancementA" href="https://apnews.com/article/indonesia-kalimantan-sumatra-peatland-forest-fires-68c55926aa3f2615e57cd59f2449f802">forest and peatland fires.</a></span></p><p>The latest satellite data from the Environment Ministry showed South Sumatra recorded the highest number of hot spots nationwide with 1,429, followed by West Kalimantan with 1,226 and Central Kalimantan with 811. Forestry Ministry data indicated that nearly 940 square kilometers (363 square miles) were burned in July alone, including over 20 square kilometers (8 square miles) in South Sumatra province.</p> <script data-cfasync="false" type="text/javascript"> 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 = "apnews_story_feed_dynamic"; freestar.newAdSlots({ placementName: thisPlacement, slotId: randId }, customChannel); }); </script> <p>About 3,000 residents gathered in Palembang, the capital of South Sumatra province, to perform a special Islamic prayer for rain, known as “salat istisqa.” They prayed shoulder to shoulder in the courtyard of the governor’s office as thick smoke shrouded roads, buildings and public facilities, reducing visibility and forcing motorists to drive with their headlights on during the day.</p><p>“We have done everything we can and worked closely with all relevant parties,” South Sumatra Gov. Herman Deru said before the prayer. “As people of faith, we are also praying to God to send rain so that life can return to normal.”</p> <p>He also said the public prayer would complement ongoing firefighting and drought-mitigation measures and serve as a moment for residents to unite in confronting the environmental challenges facing the province.</p> <a id="html-embed-module-110000"></a> <!-- AP "Read More" embed (place mid-article) --> <style> /* 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)); } </style> <button type="button" id="apReadMoreBtn" aria-expanded="false"> Read More <span aria-hidden="true"></span> </button> <script> (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 } }); })(); </script> <script> (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 < all.length; i++) { var el = all[i]; if (embed.contains(el)) continue; if (el === stopEl || stopEl.contains(el)) continue; var tag = el.tagName ? el.tagName.toLowerCase() : ""; if (tag === "script" || tag === "style" || tag === "link" || tag === "meta") continue; if (!(embed.compareDocumentPosition(el) & Node.DOCUMENT_POSITION_FOLLOWING)) continue; if (!(el.compareDocumentPosition(stopEl) & Node.DOCUMENT_POSITION_FOLLOWING)) continue; if (el.contains(embed) || el.contains(stopEl)) continue; el.setAttribute(HIDDEN_ATTR, "1"); el.style.display = "none"; hidden.push(el); } if (!hidden.length) return; fade.style.display = "block"; var revealed = false; var suppressClick = false; function reveal(e) { cancelEvent(e); if (revealed) return false; revealed = true; // — Analytics: click — window.dataLayer = window.dataLayer || []; window.dataLayer.push({ event: "ap_readmore_click" }); hidden.forEach(function (el) { if (!isElementNode(el)) return; if (el.getAttribute(HIDDEN_ATTR) === "1") { el.style.display = ""; el.removeAttribute(HIDDEN_ATTR); } }); btn.setAttribute("aria-expanded", "true"); if (embed.parentNode) { embed.parentNode.removeChild(embed); } return false; } if (window.PointerEvent) { btn.addEventListener("pointerup", function (e) { suppressClick = true; return reveal(e); }, false); } btn.addEventListener("touchend", function (e) { suppressClick = true; return reveal(e); }, false); btn.addEventListener("click", function (e) { if (suppressClick) { suppressClick = false; cancelEvent(e); return false; } return reveal(e); }, false); btn.onclick = function (e) { return reveal(e || window.event); }; }); })(); </script> <p> </p> <p>Emergency services have been battling fires driven by an intensifying <span><a data-gtm-enhancement-style="LinkEnhancementA" href="https://apnews.com/article/el-nino-climate-change-flood-drought-damage-7eafacd2bcf04ade9d7f555dfd488178">El Nino pattern</a></span> and a prolonged dry season, generating dense smoke that crossed into <span><a data-gtm-enhancement-style="LinkEnhancementA" href="https://apnews.com/hub/malaysia">Malaysia</a></span> and Brunei, according to the National Disaster Management Agency.</p><p>Indonesia is actively intensifying weather-modification operations to help firefighters combat wildfires by inducing rainfall through the dispersal of salt particles into suitable clouds, with 30 aircraft for <span><a data-gtm-enhancement-style="LinkEnhancementA" href="https://apnews.com/article/indonesia-mount-marapi-flash-floods-cloud-seeding-f19bf53a1192ef9757c60e18619b0a8c">cloud-seeding</a></span> and water-bombing operations over Kalimantan, and another 22 helicopters covering Sumatra.</p> <script data-cfasync="false" type="text/javascript"> 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 = "apnews_story_feed_dynamic"; freestar.newAdSlots({ placementName: thisPlacement, slotId: randId }, customChannel); }); </script> <p>Indonesian police <span><a data-gtm-enhancement-style="LinkEnhancementA" href="https://apnews.com/article/indonesia-malaysia-forest-peatland-fires-haze-28e8ce3543e18336db989a67e45c5e6e">have arrested 72 people</a></span> suspected of starting some of the forest and peatland fires, while four companies are under investigation for allegedly using fire to clear land at low cost.</p> <a id="html-embed-module-a00000"></a> <!-- AP Morning Wire Newsletter Embed (self-contained) --> <!-- Red AP Prompt Bar --> <svg xmlns="http://www.w3.org/2000/svg" width="48" height="6" viewBox="0 0 48 6" fill="none"> <rect width="48" height="5.76" fill="#FF1818"/> </svg> <strong>Sign up for Morning Wire:</strong> Our flagship newsletter breaks down the biggest headlines of the day. <form novalidate> <input type="text" autocomplete="off" tabindex="-1" aria-hidden="true" /> <label for="ap-newsletter-email-nlmw25">Email address</label> <input id="ap-newsletter-email-nlmw25" name="email" type="email" inputmode="email" autocomplete="email" placeholder="Email address" aria-describedby="ap-newsletter-help-nlmw25 ap-newsletter-error-nlmw25" required /> <button type="submit"> Sign up </button> <label> <input type="checkbox" name="disclaimer" /> <span> By checking this box, you agree to AP's <a href="https://apnews.com/termsofservice" target="_blank" rel="noopener noreferrer">Terms of Use</a> and acknowledge that AP may collect and use your data pursuant to our <a href="https://apnews.com/privacystatement" target="_blank" rel="noopener noreferrer">Privacy Policy</a>. </span> </label> <p id="ap-newsletter-error-nlmw25" role="alert" aria-live="polite"></p> <p id="ap-newsletter-help-nlmw25"></p> </form> <style> [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%; } } </style> <script> 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 < maxAttempts) { setTimeout(checkRecaptcha, nlRecaptchaCheckIntervalNLMW25); } else { callback(false); } }; checkRecaptcha(); } function nlExecuteRecaptchaNLMW25() { return window.grecaptcha.execute() .then(token => 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); </script> <p> </p> <p>Plantation owners and traditional farmers often start fires to clear land for farming, triggering hazardous haze that reduces visibility, disrupts land and air transportation and threatens public health.</p><p>Fires are a regular problem during the dry season in Indonesia, and the haze they generate has periodically drawn diplomatic complaints from neighboring countries in Southeast Asia.</p><p>___</p><p>Associated Press writer Niniek Karmini in Jakarta, Indonesia, contributed to this report.</p> </bsp-story-page>
  8. The last few witnesses in the Lindsay Clancy murder trial are set to testify

    Tue, 25 Aug 2026 04:23:02 -0000

    <img src="https://dims.apnews.com/dims4/default/b241a04/2147483647/strip/true/crop/3000x1999+0+71/resize/980x653!/quality/90/?url=https%3A%2F%2Fassets.apnews.com%2F97%2Ffb%2F7c0677fb6103a60410b101c43fa7%2F3bd24cc10f004895aaa6f877c8994cba" width="100%"><small style="color: #999;">Defendant Lindsay Clancy talks with her lawyer Kevin Reddington. during her murder trial at Plymouth Superior Court, Monday, Aug. 24, 2026 in Plymouth, Mass. (Greg Derr/The Patriot Ledger via AP, Pool)</small><p>2026-08-25T04:00:38Z</p> <p>PLYMOUTH, Mass. (AP) — After nearly a month of testimony, jurors in the <span><a data-gtm-enhancement-style="LinkEnhancementA" href="https://apnews.com/article/lindsay-clancy-murder-trial-postpartum-psychosis-b70bfa592ea1c0fbdc62792e4e7b9be6">Lindsay Clancy murder trial</a></span> are set to hear from the final witnesses in a case that has largely been about her mental state when she strangled her three young children.</p><p>The trial will resume Tuesday with more testimony from a forensic psychologist hired by prosecutors to evaluate Clancy’s psychiatric history and asses the defense claim that she was suffering from acute postpartum psychosis when she killed the children at their Massachusetts home.</p><p>___</p><p>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.</p><p>___</p><p>Kirk Heilbrun told jurors Monday that he believed Clancy took her children’s lives so they wouldn’t “suffer” after she killed herself. He said he didn’t believe Clancy’s claim that she hallucinated a voice telling her to kill the children.</p> <script data-cfasync="false" type="text/javascript"> 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 = "apnews_story_feed_dynamic"; freestar.newAdSlots({ placementName: thisPlacement, slotId: randId }, customChannel); }); </script> <p>Clancy’s lawyer, Kevin Reddington, will get a chance Tuesday to question Heilbrun about his conclusions. Prosecutors are then expected to call at least one more expert witness before the trial moves on to closing arguments, likely no earlier that Wednesday.</p><p>Earlier in the trial, jurors heard from other medical experts, called by the defense, who said Clancy wasn’t responsible for her actions because she had lost her grip on reality due to <span><a data-gtm-enhancement-style="LinkEnhancementA" href="https://apnews.com/article/lindsay-clancy-postpartum-psychosis-depression-d16d8a6345276e146104e3c065189c25">postpartum psychosis</a></span>, a rare mental illness that can follow childbirth.</p> <p>In the months before killing her children, Clancy had sought treatment for mental health problems from multiple providers and admitted herself to a psychiatric hospital.</p> <a id="html-embed-module-110000"></a> <!-- AP "Read More" embed (place mid-article) --> <style> /* 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)); } </style> <button type="button" id="apReadMoreBtn" aria-expanded="false"> Read More <span aria-hidden="true"></span> </button> <script> (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 } }); })(); </script> <script> (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 < all.length; i++) { var el = all[i]; if (embed.contains(el)) continue; if (el === stopEl || stopEl.contains(el)) continue; var tag = el.tagName ? el.tagName.toLowerCase() : ""; if (tag === "script" || tag === "style" || tag === "link" || tag === "meta") continue; if (!(embed.compareDocumentPosition(el) & Node.DOCUMENT_POSITION_FOLLOWING)) continue; if (!(el.compareDocumentPosition(stopEl) & Node.DOCUMENT_POSITION_FOLLOWING)) continue; if (el.contains(embed) || el.contains(stopEl)) continue; el.setAttribute(HIDDEN_ATTR, "1"); el.style.display = "none"; hidden.push(el); } if (!hidden.length) return; fade.style.display = "block"; var revealed = false; var suppressClick = false; function reveal(e) { cancelEvent(e); if (revealed) return false; revealed = true; // — Analytics: click — window.dataLayer = window.dataLayer || []; window.dataLayer.push({ event: "ap_readmore_click" }); hidden.forEach(function (el) { if (!isElementNode(el)) return; if (el.getAttribute(HIDDEN_ATTR) === "1") { el.style.display = ""; el.removeAttribute(HIDDEN_ATTR); } }); btn.setAttribute("aria-expanded", "true"); if (embed.parentNode) { embed.parentNode.removeChild(embed); } return false; } if (window.PointerEvent) { btn.addEventListener("pointerup", function (e) { suppressClick = true; return reveal(e); }, false); } btn.addEventListener("touchend", function (e) { suppressClick = true; return reveal(e); }, false); btn.addEventListener("click", function (e) { if (suppressClick) { suppressClick = false; cancelEvent(e); return false; } return reveal(e); }, false); btn.onclick = function (e) { return reveal(e || window.event); }; }); })(); </script> <p> </p> <p>After killing her children, Clancy jumped from a second-floor window. She remains paralyzed from the waist down. </p><p>Prosecutors say the former labor and delivery nurse planned the killings and contrived to get her <span><a data-gtm-enhancement-style="LinkEnhancementA" href="https://apnews.com/article/lindsay-clancy-murder-trial-postpartum-psychosis-f393af75765dfbc2979deca05225fcfe">husband out of the house</a></span> by sending him to pick up medicine for one of their children and dinner for the family.</p><p>Clancy, 36, has pleaded not guilty to <span><a data-gtm-enhancement-style="LinkEnhancementA" href="https://apnews.com/hub/crime">murder charges</a></span> in the January 2023 deaths of Callan, Dawson and Cora Clancy, who ranged from 8 months to 5 years old. </p> </bsp-story-page>
  9. Trump-backed businessman Mike Mazzei looks to secure GOP nomination for Oklahoma governor

    Tue, 25 Aug 2026 04:23:02 -0000

    <img src="https://dims.apnews.com/dims4/default/a35d585/2147483647/strip/true/crop/2118x1411+0+0/resize/980x653!/quality/90/?url=https%3A%2F%2Fassets.apnews.com%2F32%2F58%2F7a8a6f5bddfc3d26204b21ade8c8%2F936ad31eea524e0abb05a644b23b52e0" width="100%"><small style="color: #999;">Oklahoma Republican gubernatorial candidate Mike Mazzei delivers his closing remarks at a televised debate in Tulsa, Okla., Monday, Aug. 3, 2026. (Jake Ramsey/Oklahoma Watch via AP)</small><p>2026-08-25T04:01:45Z</p> <p>Tulsa businessman Mike Mazzei hopes to win Tuesday’s hotly contested Republican primary runoff for Oklahoma governor after President Donald Trump endorsed him and sharply attacked Mazzei’s rival, state Attorney General Gentner Drummond.</p><p>The contest between Mazzei and Drummond for the GOP nomination to replace term-limited Republican Gov. Kevin Stitt — <span><a data-gtm-enhancement-style="LinkEnhancementA" href="https://apnews.com/article/trump-governors-meeting-democrats-white-house-invitation-a6078ac03332b55ccf8622fe261dd8bd">another Trump target</a></span> — is the biggest one on the ballot in their deeply conservative state. Drummond finished first among the nine candidates <span><a data-gtm-enhancement-style="LinkEnhancementA" href="https://apnews.com/article/oklahoma-primary-election-senate-097714b0e2cec2d5beaeff86feff8baa">in the first round</a></span> of voting June 16, but only by about 1,100 ballots out of 403,000 cast, and both he and Mazzei received about 26% of the vote.</p><p>The winner will face Oklahoma House Minority Leader Cyndi Munson. A Democrat hasn’t won the governor’s race since 2006, and the GOP is heavily favored to keep the office in the November general election. </p> <script data-cfasync="false" type="text/javascript"> 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 = "apnews_story_feed_dynamic"; freestar.newAdSlots({ placementName: thisPlacement, slotId: randId }, customChannel); }); </script> <p>Mazzei, the 61-year-old founder of an investment management firm who served 12 years in the state Senate, received Trump’s endorsement in May. Trump has reaffirmed it several times on his Truth Social platform. <span><a data-gtm-enhancement-style="LinkEnhancementA" href="https://truthsocial.com/@realDonaldTrump/posts/117116197583802302" target="_blank" rel="noopener">In a lengthy post</a></span> last week, Trump called Drummond a “FAKE Republican.” </p><p>Trump criticized Drummond for saying in a 2024 congressional hearing that he had no opinion on Trump’s 2021 impeachment after the Jan. 6 attack on the U.S. Capitol by Trump supporters. Drummond, a 62-year-old northern Oklahoma rancher and former Air Force pilot, was elected attorney general in 2022.</p> <p>“You can forget about this guy — everybody I know dislikes him,” Trump said during a Monday evening call for Oklahoma Republicans. “Gentner Drummond does not stand for the values of Oklahoma, and he’s a guy that would be, I think, a disaster.”</p> <a id="html-embed-module-110000"></a> <!-- AP "Read More" embed (place mid-article) --> <style> /* 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)); } </style> <button type="button" id="apReadMoreBtn" aria-expanded="false"> Read More <span aria-hidden="true"></span> </button> <script> (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 } }); })(); </script> <script> (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 < all.length; i++) { var el = all[i]; if (embed.contains(el)) continue; if (el === stopEl || stopEl.contains(el)) continue; var tag = el.tagName ? el.tagName.toLowerCase() : ""; if (tag === "script" || tag === "style" || tag === "link" || tag === "meta") continue; if (!(embed.compareDocumentPosition(el) & Node.DOCUMENT_POSITION_FOLLOWING)) continue; if (!(el.compareDocumentPosition(stopEl) & Node.DOCUMENT_POSITION_FOLLOWING)) continue; if (el.contains(embed) || el.contains(stopEl)) continue; el.setAttribute(HIDDEN_ATTR, "1"); el.style.display = "none"; hidden.push(el); } if (!hidden.length) return; fade.style.display = "block"; var revealed = false; var suppressClick = false; function reveal(e) { cancelEvent(e); if (revealed) return false; revealed = true; // — Analytics: click — window.dataLayer = window.dataLayer || []; window.dataLayer.push({ event: "ap_readmore_click" }); hidden.forEach(function (el) { if (!isElementNode(el)) return; if (el.getAttribute(HIDDEN_ATTR) === "1") { el.style.display = ""; el.removeAttribute(HIDDEN_ATTR); } }); btn.setAttribute("aria-expanded", "true"); if (embed.parentNode) { embed.parentNode.removeChild(embed); } return false; } if (window.PointerEvent) { btn.addEventListener("pointerup", function (e) { suppressClick = true; return reveal(e); }, false); } btn.addEventListener("touchend", function (e) { suppressClick = true; return reveal(e); }, false); btn.addEventListener("click", function (e) { if (suppressClick) { suppressClick = false; cancelEvent(e); return false; } return reveal(e); }, false); btn.onclick = function (e) { return reveal(e || window.event); }; }); })(); </script> <p> </p> <p>Trump carried Oklahoma with more than 65% of the vote in each of his three races for president without losing a single county. Drummond has suggested that Mazzei received Trump’s endorsement for hiring a consulting firm operated by longtime Trump friend and adviser Roger Stone, with Mazzei’s campaign paying it $67,500, according to campaign finance records. </p><p>Both Trump and Drummond have criticized Stitt, who endorsed Mazzei. The departing governor drew Trump’s ire earlier this year while leading the National Governors Association in a dispute over invitations to White House events, with Trump attacking Stitt as a “RINO,” or “Republican in Name Only.” Drummond said in an interview <span><a data-gtm-enhancement-style="LinkEnhancementA" href="https://www.facebook.com/watch/?v=1548959606583272" target="_blank" rel="noopener">with Oklahoma City’s KOCO-TV</a></span> last month that under Stitt, the state had seen eight years of “mediocrity and flipping.”</p> <script data-cfasync="false" type="text/javascript"> 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 = "apnews_story_feed_dynamic"; freestar.newAdSlots({ placementName: thisPlacement, slotId: randId }, customChannel); }); </script> <p>“I respect the president,” Drummond said. “He’s a great leader.”</p> <a id="html-embed-module-a00000"></a> <!-- AP Morning Wire Newsletter Embed (self-contained) --> <!-- Red AP Prompt Bar --> <svg xmlns="http://www.w3.org/2000/svg" width="48" height="6" viewBox="0 0 48 6" fill="none"> <rect width="48" height="5.76" fill="#FF1818"/> </svg> <strong>Sign up for Morning Wire:</strong> Our flagship newsletter breaks down the biggest headlines of the day. <form novalidate> <input type="text" autocomplete="off" tabindex="-1" aria-hidden="true" /> <label for="ap-newsletter-email-nlmw25">Email address</label> <input id="ap-newsletter-email-nlmw25" name="email" type="email" inputmode="email" autocomplete="email" placeholder="Email address" aria-describedby="ap-newsletter-help-nlmw25 ap-newsletter-error-nlmw25" required /> <button type="submit"> Sign up </button> <label> <input type="checkbox" name="disclaimer" /> <span> By checking this box, you agree to AP's <a href="https://apnews.com/termsofservice" target="_blank" rel="noopener noreferrer">Terms of Use</a> and acknowledge that AP may collect and use your data pursuant to our <a href="https://apnews.com/privacystatement" target="_blank" rel="noopener noreferrer">Privacy Policy</a>. </span> </label> <p id="ap-newsletter-error-nlmw25" role="alert" aria-live="polite"></p> <p id="ap-newsletter-help-nlmw25"></p> </form> <style> [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%; } } </style> <script> 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 < maxAttempts) { setTimeout(checkRecaptcha, nlRecaptchaCheckIntervalNLMW25); } else { callback(false); } }; checkRecaptcha(); } function nlExecuteRecaptchaNLMW25() { return window.grecaptcha.execute() .then(token => 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); </script> <p> </p> <p>The 10-week runoff campaign has spawned more than $9 million in television and digital advertising, most of it from independent groups, according to the ad-track service AdImpact. That’s on top of the nearly $40 million spent in the governor’s race ahead of the runoff.</p><p>While Drummond has raised about $4.8 million more in cash contributions, Mazzei has funded his campaign largely through personal loans of at least $11.9 million. Drummond has loaned his campaign at least $3.5 million.</p> </bsp-story-page> <a href="https://apnews.com/author/john-hanna"> <picture data-crop="small-square"> <source type="image/webp" width="100" height="100" srcset="https://dims.apnews.com/dims4/default/97d6486/2147483647/strip/true/crop/1890x1890+0+114/resize/100x100!/format/webp/quality/90/?url=https%3A%2F%2Fassets.apnews.com%2F55%2F14%2Ff5acc83d4bc2baee3c81d3905cfe%2Fhanna-11-11-24d-1.JPG"> <source width="100" height="100" srcset="https://dims.apnews.com/dims4/default/dda1410/2147483647/strip/true/crop/1890x1890+0+114/resize/100x100!/quality/90/?url=https%3A%2F%2Fassets.apnews.com%2F55%2F14%2Ff5acc83d4bc2baee3c81d3905cfe%2Fhanna-11-11-24d-1.JPG"> <img alt="JOHN HANNA" width="100" height="100" src="https://dims.apnews.com/dims4/default/dda1410/2147483647/strip/true/crop/1890x1890+0+114/resize/100x100!/quality/90/?url=https%3A%2F%2Fassets.apnews.com%2F55%2F14%2Ff5acc83d4bc2baee3c81d3905cfe%2Fhanna-11-11-24d-1.JPG" loading="lazy" > </picture> </a> <a href="https://apnews.com/author/john-hanna">JOHN HANNA</a> Hanna covers U.S. news, including politics and state government. He’s worked for AP in Topeka, Kansas, since 1986 and is a member of the Kansas Newspaper Hall of Fame. <a rel="noreferrer" href="/cdn-cgi/l/email-protection#d3b9b7bbb2bdbdb293b2a3fdbca1b4" target="_blank" data-social-service="mailto"> <svg> <use xlink:href="#mono-icon-mailto"></use> </svg> <span> mailto </span> </a>
  10. Unusual dragonfly swarms sweep across California after warm spring rains

    Tue, 25 Aug 2026 04:23:02 -0000

    <img src="https://dims.apnews.com/dims4/default/72239c7/2147483647/strip/true/crop/5507x3669+0+1/resize/980x653!/quality/90/?url=https%3A%2F%2Fassets.apnews.com%2Fe3%2F86%2F629abc1113495176e2d2be25e25f%2F4cbd9dd4dd2e458a99a18a2c787aef12" width="100%"><small style="color: #999;">A dragonfly rests on a plant at the Lake Merritt Dragonfly Habitat Garden in Oakland, Calif., Friday, Aug. 21, 2026. (AP Photo/Jeff Chiu)</small><p>2026-08-25T04:01:49Z</p> <p>SAN FRANCISCO (AP) — Californians are spotting swarms of dragonflies flitting around parks, chasing mosquitoes in ponds and hunting flies on farms, a phenomenon experts say was likely fueled by unusually warm spring rains.</p><p>Peter Veilleux, who owns a nursery in Oakland, said he started noticing the dragonflies — at one point spotting about 100 flying together — while walking his dog at a park near his house and around the city’s Lake Merritt.</p><p>“It’s been amazing to see them,” Veilleux said, adding that he started seeing big groups of dragonflies in July. </p><p>He was so awed by the sight that he posted about it on Facebook, asking if anyone else was seeing the formidable predators in such large numbers. Dozens of people commented about their own sightings in the San Francisco Bay Area and elsewhere in California.</p><h2>Warm monsoon storms likely fueled dragonfly surge</h2><p>It is common to see dragonflies during the summer months, when they emerge from freshwater as flying insects. But this year’s large numbers are probably due to the warm monsoon storms that came through the state in late spring and early summer, said Kathy Biggs, a dragonfly expert and co-author of the book “Dragonflies of California.”</p> <script data-cfasync="false" type="text/javascript"> 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 = "apnews_story_feed_dynamic"; freestar.newAdSlots({ placementName: thisPlacement, slotId: randId }, customChannel); }); </script> <p>She said most are likely wandering gliders, a highly migratory dragonfly that can appear in large numbers when conditions line up. Dragonflies, which can fly at speeds of up to 35 mph (56 kph), use air pressure changes to help them fly great distances, Biggs said.</p> <p>“We could say that they’re surfing the pressure system, the monsoon,” she added.</p><p>Joe Del Bosque said he noticed swarms of them earlier this month at his farm in Fresno County, flying 10 to 20 feet (3 to 6 meters) above him.</p> <a id="html-embed-module-110000"></a> <!-- AP "Read More" embed (place mid-article) --> <style> /* 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)); } </style> <button type="button" id="apReadMoreBtn" aria-expanded="false"> Read More <span aria-hidden="true"></span> </button> <script> (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 } }); })(); </script> <script> (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 < all.length; i++) { var el = all[i]; if (embed.contains(el)) continue; if (el === stopEl || stopEl.contains(el)) continue; var tag = el.tagName ? el.tagName.toLowerCase() : ""; if (tag === "script" || tag === "style" || tag === "link" || tag === "meta") continue; if (!(embed.compareDocumentPosition(el) & Node.DOCUMENT_POSITION_FOLLOWING)) continue; if (!(el.compareDocumentPosition(stopEl) & Node.DOCUMENT_POSITION_FOLLOWING)) continue; if (el.contains(embed) || el.contains(stopEl)) continue; el.setAttribute(HIDDEN_ATTR, "1"); el.style.display = "none"; hidden.push(el); } if (!hidden.length) return; fade.style.display = "block"; var revealed = false; var suppressClick = false; function reveal(e) { cancelEvent(e); if (revealed) return false; revealed = true; // — Analytics: click — window.dataLayer = window.dataLayer || []; window.dataLayer.push({ event: "ap_readmore_click" }); hidden.forEach(function (el) { if (!isElementNode(el)) return; if (el.getAttribute(HIDDEN_ATTR) === "1") { el.style.display = ""; el.removeAttribute(HIDDEN_ATTR); } }); btn.setAttribute("aria-expanded", "true"); if (embed.parentNode) { embed.parentNode.removeChild(embed); } return false; } if (window.PointerEvent) { btn.addEventListener("pointerup", function (e) { suppressClick = true; return reveal(e); }, false); } btn.addEventListener("touchend", function (e) { suppressClick = true; return reveal(e); }, false); btn.addEventListener("click", function (e) { if (suppressClick) { suppressClick = false; cancelEvent(e); return false; } return reveal(e); }, false); btn.onclick = function (e) { return reveal(e || window.event); }; }); })(); </script> <p> </p> <p>“We do have them every year, but we had more than normal,” he said.</p><p>Del Bosque said he was happy to see the flying hunters because they eat aphids, whiteflies and fruit flies that feed on his crops. The insects, along with ladybugs working on the plants, are excellent pest control because they eat tiny insects on the plants and larger winged ones, like adult aphids and moths, he said. </p><p>“They are like little fighter jets,” Del Bosque said. “They zoom in for other insects and capture them in the air.”</p> <script data-cfasync="false" type="text/javascript"> 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 = "apnews_story_feed_dynamic"; freestar.newAdSlots({ placementName: thisPlacement, slotId: randId }, customChannel); }); </script> <h2>Dragonflies spend most of their lives in water</h2><p>Dragonflies spend most of their lives wingless and underwater. Their life cycle begins after female and male dragonflies mate and the female dragonfly lays tiny eggs in freshwater. After the eggs hatch, the young dragonflies, called nymphs, live underwater for at least six months and for up to five years for some species. They start hunting then and feed on mosquito larvae, tadpoles, and even other nymphs.</p><p>Once they emerge from the water, they shed their skin and transform into four-winged insects that can move their forewings and hindwings independently. This allows them to fly forward, backward, up and down, and hover perfectly in place.</p><p>But their life as flying animals is short, lasting a few weeks or months. They spend it looking for new lakes, rivers and ponds, preying on tiny insects and attempting to repeat the cycle of life.</p><p>“They’re super agile, super strong flying insects with really good vision, really good eyes, and really strong flight muscles, and they are voracious predators that are out there feeding on mosquitoes nonstop,” said Chris Grinter, senior collection manager of entomology at the California Academy of Science in San Francisco.</p><p>Grinter said dragonflies are among the most effective predators in nature, with more than 90% of their hunts ending successfully.</p> <script data-cfasync="false" type="text/javascript"> 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 = "apnews_story_feed_dynamic"; freestar.newAdSlots({ placementName: thisPlacement, slotId: randId }, customChannel); }); </script> <p>“They can eat hundreds of mosquitoes a single day,” he said.</p><p>Dragonflies have awed humans for thousands of years. To Native Americans, a dragonfly is a symbol of purity and happiness. In Japan, they symbolize power, agility and victory. In some European folklore, they were considered to represent evil or bad luck.</p><p>To attract them to your garden, Biggs recommends avoiding pesticides and building fishless ponds and sunny areas with perches.</p><p>There are about 70 dragonfly species in California, but most are not migratory and remain near where they emerged, Biggs said.</p><p>Some of them might be out the very first thing in the spring, even as the snow is melting, and some of them are out in the Mojave Desert in the driest, hottest places in California, Grinter said.</p><p>Biggs said the migratory species keep moving on, ‘surfing’ high-pressure systems in the air.</p><p>“They could be somewhere a few days and then leave,” she said.</p> </bsp-story-page> <a href="https://apnews.com/author/olga-r-rodriguez"> <picture data-crop="small-square"> <source type="image/webp" width="100" height="100" srcset="https://dims.apnews.com/dims4/default/31dc2ed/2147483647/strip/true/crop/400x400+0+0/resize/100x100!/format/webp/quality/90/?url=https%3A%2F%2Fassets.apnews.com%2Feb%2F97%2Fed83e19e4c0fbcd7c97c32547af9%2F1kfkp-4r-400x400.jpg"> <source width="100" height="100" srcset="https://dims.apnews.com/dims4/default/a71c6e4/2147483647/strip/true/crop/400x400+0+0/resize/100x100!/quality/90/?url=https%3A%2F%2Fassets.apnews.com%2Feb%2F97%2Fed83e19e4c0fbcd7c97c32547af9%2F1kfkp-4r-400x400.jpg"> <img alt="OLGA R. RODRIGUEZ" width="100" height="100" src="https://dims.apnews.com/dims4/default/a71c6e4/2147483647/strip/true/crop/400x400+0+0/resize/100x100!/quality/90/?url=https%3A%2F%2Fassets.apnews.com%2Feb%2F97%2Fed83e19e4c0fbcd7c97c32547af9%2F1kfkp-4r-400x400.jpg" loading="lazy" > </picture> </a> <a href="https://apnews.com/author/olga-r-rodriguez">OLGA R. RODRIGUEZ</a> Rodríguez is an Associated Press reporter and U.S. Desk editor based in San Francisco. She was previously a Mexico and Central America Correspondent for the AP based in Mexico City. <a rel="noreferrer" href="https://twitter.com/OlgaRRod" target="_blank" data-social-service="twitter"> <svg> <use xlink:href="#mono-icon-twitter"></use> </svg> <span> twitter </span> </a> <a rel="noreferrer" href="/cdn-cgi/l/email-protection#79160b161d0b101e0c1c0339180957160b1e" target="_blank" data-social-service="mailto"> <svg> <use xlink:href="#mono-icon-mailto"></use> </svg> <span> mailto </span> </a> <a rel="noreferrer" href="https://www.linkedin.com/in/olgarrodriguez/" target="_blank" data-social-service="Linked In"> <bsp-figure> <figure > <picture data-crop="imgEn-xs-icon-nocrop"> <source type="image/webp" width="28" height="28" srcset="https://dims.apnews.com/dims4/default/0e2fbbd/2147483647/strip/true/crop/300x300+0+0/resize/28x28!/format/webp/quality/90/?url=https%3A%2F%2Fassets.apnews.com%2Fe0%2F70%2Fc8f1d6af439b97449fe815ed6d46%2Flinked-in-logo-black-96-2x.png 1x,https://dims.apnews.com/dims4/default/0e2fbbd/2147483647/strip/true/crop/300x300+0+0/resize/28x28!/format/webp/quality/90/?url=https%3A%2F%2Fassets.apnews.com%2Fe0%2F70%2Fc8f1d6af439b97449fe815ed6d46%2Flinked-in-logo-black-96-2x.png 1x"> <source width="28" height="28" srcset="https://dims.apnews.com/dims4/default/bb1d009/2147483647/strip/true/crop/300x300+0+0/resize/28x28!/quality/90/?url=https%3A%2F%2Fassets.apnews.com%2Fe0%2F70%2Fc8f1d6af439b97449fe815ed6d46%2Flinked-in-logo-black-96-2x.png 1x,https://dims.apnews.com/dims4/default/bb1d009/2147483647/strip/true/crop/300x300+0+0/resize/28x28!/quality/90/?url=https%3A%2F%2Fassets.apnews.com%2Fe0%2F70%2Fc8f1d6af439b97449fe815ed6d46%2Flinked-in-logo-black-96-2x.png 1x"> <img srcset="https://dims.apnews.com/dims4/default/bb1d009/2147483647/strip/true/crop/300x300+0+0/resize/28x28!/quality/90/?url=https%3A%2F%2Fassets.apnews.com%2Fe0%2F70%2Fc8f1d6af439b97449fe815ed6d46%2Flinked-in-logo-black-96-2x.png 1x,https://dims.apnews.com/dims4/default/bb1d009/2147483647/strip/true/crop/300x300+0+0/resize/28x28!/quality/90/?url=https%3A%2F%2Fassets.apnews.com%2Fe0%2F70%2Fc8f1d6af439b97449fe815ed6d46%2Flinked-in-logo-black-96-2x.png 1x" fetchpriority="high" width="28" height="28" src="https://dims.apnews.com/dims4/default/bb1d009/2147483647/strip/true/crop/300x300+0+0/resize/28x28!/quality/90/?url=https%3A%2F%2Fassets.apnews.com%2Fe0%2F70%2Fc8f1d6af439b97449fe815ed6d46%2Flinked-in-logo-black-96-2x.png" loading="lazy" > </picture> </figure> </bsp-figure> </a>