Iraqi security forces battling Islamic State (IS) militants have retaken key areas in the western city of Ramadi, including a hospital, officials say.
Militants based inside the hospital blew themselves up when they ran out of ammunition, an official said.
Meanwhile, the UN says more than 114,000 people have fled their homes in two weeks of fighting in Ramadi and surrounding parts of Anbar province.
IS and the Iraqi government both claim to be making advances in Ramadi.
The Iraqi forces are backed by a US-led air campaign. IS is estimated to have lost about a quarter of the territory it seized in Iraq during a lightning advance last year.
However, the group still controls large parts of the north and west of the country, including the second city Mosul.
IS stepped up its assault on Ramadi last week with a series of suicide attacks. The jihadists also took over three villages near the city, which is the capital of Anbar province.
On Tuesday, Iraqi government forces backed by Sunni Arab tribal fighters took control of a hospital where the militants had barricaded themselves, an Anbar security official said.
The government forces are now reportedly advancing towards the east of the city. The official said progress had been slowed by roadside bombs left behind by the militants.
The UN estimates that more than 114,000 people have fled the Ramadi area in recent weeks. More than 50,000 of those are thought to have gone to Baghdad.
Earlier this month government forces dealt a major blow to IS by recapturing the city of Tikrit, which the group seized last June.
Iraqi Prime Minister Haider al-Abadi said last week that they would follow the victory in Tikrit with campaigns in Anbar province and in the town of Baiji, north of Baghdad, near Iraq’s most important oil refinery.
But IS responded by launching its own offensives on Ramadi and the Baiji refinery.
The US military estimates that IS has lost 25% to 30% of its territory in Iraq to government forces since the US-led coalition air campaign began in August.
However, the group still controls swathes of territory in both Iraq and neighbouring Syria.