Hundreds of thousands rally against corruption in Brazil
Hundreds of thousands of people have joined peaceful demonstrations across Brazil against government corruption.
Crowds were generally smaller than in March when more than 1.5 million people turned out.
They allege involvement of the governing Workers' Party in bribery at the state oil firm Petrobas.
President Dilma Rousseff denies involvement and has been exonerated in an investigation by the attorney general.
The political opposition say much of the alleged bribery of politicians took place when Ms Rousseff was head of the oil company.
Despite her exoneration, many protestors still believe that the president must have known about the scandal. Some have been calling for her impeachment.
The number of protestors varied widely. Police have said that 696,000 people took to the streets on Sunday but organisers have put the number at 1.5 million, according to Globo news.
Many of the protestors wore the yellow shirts of the national football team and waved Brazilian flags. Others held placards reading "Dilma out" and "Corrupt government".
In Rio de Janeiro, several thousand people marched along Copacabana beach, a turnout reported to be considerably lower than the 25,000 protestors seen on 15 March.
A BBC correspondent in Rio de Janeiro says that most of the protestors in the city were white and middle class.
The exact turnout in the city of Sao Paulo is unclear. Police say 275,000 participated in the march but organisers have put the figure nearer 1 million.
After the protests in March, the government promised a series of measures to combat corruption and impunity.
The Workers' Party has been in power since President Luiz Inacio Lula da Silva was sworn in for his first term in January 2003.
Earlier this month, the Supreme Court approved the investigation of 54 people for their alleged involvement in a corrupt scheme.
It is alleged that private companies paid corrupt officials in order to get lucrative Petrobras contracts.
High-profile politicians also took a share of the money siphoned off from the oil company, according to the investigation.
Officials to be investigated include Senate President Renan Calheiros, President of the Chamber of Deputies Eduardo Cunha, former Energy Minister Edison Lobao and former President Fernando Collor de Mello.
All deny corruption allegations.