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

PF explica em ofício como Bolsonaro alterou dados do SUS; veja íntegra

Do UOL, em São Paulo

03/05/2023 16h18Atualizada em 03/05/2023 23h22

A PF (Polícia Federal) indicou, em ofício ao STF, o esquema em que o cartão de vacina do ex-presidente Jair Bolsonaro (PL) foi supostamente fraudado.

O que aconteceu:

O aplicativo ConecteSUS do ex-presidente foi ado de dentro do Palácio do Planalto, identificou a PF.

A ação foi feita por IP pertencente à Presidência da República e teria ocorrido em 22 e 27 de dezembro de 2022.

Foi emitido um certificado fraudado de vacinação contra a covid-19 nessas datas, concluiu a PF; constavam no documento três doses de vacina.

Os registros da vacinação de duas das três supostas aplicações foram apagados em 27 de dezembro.

Uma nova emissão do certificado foi feita no dia 30 de dezembro a partir do celular do ajudante de ordens Mauro Cid, contendo apenas o registro de uma dose da vacina da Janssen; foi neste dia que Bolsonaro partiu para os EUA, onde ficou até março deste ano.

A suspeita é que o ex-presidente tenha conseguido "vantagem indevida" a partir da fraude do cartão, pois o ajudaria em "situações que necessitem de comprovante de vacinação contra a covid-19", concluiu a PF.

Mudanças de e-mail

O e-mail oficial de Cid estava registrado no cadastro do ex-presidente no aplicativo até o dia 22 de dezembro de 2022. Naquela data, o cadastrado foi atualizado.

ou a constar, então, um e-mail pertencente a Marcelo Costa Camara, então assessor especial do presidente da República, verificou a PF. Camara acompanhou Bolsonaro em sua viagem aos EUA no fim de 2022 e também foi alvo de busca e apreensão hoje.

Os endereços de e-mail utilizados para ar o sistema "GOV.BR" de Jair Bolsonaro, são de assessores próximos ao ex-presidente da República. Portanto, não se evidenciou qualquer fato suspeito relacionado à utilização indevida do usuário do ex-presidente da República, por terceiros não autorizados, para ar o aplicativo ConecteSUS."
Ofício da Polícia Federal ao STF

Investigação sobre cartões de vacina

A operação de hoje prendeu o tenente-coronel Mauro Cid, ex-ajudante de ordens de Bolsonaro; a ação foi autorizada pelo ministro Alexandre de Moraes, do STF.

Além de Cid, foram presas outras cinco pessoas: o PM Max Guilherme Machado de Moura, o secretário municipal de Saúde de Duque de Caxias João Carlos de Sousa Brecha, o assessor do ex-presidente Sérgio Rocha Cordeiro, o sargento Luís Marcos dos Reis e o ex-major do Exército Ailton Gonçalves Moraes Barros.

O celular do ex-presidente foi apreendido. Segundo Bolsonaro, seu aparelho não possui senha.

O coronel do Exército Marcelo Costa Câmara e o deputado federal Gutemberg Reis (MDB) também foram alvos de mandado de busca; por meio de nota, o parlamentar disse que colabora com a PF e ainda toma conhecimento dos detalhes das investigações.

As inserções de dados falsos sobre as vacinas teriam ocorrido entre novembro de 2021 e dezembro de 2022, segundo a PF; a suspeita é que os certificados de vacinação foram adulterados para permitir a entrada nos Estados Unidos, no fim do ano ado.