Brazil protests disrupt Independence Day celebration
Protesters in Brazil have disrupted Independence Day celebrations, demanding better public services and an end to corruption.
In Rio de Janeiro, some 200 protesters interrupted the traditional Seventh of September military parade, shouting anti-government slogans.
They clashed with police, who threw tear gas and arrested dozens of people.
There were further clashes in the capital, Brasilia, where President Dilma Rousseff was giving a speech.
She said there was "still a lot to be done" in Brazil and that there were "urgent problems to be addressed and the population has the right to demand changes".
But she said the country had "progressed as never before in the last few years".
The official ceremony went ahead without incident, but hundreds of demonstrators later clashed with police outside the Congress building.
Demonstrators also attempted to make their voices heard outside the Mane Garrincha stadium ahead of a friendly match between the Brazilian football team and Australia.
Police stopped the march, which degenerated into violence. Some 50 arrests were made.
Many demonstrators accused the police of using excessive force.
"They never spoke to us. They came in in great numbers and began throwing tear gas canisters," student Leticia Hellen told Agencia Brasil.
In Rio, people who had gone to the parade with their families were caught up in the violence.
"I never thought I would go through this. My God! In such a beautiful country," said 63-year-old Josefa da Silva, who had been affected by tear gas.
The protests continued into the evening near the Rio de Janeiro state governor's palace.
Police stopped demonstrators from approaching the building, in the Laranjeiras district, arresting some 50 people.
Streets were blocked off for several hours and a metro station was closed due to the violence.
Activists had used social media to call for protests in more than 150 cities.
Most of them went ahead peacefully, but there were clashes in a number of other protests, including those in Fortaleza and Curitiba.
In Brazil's largest city, Sao Paulo, police said around 2,000 people took part in a march calling for social justice.
The demonstration were largely peaceful, but towards the end activists attacked police officers and vandalised shops and bank branches.
Brazil saw a big wave of protests in June, as the country prepared to host the football Confederations Cup.
Initially, demonstrators demanded that a hike in bus and underground fares be revoked.
But the demonstrations grew into a much larger movement against corruption and excessive spending in preparations for next year's World Cup and the 2016 Olympics, which Rio will host.