Connect with us

New Hampshire

NH Supreme Court overturns conviction of man for voting in two states in 2016 election

Published

on

NH Supreme Court overturns conviction of man for voting in two states in 2016 election


NH Supreme Court overturns conviction of man for voting in two states in 2016 election

Advertisement

DOZENS OF LOCAL BUSINESSES. THE STATE SUPREME COURT HAS JUST OVERTURNED THE CONVICTION OF A MAN WHO. PROSECUTORS SAID VOTED IN THE 2016 GENERAL ELECTION IN MASSACHUSETTS AND IN NEW HAMPSHIRE. RICHARD ROSEN WAS CONVICTED IN 2024 ON A FELONY COUNT OF WRONGFUL VOTING, WHILE YESTERDAY’S RULING CONCLUDED THAT THE TRIAL COURT MADE A MISTAKE BY EXCLUDING EVIDENCE ABOUT ANOTHER MAN WHO ALLEGEDLY CONFESSED TO REPEATEDLY CASTING VOTES IN ROSEN’S NAME IN MASSACHUSETTS, PROSECUTORS WERE ALLOWED TO MENTION EVIDENCE OF SIX PRIOR INSTANCES IN WHICH VOTES WERE CAST IN ROSEN’S NAMES. IN BOTH STATES, THE STATE SUPREME COURT SAID. DOING SO DESPITE ROS

Advertisement

NH Supreme Court overturns conviction of man for voting in two states in 2016 election

Updated: 8:19 PM EDT Apr 10, 2026

Editorial Standards

Advertisement

The New Hampshire Supreme Court has overturned the conviction of a man who prosecutors say voted in the 2016 general election in Massachusetts and New Hampshire.Richard Rosen was convicted in 2024 on a felony count of wrongful voting.Thursday’s ruling concluded that the trial court made a mistake by excluding evidence about another man who allegedly confessed to repeatedly casting votes in Rosen’s name in Massachusetts.Prosecutors were allowed to mention evidence of six prior instances in which votes were cast in Rosen’s name in both states. The New Hampshire Supreme Court said that withholding evidence about another person voting in Rosen’s name unfairly prejudiced the jury.

The New Hampshire Supreme Court has overturned the conviction of a man who prosecutors say voted in the 2016 general election in Massachusetts and New Hampshire.

Advertisement

Richard Rosen was convicted in 2024 on a felony count of wrongful voting.

Thursday’s ruling concluded that the trial court made a mistake by excluding evidence about another man who allegedly confessed to repeatedly casting votes in Rosen’s name in Massachusetts.

Prosecutors were allowed to mention evidence of six prior instances in which votes were cast in Rosen’s name in both states.

Advertisement

The New Hampshire Supreme Court said that withholding evidence about another person voting in Rosen’s name unfairly prejudiced the jury.

Advertisement

`;
}

function refreshWeatherIframe(containerId) {
var iframeId = ‘weather-iframe-‘ + containerId;
var iframe = document.getElementById(iframeId);
if (iframe && iframe.src) {
var originalSrc = iframe.src;
iframe.src = originalSrc + (originalSrc.indexOf(‘?’) > -1 ? ‘&’ : ‘?’) + ‘t=” + Date.now();
}
}

function initializeWeatherBox(container) {
var containerId = container.getAttribute(“data-container-id’);
var isWeatherBoxV2 = containerId === ‘home-weather-v2’;

function switchWeatherTab(tabName, clickedElement) {
container.querySelectorAll(‘[data-tab-id]’).forEach(function(tab) {
tab.classList.remove(‘open’);
tab.setAttribute(‘aria-selected’, ‘false’);
});

Advertisement

clickedElement.classList.add(‘open’);
clickedElement.setAttribute(‘aria-selected’, ‘true’);

container.querySelectorAll(‘[data-content-id]’).forEach(function(content) {
content.style.display = ‘none’;
content.setAttribute(‘hidden’, ‘true’);
});

var targetContent = container.querySelector(‘[data-content-id=”‘ + tabName + ‘”]’);
if (targetContent) {
targetContent.style.display = ‘block’;
targetContent.removeAttribute(‘hidden’);
}
}

function loadWeatherData() {
// If weather data is already being loaded, wait for it
if (window.weatherDataPromise) {
window.weatherDataPromise.then(function(data) {
if (data && data.data) {
var weatherContainer = container.closest(‘.weather-box-container’);
if (weatherContainer) {
weatherContainer.style.display = ‘flex’;
updateCurrentWeather(data.data);
updateForecastTabs(data.data);
updateWeatherAlertsBar(data.data);
}
}
});
return;
}

var location = { zip: window.DEFAULT_ZIPCODE };

Advertisement

try {
var storedLocations = localStorage.getItem(‘hrst.zip.history’);
if (storedLocations) {
var locations = JSON.parse(storedLocations);
if (locations && locations.length > 0) {
location = locations[0];
}
}
} catch (e) {}

var apiUrl = (window.DEWY_HOSTNAME || ”) + ‘/api/v1/weather/full/’ + location.zip;

if (window.fetch) {
window.weatherDataPromise = fetch(apiUrl)
.then(function(response) { return response.json(); })
.then(function(data) {
if (data && data.data) {
var article = container.closest(‘.article–wrapper’);
var weatherContainer = container.closest(‘.weather-box-container’);
if (weatherContainer) {
weatherContainer.style.display = ‘flex’;
updateCurrentWeather(data.data);
updateForecastTabs(data.data);
updateWeatherAlertsBar(data.data);
}
return data;
}
})
.catch(function(error) {
console.error(‘Error loading weather:’, error);
// Reset to unknown background on error
updateWeatherBackground(‘unknown’);
});
}
}

function updateWeatherAlertsBar(weatherData) {
var weatherWatchHeader = container.querySelector(‘.weather-watch-header’);
if (!weatherWatchHeader) return;

var weatherWatchText = weatherWatchHeader.querySelector(‘.weather-watch-text’);
var weatherWatchLink = weatherWatchHeader.querySelector(‘.weather-watch-link’);

Advertisement

if (weatherData.alerts_count > 0) {
weatherWatchHeader.className=”weather-watch-header has-alerts”;
if (weatherWatchText) {
weatherWatchText.textContent = `Weather Alerts (${weatherData.alerts_count})`;
}
if (weatherWatchLink) {
if (!weatherWatchLink.getAttribute(‘data-initial-href’)) {
weatherWatchLink.setAttribute(‘data-initial-href’, weatherWatchLink.getAttribute(‘href’));
weatherWatchLink.setAttribute(‘data-initial-onclick’, weatherWatchLink.getAttribute(‘onclick’) || ”);
}
weatherWatchLink.setAttribute(‘href’, “https://www.wmur.com/alerts”);
weatherWatchLink.setAttribute(‘onclick’, “return handleWeatherLinkClick(event, ‘click_alerts’, ‘click’, ‘mobile-weather’, “https://www.wmur.com/alerts”);”);
}
} else {
weatherWatchHeader.className=”weather-watch-header”;
if (weatherWatchText) {
weatherWatchText.textContent = containerId === ‘home-weather-v2’ ? ‘Watch Latest Forecast’ : ‘Latest Forecast’;
}
if (weatherWatchLink) {
var initialHref = weatherWatchLink.getAttribute(‘data-initial-href’);
var initialOnclick = weatherWatchLink.getAttribute(‘data-initial-onclick’);
if (initialHref) {
weatherWatchLink.setAttribute(‘href’, initialHref);
}
if (initialOnclick) {
weatherWatchLink.setAttribute(‘onclick’, initialOnclick);
}
}
}
}

function updateCurrentWeather(weatherData) {
if (weatherData.current) {
var tempValue = weatherData.current.temp_f || ”;
var skyValue = weatherData.current.sky || ”;
var feelsLikeValue = weatherData.current.feels_like_f || weatherData.current.temp_f || ”;

var tempEl = container.querySelector(‘.weather-grid–current-temp-value’);
if (tempEl) {
tempEl.textContent = tempValue;
tempEl.setAttribute(‘aria-label’, tempValue + ‘ degrees Fahrenheit’);
}

var iconEl = container.querySelector(‘.weather-grid–current-icon’);
if (iconEl && weatherData.current.icon_name) {
iconEl.className=”weather-grid–current-icon weather-current-icon icon icon-weather-” + weatherData.current.icon_name;
}

var skyEl = container.querySelector(‘.weather-grid–sky’);
if (skyEl) {
skyEl.textContent = skyValue;
skyEl.setAttribute(‘aria-label’, ‘Current condition: ‘ + skyValue);
}

Advertisement

var feelsEl = container.querySelector(‘.weather-grid–feels’);
if (feelsEl) {
feelsEl.textContent = feelsLikeValue + ‘°F’;
feelsEl.setAttribute(‘aria-label’, feelsLikeValue + ‘ degrees Fahrenheit’);
}

var weatherContainer = container.querySelector(‘.weather-temp-container’);
if (weatherContainer) {
var summary = ‘Current temperature ‘ + tempValue + ‘ degrees Fahrenheit, ‘ +
skyValue + ‘, feels like ‘ + feelsLikeValue + ‘ degrees’;
weatherContainer.setAttribute(‘aria-label’, summary);
}

updateWeatherBackground(weatherData.current.icon_name);
}
}

function updateWeatherBackground(iconName) {
try {
var bgPath = weatherImages.backgrounds[iconName] || weatherImages.backgrounds.unknown;
container.style.backgroundImage=”url(” + bgPath + ‘)’;
} catch (e) {
console.log(‘Error updating weather background:’, e);
}
}

function updateForecastTabs(weatherData) {
var visibleItems = isWeatherBoxV2 ? 6 : 5;

Advertisement

if (weatherData.hourly) {
var hourlyContainer = container.querySelector(‘.weather-hourly-forecast’);
if (hourlyContainer) {
var html=””;
var maxHours = Math.min(visibleItems, weatherData.hourly.length);

for (var i = 0; i 0 ? currentIndex – 1 : tabs.length – 1;
tabs[prevIndex].focus();
break;
case ‘ArrowRight’:
e.preventDefault();
var nextIndex = currentIndex

`;
}

function refreshWeatherIframe(containerId) {
var iframeId = ‘weather-iframe-‘ + containerId;
var iframe = document.getElementById(iframeId);
if (iframe && iframe.src) {
var originalSrc = iframe.src;
iframe.src = originalSrc + (originalSrc.indexOf(‘?’) > -1 ? ‘&’ : ‘?’) + ‘t=” + Date.now();
}
}

function initializeWeatherBox(container) {
var containerId = container.getAttribute(“data-container-id’);
var isWeatherBoxV2 = containerId === ‘home-weather-v2’;

Advertisement

function switchWeatherTab(tabName, clickedElement) {
container.querySelectorAll(‘[data-tab-id]’).forEach(function(tab) {
tab.classList.remove(‘open’);
tab.setAttribute(‘aria-selected’, ‘false’);
});

clickedElement.classList.add(‘open’);
clickedElement.setAttribute(‘aria-selected’, ‘true’);

container.querySelectorAll(‘[data-content-id]’).forEach(function(content) {
content.style.display = ‘none’;
content.setAttribute(‘hidden’, ‘true’);
});

var targetContent = container.querySelector(‘[data-content-id=”‘ + tabName + ‘”]’);
if (targetContent) {
targetContent.style.display = ‘block’;
targetContent.removeAttribute(‘hidden’);
}
}

function loadWeatherData() {
// If weather data is already being loaded, wait for it
if (window.weatherDataPromise) {
window.weatherDataPromise.then(function(data) {
if (data && data.data) {
var weatherContainer = container.closest(‘.weather-box-container’);
if (weatherContainer) {
weatherContainer.style.display = ‘flex’;
updateCurrentWeather(data.data);
updateForecastTabs(data.data);
updateWeatherAlertsBar(data.data);
}
}
});
return;
}

Advertisement

var location = { zip: window.DEFAULT_ZIPCODE };

try {
var storedLocations = localStorage.getItem(‘hrst.zip.history’);
if (storedLocations) {
var locations = JSON.parse(storedLocations);
if (locations && locations.length > 0) {
location = locations[0];
}
}
} catch (e) {}

var apiUrl = (window.DEWY_HOSTNAME || ”) + ‘/api/v1/weather/full/’ + location.zip;

if (window.fetch) {
window.weatherDataPromise = fetch(apiUrl)
.then(function(response) { return response.json(); })
.then(function(data) {
if (data && data.data) {
var article = container.closest(‘.article–wrapper’);
var weatherContainer = container.closest(‘.weather-box-container’);
if (weatherContainer) {
weatherContainer.style.display = ‘flex’;
updateCurrentWeather(data.data);
updateForecastTabs(data.data);
updateWeatherAlertsBar(data.data);
}
return data;
}
})
.catch(function(error) {
console.error(‘Error loading weather:’, error);
// Reset to unknown background on error
updateWeatherBackground(‘unknown’);
});
}
}

function updateWeatherAlertsBar(weatherData) {
var weatherWatchHeader = container.querySelector(‘.weather-watch-header’);
if (!weatherWatchHeader) return;

Advertisement

var weatherWatchText = weatherWatchHeader.querySelector(‘.weather-watch-text’);
var weatherWatchLink = weatherWatchHeader.querySelector(‘.weather-watch-link’);

if (weatherData.alerts_count > 0) {
weatherWatchHeader.className=”weather-watch-header has-alerts”;
if (weatherWatchText) {
weatherWatchText.textContent = `Weather Alerts (${weatherData.alerts_count})`;
}
if (weatherWatchLink) {
if (!weatherWatchLink.getAttribute(‘data-initial-href’)) {
weatherWatchLink.setAttribute(‘data-initial-href’, weatherWatchLink.getAttribute(‘href’));
weatherWatchLink.setAttribute(‘data-initial-onclick’, weatherWatchLink.getAttribute(‘onclick’) || ”);
}
weatherWatchLink.setAttribute(‘href’, “https://www.wmur.com/alerts”);
weatherWatchLink.setAttribute(‘onclick’, “return handleWeatherLinkClick(event, ‘click_alerts’, ‘click’, ‘sidelist-weather’, “https://www.wmur.com/alerts”);”);
}
} else {
weatherWatchHeader.className=”weather-watch-header”;
if (weatherWatchText) {
weatherWatchText.textContent = containerId === ‘home-weather-v2’ ? ‘Watch Latest Forecast’ : ‘Latest Forecast’;
}
if (weatherWatchLink) {
var initialHref = weatherWatchLink.getAttribute(‘data-initial-href’);
var initialOnclick = weatherWatchLink.getAttribute(‘data-initial-onclick’);
if (initialHref) {
weatherWatchLink.setAttribute(‘href’, initialHref);
}
if (initialOnclick) {
weatherWatchLink.setAttribute(‘onclick’, initialOnclick);
}
}
}
}

function updateCurrentWeather(weatherData) {
if (weatherData.current) {
var tempValue = weatherData.current.temp_f || ”;
var skyValue = weatherData.current.sky || ”;
var feelsLikeValue = weatherData.current.feels_like_f || weatherData.current.temp_f || ”;

var tempEl = container.querySelector(‘.weather-grid–current-temp-value’);
if (tempEl) {
tempEl.textContent = tempValue;
tempEl.setAttribute(‘aria-label’, tempValue + ‘ degrees Fahrenheit’);
}

var iconEl = container.querySelector(‘.weather-grid–current-icon’);
if (iconEl && weatherData.current.icon_name) {
iconEl.className=”weather-grid–current-icon weather-current-icon icon icon-weather-” + weatherData.current.icon_name;
}

Advertisement

var skyEl = container.querySelector(‘.weather-grid–sky’);
if (skyEl) {
skyEl.textContent = skyValue;
skyEl.setAttribute(‘aria-label’, ‘Current condition: ‘ + skyValue);
}

var feelsEl = container.querySelector(‘.weather-grid–feels’);
if (feelsEl) {
feelsEl.textContent = feelsLikeValue + ‘°F’;
feelsEl.setAttribute(‘aria-label’, feelsLikeValue + ‘ degrees Fahrenheit’);
}

var weatherContainer = container.querySelector(‘.weather-temp-container’);
if (weatherContainer) {
var summary = ‘Current temperature ‘ + tempValue + ‘ degrees Fahrenheit, ‘ +
skyValue + ‘, feels like ‘ + feelsLikeValue + ‘ degrees’;
weatherContainer.setAttribute(‘aria-label’, summary);
}

updateWeatherBackground(weatherData.current.icon_name);
}
}

function updateWeatherBackground(iconName) {
try {
var bgPath = weatherImages.backgrounds[iconName] || weatherImages.backgrounds.unknown;
container.style.backgroundImage=”url(” + bgPath + ‘)’;
} catch (e) {
console.log(‘Error updating weather background:’, e);
}
}

Advertisement

function updateForecastTabs(weatherData) {
var visibleItems = isWeatherBoxV2 ? 6 : 5;

if (weatherData.hourly) {
var hourlyContainer = container.querySelector(‘.weather-hourly-forecast’);
if (hourlyContainer) {
var html=””;
var maxHours = Math.min(visibleItems, weatherData.hourly.length);

for (var i = 0; i 0 ? currentIndex – 1 : tabs.length – 1;
tabs[prevIndex].focus();
break;
case ‘ArrowRight’:
e.preventDefault();
var nextIndex = currentIndex

Loading more articles…



Source link

Advertisement

New Hampshire

Meditation In Merrimack | Paddle Plunge | Debo Ray Performs | Antiques Road Show: NH Patch Weekender

Published

on

Meditation In Merrimack | Paddle Plunge | Debo Ray Performs | Antiques Road Show: NH Patch Weekender


MERRIMACK, NH — Here is the latest roundup of events around New Hampshire featured on Patch’s news and community websites.

The latest weather can be found here. So, get out.

And do not forget: Event listings are free on one Patch site. You can share your calendar listing on other community sites for a modest fee, starting at 25 cents per day. To get started, visit the Events link on the front page of all Patch sites. Statewide calendar roundups are published on Mondays, Wednesdays, and Fridays.





Source link

Advertisement
Continue Reading

New Hampshire

In rare move, House votes for review of lawmaker’s ‘hate-filled’ social media posts

Published

on

In rare move, House votes for review of lawmaker’s ‘hate-filled’ social media posts


In a rare move, the New Hampshire House voted to initiate possible disciplinary proceedings against Republican Rep. Travis Corcoran Thursday over a series of inflammatory social media posts. The decision comes as partisan tensions and caustic behavior continue to flare in the House.

At issue for Corcoran — who maintains a busy schedule of social media traffic — are recent posts on X, in which he called for a “final solution” in response to a karaoke night invitation from a Jewish lawmaker, and another in which he talked of deporting a fellow lawmaker who was born in the Philippines: “She has to go back,” he wrote.

House Speaker Sherman Packard had condemned the posts earlier, and on Thursday the full House moved to send Corcoran’s case to the Legislative Administration Committee for what Packard described as “review and report.”

Read more: Why it’s so hard to police bad behavior in the NH House

Advertisement

The referral came at the request of the House’s top Democrat, Rep. Alexis Simpson of Exeter. Such referrals are rare: The Legislative Administration Committee hasn’t been asked to consider sanctioning a lawmaker since 2017.

But Corcoran’s online conduct, which often includes inflammatory and offensive posts, has been under scrutiny in Concord for some time. A letter Packard sent Corcoran this week indicated his office has been receiving complaints about his social media activity for more than a year.

“Your verified public writings are negative, targeted and purposely written to leave a hate-filled interpretation,” Packard wrote Corcoran. “In sum, your statements are disrespectful, inappropriate and unworthy of the dignity of our state legislature.”

The “Letter of Caution” Packard sent Corcoran followed Corcoran’s failure to respond to voice messages left by a bipartisan panel of lawmakers tasked with reviewing public complaints about members of the Legislature.

Records from the House clerk’s office show the group, formed in 2019, has sent nine caution letters to lawmakers over the years, taking up a range of conduct issues.

Advertisement

They include rude behavior by a lawmaker at a state DMV office; another lawmaker telling members of the public to ‘shut up;’ and another being dismissive to people weighing in on legislation who are not from New Hampshire.

But several of the letters involve lawmakers’ behavior on social media. One admonished a lawmaker for posting the address of an antagonistic voter on Facebook. Another letter tells a longtime lawmaker that a bipartisan review panel “was unanimously disappointed that you defended your use of the hashtag ‘NHGOPTaliban.’ ”

According to several advisory group’s members, Corcoran has apologized for being non-responsive to the group’s phone calls, but on Thursday he seemed disinclined to back away from his social media posts, or explain himself.

“My only comment for NPR, is that NPR is regime media, the end,” Corcoran said when asked by an NHPR reporter about the House’s action Thursday.

Precedent would suggest Corcoran’s political future will likely fall to voters in his hometown of Weare to decide, as the Legislature rarely censures its members. Lawmakers facing scandal sometimes choose to resign, but the last time the House voted to expel a member was in 1913 and involved bribery allegations. The House’s top Republican says Corcoran’s case boils down to speech rights.

Advertisement

“We’ll see what happens,” said House Majority Leader Jason Osborne. “I think at the end of the day, everyone realizes that members have free speech, and you might not like all of it.”

Behind the headlines you read on our website, there’s a dedicated team of journalists working hard to bring you local news you can trust. On any given day, that can look like:

  • • Reporters hustling to track down sources, get the facts and hold powerful officials accountable
  • • Producers coordinating interviews with people who offer perspectives that go beyond soundbites
  • • Editors carefully vetting our stories to make sure they’re accurate, fair and easy to follow

I believe that journalists, when we do our jobs well, can play a crucial role in connecting people and making communities stronger. But we can’t do this work without you.

Your donations, in any amount, can help keep independent journalism vibrant in New Hampshire — and accessible to everyone, no paywall required.

Sincerely,
Dan Barrick
News Director





Source link

Advertisement
Continue Reading

New Hampshire

Female Ride Day to stop in Rochester, end in North Hampton

Published

on

Female Ride Day to stop in Rochester, end in North Hampton


Motorcycle enthusiasts from across New England will hit the roads Saturday, May 2 for a charitable ride supporting women in recovery.

The International Female Ride Day event is organized by the New England Motorcycle Group, according to a community announcement. The ride will start at Big Moose Harley-Davidson in Gorham, Maine, and will end at Seacoast Harley-Davidson in North Hampton, NH, with a stop at Harley-Davidson of Rochester along the way.

The event is open to all riders, regardless of gender, experience level or type of motorcycle, according to the announcement.

Advertisement

Proceeds from the ride will benefit Dismas Home of New Hampshire, a residential treatment and re-entry program for women recovering from incarceration. The organization, based in Manchester, is currently constructing a new, larger campus in Rochester, which is expected to open this summer and serve an additional 20 women at a time.

Registration

Registration for the ride is $45 per person, which includes breakfast, a mid-ride snack, a cookout and one raffle ticket. A $60 option is also available, which includes a commemorative International Female Ride Day 2026 Challenge Coin. Participants are encouraged to register online in advance and arrive with a full tank of gas. Registration can be completed at dismashomenh.org.

Schedule

On-site registration and check-in will take place from 8:30 to 9:30 a.m., with the group ride beginning at 10 a.m. The midpoint stop at Harley-Davidson of Rochester will offer riders a chance to snack, socialize and refuel. The ride will conclude around 2 p.m. with a community cookout, remarks and an opportunity to hear from Dismas Home residents about their journeys. Raffle winners and 50/50 prizes will also be announced.

Advertisement

Last year, more than 150 riders participated in the event.

This story was created by Kimberly Green, KGreen@usatodayco.com, with the assistance of Artificial Intelligence (AI). Journalists were involved in every step of the information gathering, review, editing and publishing process.  Learn more at cm.usatoday.com/ethical-conduct.



Source link

Advertisement
Continue Reading

Trending