The US state of Florida, scene of America's latest school shooting, on Wednesday passed bill that raises the minimum age to buy firearms to 21 while funding a program that allows some teachers and school employees to be armed.
The "Marjory Stoneman Douglas High School Public Safety Act," which takes its name from last month's mass shooting in which 17 people including 14 students were killed, passed the legislature's lower house a day after clearing the senate.
It will now be sent to Governor Rick Scott to sign.
The Republican has not indicated whether he would veto the law, but he has previously expressed opposition to US President Donald Trump's call to arm teachers.
America's long moribund gun control debate was revived by survivors of the Parkland shooting, who a day after their school was attacked launched the "Never Again" movement demanding legislative action.
The bill raises the minimum age to purchase all firearms from 18 to 21 -- a move opposed by the powerful National Rifle Association lobby group -- bans modification devices that make a semi-automatic weapon fully automatic, and increases mental health funding.
It also includes a voluntary "guardian program" named after Coach Aaron Feis who was slain in the Parkland attack, which is intended to "aid in the prevention or abatement of active assailant incidents on school premises" by allowing some school employees to be armed.
The program is mainly aimed at staff such as coaches and school personnel, with teachers eligible if they have military or law enforcement experience.
Florida has seen three mass shootings in under two years -- 49 were killed at an Orlando nightclub in 2016, five at Fort Lauderdale's international airport in 2017, and now 17 in Parkland.
The bill does not ban the sale of the AR-15 assault rifle -- the weapon used by Nikolas Cruz -- one of activists' key demands.