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

Mandetta: "Naqueles moldes, jamais instalaria programa Mais Médicos"

Do UOL, em São Paulo

19/12/2020 04h00

Criado no governo Dilma Rousseff (PT), o programa Mais Médicos é classificado como "errado em sua concepção" pelo ex-ministro da Saúde do governo Jair Bolsonaro (sem partido), Luiz Henrique Mandetta. "Você não sabia para quem estava entregando a sua mãe ou o seu filho", afirmou durante o podcast Baixo Clero #70.

Questionado se não realizaria o programa, respondeu: "Naqueles moldes, jamais".

"Por que a gente exige que os médicos façam 7.400 horas de capacitação no Brasil? Por que a gente faz um funil tão grande? Por que a gente certifica? Por que a gente tem conselho federal de medicina? Por que a sociedade questiona o erro médico. Quando você faz um programa como aquele, que no ápice do programa eram 15 mil médicos, quando você colocou pessoas sem certificação, um pilar você já machucou. Você não sabe pra quem você está entregando a sua mãe ou o seu filho", disse no episódio, apresentado por Carla Bigatto e com os colunistas do UOL Maria Carolina Trevisan e Kennedy Alencar.

Alencar rebateu a fala do ex-ministro dizendo que o programa Mais Médicos era bem avaliado, e Mandetta concordou.

"Entre você não ter nada e ter alguma coisa, a pessoa avalia [bem]. Agora, não é essa a saúde que a gente tem que fazer. A gente tem que fazer a saúde direito. Quando a gente faz, conforme a gente fez, com processo seletivo, com uma agência contratante, com carteira de trabalho assinada, piso, meta, com avaliação da comunidade, com ampla discussão, isso é um caminho. Uma medida provisória que coloca pessoas que não estão inscritas no Conselho, não tem diploma reconhecido. (...) Ele [Mais Médicos] é errado na concepção", disse Mandetta.

"Esse programa [Mais Médicos] tinha um problema na sua essência. Por que você não pode chegar e falar 'eu tenho um problema de limpeza urbana, então vamos trazer 10 mil haitianos, pagar 100 reais e um prato de comida pra cada um e vamos pagar 10 mil reais para o Haiti. Pessoas não são coisas, pessoas não podem ser mercadorias. As pessoas não tinham direito de ir e vir, nem de seguridade social dentro do Brasil, tanto que 2 mil e pouco de pessoas ficaram aqui", completou.

Podcasts especiais

O UOL promoveu nesta semana uma transmissão ao vivo com sete episódios extras de seus podcasts. Além de Mandetta, a apresentadora Astrid Fontenelle (no podcast UOL Vê TV), o músico Rincon Sapiência (no podcasts Conversa de Portão e Papo Preto), o publicitário Eco Moliterno (no podcast Mídia e Marketing), a psicanalista Vera Iaconelli (no podcast Sexoterapia), o jornalista e escritor José Trajano (no podcast Posse de Bola) e o jornalista e escritor Chico Felitti (no podcast Caoscast) foram convidados.

Baixo Clero está disponível no Spotify, na Apple Podcasts, no Google Podcasts, no Orelo, no Castbox, no Deezer e em outros distribuidores. Você também pode ouvir o programa no YouTube. Outros podcasts do UOL estão disponíveis em uol.com.br/podcasts.