Beneath a street lamp in one of Rio de Janeiro's slums, 19-year-old boxer Wanderson de Oliveira does pull-ups from a metal bar outside the Fight for Peace academy while two skinny young boys watch intently.
Much of the Complexo da Maré, a teeming neighborhood of 140,000 people near Rio's international airport, remains in the grip of drug gangs despite efforts to break their hold on the city's poor districts ahead of the August Olympic Games.
Gang members brandishing automatic weapons inspect vehicles that enter Maré at a checkpoint, watchful for raids by rival crews or the police. Youths with machine guns patrol the streets or loll in plastic chairs at corner bars.
For many young residents like Oliveira, the academy offers a glimpse of an alternative: a chance to build discipline and self-esteem through boxing and martial arts. Backed by partners including financial services company Credit Suisse and sportswear maker Reebok, it has more than 1,000 students between 7 and 29 years old.
"Boxing is my passion ...," said Oliveira, who is training for the national championships in November. "I am trying to raise myself up to get out of here."
Lifting weights and shadow boxing in the academy's blue-lit courtyard, Oliveira says his dream is to fight in the Olympics someday.
"It would mean everything to me to represent my country and, even more, to represent this community."
Fight for Peace, which opened in 2000, is not just about sport. Oliveira is enrolled in citizenship classes, and the charity helps young people excluded from formal education to return to studying.
The army helped occupy the neighborhood before the 2014 World Cup in Brazil to drive out the gangs, but residents say police were unable to retain control once the military left.
La'Ruama Silva, 26, says security improved, but police still avoid areas controlled by the traffickers. A former student of the academy, she enrolled her 8-year-old son Juan to keep him off the streets.
"The boys see the traffickers have money, and they want to be like them," Silva said. "I wanted to take my son away from that view of life through sport."
She said Roberto Custodio, a boxer who trained at Fight for Peace and went to the 2012 London Olympics with the Brazilian team, is a role model for local children.
"Boxing is cool," said 9-year-old Carlos Eduardo Souza de Castro, his big red gloves weighing down his skinny arms. "When I grow up, I want to be a boxer or, if not, a doctor."
In the academy's blue-painted gym decked out with punching bags and a boxing ring in one corner, some two dozen children take lessons from 28-year-old Alan Duarte.
Duarte said he started boxing there to protect himself at school but realized the sport was a way of avoiding crime. Nine members of his family have been killed in drug-related shootings, he said.
"I never saw a black man in my family die another way," said Duarte. "I might be a trafficker if it weren't for this."
With an estimated 60,000 homicides in 2014, Brazil has one of the highest murder rates in the world, according to the Institute of Applied Economic Research. Half of Brazilian men who die between the ages of 15 and 29 are lost to homicide.
Few strangers stray inside the slum, or favela, where the gangs impose their law. Yet life there sometimes appears more peaceful than in the turbulent metropolis outside. Children play in the streets as night falls, while music drifts across the jumbled rooftops.
Duarte's students, more than half of them young girls, form a line to take a swing at his gloved hands. In one exercise, three students guide a blindfolded girl through a patch of boxing gloves strewn on the floor, trying not to touch them.
Seven-year-old Marcia Cristina Lucas is smaller than the rest. Although she smiles a lot, she does not shout like them.
"Marcia can't speak or hear, but she's a good student, and this helps her," said Duarte. "It's all about developing a sense of responsibility and trust."
Pedro Artur, who has worked at the academy for 14 years, says the favela is misunderstood: The vast majority of inhabitants are law abiding.
"The main problem we have is unemployment because of prejudice," he said. "If you say you live in a favela, no one wants to give you a job. So we have to fight harder."
Carlos Viana, 33, joined Fight for Peace without even a primary education and used what he learned to graduate from university. His story helped him win a place as torch carrier for the upcoming Olympics in Rio.
"I want to carry the Olympic torch to show that it's possible to overcome adversity," he said, "and to send a message of motivation to others."