Police say they do not know what may have provoked the attack
A man on a Greyhound bus travelling across the Canadian Prairies has killed and decapitated a fellow passenger.
An eyewitness said the victim was stabbed 50 or 60 times by the man sitting next to him, who then severed his head with a large knife.
The driver pulled over and passengers fled from the bus, bracing the door to keep the attacker inside.
A 40-year-old man was arrested after a stand-off lasting several hours and remains in police custody.
The bus, with 37 passengers and a driver aboard, was travelling from Edmonton, Alberta, to Winnipeg, Manitoba.
"All of a sudden, we all heard this scream, this bloodcurdling scream," passenger Garnet Caton told CBC television.
"The attacker was standing up right over the top of the guy with a large hunting knife - a survival, Rambo knife - holding the guy and continually stabbing him... in the chest area," Mr Caton added.
'Like a robot'
Bus passenger describes the attack
The attack continued as passengers fled the bus and waited for police on a desolate stretch of the TransCanada Highway near Portage la Prairie, Manitoba.
Mr Caton, the bus driver and a trucker who had stopped at the scene boarded the vehicle to see if the victim was still alive.
"When we came back on the bus... he was cutting the guy's head off and pretty much gutting him up," Mr Caton said.
The attacker ran at them, Mr Caton said, and they ran out of the bus, holding the door shut to prevent him getting out.
"He calmly walks up to the front [of the bus] with the head in his hand and the knife and just calmly stares at us and drops the head right in front of us," Mr Caton said.
"There was no rage in him ... It was just like he was a robot or something," he added.
A 40-year-old man was arrested by police at around 0100 (0700 GMT) on Wednesday night, Royal Canadian Mounted Police Sgt Steve Colwell told reporters.
He said that police apprehended the suspect after a confrontation lasting several hours when the man broke a bus window and tried to escape.
The man has not yet been charged, Sgt Colwell said, adding that he could release no further information on the investigation.
The RCMP have not identified the suspect or the victim.
When the attacker tried to drive the bus away, the driver disabled the vehicle.
"Some people were puking, some people were crying, other people were in shock ... everybody was running, screaming off the bus," Mr Caton said.
Sgt Colwell said the "brave" behaviour of the passengers and driver probably prevented anyone else from being hurt.
Other passengers said that the attacker and his victim were sitting at the back of the bus and the victim, described as around 20 years old, was listening to music through headphones.
The attack appeared to be unprovoked and it is thought the killer did not know his victim.
The passengers have been taken to a hotel in Brandon, Manitoba, and are being given crisis counselling.