Demonstrators take part in anti-government rally amid growing scandal over bribes paid by Brazilian firm Odebrecht.
Thousands of people have taken to the streets in Panama in protest over a political scandal involving huge bribes paid by a Brazilian company in exchange for public contracts.
Odebrecht has admitted it paid $788m in bribes to win construction contracts in 12 countries.
It has agreed with the US justice department to pay a world record $3.5bn fine.
"No more governments of thieves and the corrupt," read some placards as the crowd moved through the centre of the capital Panama City to the Congress building on Friday.
"The goal of the march is to demand that all those corrupt in all the parties and businessmen are investigated, so they return the money and go to jail," Saul Mendez, a leader of the Suntracs construction union that was among the protest organisers, told AFP news agency.
The scandal surrounding Odebrecht, which US authorities say paid $59m in bribes in Panama between 2010 and 2014, was just "the tip of the iceberg", he said.
Panama, which is trying to clean up its image after the Panama Papers scandal last year, has asked Interpol to issue wanted alerts for the sons of Ricardo Martinelli, who was president at the time.