;(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

Anistia enumera 20 perguntas sem resposta 11 meses após assassinato de Marielle

Marielle Franco na Câmara Municipal do Rio de Janeiro - Folhapress
Marielle Franco na Câmara Municipal do Rio de Janeiro Imagem: Folhapress

Roberta Jansen

Rio

13/02/2019 13h43

Onze meses depois do assassinato da vereadora Marielle Franco (PSOL/RJ) e do motorista Anderson Gomes, a Anistia Internacional (AI) aponta contradições na investigação do caso e enumera 20 perguntas que seguem sem resposta. Na manhã desta quarta-feira, 13, a organização apresentou um extenso levantamento das informações já divulgadas sobre o crime apontando possíveis incoerências.

"O que já foi revelado publicamente sobre o assassinato de Marielle levanta sérias preocupações em relação a possíveis negligências, interferências indevidas, ou ao não seguimento do devido processo legal durante as investigações", afirmou a diretora da Anistia Internacional, Jurema Werneck.

"As autoridades devem responder às perguntas que agora são feitas sobre pontos críticos do caso. A Anistia Internacional continuará monitorando o caso até que todas as perguntas tenham sido respondidas e o caso solucionado."

O documento divulgado nesta quarta-feira, chamado de "Labirinto Marielle", foi elaborado a partir de informações divulgadas por autoridades públicas ou pela imprensa. Traz dados agrupados em torno de sete temas: disparos e munição, a arma do crime, os carros e aparelhos usados e as câmeras de segurança, procedimentos investigativos, responsabilidade e competência das investigações, acompanhamento externo e andamento das investigações.

"Embora as investigações estejam sob sigilo, o que já foi divulgado publicamente sobre o caso levanta questões sérias sobre possíveis ilegalidades dentro de instituições de segurança no país, já que munições e armas de propriedade do Estado teriam sido desviadas", aponta a diretora. "É de extrema preocupação que um lote de munição da Polícia Federal tenha sido desviado, usado em homicídios, e que depois de tanto tempo as autoridades não tenham dado uma explicação satisfatória para isso."

Entre outros pontos críticos destacados no documento estão a falta de respostas sobre o desligamento das câmeras de segurança do local do crime dias antes do assassinato, o desaparecimento de submetralhadoras do arsenal da Polícia Civil do Rio de Janeiro e negligências no armazenamento do carro.

As falas públicas das autoridades sobre o andamento das investigações e estimativas de conclusão do inquérito policial também foram destacadas no documento.

"Desde que o assassinato de Marielle Franco completou cinco meses ouvimos autoridades dizerem publicamente que as investigações estavam andando e que o caso estava perto de ser concluído", lembra Werneck. "Se até hoje não se sabe quem matou, quem mandou matar Marielle e nem a motivação do crime, em que as autoridades se basearam todos esses meses para afirmarem que as investigações estavam próximas do fim?"

Com o início de nova gestão no governo federal, outro tema de preocupação é a continuidade que será dada à investigação da Polícia Federal sobre as investigações da Polícia Civil do Rio.

"Em novembro do ano ado, o então Ministro da Segurança Pública anunciou que a Polícia Federal iria investigar as investigações do assassinato diante de denúncias de que haveria um grupo organizado, com participação de agentes do Estado, agindo para interferir negativamente no andamento das investigações. Essa suspeita é grave e precisamos que as novas autoridades federais deem uma resposta à altura e que a gente saiba a conclusão da investigação aberta pela Polícia Federal" afirma Jurema Werneck.

Anistia Internacional cobra mais rigor nas investigações do caso Marielle

Band News