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

Bolsonaro não vê "problema" em ser vacinado, mas prioriza não infectados

Ueslei Marcelino/Reuters
Imagem: Ueslei Marcelino/Reuters

Natália Lázaro

Colaboração para o UOL, em Brasília

03/04/2021 12h53Atualizada em 03/04/2021 17h41

O presidente Jair Bolsonaro (sem partido) afirmou, na manhã de hoje (3), que não vê "problema nenhum" em se vacinar contra a covid-19. Porém, ele defendeu que outros que ainda não se infectaram com o novo coronavírus utilizem a dose que ele tomaria, ao dizer que já está imunizado.

No Distrito Federal (DF), já começou a fase de vacinação de idosos acima de 66 anos, idade do presidente. A expectativa é que ele seja vacinado entre hoje (3) e amanhã (4) ou durante semana. Para atender a população da faixa etária, o governo do DF postergou a campanha até às 17h.

Olha, o que eu devo fazer, eu entendo dessa maneira: eu já estou imunizado com o vírus, né? E se acharem que eu devo me vacinar, eu me vacino. Não tem problema nenhum."
Jair Bolsonaro, em 3 de abril de 2021

"Mas eu acho que essa vacina minha tem que ser dada para alguém que ainda não contraiu o vírus e corre o risco muito, mas muito maior do que o meu", disse ele hoje no Palácio da Alvorada.

Bolsonaro foi infectado pelo novo coronavírus em julho do ano ado. Porém, a recomendação dos órgãos de saúde é que quem já contraiu a doença deve se vacinar normalmente, para evitar chances de reinfecção e reforçar a imunidade.

"Da minha parte não tem problema nenhum buscar um posto de saúde, já que entrou aí a minha faixa etária a se vacinar", continuou.

Bolsonaro volta a criticar isolamento

No momento em que a pandemia atinge índices cada vez mais alarmantes de casos e óbitos, o presidente voltou a criticar o isolamento social e a adesão de estados e municípios a políticas restritivas.

Até ontem, a média diária de mortes pelo coronavírus já ultraava a marca de 3 mil óbitos no Brasil. O país nunca apresentou números tão graves, com o mês de março batendo o recorde de óbitos: 66.868 mortes no mês só pela doença, mais do que o dobro de junho de 2020, antigo pico da pandemia, com 32.912 óbitos.

Apesar dos questionamentos do presidente, é consenso científico internacional que a diminuição da circulação de pessoas resulta diretamente na diminuição da transmissão do vírus, o que faz, consequentemente, com que os índices caíam.

Medidas de isolamento com fechamento de serviços não essenciais, como as criticadas por ele, foram adotadas por todos os países que melhor combateram o vírus.

Capa transforma Bolsonaro em Coringa explodindo hospital

A edição de abril do Le Monde Diplomatique Brasil traz, na capa, uma ilustração em que Bolsonaro explode um hospital. Ele é representado como o vilão Coringa — em uma referência a uma cena do filme Batman: O Cavaleiro das Trevas — segurando uma caixa de hidroxicloroquina.

"A condução desastrosa, e mesmo criminosa, do governo federal no enfrentamento da pandemia, associada à ausência de política econômica para a retomada do crescimento, está levando grande parte dos brasileiros a um beco sem saída: sem trabalho, sem comida, acossados pela pandemia e sem perspectivas de superar a crise. Só quem não tem mais comida para oferecer para suas crianças pode avaliar o tamanho desta tragédia", diz o editoral da publicação.

Siga o UOL no