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

Nobel de Química premia dupla de mulheres por método para edição do genoma

21.out.2015- Emmanuelle Charpentier e Jennifer Doudna são as ganhadoras do Prêmio Nobel de Química de 2020 - Eloy Alonso/Arquivo/Reuters
21.out.2015- Emmanuelle Charpentier e Jennifer Doudna são as ganhadoras do Prêmio Nobel de Química de 2020 Imagem: Eloy Alonso/Arquivo/Reuters

De Tilt, em São Paulo

07/10/2020 06h55Atualizada em 07/10/2020 09h27

A sa Emmanuelle Charpentier e a americana Jennifer A. Doudna são as vencedoras do Prêmio Nobel de Química de 2020 pelo desenvolvimento do Crispr, sistema de edição genética. As suas pesquisas sobre as "tesouras moleculares", capazes de modificar os genes humanos, foram consideradas revolucionárias.

O prêmio deseja recompensar "o desenvolvimento de um método de edição de genes que contribui para o desenvolvimento de novas terapias contra o câncer e pode tornar realidade o sonho de curar doenças hereditárias", destacou o júri em Estocolmo.

Essa é a primeira vez na história que duas mulheres conquistam o prêmio de maneira conjunta. Antes delas, apenas cinco mulheres haviam ganhado a honraria, sendo a última em 2018, com s H. Arnold.

Charpentier, 51, é diretora da Unidade Max Planck para as Ciências Patogênicas de Berlim, na Alemanha, enquanto Doudna, 56, é professora na Universidade da Califórnia e pesquisadora no Howard Hughes Medical Institute. As duas dividirão igualmente o prêmio de 10 milhões de coroas suecas (cerca de R$ 6,3 milhões).

Com a vitória das duas cientistas, o Prêmio Nobel já tem três laureadas mulheres neste ano. A primeira foi Andrea Ghez, que dividiu o prêmio de Física com dois cientistas por sua pesquisa em buracos negros.

A premiação deste ano acontece sob a sombra da pandemia de covid-19, que limitou a maior parte das festividades que geralmente cercam os prêmios e colocou os cientistas de todo o mundo em uma corrida para desenvolver uma vacina.

Na segunda-feira, o Nobel de Medicina premiou dois americanos e um britânico pela descoberta do vírus da hepatite C. Ontem, um britânico, um alemão e uma americana venceram o Nobel de Física por suas descobertas sobre os buracos negros.

Amanhã, será a vez do prêmio de Literatura. O Nobel da Paz será revelado na sexta-feira (9) em Oslo. E o prêmio de Economia, criado em 1968, encerrará a temporada na próxima segunda-feira (12).

História do prêmio

Os prêmios Nobel nasceram da vontade do sábio e industrial sueco Alfred Nobel (1833-1896), inventor da dinamite, de legar grande parte de sua fortuna aos que trabalham por "um mundo melhor". Ele é lembrado como o patrono das artes, das ciências e da paz que, antes de morrer, no limiar do século 20, transformou a nitroglicerina em ouro.

Em seu testamento, assinado em Paris em 1895, um ano antes de sua morte em San Remo (Itália), ele designou os diferentes comitês que atribuem os prêmios a cada ano: a Academia Sueca para o de Literatura, o Karolinska Institutet para o de Medicina, a Real Academia Sueca de Ciências para o de Física e o de Química, e um comitê de cinco membros especialmente eleitos pelo Parlamento norueguês para o da Paz.

* Com AFP, ANSA e RFI