Russian missiles have struck a city far from the eastern frontline, killing at least 22 people including three children, Ukrainian officials say.
Some 100 more were reported injured in the attack in Vinnytsia, to the south-west of Kyiv and a long way from the heart of the fighting in Donbas.
Three Russian missiles hit an office block and damaged residential buildings.
Ukrainian President Volodymyr Zelensky called it “an open act of terrorism”.
The missiles hit the car park of the nine-storey office block at around 10:50 (07:50 GMT), Ukraine’s State Emergency Service said. Residential buildings were also hit in the centre of Vinnytsia, which has a population of around 370,000.
The Russian defence ministry, which denies targeting civilians, has yet to comment on the strike.
The Ukrainian presidency said the attack had come from Kalibr cruise missiles launched from a submarine in the Black Sea.
A senior regional emergency service official told local TV that there was “probably no chance of finding anyone who survived” the attack.
“Every day, Russia kills civilians, kills Ukrainian children, carries out missile attacks on the civilian facilities where there is no military target. What is this, if not an open act of terrorism?” Mr Zelensky said in a statement on social media.
The attack came as EU foreign and justice ministers were due to meet in The Hague for a conference on alleged Russian war crimes.
Ukrainian Foreign Minister Dmytro Kuleba accused Russia of committing “another war crime” with the attack on Vinnytsia.
“We will put Russian war criminals on trial for every drop of Ukrainian blood and tears,” he wrote.
Ukrainian pop singer Roxolana was due to play a show tonight at a concert hall in the city, but the venue was destroyed in the attack.
She posted on Instagram that all of her team were injured and one died. One of her team is fighting for his life,” she said.
“We pray for their lives and the lives of all those affected today,” she wrote. “We will never forgive.”
No such thing as safe in Ukraine anymore
Sarah Rainsford, BBC News, Vinnytsia
There is a child’s pushchair lying on its side on the square here, its pink canvas seat smeared with blood. The ruins of the tall Jubilee building are up ahead, all its windows blown out.
The House of Officers is still smouldering, smoke gusting across the square. There are dozens of firefighters at the scene working through the giant piles of wreckage in front of me. Many cars have been destroyed by fire.
This is a large open space in central Vinnytsia, now a disaster scene.
When the missiles struck this town it was the middle of the morning, a beautiful sunny day with people out and about, as they still are right now.
They would have felt relatively safe in this town, far from the frontlines. There’s been nothing like this attack here before, so when the sirens wailed many will have ignored them.
It’s hard to live life underground. Even now as I am writing this there is an air raid warning – but there are cars and people all around.
And yet there’s no such thing as safe in Ukraine anymore. Russian missile attacks – which Moscow claims are aimed at military targets – can hit anywhere at anytime, with terrible results.
Source: BBC News