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

Maria Carolina Trevisan

OPINIÃO

Texto em que o autor apresenta e defende suas ideias e opiniões, a partir da interpretação de fatos e dados.

I: Para conter irritação de Bolsonaro, Terra mente e reforça negacionismo

22.jun.2021 - O deputado federal Osmar Terra (MDB-RS) presta depoimento à I da Covid - Edilson Rodrigues/Agência Senado
22.jun.2021 - O deputado federal Osmar Terra (MDB-RS) presta depoimento à I da Covid Imagem: Edilson Rodrigues/Agência Senado

Colunista do UOL

22/06/2021 14h22

Um dos líderes do negacionismo à brasileira, o deputado federal Osmar Terra (MDB-RS) fez uma participação na I da Covid em que abusou do cinismo. O tom com que rebateu evidências óbvias dessa postura de minimizar a gravidade da pandemia — registradas nas redes sociais e nas entrevistas que ele mesmo concedeu — reforça um aspecto típico do bolsonarismo que tem sustentado o governo federal: o desdém com os fatos para criar realidades inexistentes.

A morte é o fato mais concreto que existe. Com 500 mil vidas perdidas para a covid-19, não é possível defender o a imunidade de rebanho sem vacina, bandeira principal do deputado e ex-ministro Terra. Tampouco é honesto defender a cloroquina como tratamento para combater o novo coronavírus, comportamento que ele assumiu para não contrariar o presidente Jair Bolsonaro (sem partido), que tem estado nervoso nos últimos dias.

Terra participou de reuniões do "gabinete paralelo", mas diz que foi acaso, "uma vez só", ou seja, foi quase sem querer que ele esteve sentado ao lado de Bolsonaro, ou com a médica Nise Yamaguchi, ou com o ex-ministro Pazuello, sem mencionar o encontro com o ex-assessor do presidente Arthur Weintraub, grande fornecedor de informações sobre cloroquina ao Palácio do Planalto.

O deputado, que também é médico, apoiou todas as fases de negação assumidas pelo presidente, começando pela "gripezinha", recusando o isolamento social, defendendo o uso de cloroquina para, no final, emplacar a tese da "imunidade de rebanho" sem vacina, que virou a política pública do governo federal.

Buscar a imunidade de rebanho sem vacina é aceitar a morte ivamente, é impor a dor e o luto à população como se não tivesse responsabilidade em gerir a crise sanitária, social e econômica.

Terra chegou a afirmar que Bolsonaro tem "bom senso" para dizer o que quiser, como se ele fosse qualquer pessoa, mesmo o presidente tendo tirado a máscara e mandado uma jornalista calar a boca ontem mesmo. E agora quer se livrar da maneira como atuou tratando de convencer a audiência de que a culpa é das variantes.

O deputado Osmar Terra mentiu durante todos os meses da pandemia, com suas previsões e apoio ao negacionismo do governo federal. Hoje, na I, mentiu de novo, sem constrangimento, com a soberba própria de quem tem a certeza de que não haverá consequências.

Mas o fato é incontestável: as 500 mil vidas perdidas para a covid-19 no Brasil são o atestado absoluto de que o governo Bolsonaro fracassou e a maior evidência de que tolerar as mortes foi uma decisão oficial.