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

Juiz inocenta Messer por crime que doleiro confessou em delação de junho

Vinícius Konchinski

Colaboração para o UOL, em Curitiba

23/11/2020 04h03Atualizada em 24/11/2020 14h53

No último dia 11, a Justiça Federal do Rio de Janeiro absolveu o doleiro Dario Messer por crimes que ele mesmo confessou ter cometido, em delação premiada ada pelo UOL e divulgada em agosto pelo portal.

O doleiro foi julgado pelo juiz federal Carlos Adriano Miranda Bandeira, da 4ª Vara Federal do Rio. Messer havia sido denunciado por lavagem de dinheiro, evasão e associação criminosa, crimes investigados na operação Sexta-Feira 13, de 2009.

Em junho deste ano, o doleiro confessou à Lava Jato do Rio, em delação, que cometeu esses crimes. "Os fatos imputados na operação Sexta-Feira 13 em relação ao colaborador [Messer] são verdadeiros", informa o anexo 1 do acordo de colaboração firmado com o MPF-RJ (Ministério Público Federal do Rio de Janeiro) e a PF (Polícia Federal).

O UOL consultou cinco juristas sobre a absolvição de Messer. Todos disseram que o juiz Bandeira o julgou corretamente, já que levou em consideração o que estava no processo em sua vara.

"O juiz não tinha como decidir citando uma delação se ela não tinha sido incluída na ação penal", resumiu um advogado que não quis se identificar.

Os mesmos juristas veem falha do MPF-RJ ao não levar a confissão de Messer ao processo. "É obrigação da Procuradoria avisar o juiz que obteve uma informação nova e relevante."

O MPF-RJ, em nota, afirma que o juiz da 4ª vara se negou a incluir o processo relativo à Sexta-feira 13 no acordo de delação do doleiro, e por isso não o considerou no julgamento. "Por disposição legal, havendo recusado o acordo, o juiz não poderia considerar no julgamento da ação penal os fatos e provas trazidos pelo colaborador em acordo de colaboração premiada não homologada", afirmou a instituição. O UOL havia procurado o MPF-RJ antes da publicação da reportagem, mas não obteve resposta.

Processo era o único não coberto pela delação de Messer

Um ex-membro da cúpula da PGR (Procuradoria-Geral da República) afirmou ao UOL que uma omissão do MPF poderia levar a punição de procuradores, na corregedoria ou CNMP (Conselho Nacional do Ministério Público)

O juiz Bandeira informou o UOL de que não se pronunciará sobre sua sentença.

O processo da Sexta-Feira 13 era o único de Messer não contemplado no acordo de delação premiada fechada pelo doleiro. Isso quer dizer que, caso ele fosse condenado pelo caso, teria que cumprir toda a pena imposta a ele.

Advogado do doleiro afirma que juiz se alinhou à decisão anterior, do Paraná

Outros processos nos quais o doleiro é réu na Justiça Federal do Rio entraram no acordo com o MPF-RJ. Nesses casos, não importa quantas vezes Messer for condenado, sua pena acumulada será de no máximo 18 anos e nove meses de prisão, com progressão de regime prevista em lei.

O advogado de Messer, Átila Machado, disse que a decisão de Bandeira alinha-se à sentença anterior que o inocentou, do Paraná, que reconhece "que Dario Messer não praticou os crimes apontados na denúncia".

"Para além disso, essa era a única acusação que não estava contemplada no acordo de colaboração premiada. Portanto, o acordo permanece inalterado", complementou.