MINNEAPOLIS (AP) — Democrat Rick Nolan began preparing Wednesday for a return to Congress after 32 years away, while Rep. Michele Bachmann, who barely survived her toughest race yet, said she’s ready to get back to work.

Nolan, who left Congress in 1981 after serving three terms, upset one-term GOP U.S. Rep. Chip Cravaack to reclaim the northeastern Minnesota seat that Democratic stalwart Jim Oberstar lost in a 2010 upset. With 99 percent of the precincts counted, Nolan had 54.5 percent of the vote.

Nolan was gleeful as he met cheering supporters in Brainerd early Wednesday.

“I guess Yogi Berra would say it feels like deja vu all over again,” he said.

Going into the race, Cravaack was considered the most vulnerable of Minnesota’s House Republicans, and the race attracted national attention and millions in outside spending. The retired airline pilot had counted on his union past and pro-labor votes to keep the support of blue-collar voters in a socially conservative region.

The national parties and allies including the Democrat-supporting House Majority PAC and the GOP-backing American Action Network together spent about $9 million on the northeastern race, with about half the money going against Cravaack. The Minnesota DFL sunk more than $400,000 into bolstering Nolan’s campaign, mainly by running TV and radio ads through a contested primary and into the fall. One group, Credo SuperPAC, set up shop in Duluth to organize against Cravaack.

Cravaack thanked his supporters and constituents in a concession speech in Hinckley.

“It has been a privilege — a privilege — to serve you as a public official. I’ve done our best in trying to ensure that the 8th District was well served, and I’m sure Congressman Nolan will do the same,” he said.

(© Copyright 2012 The Associated Press. All Rights Reserved. This material may not be published, broadcast, rewritten or redistributed.)