;(function() { window.createMeasureObserver = (measureName) => { var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`; performance.mark(`${markPrefix}-start`); return { end: function() { performance.mark(`${markPrefix}-end`); performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`); performance.clearMarks(`${markPrefix}-start`); performance.clearMarks(`${markPrefix}-end`); } } }; /** * Gerenciador de eventos */ window.gevent = { stack: [], RUN_ONCE: true, on: function(name, callback, once) { this.stack.push([name, callback, !!once]); }, emit: function(name, args) { for (var i = this.stack.length, item; i--;) { item = this.stack[i]; if (item[0] === name) { item[1](args); if (item[2]) { this.stack.splice(i, 1); } } } } }; var runningSearch = false; var hadAnEvent = true; var elementsToWatch = window.elementsToWatch = new Map(); var innerHeight = window.innerHeight; // timestamp da última rodada do requestAnimationFrame // É usado para limitar a procura por elementos visíveis. var lastAnimationTS = 0; // verifica se elemento está no viewport do usuário var isElementInViewport = function(el) { var rect = el.getBoundingClientRect(); var clientHeight = window.innerHeight || document.documentElement.clientHeight; // renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content if(el.className.includes('related-content-front')) return true; // garante que usa ao mínimo 280px de margem para fazer o lazyload var margin = clientHeight + Math.max(280, clientHeight * 0.2); // se a base do componente está acima da altura da tela do usuário, está oculto if(rect.bottom < 0 && rect.bottom > margin * -1) { return false; } // se o topo do elemento está abaixo da altura da tela do usuário, está oculto if(rect.top > margin) { return false; } // se a posição do topo é negativa, verifica se a altura dele ainda // compensa o que já foi scrollado if(rect.top < 0 && rect.height + rect.top < 0) { return false; } return true; }; var asynxNextFreeTime = () => { return new Promise((resolve) => { if(window.requestIdleCallback) { window.requestIdleCallback(resolve, { timeout: 5000, }); } else { window.requestAnimationFrame(resolve); } }); }; var asyncValidateIfElIsInViewPort = function(promise, el) { return promise.then(() => { if(el) { if(isElementInViewport(el) == true) { const cb = elementsToWatch.get(el); // remove da lista para não ser disparado novamente elementsToWatch.delete(el); cb(); } } }).then(asynxNextFreeTime); }; // inicia o fluxo de procura de elementos procurados var look = function() { if(window.requestIdleCallback) { window.requestIdleCallback(findByVisibleElements, { timeout: 5000, }); } else { window.requestAnimationFrame(findByVisibleElements); } }; var findByVisibleElements = function(ts) { var elapsedSinceLast = ts - lastAnimationTS; // se não teve nenhum evento que possa alterar a página if(hadAnEvent == false) { return look(); } if(elementsToWatch.size == 0) { return look(); } if(runningSearch == true) { return look(); } // procura por elementos visíveis apenas 5x/seg if(elapsedSinceLast < 1000/5) { return look(); } // atualiza o último ts lastAnimationTS = ts; // reseta status de scroll para não entrar novamente aqui hadAnEvent = false; // indica que está rodando a procura por elementos no viewport runningSearch = true; const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve()); // obtém todos os elementos que podem ter view contabilizados //elementsToWatch.forEach(function(cb, el) { // if(isElementInViewport(el) == true) { // // remove da lista para não ser disparado novamente // elementsToWatch.delete(el); // cb(el); // } //}); done.then(function() { runningSearch = false; }); // reinicia o fluxo de procura look(); }; /** * Quando o elemento `el` entrar no viewport (-20%), cb será disparado. */ window.lazyload = function(el, cb) { if(el.nodeType != Node.ELEMENT_NODE) { throw new Error("element parameter should be a Element Node"); } if(typeof cb !== 'function') { throw new Error("callback parameter should be a Function"); } elementsToWatch.set(el, cb); } var setEvent = function() { hadAnEvent = true; }; window.addEventListener('scroll', setEvent, { capture: true, ive: true }); window.addEventListener('click', setEvent, { ive: true }); window.addEventListener('resize', setEvent, { ive: true }); window.addEventListener('load', setEvent, { once: true, ive: true }); window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true }); window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE); // inicia a validação look(); })();
  • AssineUOL
Topo

Moradores relatam 'banho de sangue' e indícios de 'execução' em operação

Herculano Barreto Filho

Do UOL, no Rio

07/05/2021 16h02Atualizada em 07/05/2021 20h22

Moradores do Jacarezinho relatam um "banho de sangue" e indícios de mortes arbitrárias por policiais na operação que deixou ontem ao menos 28 mortos na favela da zona norte do Rio de Janeiro.

Testemunhas e entidades se referem à ação como uma chacina porque, segundo elas, havia entre os mortos pessoas que não estavam armadas e se escondiam em casas da comunidade. A Polícia Civil nega e diz que seus agentes reagiram em confronto.

Segundo relato de uma moradora ao Instituto Anjos da Liberdade, um rapaz estava com uma criança no colo antes de ser morto. A testemunha desconhece a identidade dele.

O policial pediu que esse jovem entregasse a criança a um familiar e falou que ele iria morrer. E matou o jovem ali mesmo. Eles [policiais] não foram a bocas de fumo. Invadiram casas para matar. Foi uma chacina

Karina Oliveira Marinho, advogada

A advogada Patrícia Félix, da OAB-RJ (Ordem dos Advogados do Brasil), ressaltou que "a pobreza não pode ser criminalizada" e cita indícios de execução. "Moradores relatam que a polícia entrou em casas e que não houve resistência em algumas delas. Foi um banho de sangue. As famílias falam que muitos se entregaram e foram assassinados."

Em reunião hoje na escola de samba do Jacarezinho —com a presença de integrantes da OAB, lideranças comunitárias e representantes de associações—, foram feitas críticas à atuação policial na favela.

As lideranças contestaram os argumentos apresentados pela Polícia Civil, que disse que a ação foi motivada por uma investigação de aliciamento de menores de idade pelo CV (Comando Vermelho), facção criminosa que domina o território.

"Por que mataram um menino de 14 anos na porta da minha casa, se o objetivo era combater o aliciamento de menores pelo tráfico?", questionou a ativista social Ana Paula Grecco.

Vi policiais arrastando corpos mortos e depois desfazendo a cena do crime. Ouvi gritos de menores com medo de morrer. A polícia não entrou para cumprir mandados. Entrou para matar

Ana Paula Grecco, ativista social

Ela disse ter visto três corpos sendo carregados por policiais em carrinhos semelhantes aos usados em supermercados. "Se as entidades de direitos humanos não chegassem, a chacina iria continuar", disse. "Já presenciei muita morte. Mas como foi ontem? Não tem como se acostumar com uma cena de barbárie".

O líder comunitário Thiago Costa, conhecido como Mestre Baia, também disse ter presenciado um "banho de sangue" em casas onde jovens foram mortos.

Os policiais tiraram as famílias para outros cômodos e simplesmente executaram esses jovens sem nenhum remorso. Eles abandonaram as armas pelas lajes e tentaram se esconder nas casas de moradores. Mas os corpos foram retirados dessas casas

Thiago Costa, líder comunitário

Um homem disse ao ativista ter implorado pela própria vida após a polícia invadir a sua casa para matar um jovem. O agente então ordenou que a família colocasse um lençol sobre a cabeça de uma criança de 8 anos para atirar.

"Foi um banho de sangue. E eles [policiais] só deram tiro na cabeça. A gente via sangue com massa encefálica pelo chão."

Moradores também relataram a lideranças comunitárias que uma mulher foi obrigada a sair da própria casa. Em seguida, os agentes teriam invadido o imóvel para matar o seu neto.

O que diz a Polícia Civil

Em entrevista coletiva ontem, delegados da Polícia Civil do Rio defenderam a operação e destacaram a morte do policial durante a ação.

Eles negaram denúncias de "execução" relatadas por moradores e disseram que não desobedeceram à decisão do STF (Supremo Tribunal Federal), que restringe operações policiais no Rio durante a pandemia a situações excepcionais em que as ações sejam relatadas ao MP-RJ (Ministério Público Federal do Rio de Janeiro).

"O sangue desse policial que faleceu em prol da sociedade de alguma forma está nas mãos desse ativismo judicial", afirmou o delegado Rodrigo Oliveira, subsecretário de Planejamento e Integração Operacional da Polícia Civil. Questionado pelo UOL, ele negou que se referisse à decisão do STF.