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

Tarcísio sofreu atentado ou não? Discussão polariza redes sociais

Thiago Varella

Colaboração para o UOL

17/10/2022 18h22Atualizada em 17/10/2022 18h22

O tiroteio que deixou um morto e interrompeu um ato de campanha do candidato ao governo de São Paulo Tarcísio de Freitas (Republicanos) na manhã de hoje (17), na favela de Paraisópolis, na capital paulista, dominou os posts políticos no Twitter.

Um dia depois do primeiro debate entre os presidenciáveis no segundo turno, o incidente em São Paulo regionalizou as discussões políticas e opôs quem considerou que Tarcísio sofreu um atentado contra quem afirma que o alvo foi outro.

De concreto, sabe-se que, de fato, aos menos 25 tiros foram disparados e um homem morreu. Segundo reportagem do UOL, a cúpula da PM dá como certo que não houve atentado contra Tarcísio.

Foi atentado?

Assim se soube do tiroteio em Paraisópolis e da interrupção da agenda de Tarcísio, políticos e perfis ligados ao presidente Jair Bolsonaro (PL) usaram suas contas nas redes sociais para cravar que o candidato ao governo paulista havia sofrido um atentado.

Por trás da pressa em dizer que Tarcísio havia sido alvo do ataque, os posts relacionavam as ações do PCC (Primeiro Comando da Capital) ao ex-presidente Luiz Inácio Lula da Silva e ao PT.

Não foi atentado?

Com o avanço das investigações e das apurações jornalísticas, políticos da oposição e perfis mais ligados a Lula foram contradizer os bolsonaristas nas redes sociais com posts afirmando que Tarcísio não era alvo do ataque.

Jornalistas também questionaram a narrativa de atentado e afirmaram que ainda há diversas perguntas em aberto sobre o incidente em Paraisópolis.

Fakeada 2.0?

Alguns perfis ligado a Lula e ao PT compararam o tiroteio em Paraisópolis à facada sofrida por Bolsonaro na campanha de 2018. Para eles, os dois episódios foram criados para alavancar as candidaturas. As investigações sobre a facada já provaram que, naquele caso, atentado foi verdadeiro e perpetrado por um indivíduo que agiu sozinho.

PM trabalha com duas hipóteses

De acordo com PMs que atuam no setor de inteligência da corporação e oficiais com experiência de atuação em Paraisópolis, há duas suspeitas sobre o início do tiroteio, o que ainda é checado pela Segurança Pública paulista.

  • A primeira é que PMs faziam ronda em ruas próximas de onde Tarcísio e sua comitiva ariam -- e, ao encontrarem criminosos armados em motocicletas, teve início a troca de tiros.
  • A segunda é que o staff chegou ao local à paisana antes do candidato e que, nesse momento, encontrou olheiros armados em motos.

Há ruas em Paraisópolis que abrigam olheiros em motocicletas que acompanham pessoas desconhecidas e, se veem algo que chama a atenção, ream as informações para integrantes do PCC. Por essa segunda hipótese, a comitiva de Tarcísio teria visto dois olheiros e avisado a PM, que, ao se dirigir ao local indicado, encontrou criminosos armados em uma moto e se iniciou o tiroteio.