A leftist city councilwoman and outspoken critic of police brutality in Rio de Janeiro's violent slums was shot dead in the city center in an assassination-style killing.
By midday more than 1,000 people stood under the tropical sun outside City Hall to remember Marielle Franco, 38, who was murdered late Wednesday.
More than 30,000 people had signaled their intention to attend another rally later in the day.
The attack, coming despite army intervention to control Rio's soaring crime rate, sparked immediate outrage around Latin America's biggest country.
Franco, who as a black woman stood out in the region's male and white-dominated politics, was hit by several bullets after the attacker pulled up next to her white hatch back in central Rio and opened fire.
Her driver was also killed and an aide was injured before the assailant or assailants drove off, without attempting to rob their victims.
Police said they were investigating whether this was a targeted assassination.
President Michel Temer called Franco's killing "an attack on democracy and the rule of law," and promised full help from the federal authorities.
Amnesty International demanded a rigorous probe focusing on "the context, motive and responsibility" for the killing.
Social media lit up with calls for demonstrations outside City Hall and elsewhere in Rio.
"March against black genocide! WE ARE ALL Marielle Franco," said the appeal for the main protest planned later Thursday. It drew pledges from some 32,000 people to attend, with tens of thousands more expressing interest.
Franco, 38, was born and raised in a network of favelas, or slums, called Mare, one of the city's most violent areas.
A member of the leftist Socialism and Liberty Party (PSOL), she got the fifth highest vote count in Rio's 2016 council elections.
She had also become a leading voice against the excesses of Rio's police force, which is routinely accused by major human rights organizations of extrajudicial killings, falsifying evidence and corruption.
Just a day before her death Franco blamed police for the latest shooting death of a young man in a favela, where police, shadowy militias and heavily armed drug gangs wrestle for control.
"Another killing of a young man that could be chalked up to the police." she tweeted. "Matheus Melo was leaving church when he was killed. How many more will have to die for this war to end?"
A few days earlier she tweeted about a poor neighborhood, Acari, where she said the local police unit acted as a death squad.
They're known as "the death Battalion. They come to carve up the population! They come to kill our young!" she said.
Police also take extraordinarily high casualties in what officers compare to a war, with Rio state losing 134 officers in 2017.
Franco's killing comes as the recent military takeover of security in Rio appears to be showing few positive results.
The city has been mired in violence for decades but the security situation has worsened dramatically since the end of the Olympic Games in 2016.
Last month, Temer ordered the military to take command of Rio city and state police.
Generals are now in charge of nearly all branches of the local security services and soldiers and heavy equipment regularly deploy to support police during sweeps of favelas, where gangs of traffickers are often in control.
The military intervention has sparked widespread concern, including from the UN High Commissioner on Human Rights, Zeid Ra'ad al Hussein, who said soldiers "are not specialized in public security or investigation."
Temer issued a statement Thursday saying that Public Security Minister Raul Jungmann had discussed Franco's killing with the general in charge of the Rio military operation, "and made the federal police available to assist."