Win McNamee/Getty

Bernie Sanders needed to overperform in Michigan and that’s exactly what he’s did.

In FiveThirtyEight’s final Michigan polling average, Hillary Clinton led by 21.3 percentage points. As FiveThirtyEight’s Nate Silver pointed out on Twitter, “if Sanders wins Michigan it will break Gary Hart’s record in 1984 NH for greatest upset vs. final polling [average].” 

And win the primary he has done. Sanders needed to do well in Michigan. If his anti-free trade, economic populist message didn’t do well there, after all, where would it? Sanders’s message seems to be resonating beyond his normal base of white, educated voters: Exit polling suggests that Sanders could win a third or more of the black vote in Michigan, including just over half of young black voters. While a third is still a frightfully low percentage for a potential Democratic nominee for president, it does suggest that Sanders is capable of growing his coalition, an argument he hasn’t really been able to make before tonight. (It’s worth pointing out, however, that Sanders did as bad as usual with nonwhite voters in Mississippi.)

Tonight’s result is bad news for Hillary Clinton, and not just because she lost. The two candidates who won, Donald Trump and Bernie Sanders, have performed well in Michigan with anti-trade messages, pointing to potential trouble in the Rust Belt in a general election against Trump. And Sanders’s showing tonight means he isn’t going anywhere: The primary could go until May, or later.