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

The Last of Us: fungo da série de zumbis existe no Brasil

Série "The Last of Us" tem ator Pedro Pascal no elenco - Shane Harvey/HBO
Série 'The Last of Us' tem ator Pedro Pascal no elenco Imagem: Shane Harvey/HBO

De Tilt, em São Paulo

19/01/2023 04h00Atualizada em 31/01/2023 23h43

E se um dia a Terra sofresse um surto de fungos que poderia gerar a extinção da humanidade? Esse foi o debate do começo de "The Last of Us", série que debate uma situação de pandemia no mundo. A causa? Um fungo que existe no Brasil.

O Ophiocordyceps é uma ameaça desconfortável para animais como formigas, besouros e vespas, mas não para humanos. Trata-se de um gênero (grupo de espécies) de fungo capaz de controlar as atitudes de suas pequenas vítimas, deformando-as no processo. Exatamente como os zumbis fazem na ficção do game que inspirou a série.

A concentração deles por aqui se deve em parte à diversidade dos nossos biomas, mas o principal talvez seja simplesmente mérito de um mineiro de Juiz de Fora.

Parasita se desenvolve em insetos - Arquivo pessoal/ João Araújo - Arquivo pessoal/ João Araújo
Parasita se desenvolve em insetos
Imagem: Arquivo pessoal/ João Araújo

Existem cerca de 27 'fungos-zumbis' catalogados. E eu descobri 18 deles. Meu trabalho focou mais na Amazônia brasileira, por isso os registros no país são maiores João Araújo, pesquisador, Araújo estuda fungos desde 2006, fez mestrado sobre os Ophiocordyceps na Universidade Federal do Amazonas e se tornou doutor na Universidade da Pensilvânia (EUA), em entrevista ao Tilt em 2020.

A maioria deles está na Amazônia, mas mesmo quem vive longe da nossa principal floresta, pode encontrar alguns desses seres. "Eu e colegas já os coletamos em RS, SC, MG, RJ, CE, AM, AC, RR, RO... mas eles devem estar nos outros estados também", diz João. "As estimativas apontam que existem cerca de 600 espécies ainda não descobertas. Isso no mundo todo, mas principalmente em regiões tropicais", completa.

Seu ciclo da vida é extremamente inteligente, e zumbificar formigas é a maneira que ele encontrou para continuar existindo.

Um belo exemplo é o Ophiocordyceps unilateralis, espécie que afeta diretamente as formigas. Seu trabalho começa com um fungo maduro espalhando esporos pelo chão da floresta. Essa partícula germina, e ai de quem encostar nela. Os esporos penetram o exoesqueleto dos animais, e am a crescer dentro delas.

Duas semanas depois o inseto já está totalmente infectado, e a a ser controlado pelo fungo.

A partir daí as coisas ganham um tom mórbido para a formiga. O parasita faz com que ela abandone sua colônia, suba no alto de uma planta e encontre os locais ideais para que o fungo cresça. É a última coisa que o inseto fará. O fungo a faz tirar sua própria vida ao fincar suas presas na planta que escalou.

A morte chega em poucas horas, para o inseto, claro —para o parasita, ela só começou. O fungo cresce dentro do corpo já sem vida, estoura ele de dentro para fora e cresce uma haste que lançará novos esporos - dessa vez, próximos à colônia de seu antigo hospedeiro, pronto para infectar ex-companheiras de sua vítima.

Formiga vítima do parasita Ophiocordyceps unilateralis - Arquivo pessoal/ João Araújo - Arquivo pessoal/ João Araújo
Formiga vítima do parasita
Imagem: Arquivo pessoal/ João Araújo

Diferentemente dos zumbis da série, o Ophiocordyceps não atinge o cérebro. Pelo menos não diretamente. Um estudo feito em 2017 pela Universidade Washington mostrou como o parasita age: nos músculos de suas vítimas. O fungo usa propriedades químicas para controlar os bichinhos.