More than one million join Brazil protests
Clashes with police mark biggest day of demonstrations yet against government corruption and poor public services.
Hundreds of thousands of people have rallied across Brazil as part of a protest movement over the quality of public services and the high cost of staging the World Cup.
The mounting pressure on the government of President Dilma Rousseff in the face of the biggest street protests the South American country has seen in 20 years has prompted her to cancel a trip to Japan planned for next week.
Local media reported that 1.2 million people took part in rallies across the country of 194 million people - an intensification of the movement which started two weeks following public anger about an increase in public transport fares.
Police fired tear gas in Rio de Janeiro, scene of the biggest protest where 300,000 people demonstrated near City Hall, to disperse a small group of stone-throwing protesters.
At least one person was injured in the clashes, which caused panic in the crowd.
"Don't run, don't run," some shouted as they ran through the clouds of tear gas. Demonstrators meanwhile set ablaze a vehicle owned by the SBT television station.
Violence in Brasilia
In the capital Brasilia, security forces blocked protesters trying to break into the foreign ministry and throwing burning objects.
The military police finally threw a security cordon around the building.
In Sao Paulo, an estimated 110,000 people flooded the main avenida Paulista to celebrate the fare rollback and keep the pressure on Rousseff's leftist government to increase social spending.
But clashes erupted between a group of ultra-leftists marching behind their red banners and a majority of demonstrators who objected to the presence of political parties.