A man armed with a knife attacked a group of preschool children playing by a lake in the French Alps on Thursday, injuring four along with an adult, and sending shockwaves through the country.
The suspect was arrested at the scene in the town of Annecy after the attack at around 9:45 am (0745 GMT).
He told police he was a Syrian asylum seeker, a police source told AFP on condition of anonymity.
Interior Minister Gerald Darmanin tweeted that he had been arrested "thanks to the rapid reaction of security forces".
Two of the children -- believed to be aged around three -- and the adult were in critical condition and fighting for their lives in hospital, a security source told AFP.
Local officials and a security source had previously said six children and another person were hurt.
French President Emmanuel Macron denounced the stabbing as an act "of absolute cowardice."
"The nation is shocked. Our thoughts are with them as well as their families and the emergency services," he wrote on Twitter.
Prime Minister Elisabeth Borne's office announced she was travelling to the scene and MPs in the national parliament held a minute's silence as news of the attack filtered through in the French media.
"There are very young children in a critical state and I ask you to observe a minute of silence for them, for their families," parliament speaker Yael Braun-Pivet told MPs as she interrupted a raucous debate about pension reform.
"We hope that the consequences of this extremely serious attack are not consequences that will send the country into mourning," she added.
The identity of the attacker was being checked by security forces and has not been confirmed.
Annecy is a quiet Alpine town of 135,000 people that lies 30 kilometres (20 miles) south of the Swiss city of Geneva.