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

Alunos da USP protestam em visita de Queiroga: '300 mil é genocídio'

Do UOL, em São Paulo

25/03/2021 12h15Atualizada em 25/03/2021 14h44

O ministro da Saúde, Marcelo Queiroga, foi recebido com protestos em seu primeiro dia de compromissos oficiais no comando da pasta. Na manhã de hoje, o ministro visitou a Faculdade de Medicina da USP (Universidade de São Paulo) e ouviu críticas de estudantes em relação às ações do governo federal no combate à covid-19.

Vídeos publicados nas redes sociais mostram um grupo com cartazes lembrando os mais de 300 mil mortos desde o início da pandemia e entoando gritos de "Bolsonaro genocida" e "mais vacina e menos cloroquina".

Também foram exibidos cartazes pedindo pelo auxílio emergencial à população e por um lockdown no país.

Em manifesto divulgado pelo Centro Acadêmico Oswaldo Cruz, estudantes de medicina da USP demonstram preocupações com a atuação do governo federal na crise do novo coronavírus e questionam qual será a postura do ministro Queiroga.

"O governo federal apresenta até o presente momento prioridades equivocadas e por vezes perversas, definitivo em absoluta ineficácia de gestão da crise, com consequências catastróficas para uma população", diz um trecho do manifesto.

Os estudantes relembram uma declaração de Queiroga, que afirmou que a Saúde deve apenas executar as políticas do governo. "O que poderia significar uma saída para o povo brasileiro, na verdade, reveste-se de continuidade da política implementada até agora, com isenção de qualquer responsabilidade por parte da liderança do Ministério da Saúde".

O Centro Acadêmico ainda demonstra interesse em conhecer o novo planejamento estratégico do ministro Queiroga, ressaltando que "até aqui, os resultados obtidos pelas gestões anteriores foram repetidamente falhos".

"Em uníssono aos professores desta faculdade, ressaltamos a necessidade de adoção de medidas radicais de bloqueio nas regiões mais acometidas, de desenvolvimento de políticas emergenciais intersetoriais para garantir a adesão das pessoas às políticas de isolamento físico, aceleração diminuída do programa de vacinação e medidas de combate às notícias falsas, desinformação e más práticas de prevenção e tratamento".

Primeiro dia de agenda oficial

No primeiro dia de trabalhos oficiais à frente do Ministério da Saúde, Queiroga cumpre agenda em São Paulo e no Rio de Janeiro. pela manhã, visitou o Incor (Instituto do Coração), o Hospital das Clínicas e a Faculdade de Medicina da USP.

No Incor, Queiroga voltou a fazer declarações sobre a importância da ciência e do SUS (Sistema Único de Saúde) ao lado do ministro da Educação, Milton Ribeiro, e do secretário de Saúde do Estado de São Paulo, Jean Gorinchteyn.

A visita pode ser entendida como um gesto no sentido de ouvir a parte médica sobre como atuar no Ministério para o enfrentamento da pandemia.

"É necessário a união de todos com base na ciência, com base no humanismo para que consigamos superar essas dificuldades. O compromisso do estado brasileiro com saúde e educação é constitucional e é através da educação e da saúde que vamos fortalecer o nosso SUS para levar políticas públicas que tenham concretude para ajudar a nossa sociedade", disse.