91³Ô¹ÏÍø

Watch CBS News

Twin Cities under snow emergency after massive weekend blizzard

Minneapolis and St. Paul are among the Minnesota communities that have declared snow emergencies in the wake of this weekend's massive blizzard.

As crews plowed Twin Cities streets Monday, hundreds awoke to find their vehicles missing. Favour IkechukwuIt, a student at St. Paul's Concordia University, was one of the unfortunate souls,

"My first thought was, 'Ugh they got me' [laughs]," Ikechukwu said. "It was like $246, and if it stayed overnight it would have been more. I don't have $246, I'm a college student, but I have to cough the money up either way and get my car."

It's the same fee at Minneapolis' impound lot. As of 9 a.m. Monday, St. Paul officials say 185 vehicles have been towed. The number is slightly less in Minneapolis, 155, and nearly 550 citations have been issued so far.  

According to the National Weather Service, Minneapolis-St. Paul International Airport saw just over 7 inches of accumulation, while Maple Grove and Eagan both gained 10 inches. Bloomington got about a half-inch less.

Bloomington, Crystal, Hopkins, New Hope, Northfield, Plymouth, St. Louis Park and West St. Paul are also under snow emergencies.

Minneapolis rules

Starting at 8 a.m. on Monday, you can only park on odd sides of the road or on both sides of snow emergency routes. Parking is not allowed on either side of parkways, city officials say.

Starting Tuesday at 8 a.m, you can only park on the even side of the street for any non-emergency snow routes. You can also park on either side of parkways.

Minneapolis' snow emergency ends Tuesday at 8 p.m. Residents can park for free until 8 p.m. Thursday at the Fourth Street North Lot, located at 601 N. 4th Street, and at the Farmer's Market Lot at 225 East Lyndale Ave. N.

The city said it is no longer using its snow emergency app, but notifications are sent out in the You can also register your information to receive alerts .

St. Paul rules

In the capital city, it's a bit more complicated. Snow emergencies go by day and night plow routes. 

Starting at 8 a.m. on Monday, parking is prohibited on all Day Plow Routes, which are "typically both sides of east-west residential streets and one side of north-south residential streets," according to the city. 

Day Plow Routes are plowed from 8 a.m. to 5 p.m., and parking's not allowed until the street is plowed to the curb.

St. Paul's snow emergency lasts until Thursday at 9 p.m. that you can check out to help you know where to park. 

There are also  to park in to keep St. Paul streets clear.

Click here for more information on snow emergencies and closings.  

Nearly 500 crashes, 1 fatal, during blizzard

In the hours between midnight Friday and midnight Monday, the Minnesota State Patrol says there were 464 property damage crashes on Minnesota roads.

One of those crashes resulted in a fatality, and 40 resulted in injuries.

The state patrol says there were also 46 spinouts and 651 cars off the road, along with 19 jackknifed semis. 

View CBS News In
CBS News App Open
Chrome Safari Continue
const link = doc.createElement('link'); link.rel = 'stylesheet'; link.href = '/fly/fly/bundles/cbsnewscontent/css/cmp-banner.min.css?v=296763317a51cab90faa73f1bb146d5c'; doc.head.appendChild(link); doc.body.innerHTML = CONSENT_MESSAGE; } else { el.insertAdjacentHTML('afterend', CONSENT_MESSAGE); } }); } function hidePrivacyMessage() { // Remove from the main document document.querySelectorAll(`.${CONSENT_MESSAGE_CLASS}`).forEach(el => el.remove()); // Remove from inside any iframes document.querySelectorAll('iframe').forEach(iframe => { const doc = iframe.contentDocument || iframe.contentWindow.document; doc.querySelectorAll(`.${CONSENT_MESSAGE_CLASS}`).forEach(el => el.remove()); }); } function activateGatedScripts() { // Handle both new format (cmp-gated-script) and old OneTrust/Ketch format (optanon-category-4) const gatedScripts = Array.from(document.querySelectorAll('script.cmp-gated-script, script.optanon-category-4')); // Activate scripts sequentially with a small delay to avoid timing issues let delay = 0; gatedScripts.forEach(function(placeholder, index) { setTimeout(function() { // Skip if already processed if (placeholder.hasAttribute('data-cmp-processed')) { return; } placeholder.setAttribute('data-cmp-processed', 'true'); const newScript = document.createElement('script'); newScript.type = 'text/javascript'; // Try new format first (data-cmp-src), then fall back to old format (data-src) const src = placeholder.getAttribute('data-cmp-src') || placeholder.getAttribute('data-src'); if (src) { newScript.src = src; } else if (placeholder.textContent) { // Inline script - just copy the content newScript.textContent = placeholder.textContent; } // Handle new format attributes (data-cmp-attrs) - for both inline and external scripts const attrs = placeholder.getAttribute('data-cmp-attrs'); if (attrs) { const tempDiv = document.createElement('div'); tempDiv.innerHTML = '
<\/div>'; const tempAttrs = tempDiv.firstChild.attributes; for (let i = 0; i < tempAttrs.length; i++) { // For external scripts, allow defer/async. For inline scripts, skip them (not valid) if (src || (tempAttrs[i].name !== 'async' && tempAttrs[i].name !== 'defer')) { newScript.setAttribute(tempAttrs[i].name, tempAttrs[i].value); } } } // Copy other attributes from old OneTrust format for (let i = 0; i < placeholder.attributes.length; i++) { const attr = placeholder.attributes[i]; // Skip attributes we've already handled or don't want to copy if (!['class', 'data-src', 'data-type', 'data-cmp-src', 'data-cmp-attrs', 'data-cmp-processed', 'type', 'async', 'defer', 'src'].includes(attr.name)) { newScript.setAttribute(attr.name, attr.value); } } placeholder.parentNode.replaceChild(newScript, placeholder); // If external script, manually trigger window.onload handlers after it loads // This handles widgets that use window.onload for initialization if (src) { newScript.addEventListener('load', function() { // If page already loaded and script set a new onload handler, trigger it if (document.readyState === 'complete' && window.onload) { const originalOnload = window.onload; window.onload = null; // Clear temporarily to prevent loops originalOnload(); // Execute the handler } }); } }, delay); delay += 500; // 500ms delay between each script to allow full loading }); } cbsoptanon.onScriptsReady(function(cmp) { cmp.ot.targetingAllowed(function(allowed) { if (!allowed) { showPrivacyMessage(); } else { activateGatedScripts(); } }); cmp.ot.awaitInitialConsent(function(consent_model) { cmp.ot.addOnConsentChangedHandler(function() { cmp.ot.targetingAllowed(function(allowed) { if (allowed) { hidePrivacyMessage(); activateGatedScripts(); } else { showPrivacyMessage(); } }); }); }); });