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

Não estamos condenando nenhuma vacina, diz diretor da Anvisa

Antonio Barra Torres, diretor-presidente da Anvisa, disse que caso vacinas interditadas tenham sido aplicadas, não há medida adicional a tomar - Pedro França/Agência Senado
Antonio Barra Torres, diretor-presidente da Anvisa, disse que caso vacinas interditadas tenham sido aplicadas, não há medida adicional a tomar Imagem: Pedro França/Agência Senado

Do UOL, em São Paulo

04/09/2021 20h11Atualizada em 04/09/2021 21h33

O diretor da Anvisa (Agência Nacional de Vigilância Sanitária), Antônio Barra Torres, afirmou hoje que a interdição de lotes da Coronavac é uma medida de cautela, e que a agência não quer condenar nenhuma vacina.

"As questões da interdição cautelar não são condenatórias, não estamos condenando vacina nenhuma, mas não podemos concordar que seja meramente burocrático", disse ele em entrevista à CNN Brasil.

"O fato de ser do mesmo fabricante não dispensa a inspeção de outra fábrica, em outra cidade. Daí o fato, nossa decisão, já que vem de um local que não inspecionamos e que não foram apresentadas as certificações internacionais, tivemos que fazer a interdição. Nem é meramente burocracia e, de maneira nenhuma, é condenação", continuou.

Mais cedo, a Anvisa anunciou a suspensão de ao menos 25 lotes da vacina CoronaVac que foram envasados em um local não inspecionado pela agência. A decisão afeta 21 milhões de doses, das quais 12 milhões já foram distribuídas pelo Instituto Butantan ao PNI (Plano Nacional de Imunização). Os lotes impactados podem ser consultados no site da agência. O Instituto Butantan afirma que alertou a Anvisa por "extrema precaução" e que atestou a qualidade das doses suspensas cautelarmente.

Durante a entrevista, Barra Torres confirmou que o próprio Butantan comunicou que a fabricação aconteceu em uma fábrica diferente.

Ele disse que a interdição já foi comunicada aos gestores do PNI, que estão cientes que não devem aplicar, essas doses por enquanto. Entretanto, se as vacinas já tiverem sido usadas, o diretor da Anvisa disse que não há nenhuma orientação específica para essas pessoas.

"A orientação é que siga medidas de distanciamento social, uso de máscara, boa higienização das mãos, as orientações para todos os cidadãos brasileiros, não é porque se vacinou que pode abrir mão disso", afirmou. "Não temos novidade, conduta nova a propor a quem, por ventura, tenha sido vacinado com esses lotes".

O diretor disse ainda acreditar que a questão será resolvida em breve. O prazo máximo da medida cautelar é de 90 dias, tempo que pensa ser "bastante suficiente" para que a questão seja esclarecida. Ele disse esperar que o Butantan envie a documentação sobre a fábrica nova logo. Caso não haja essa possibilidade, a agência não descarta uma ida à China para inspecionar pessoalmente o local, como já foi feito em outras instalações.

"É uma situação que acreditamos que seja superada em breve, o Brasil não pode perder nenhuma dose da vacina", declarou.

Ele ressaltou ainda que não há motivo para desconfiança da população. "Essa vacina, assim como outras, foram analisadas e aprovadas pela Anvisa, atenderam parâmetros da Organização Mundial da Saúde. Não há o que a população suspeitar ou ter reação de não-aceitação da vacina, é um evento que pode acontecer com qualquer outra".