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

São Paulo aplicou 4 milhões de doses de lotes interditados da CoronaVac

Lotes foram interditados por terem sido fabricados em local sem inspeção - iStock
Lotes foram interditados por terem sido fabricados em local sem inspeção Imagem: iStock

Anna Satie

Do UOL, em São Paulo

04/09/2021 21h03Atualizada em 05/09/2021 08h15

A secretaria de Saúde do estado de São Paulo confirmou ter aplicado cerca de quatro milhões de doses dos lotes interditados da CoronaVac. Mais cedo, a Anvisa (Agência Nacional de Vigilância Sanitária) suspendeu o uso de 21 milhões de doses do imunizante que foram envasadas em um local não autorizado pela agência.

O Instituto Butantan afirma que alertou a Anvisa por "extrema precaução" e que atestou a qualidade das doses suspensas cautelarmente.

Segundo a secretaria paulista, não houve nenhuma intercorrência até o momento, mas toda a rede está orientada sobre o monitoramento das pessoas vacinadas, independentemente da vacina utilizada.

"O Estado aguardará parecer das autoridades sanitárias para proceder com a distribuição de 1,5 milhão de doses da Coronavac entregues a SP ontem. A pasta estadual trabalha em sintonia com o Instituto Butantan e tem convicção na liberação das doses para a aplicação na população", disse o órgão em nota.

É possível consultar quais foram os lotes impactados pela decisão no site da Anvisa.

O estado do Rio confirmou em nota que recebeu um dos lotes suspensos e que orientou os municípios para que fique armazenado até nova orientação da Anvisa. A secretaria municipal do Rio disse ter aplicado as vacinas embargadas em 1.206 pessoas, e que não planeja revaciná-las.

Há pouco, o diretor-presidente da agência, Antônio Barra Torres, disse que não havia nenhuma orientação específica para as pessoas que receberam essas vacinas.

"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 em entrevista à CNN Brasil. "Não temos novidade, conduta nova a propor a quem tenha sido vacinado com esses lotes".

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".

Butantan descarta risco

Em nota enviada ao UOL, o Instituto Butantan disse que a medida da Anvisa não deve causar alarmismo, pois "foi o próprio Instituto que, por compromisso com a transparência e por extrema precaução, comunicou o fato à agência, após atestar a qualidade das doses recebidas. Isso garante que os imunizantes são seguros para a população."

O instituto diz ainda ter convicção de que a certificação deve ser concedida em breve pela Anvisa, pois diz ter enviado "há 15 dias toda a documentação necessária para a certificação do processo de produção em que foram feitas essas doses". O órgão se colocou a disposição para fornecer mais dados, se a Anvisa julgar necessário.

"Todos os lotes liberados pelo instituto estão de posse do Ministério da Saúde, como firmado em contrato", informou. "Reafirmamos, no entanto, que todas as doses que saíram da unidade fabril estão atestadas pelo rigoroso controle de qualidade do Butantan."

"Informa, ainda, que 6 milhões de doses da vacina do Butantan, que fazem parte de um lote de 12 milhões de imunizantes formuladas no site fabril da zona oeste de SP, aguardavam liberação da Anvisa. Na última quinta-feira (2), o órgão regulatório liberou e as mesmas foram expedidas na sexta-feira (3)."

E acrescenta: "Esse pedido de liberação ao órgão regulatório aconteceu por uma mudança em uma das etapas do processo de formulação da vacina, que pode ocorrer no decorrer da fabricação. A fábrica onde é feita a formulação e o envase da CoronaVac são todas certificadas pela Anvisa, desde o final de 2020."

O instituto finaliza a nota convidando a Anvisa para voltar a conhecer as instalações das fábricas da Sinovac, na China.

*Colaborou Carolina Marins, do UOL