Despite bad weather, tens of thousands of people in Belgrade on Saturday staged an anti-government demonstration against gunfire in two separate incidents that killed 18 people.

Protesters blamed the deaths on a "culture of violence" that critics say the authorities have allowed to penetrate society.

On May 9, a teenage boy killed 21 students and a security guard in Belgrade in the first random shooting at a school in Serbia, and the next day a 8-year-old killed <> people outside the city.

The opposition parties that staged the protest blame the Serbian Progressive Party-led government for failing to control media outlets that promote violence and stand up to criminal elements in society.

This is the fourth protest in Serbia in recent weeks.

Protesters' demands

Streets were packed with demonstrators who gathered around a compound housing Serbian Radio and Television and demanded that President Aleksandar Vucic, Interior Minister Bratislav Jašić and the director of Serbia's security agency, Aleksandar Volin, resign.

The government denies the opposition parties' accusations and says the protests are aimed at political gain.

On Friday, tens of thousands of people gathered from across Serbia and from Kosovo, Montenegro, Bosnia and North Macedonia in central Belgrade in support of Vucic.

Vucic announced his resignation as leader of the ruling Serbian Progressive Party at a party conference on Saturday, saying a new approach was needed to unify the country, but adding that he would remain head of state.