Live updates: follow the latest news on Russia-Ukraine
In just a matter of days, the city of Mariupol on the shores of the Sea of Azov has been turned to rubble.
The streets lie in ruins as rescuers dig franticly to rescue civilians trapped when bombs hit the city’s theatre that was sheltering 1,000 people.
Civilians are buried in makeshift graves if civil defence teams or neighbours are able to collect the bodies amid the fighting. Otherwise, they lie lost under the snow.
Water, electricity and gas supplies haven’t worked for days and food is becoming scarce.
Mariupol has become a symbol of the devastation of Russia’s invasion of Ukraine.
Ivan Goltvenko, 38, fondly remembers a city with a vibrant culture, mild climate and proximity to the sea.
He worked in the city’s Azovstal steel plant like his father and grandfather before him, and had nurtured the dream that his sons too would join the firm.
But now he has dodged shelling, Russian tanks and bullets to flee Mariupol.
On the second day of the war, Ivan insisted his wife leave the city with their sons while he moved to his parent's apartment on the city’s main thoroughfare, Prospekt Myru, or “Peace Avenue.”
It overlooked a lawn where his sons played in the summer. Across the street were a hospital and maternity ward.
Now, all that stands is an empty building with charred windows. The maternity ward has become synonymous with the indiscriminate shelling of residential areas carried out by Russian forces, a charge that Russia continues to deny.
Ivan shows a picture of a destroyed building that was once the university where he studied and met his wife, a pizza place they used to frequent in normal times, and a jewellery shop where he planned to buy his wife a present for International Women’s Day on March 8. It’s now a charred skeleton of bent steel and broken glass.
He says the city’s residents fear the scream of warplanes overhead.
“However thick your walls are, you hear the roar of the aircraft which descends to attack, you feel this vibration, the whistle of the missile fired,” he said. “It lasts for four to five seconds which seem an eternity, after which there comes an explosion.”
Everything begins to shake, and all you can do is wonder where the next missile will hit, he said.
After about a week of fighting, a first attempt at establishing an evacuation corridor for civilians collapsed. With mobile links down, only the most daring climbed on to rooftops to catch a signal and spread the news. Even the mere mention of a corridor was “like a ray of light to us,” Ivan said.
Towards the end of the second week, he realised that he and his parents would either starve to death, die of thirst, or perish from bombs. Taking to the road was no guarantee of survival, but at least it offered a chance.
On the way out of the city by car along a designated humanitarian corridor, they witnessed two apartment blocks being bombed in front of them.
“So it became clear this was a one-way road,” he said.
The 250 kilometres or so from Mariupol to Zaporizhzhia, normally a couple of hours’ drive, took the convoy of around 100 cars two days.
The convoy spent several hours at a Russian checkpoint trying in vain to persuade the soldiers to let them pass.
Spending the night in a nearby village, residents were welcoming and showed them a way to bypass the closed checkpoint.
By morning light, they drove over fields and on dirt roads, keeping 15 metres between cars in case of explosives.
On reaching the motorway, they found harrowing scenes of corpses and a lorry full of dead soldiers. They knew they had to keep moving.
Eventually, they reached a town where they were stopped by men in sportswear, waving Kalashnikov automatic guns at them. Only yellow bands wrapped around their hands gave away that they were “territorial defence units,” militia organised by Ukraine to protect civilian areas.
They explained that it was best to wait as there was a tank battle under way nearby. When they signalled it was safe, the convoy moved off at top speed. The road was destroyed, asphalt dust hung thick in the air. The drivers focused on the red tail lights ahead while also glancing in the rear mirror at the headlights behind, and that way moved in unison, like links in a chain.
About 400 people were able to get out of Mariupol in the convoy with Ivan, four to each car. He called his friend in Mariupol and described the route, telling him to break into a room in the steel plant’s administrative office where alcohol was stored and use it to bribe Russian soldiers. It worked, and his friend managed to lead another 23 cars to safety.
One work colleague told him that he had been able to leave Mariupol with his mother, but that his father had died, so he buried him near a bench in the garden of their apartment block. Other colleagues told him a lawn in front of the steelworks’ office has been turned into an improvised graveyard where victims of the shelling have been laid to rest.
“People calling me are actively asking for safe routes to leave,” Ivan said. “They didn’t lose hope, they want to survive.”