Tens of thousands of people joined rallies in Paris and other French cities on Wednesday to pay tribute to the victims of a massacre by Islamist gunmen at the satirical weekly Charlie Hebdo.
In Paris, crowds of people swarmed into the Place de la Republique that lies barely a kilometre (half a mile) from the scene of the bloodbath that has shocked France.
At least 20,000 people also gathered in the French cities of Lyon and Toulouse, police said, after 12 people were killed by heavily armed gunmen screaming "Allahu akbar" (God is greatest).
Demonstrators wore black stickers marked "Je suis Charlie" (I am Charlie), a slogan aimed at showing solidarity with the victims of the deadliest attack in France in decades.
Others waved banners with slogans such as "Press freedom has no price" and "Charb mort libre" (Charb died free), a reference to the newspaper's slain editor-in-chief Stephane Charbonnier.
Charbonnier was one of four cartoonists killed in the attack that also left 11 people injured.
"It's terrible that these people were murdered. In future, no-one will be able to speak his mind. We have to demonstrate in our thousands," said Beatrice Cano, a demonstrator in her fifties, who was carrying the latest issue of Charlie Hebdo.
Other cities around the world were also planning rallies to pay tribute to the dead.