;(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; // 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(); })();
Topo
Notícias

O que se sabe sobre cadáver de italiano mantido escondido por meses no RJ

Corpo do aposentado foi encontrado sobre a cama em um dos quartos da casa; agentes da Polícia Civil prenderam um dos irmãos. - Reprodução/Polícia Civil
Corpo do aposentado foi encontrado sobre a cama em um dos quartos da casa; agentes da Polícia Civil prenderam um dos irmãos. Imagem: Reprodução/Polícia Civil
do UOL

Colaboração para o UOL

22/05/2025 14h14

Corpo de aposentado de 88 anos foi encontrado em um quarto vedado na Ilha do Governador (RJ). A polícia investiga se os filhos ocultaram a morte do pai para continuar recebendo seus benefícios.

O que aconteceu

Dois irmãos foram presos em flagrante após manterem por meses o corpo do pai morto em casa, na Ilha do Governador, zona norte do Rio. O corpo encontrado é de Dario Antônio Rafaele D'Otavio, cidadão italiano, e estava em estágio avançado de esqueletização. A Polícia Civil investiga se os filhos ocultaram o cadáver para continuar sacando aposentadoria e outros rendimentos.

Corpo foi encontrado após denúncias de vizinhos sobre o desaparecimento do idoso. Moradores desconfiaram do sumiço de Dario, figura conhecida na vizinhança do bairro Cocotá. Após obter mandado judicial, policiais da 37ª DP localizaram os restos mortais em um cômodo no quarto andar da casa.

A perícia indicou que Dario estava morto há pelo menos seis meses, mas a causa ainda não foi determinada. O delegado Felipe Santoro afirmou que a análise do esqueleto é mais complexa e pode não permitir conclusões definitivas. "Não conseguimos identificar ainda se foi uma morte natural ou provocada pelos próprios filhos", disse ele à Record TV.

A filha dormia no mesmo quarto em que estava o cadáver. Segundo a polícia, Tânia Conceição Marchese D'Otavio dividia o cômodo com o corpo em decomposição. Havia comida recente ao lado da cama onde ela dormia. O irmão, Marcelo, ocupava outro quarto da casa. "Com a configuração dos cômodos, conseguimos identificar que a filha dormia ao lado do corpo", disse o delegado.

O ambiente foi preparado para ocultar a presença do corpo. Frestas da porta e das janelas foram lacradas com panos e plásticos. A polícia acredita que a estratégia tinha como objetivo impedir que o odor característico chamasse a atenção de vizinhos.

A principal linha de investigação é de motivação financeira. Segundo os agentes, eletrodomésticos novos foram encontrados na casa e os irmãos não exerciam atividade profissional. A polícia apura se houve uso indevido de cartões do pai para compras, saques e empréstimos.

A Polícia Civil entrou em contato com bancos e financeiras para rastrear as transações. Segundo os investigadores, os irmãos podem ter utilizado os rendimentos do idoso por vários meses. "Eles não exerciam atividade remunerada e encontramos equipamentos com aspecto de novos. Acreditamos que se mantinham com os rendimentos que o idoso tinha a receber", afirmou Santoro.

Os irmãos foram levados a uma clínica psiquiátrica sob escolta policial. A Polícia Civil informou que ambos apresentaram sinais de transtornos psicológicos. O Tribunal de Justiça do Rio de Janeiro informou que, até a publicação desta reportagem, os nomes solicitados ainda não constavam da pauta de audiência de custódia de hoje (22). A defesa dos irmãos não foi localizada.

Notícias