New York Mayor Bill de Blasio (D) admitted on Sunday that President Donald Trump won the 2016 election because he “understood people were hurting” in a way establishment Democrats often have been unable to recent years.

On CNN’s State of the Union, de Blasio said his party, as it approaches the 2016 elections, “is going through a serious debate” and “there are still a lot of moderate voices in the party that did not learn the lessons of 2016 and are not listening to what people need in this country.”

De Blasio was advocating economic populism from the left like guaranteeing health care to all New Yorkers, including illegal immigrants, but he acknowledged how powerful Trump’s economic nationalism was during the 2016 election. He said there is still a “lack of recognition” among establishment Democrats that “you have tens of millions of people hurting, we’re not speaking to them.”

“Donald Trump spoke to them. I have got to be blunt about this,” de Blasio said. “Donald Trump–I remember those two-minute ads at the very last day of the campaign in 2016. Trump’s ad seemed like a populist message in the good sense of the word populist, that it was speaking to people’s pain and challenges.”

De Blasio added: “Unfortunately, we could hear in that ad a lot of the negativity we later saw in Donald Trump, a lot of the divisiveness, too.”

But he stressed that Trump understood that life for many working-class Americans was not getting any easier.

“But, on the economic issues, he understood people were hurting, their lives were getting harder, not easier, the next generation’s prospects were looking worse than the one before,” he added. “And we need this party to be the party of working people again. We can’t do that if we’re afraid to say the wealthy have taken advantage of the system, the system is rigged, and then tell people specific things we will do for them.”