Connect with us

New Hampshire

‘ICE Out for Good\

Published

on

‘ICE Out for Good\


play

Protests are being planned in New Hampshire, including one in Portsmouth, for this weekend against the actions of U.S. Immigration and Customs Enforcement (ICE), as part of a nationwide wave of demonstrations organized by progressive groups.

Several groups, including 50501, are organizing both a “National Shutdown” on Friday, Jan. 30, and several “ICE Out of Everywhere” protests across the U.S. on Saturday, Jan. 31. Events are scheduled in New Hampshire on both days. A rally is scheduled in Portsmouth for Sunday, Feb. 1.

Advertisement

In a statement, the national 50501 organization said the demonstrations are a response to what it described as “ICE’s kidnapping, detention, and murder of our fellow Americans.” The group is calling for the abolition of ICE, the dismantling of the Department of Homeland Security, and justice for those killed by immigration officers, including Renee Nicole Good and Alex Pretti this month.

The organization also cited the detention of 5-year-old Liam Conejo Ramos in Minnesota, claiming ICE agents “kidnapped [him] to use as bait to capture his father.” ICE has disputed the claim, and Vice President J.D. Vance defended the agency.

Organizations involved with the New Hampshire protests include Southern NH Indivisible, NH 50501, and the Party for Socialism and Liberation.

Anti-ICE protests planned in New Hampshire this weekend

Several anti-ICE protests are planned for New Hampshire this weekend, organized by a myriad of progressive groups, including the following:

Advertisement
  • Concord: March for Minnesota! – Friday, Jan. 30, from 12 to 4 p.m., New Hampshire State House (107 North Main St.)
  • Concord: ICE Out! National Day of Action – Friday, Jan. 30, at 2 p.m., New Hampshire State House (107 North Main St.)
  • Concord: ICE Out for Good – Saturday, Jan. 31, from 12 to 2 p.m., New Hampshire State House (107 North Main St.)
  • Derry: Pro-Democracy Sign Holding – Saturday, Jan. 31, from 12 to 1:30 p.m., 51 E Broadway
  • Keene: Unite and Resist Rally – Saturday, Jan. 31, from 12 to 1 p.m., Central Square (1 Central Square)
  • Littleton: ICE Out for Good – Saturday, Jan. 31, from 12 to 2 p.m., 134 Main St.
  • Manchester: Abolish ICE Rally – Saturday, Jan. 31, from 3 to 5 p.m., Manchester City Hall (1 City Hall Plaza)
  • Meredith: ICE on the Lakes Not on the Streets – Saturday, Jan. 31, from 2 to 4 p.m., Hesky Park (327 Daniel Webster Highway)
  • Nashua: Bridge Brigade – Friday, Jan. 30, from 2 to 4 p.m., Route 3 Exit 6
  • Nashua: ICE Out for Good – Saturday, Jan. 31, 12 to 2 p.m., Soldiers & Sailors Monument (Main and Concord Streets)
  • Portsmouth: ICE Out for Good – Sunday, Feb. 1, 3 to 4 p.m., Market Square (2 Congress St.)
  • Wolfeboro: Peaceful Protest – Saturday, Jan. 31, 12 to 1 p.m., Pickering Corner (151 S Main St.)

Additional demonstrations can be found on the Action Network and National Shutdown websites, as well as on social media.

Amanda Lee Myers of USA TODAY contributed to this report.





Source link

New Hampshire

New Hampshire Sees Rising Concern Over Tick-Borne Meat, Dairy Allergy

Published

on

New Hampshire Sees Rising Concern Over Tick-Borne Meat, Dairy Allergy


A tick-borne illness that can leave people severely allergic to meat and dairy is becoming a growing concern in New Hampshire, according to comments from a state public health official and federal health guidance.

Alpha-gal syndrome is becoming more frequent in New England as ticks move farther north, some say, due to climate change.

The illness is carried most commonly by the Lone Star tick.

According to the Centers for Disease Control and Prevention, nearly half a million people nationwide are affected by alpha-gal syndrome. The CDC says the condition differs from typical food allergies because symptoms are often delayed by two hours or more after exposure and can appear suddenly after years of eating meat without problems.

Advertisement

The CDC says the reaction is linked to alpha-gal, a molecule associated with mammalian meat and some mammalian-derived products. In people with the syndrome, symptoms can occur 2 to 10 hours after eating pork, beef, lamb, other mammalian meat, or products such as gelatin. The CDC also says symptoms can develop within two hours after intramuscular, intravenous, or subcutaneous administration of alpha-gal-containing vaccination or medication.

Symptoms listed by the CDC include abdominal pain, nausea, diarrhea, vomiting, and heartburn or indigestion. The agency also says people may experience hives, itching, swelling of the lips, tongue, throat, face or eyelids, shortness of breath, cough, wheezing, and acute hypotension. Anaphylaxis is also among the symptoms identified by the CDC.





Source link

Continue Reading

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
Continue Reading

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

Trending