A packed bus negotiating a downhill curve plunged off a Philippine mountain highway into a 100-foot ravine on Wednesday, killing 41 people, police said.
Nine people, including a 10-year-old boy, survived and eight were taken to hospitals, said police chief Wilben Mayor of Benguet province north of Manila.
Mr Mayor said most of the victims were pinned to death while others were thrown out as the bus tumbled down.
Working into the night, emergency workers recovered the last of the 41 bodies from the twisted wreckage, said regional disaster agency director Olivia Mercado-Luces.
Twenty-six have been identified so far, including four members of a Filipino-American family who were on their way back to the US after visiting relatives in the northern Philippines. An Indian national living in the Philippines also died.
The victims' remains, including a toddler's, were put in body bags on the highway and were later taken to funeral parlours.
The bus zoomed between a tree and a house and plunged into the ravine, Mr Mayor said. The driver, who survived with a broken leg, would be investigated, he added.
John Patrick Flores, the bus conductor, said the brakes on the bus failed as the driver was negotiating a downhill curve.
He said the driver was aiming to hit a lamppost to stop the bus from falling but missed and it jumped over a foot-high road barrier.
The bus was carrying about 50 people from the northern mountain city of Baguio when it crashed in Sablan township, about eight miles away.