Nineteen young children and two adults have died in a shooting at a primary school in south Texas.
The gunman opened fire at Robb Elementary School – which teaches children aged seven to 10 – in the city of Uvalde before he was killed by law enforcement, officials said.
The 18-year-old suspect had a handgun, an AR-15 semi-automatic rifle and high-capacity magazines, investigators say.
The teenager is suspected of shooting his grandmother before the rampage.
Local media report he may have been a high school student in the area.
Uvalde Consolidated Independent School District Chief of Police Pete Arredondo said the shooting began at 11:32 local time on Tuesday, and that investigators believe the attacker “did act alone during this heinous crime”.
Texas Governor Greg Abbott said the shooter, Salvador Ramos, abandoned his vehicle before entering the school and opening fire “horribly, incomprehensibly.”
According to Erick Estrada of the Texas Department of Public Safety, who spoke to CNN, a Uvalde school district police officer who worked at the school saw Ramos emerge from the vehicle carrying a rifle and wearing body armour.
According to Mr Estrada, the officer “engaged” the suspect but was unable to stop him. Two more officers from the Uvalde Police Department attempted to stop Ramos but were unsuccessful and requested assistance.
Several of the children who died have been identified.