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

Peritos exumam no Rio ossada para confirmar que é de vítima da ditadura

Vitor Abdala

Da Agência Brasil, no Rio

09/04/2013 15h45

Peritos da Polícia Federal exumaram nesta terça-feira (9), no Cemitério de Inhaúma, na zona norte do Rio, a ossada que seria do militante de esquerda Alex de Paula Xavier Pereira. Ele foi morto aos 22 anos por agentes do regime militar em 1972, em São Paulo.

Os peritos coletaram fragmentos do fêmur e do úmero, além de dentes, para submeter a exame de identificação.

O pedido de exumação foi feito pela família e pelo Ministério Público e autorizado pela Comissão Especial sobre Mortos e Desaparecidos Políticos da Secretaria de Direitos Humanos da Presidência da República, no ano ado.

Xavier foi enterrado sob nome falso no cemitério de Perus, em São Paulo. Em 1979, sua família encontrou uma ossada que seria do guerrilheiro.

Em 1980, os restos mortais foram trazidos para Inhaúma e, em 1998, foi feita a primeira exumação para tentar identificá-los, sem sucesso.

“Para a família é importante para sabermos se é realmente o Alex. Essa dúvida persiste ao longo de mais de 30 anos. Queremos pelo menos encerrar essa etapa de que conseguimos resgatar o Alex”, disse sua irmã, Iara Xavier, que no mesmo ano perdeu outro irmão, Iuri Xavier, e, no ano seguinte, o marido, Arnaldo Cardoso, todos vítimas da ditadura.

O registro oficial da morte de Alex Xavier relata que ele teria sido morto durante um tiroteio, mas investigação da comissão especial da Secretaria de Direitos Humanos revela que ele foi torturado e assassinado.

 

Segundo o procurador da República Sérgio Suiama, caso a identidade da ossada seja confirmada, será possível prosseguir com uma investigação criminal para processar os responsáveis pelo homicídio e pela ocultação de cadáver, já que ele foi sepultado com nome falso.

“São dois objetivos aqui. O primeiro é dar uma resposta à família que há 40 anos vem procurando [descobrir] onde estão os restos mortais de seu ente querido. E também dar uma resposta à sociedade em termos de justiça e responsabilização dos autores dos crimes de homicídio e ocultação de cadáver”, disse.

Os ossos coletados pelos peritos serão levados para o Instituto Nacional de Criminalística, onde o material genético será comparado com o de membros da família, inclusive o de Iuri Xavier, irmão de Alex, que também teve os restos mortais exumados hoje.

“Esse trabalho, por si só, é uma denúncia de que, enquanto não formos a fundo nesse problema, que é do Estado brasileiro, a ditadura ainda vai persistir. Saber e esclarecer o que aconteceu com Alex é limpar um pouco do que a ditadura deixou no Brasil”, disse o coordenador-geral da Comissão Especial sobre Mortos e Desaparecidos, Gilles Gomes.

Alex Xavier, que militava na Ação Libertadora Nacional (ALN), é um dos 361 mortos e desaparecidos durante a ditadura, reconhecidos pela comissão especial da Secretaria de Direitos Humanos.