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

Famílias de vítimas do voo da Chape sobre mulher presa: 'Ponta do iceberg'

Fabienne Belle, viúva de Cesar Martins, e Mara Paiva, viúva de Mario Sergio, criticam Chapecoense - Nacho Doce/Reuters
Fabienne Belle, viúva de Cesar Martins, e Mara Paiva, viúva de Mario Sergio, criticam Chapecoense Imagem: Nacho Doce/Reuters

Patrick Mesquita e Pedro Ungheria

Do UOL, em São Paulo

26/09/2021 04h00

A prisão de Celia Castedo repercutiu entre os familiares das vítimas do voo da Chapecoense. Em entrevista ao UOL Esporte, Fabianne Belle e Mara Paiva, representantes da Associação dos Familiares do Voo da Chapecoense, falaram que a detenção da mulher responsável por o plano de voo em 2016 é apenas a 'ponta do iceberg'.

Argumentando seu ponto de vista, Fabienne, presidente da Associação, disse que responsabilizar Celia seria uma forma de 'maquiar o cumprimento da investigação' e 'encobrir negligências anteriores'.

"A Celia é a ponta do iceberg em uma cadeia enorme de negligência das autoridades bolivianas. Acusando ela fica muito simples para o órgão que regula aviação civil na Bolívia, pois tira deles o peso da responsabilidade de revisar outras questões", começou por dizer Fabienne.

Ainda sobre o assunto, Mara Paiva, viúva do comentarista Mário Sérgio Pontes de Paiva, concluiu que Celia está na posição de 'bode expiatório', afinal, estão tentando culpar alguém que ela considera somente 'uma peça do quebra-cabeça'.

"Ela pode virar um salvo-conduto para empresas envolvidas - vira um bode expiatório - A atenção vai voltar para ela, mas ela é uma peça desse quebra-cabeça. Com esta prisão é possível com que muitas questões sejam reveladas. Não queremos um final feliz, queremos um final menos trágico. Aquelas pessoas entraram naquela aeronave para morrer, só não sabiam, mas entraram para morrer", completou Mara.

Por fim, Fabienne, viúva de Luís Cesar, fisiologista da Chapecoense, afirmou temer que a detenção de Celia seja um 'susto final' para os familiares que seguem na briga por resoluções do acidente aéreo que vitimou 71 pessoas em 2016.

"Minha angústia vem desde o acidente, que sempre provocou diversos sustos no meio do caminho. Tenho medo que seja o susto final. A prisão dela não pode ser um símbolo de vitória. Ela sendo colocada em uma prisão e colocada como culpada, vai encobrir os culpados. Essa é a preocupação", finalizou.

Presa e extraditada:

A Polícia Federal confirmou hoje que Celia Castedo, responsável por o plano de voo da Chapecoense em 2016, será extraditada para a Bolívia. Ela permanecerá presa em Corumbá (MS) para aguardar resolução dos trâmites legais até que seja entregue às autoridades bolivianas.

O UOL Esporte confirmou ontem a prisão de Celia Castedo na cidade de Corumbá, em Mato Grosso do Sul. Ela morava no Brasil desde 2016, quando solicitou asilo alegando ameaças por conta de suas declarações sobre o acidente.

"A boliviana era especialista em segurança de voo e, na ocasião, teria deixado, fraudulentamente, de observar os requisitos procedimentais mínimos para a aprovação do plano de voo da aeronave, eis que no programa apresentado a autonomia de voo não era adequada para a viagem", dizia a nota.

De acordo com informações do 'Jornal Nacional', a ordem de prisão foi assinada por Gilmar Mendes, ministro do Supremo Tribunal Federal. Conforme a sentença, Celia é dada como 'procurada pela Justiça boliviana para responder pela suposta prática do crime de atentado contra a segurança no espaço aéreo'.