Australian backpacker Ruth O'Leary thought her neck was broken and she was going to drown as her body tumbled around inside a bus that was swept into raging flood waters in Samoa.
"I was seeing flashes of different colours and just thinking, oh my god, this is the end, I can't get out of here," she recalls.
I didn't know where the top of the water was and then I saw this light ... so I swam up, and all I could see was babies and mothers and old people in the water – and everyone was screaming
Ms O'Leary was one of about 40 people travelling on the bus in torrential rain when it flipped during a river crossing on the island of Savai'i on Saturday.
Two girls, aged five and 12, were killed and several passengers were taken to the local hospital with broken bones and other serious injuries, the Samoa Observer reported.
Ms O'Leary helped to safety by rescuers including a party of Australians and New Zealanders who had seen the incident unfold.
Local police were investigating allegations the driver of the bus had been drinking.
Ms O'Leary, 21, a Melbourne-based artist, and her friend Larissa Papamanos, 25, were travelling to catch a ferry to another island.
She said the driver of the bus had sped past a line of cars that were waiting at a crossing, before driving into the water.
"In the next half a second, water had filled up the entire bus and nobody could get out," Ms O'Leary said.
The bus then fell off the road and rolled several times, throwing babies, women and the elderly on top of each other.
"As it was rolling, I actually thought my neck had broken and I had broken all my bones, because our bodies were being smashed around so much," Ms O'Leary said.
The roof of the bus then peeled off, allowing the passengers to get free.
"I didn't know where the top of the water was and then I saw this light ... so I swam up, and all I could see was babies and mothers and old people in the water – and everyone was screaming."
The current was so strong, most of the passengers were swept into the ocean.
Ms O'Leary said she remembered tasting petrol that had spilled from the bus's engine before she was pulled to shore by another holidaymaker.
Dean Vickerman, an Australian basketball coach living in New Zealand, was in another bus that had decided to wait for the waters to subside, and watched in horror as the bus carrying Ms O'Leary began to cross.
The New Zealand Breakers coach, who was travelling with extended family, was one of the first to jump into the swollen river and helped to rescue several people, including Ms O'Leary and Ms Papamanos.
"We were prepared to wait and then the bus behind us sped up and really tried to gun it and go for it, without making an assessment," said Mr Vickerman.
"The rain was torrential and the water picked up the front of the bus and threw it into the river.
"It flipped, the roof cracked and broke off, it flipped one more time and settled on rocks."
Mr Vickerman, his brother-in-law Cass Watson, a New Zealander living in Sydney, and his other brother-in-law, Alan Silver, all joined the rescue effort.
"People were screaming 'help me', they had cuts and bruises, some had broken legs and different things.
"We were just there trying to get people people to the rocks."
Up to 15 people had to be rescued from the water.
Mr Vickerman's wife, Christy, said she and her family were travelling back to Samoa's main island, Upolo, having been at a reunion with 25 family members in the village of Tufutafoe.
"This tragedy unfolded in front of our very eyes," said Mrs Vickerman, who was with her two young children, Jade and Georgia.
"The water kept running over the bus and people were all washed out to sea. It was horrible."
Ms O'Leary said the Vickermans took her and her friend to the police and the hospital and then helped them find accommodation for the night.
They had been on their way to volunteer on the main island for a victim's support group but decided to fly home after the incident.
They arrived home in Melbourne on Wednesday and said they had been catching up on much-needed sleep.