Registration to run in Iran's election on May 19 closed on Saturday, with more than 1,600 hopefuls throwing their hats in the ring.
More than 130 women have registered though none have ever been allowed to stand.
Iranian elections are full of surprises, with dark horses often emerging at the very last moment to become president, but here are the main contenders as things stand:
President Hassan Rouhani
Every president since the early 1980s has won a second term, and Rouhani has done much to maintain his alliance of moderates and reformists -- stabilising the economy and signing a landmark nuclear deal with world powers that ended many sanctions and promised a fresh start with the international community.
But many Iranians feel the promised windfall of the nuclear deal has not materialised, while conservatives argue that Rouhani, a 68-year-old cleric who has been at the heart of the revolutionary establishment for decades, was duped by the West -- a charge bolstered by fresh sanctions coming from Washington under US President Donald Trump. Rouhani says much has improved and more time will allow him to produce an economic turnaround.
The 56-year-old hardline judge and cleric is a close ally of supreme leader Ayatollah Ali Khamenei, who appointed him to run the powerful Astan Qods Razavi charitable foundation last year. Raisi has little political experience, but has spent decades in powerful judicial and backroom positions, including as Iran's prosecutor-general.
Many wonder why he would risk a run for the presidency if, as speculated, he is being considered as a possible future supreme leader. The presidency would be a stepping-stone to the top, but losing an election could damage his standing. For now, he is presenting himself as a humble servant of the poor at a time of economic stagnation.
The former hardline president (2005-2013) shocked everyone by registering for the election against the advice of the supreme leader, who said it would polarise the nation. Conservatives say it was political suicide, but analysts say the 61-year-old may simply be trying to put pressure on the Guardian Council to approve his ally Hamid Baghaie.
Ahmadinejad's cash hand-outs and incendiary rhetoric built him a powerful constituency among the poor, but his tenure was marked by mass protests, plummeting relations with the West and financial mismanagement that took Iran to the brink of ruin. Many Iranians joke they have already experienced their version of Donald Trump.
Seen as a proxy for Ahmadinejad after the former president was told not to stand by the supreme leader.
Baghaie, 48, was vice-president for executive affairs and headed the tourism board under Ahmadinejad. He was imprisoned for seven months in 2015 for reasons that were never made public, though he was previously investigated for irregularities during his time in office. He said he would run as an "independent" and described himself as a "soldier" of Iran.
Mohammad Bagher Ghalibaf
There's been a lot of will-he-won't-he about the 55-year-old Tehran mayor this year, but he finally registered on Saturday for his third run at the presidency.
A war veteran, former Revolutionary Guards commander and police chief, he is a staunch conservative. He was runner-up to Rouhani last time, having lost momentum after boasting of beating students with a stick during protests in 1999. Some say his campaign will be damaged by an ongoing real estate scandal in his municipality, but he has experience and powerful backers. He has vowed to create five million jobs and more than double Iran's revenues.
Rouhani's first vice-president and confidante was a surprise entry at the last minute. It is assumed he is running to offer an alternative for the moderates and reformists in case Rouhani is disqualified by the Guardian Council and said he stood "side-by-side" with the president. Alternatively, the 60-year-old reformist could be trying to raise his profile ahead of his own bid in 2021.