PARIS (AFP) - The race to be France's next president culminates in Sunday's run-off after a tense campaign with multiple twists and turns.
Pro-EU centrist Emmanuel Macron and far-right Marine Le Pen emerged as the finalists in one of the most unpredictable contests for decades.
Here are 10 key moments:
The first came in November when former conservative premier Francois Fillon pulled off a come-from-behind victory in the rightwing primary, defying pollsters who had for months predicted a win for Alain Juppe, 71.
Fillon's upset was put down to strong performances in TV debates, as well as what was then a scandal-free image compared with Juppe and his other key rival, former president Nicolas Sarkozy.
Hollande ducks out
President Francois Hollande had staked his presidency on turning around France's moribund economy, in particular on reining in an unemployment rate that has remained stuck at around 10 per cent throughout his five years in charge.
When the Socialist failed to do so and France also became a frequent target for extremist attacks, his popularity ratings plunged to historic lows.
On Dec 1, he finally announced he would not stand for re-election.
Scandal hits Fillon
By mid-January, the race for the presidency seemed to be a duel between Fillon and anti-immigration candidate Le Pen.
At the time, Macron, a former economy minister under Hollande who had quit to launch an independent centrist bid for the presidency, was just beginning to get traction in the race.
On Jan 25, the investigative newspaper Le Canard Enchaine dropped a bombshell with revelations Fillon had put his wife Penelope on the public payroll with little work to show. It would eventually lead to criminal charges being brought against Fillon for abuse of public funds.
His support never recovered and the 63-year-old finished third in the first round.
Macron breaks through
By early February, the 39-year-old Macron began polling better than Fillon in his bid to shake up French politics.
The former investment banker hoping to become France's youngest postwar president was once dismissed as a flash in the pan but went on to consolidate his status as the man to beat.
The pro-business europhile began filling arenas, finding support from Socialists deserting their crumbling party as well as a broad array of people seeking new ideas.
Communist-backed firebrand Jean-Luc Melenchon surged in the polls in the final weeks before the first round of voting on April 23.
The charismatic 65-year-old, who tapped into widespread disillusionment with the political class, bounded ahead after strong debate appearances and quirky campaign stunts using holograms.
He would eventually come in fourth just behind Fillon with 19.58 per cent of the vote.
Terror in the home straight
Just as candidates were making their final pitches to voters in a televised interview show on April 20, a gunman opened fire on police on the Champs Elysees, killing one officer before being shot dead himself. A note praising Islamic State in Iraq and Syria was found near his body.
The killing forced the issue of security back into the race after nine months without a major attack.
Traditional parties routed
Macron and Le Pen topped the voting in the first round, eliminating France's main traditional parties at that stage for the first time since 1958.
The conservative Republicans blamed Fillon for his third-place finish, while the governing Socialists were left in crisis after their candidate Benoit Hamon came in a humiliating fifth.
Battle of Amiens
When campaigning for the second round began, a picket line at a Whirlpool tumble-dryer factory in Macron's northern hometown of Amiens was the scene of one of the election's most dramatic moments.
Le Pen upstaged Macron by making a surprise whirlwind visit to the workers as Macron was meeting unions to discuss the plant's future.
Macron arrived afterwards and was mobbed by the workers who initially booed him, but he eventually managed to turn the situation around and engage them in dialogue about the pros and cons of globalisation.
The two then faced off in an often-vicious televised debate in which Le Pen branded the former economy minister "the candidate of the elite".
Macron hit back, accusing her of being "the heir of a system which has prospered from the fury of the French people for decades" and adding: "You play with fear." He frequently branded Le Pen a liar and even a "parasite of the system".
'Massive' hacking attack
With less than 36 hours to go until the run-off vote, thousands of internal documents from Macron's campaign were leaked online.
His team said hackers took the emails, accounting details and other records as part of a "massive and coordinated" effort aimed at influencing the vote's outcome.
French authorities hit back hard, warning that anyone spreading the leaked information could be committing a crime.