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

Esse conteúdo é antigo

Polícia abre inquérito sobre agressões sofridas por assassino de tesoureiro do PT

Guaranho foi indiciado por homicídio duplamente qualificado (agravado) por motivo torpe - REPRODUÇÃO | FACEBOOK
Guaranho foi indiciado por homicídio duplamente qualificado (agravado) por motivo torpe Imagem: REPRODUÇÃO | FACEBOOK

Bruno Zanette, especial para o Estadão

Foz do Iguaçu

15/07/2022 15h38

A Polícia Civil do Paraná abriu um novo inquérito para apurar a conduta das pessoas que chutaram o policial penal federal Jorge Guaranho após ele ass o guarda municipal Marcelo Arruda, em Foz do Iguaçu. Simpatizante do presidente Jair Bolsonaro, Guaranho invadiu o salão em que Arruda comemorava seu aniversário de 50 anos na noite de sábado, 9, em festa temática alusiva ao ex-presidente Luiz Inácio Lula da Silva e ao PT. Arruda era tesoureiro do partido na cidade e, mesmo alvejado, atingiu o policial penal com cinco disparos.

Imagens das câmeras de vigilância registraram a troca de tiros e os chutes desferidos por três convidados da festa em Guaranho enquanto ele estava caído. O resultado do inquérito sobre o assassinato de Arruda foi apresentado nesta sexta-feira, 15. O policial penal federal foi indiciado por homicídio duplamente qualificado por motivo torpe e por causar "perigo comum" (com risco às demais pessoas presentes à festa). A delegada responsável pelo caso e chefe da Divisão de Homicídios do Paraná, Camila Cecconelo, disse, porém, que não há como provar motivações políticas para o crime.

Segundo ela, ainda é preciso aguardar o resultado da perícia para avaliar até que ponto as lesões e o quadro de saúde de Guaranho foram agravados em decorrência dos chutes que sofreu. De acordo com a investigação, três pessoas que estavam na festa agrediram o policial penal federal após ele cair no chão, atingido pelos disparos de Arruda, que já havia sido alvejado naquele.

"Quanto às pessoas que efetuaram os chutes no autor dos fatos, foi aberto um inquérito à parte. Até porque, precisamos saber qual vai ser o estado de saúde, como vai evoluir esse estado de saúde do Guaranho", afirmou a delegada. "Vai ter de ser determinado se as lesões causadas nele vão evoluir para um óbito. Se sim, qual terá sido a causa, se foram os disparos efetuados pelo Marcelo em legítima defesa ou se os chutes contribuíram para isso. Não temos ainda o resultado parcial e vai ser melhor avaliado com essas pessoas que efetuaram os chutes. Uma delas afirmou que chutou mais para tirar de perto a arma do autor. Então, tudo isso vai ser avaliado na sequência", completou Camila Cecconelo.

O resultado da perícia, segundo a Polícia Civil, pode levar até 20 dias. Jorge Guaranho segue internado em estado grave, porém estável e respirando com auxílio de aparelhos, em um hospital particular de Foz do Iguaçu (PR).