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

Covid-19: superlotados, crematórios na Índia incineram corpos a céu aberto

Parentes coletam os restos mortais de vítimas do coronavírus após cremação em massa em Nova Déli, na Índia - Tauseef Mustafa/AFP
Parentes coletam os restos mortais de vítimas do coronavírus após cremação em massa em Nova Déli, na Índia Imagem: Tauseef Mustafa/AFP

Sébastien Farcis

Correspondente da RFI em Nova Déli

30/04/2021 08h01

A Índia continua lutando contra o aumento de casos de covid-19. O país bateu um novo recorde mundial, com 379 mil novos casos nas últimas 24 horas e 3.600 mortes. O número de vítimas dobrou em dois dias. Em Nova Déli, a cidade mais atingida do país, os crematórios têm dificuldades para atender todas as famílias.

Cerca de quinze ambulâncias esperam há horas no estacionamento do crematório de Sarai Kale Khan, no sul de Nova Déli. Dentro do veículo, corpos são colocados em sacos plásticos herméticos de cor branca. Vikas Kumar Gupta, um dos motoristas, está cansado e exibe grandes olheiras.

"Transportamos poucas pessoas doentes agora em nossas ambulâncias. Somos chamados apenas para trazer os defuntos para cá. Trabalhamos sem parar 24 horas por dia, mal tenho tempo de ver minha família", diz.

Mukesh Kashyap acaba de incinerar sua esposa, de 38 anos, que havia morrido poucas horas antes, vítima da Covid-19. "Não achamos oxigênio", conta. "Fomos aos maiores hospitais particulares da cidade e finalmente um pequeno hospital me fez pagar 55 euros por uma hora de oxigênio. Com o oxigênio, ela melhorava, mas depois, os sintomas voltaram. Tentamos achar um leito, mas ela não resistiu. Os médicos não puderam salvá-la", conta, arrasado.

Número de cremações aumentou cinco vezes

Os crematórios não têm dado conta da demanda. Em duas semanas, o número de cremações aumentou cinco vezes. A prefeitura da cidade está tentando aumentar a capacidade, construindo incineradores na grama, do lado de fora dos estabelecimentos. "Temos quarenta funcionários que trabalham comigo. Faz 20 dias que começamos, trabalhamos sem parar", afirma.

No total, 50 incineradores de cimentos foram instalados debaixo das árvores, a céu aberto. "90% das pessoas são vítimas da covid-19", diz Sunil Kumar, responsável pelo local. "É complicado gerenciar esse aumento. Temos problemas para gerenciar a alta e dificuldade para achar tanta madeira. Também falta material por conta do lockdown. Apesar disso, conseguimos gerenciar tudo por conta da energia dos nossos funcionários."

Em 15 dias, mais de 3.700 pessoas morreram vítimas da doença na capital.