The Socialist candidate for the French presidency and his far-left rival have a big obstacle blocking their route to the presidential Elysee Palace: each other.
Benoit Hamon and Jean-Luc Melenchon proved this weekend they both can pull impressive crowds.
Mr Hamon, the Socialist, packed an indoor sports and concert arena in Paris with at least 20,000 people on Sunday.
Mr Melenchon had rallied tens of thousands of people in Paris on Saturday.
As long as both continue to hunt on shared ground for votes, and neither makes way for the other, their efforts to breathe new life into their campaigns look doomed.
“I have come to tell you that the left can win!” Mr Hamon told his supporters.
They frequently interrupted him with chants of “Benoit, president!”
Theoretically, if their expected votes could somehow be added together, then either Mr Hamon or Mr Melenchon might have a shot of making the May run-off of the two-round presidential vote.
But with both standing and splitting votes on the left between them, polls suggest they are effectively fighting between themselves for fourth and fifth place among the 11 candidates – unless they can add momentum and galvanise more support before the first-round vote on April 23.
Mr Hamon has struggled to carve out space for himself in a campaign largely overshadowed by the legal problems of conservative candidate Francois Fillon.
He also has failed to unite the Socialists behind him since he won the party primary in January.
He has been hurt by notable defections to the camp of Emmanuel Macron.
Mr Macron, the former economics minister for Socialist President Francois Hollande, is running a neither left-nor-right independent campaign.
“We have faced headwinds, even storms,” Mr Hamon acknowledged on Sunday. “Some quit the ship,” he added, drawing boos from the crowd.
Calling himself “the candidate of the pay cheque,” Mr Hamon defended his proposal to pay all French adults a basic universal income.