An Iranian-American doctor released from a US jail as part of a prisoner swap has flown back to Tehran.
Majid Taheri, who was accused of violating US sanctions and financial reporting requirements, was greeted at the airport by officials and relatives.
Dr Taheri's return came just days after Iran freed US Navy veteran Michael White, and the US deported Iranian scientist Sirous Asgari.
The exchange represents a slight thaw in relations between the two foes.
US-Iran relations have become increasingly hostile since 2018, when President Donald Trump abandoned Iran's nuclear deal with world powers and reinstated crippling economic sanctions.
Earlier this year, the US assassinated top Iranian commander Gen Qasem Soleimani in a drone strike in Iraq. Iran retaliated by launching ballistic missiles at Iraqi military bases hosting US forces.
Dr Taheri, also known as Matteo Taerri, is a dermatologist who was based in Florida. He was accused of violating US sanctions by exporting a technical item to Iran and of violating financial reporting requirements by making a series of bank deposits below $10,000.
He pleaded guilty to the charges, but called them "futile and unfair". Iranian media cited him as saying he had tried to send a filter to researchers making a vaccine.
"The government of Iran has done an extreme effort in order to help people like me who were somehow accused of violating the US sanctions," he told state TV on arrival in Tehran on Monday.
Dr Taheri was welcomed by Deputy Foreign Minister Hossein Jaberi-Ansari, who said he hoped other prisoners could be exchanged in the near future.
On Thursday, Iran allowed Michael White to fly home to the US.
The Navy veteran was detained in 2018 while visiting his girlfriend and was convicted last year of insulting Iran's supreme leader and posting private information online. In March he was released temporarily on medical grounds to the Swiss embassy, which represents US interests in Iran.
Sirous Asgari, a materials science professor who was acquitted in November of trying to steal trade secrets, travelled back to Iran on Wednesday.
Mr Trump thanked Iran on Twitter for the prisoner exchange on Friday and urged it to renegotiate the 2015 nuclear accord. "Don't wait until after US Election to make the Big deal. I'm going to win. You'll make a better deal now," he wrote.
Iranian Foreign Minister Mohammad Javad Zarif rejected the offer, tweeting: "We had a deal when you entered office... Your advisers - most fired by now - made a dumb bet. Up to you to decide *when* you want to fix it."