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

Governadores do Nordeste comprarão vacinas por preço menor que ministério

Wellington Dias elogiou ação do governador da Bahia, Rui Costa, no ano ado - Reprodução/Instagram
Wellington Dias elogiou ação do governador da Bahia, Rui Costa, no ano ado Imagem: Reprodução/Instagram

Colaboração para o UOL

12/03/2021 09h17

Conforme revelado desde ontem, os governadores do Consórcio Nordeste esperam fechar hoje a compra de 39 milhões de doses da vacina Sputnik V. Hoje, o governador do Piauí, Wellington Dias (PT), revelou que conseguiu um "desconto", pois o Ministério da Saúde pagará mais caro por essa vacina - isso porque o governo federal demorou mais para fazer um acordo com o laboratório russo, Gamaleya, que desenvolveu o imunizante.

Em entrevista para a CNN Brasil, Wellington Dias afirmou que o Consórcio Nordeste pagará US$ 9,95 por cada dose da Sputnik V, adquirindo as 39 milhões de doses. Já o Ministério da Saúde pagará US$ 13 e só conseguirá 10 milhões de doses. Essa vantagem do Consórcio acontece porque as negociações foram feitas desde 2020.

"Em agosto do ano ado, o presidente do Consórcio na época, Rui Costa (PT), governador da Bahia, teve iniciativa de fazer um memorando de compra para 50 milhões de doses. Mas esbarramos na legislação, que não permitia compra que não fosse pelo Ministério da Saúde. Ficamos aguardando alterações. Agora tivemos a decisão do Lewandowski (ministro do STF) e foi sancionada lei que permite compra descentralizada", explicou.

De acordo com o governador do Piauí, toda a negociação formal está concluída. O contrato deve ser assinado hoje. E depois o Ministério da Saúde assumiu o compromisso de pagar pelas vacinas, para que elas sejam distribuídas por todo o Brasil, através do PNI (Programa Nacional de Imunização).

"Está previsto para hoje o fechamento dessa compra. O Ministério comprando, ele paga. Não pagando, nós firmamos contratos e pagamos. Mas neste caso vamos dialogar com estados, porque o Brasil tem dificuldade de um estado pagar a despesa do outro. Esse é o ponto onde esbarramos", destacou Wellington Dias, ressaltando que a intenção, de qualquer forma, é distribuir as vacinas para todo país.

A vacina Sputnik V ainda não tem aprovação da Anvisa (Agência Nacional de Vigilância Sanitária), mas o laboratório Gamaleya está negociando para obter a autorização para uso emergencial.