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

Brasil registra um número de mortes 22% maior do que o esperado para 2020

Para fazer o estudo, foram consideradas todas as mortes por causas naturais informadas no Portal de Transparência do Registro Civil - Carlos Madeiro/UOL
Para fazer o estudo, foram consideradas todas as mortes por causas naturais informadas no Portal de Transparência do Registro Civil Imagem: Carlos Madeiro/UOL

Colaboração para o UOL, de Jundiaí (SP)

29/03/2021 15h15

O número de óbitos por causas naturais a mais do que o esperado em 2020 foi de 275.587, o número é 22% superior ao que era estimado para o período. No total, foram registrados em cartório 1.231.020 óbitos.

O estudo foi realizado pela organização global de Saúde Vital Strategies, e divulgado pelo Conselho Nacional de Secretários de Saúde (Conass).Os maiores percentuais de excesso de mortalidade foram registrados na população com até 59 anos. O número de pessoas mortas entre janeiro e dezembro nesta faixa etária foi 32% maior do que era projetado. Ao todo, foram contabilizados 92.867 óbitos a mais do que o esperado para o período.

Entre a população acima de 60 anos, o percentual de excesso de mortes foi de 20%, o que representa 182.720 óbitos a mais do que era esperado.

A análise do também indica que o excesso de óbitos foi maior entre a população masculina. Quando se consideram todas as faixas etárias, os dados mostram que eram esperados no ano ado 639.200 óbitos por causas naturais entre os homens.

Para fazer o , são consideradas todas as mortes por causas naturais (excluídas, portanto, as causas violentas) informadas no Portal de Transparência do Registro Civil. Estes números são comparados com a projeção preparada a partir da série histórica de óbitos do Sistema de Informação de Mortalidade (SIM), entre 2015 e 2019.

Importância do estudo

O acompanhamento do indicador de excesso de óbitos é recomendado pela Organização Mundial da Saúde para avaliar o impacto provocado pela Covid-19 nos países. Os dados, quando associados à análise dos números de morte pela doença e o número de infecções, auxiliam a ter um quadro mais preciso sobre as consequências da epidemia no País.

O Coordenador da Câmara Técnica de Epidemiologia do Conass, Nereu Henrique Mansano, explica que as informações contidas no SIM, especialmente quanto às causas de morte, são mais precisas, devido ao processo de melhoria da qualidade dos dados, o que inclui a codificação e investigação quando necessário. O processo, embora mais demorado, permite a obtenção de dados mais confiáveis.

Para o ano de 2020, foram usados dados da Central de Informação do Registro Civil (CRC), disponível no Portal da Transparência da Associação Nacional dos Registradores de Pessoas Naturais (ARPEN Brasil ).

Para padronizar as fontes de dados, foi elaborado um fator de correção a partir de uma análise comparativa entre o SIM e CRC em 2019, considerando o SIM como padrão ouro, referência em qualidade da informação.