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

Ex-procurador da Lava Jato pede habeas corpus no STF para trancar investigação

O procurador Diogo Castor de Mattos na época em que integrava a Lava Jato - Rodrigo Félix Leal/Futura Press/Estadão Conteúdo
O procurador Diogo Castor de Mattos na época em que integrava a Lava Jato Imagem: Rodrigo Félix Leal/Futura Press/Estadão Conteúdo

21/02/2021 14h50

Diogo Castor, ex-procurador da Lava Jato, entregou no sábado, 20, pedido de habeas corpus à ministra Rosa Weber, do Supremo Tribunal Federal (STF), pelo trancamento do inquérito instaurado pelo presidente do Superior Tribunal de Justiça (STJ), Humberto Martins, para apurar suposta investigação ilegal de ministros da Corte por procuradores de Curitiba.

A defesa de Castor argumenta que o "STJ não tem competência para (…) averiguar suposta conduta de Procurador da República". O procedimento foi aberto após a CNN Brasil publicar reportagem que expôs conversa no Telegram entre procuradores da República que integram ou fizeram parte da força-tarefa da Lava Jato em Curitiba, base e origem da maior operação já deflagrada no País contra a corrupção.

O pedido de habeas corpus foi distribuído para a ministra Rosa Weber, relatora preventa para julgar os feitos decorrentes da Operação Spoofing - investigação sobre grupo de hackers que aram ilegalmente mensagens de procuradores da Lava Jato e também do então juiz Sérgio Moro.

De acordo com as mensagens divulgadas, Deltan Dallagnol teria sugerido o acionamento da Receita Federal para a realização de uma "análise patrimonial" dos ministros que integram as turmas criminais do STJ.

"A RF [Receita Federal] pode, com base na lista, fazer uma análise patrimonial, que tal? Basta estar em EPROC [processo judicial eletrônico] público. Combinamos com a RF", teria dito o ex-coordenador da Lava Jato. Ao que Castor supostamente respondeu: "Felix Fischer [ministro do STJ] eu duvido. Eh um cara serio".

Marcelo Knoepfelmacher e Felipe Locke Cavalcanti, que representam Castor no processo, rejeitam a autenticidade das mensagens. "O Paciente [Diogo Castor], também, já se manifestou diversas vezes que foi vítima de hackeamento, mas não reconhece as supostas mensagens que foram maldosamente divulgadas de modo distorcido ou editado, de modo a apresentar suposições de ilegalidades que nunca ocorreram e, por isso, mesmo, jamais foram confirmadas na análise das centenas de procedimentos do caso Lava Jato".

A defesa do ex-procurador da Lava Jato questiona que o procedimento instaurado pelo ministro Humberto Martins possa ter prosseguimento, porque é embasado apenas nas mensagens obtidas por meios ilícitos. Os advogados argumentam que a Constituição, o Código de Processo Penal e a Lei de Abuso de Autoridade apresentam dispositivos que vedam investigações que sejam motivadas unicamente por provas garantidas irregularmente.

Além disso, é citada decisão do ministro Gilmar Mendes de junho de 2019, em que foi declarada nulidade das provas reunidas por policiais através do o a conversas de WhatsApp sem autorização judicial, em caso de investigação de um homem acusado de estocar 73,3g de maconha e 5,1g de cocaína em depósito.

Os advogados também sustentam que o STJ não tem prerrogativa para investigar procuradores da República. "A Constituição Federal é clara ao determinar que a competência para averiguar, investigar ou processar um membro do Ministério Público da União que atua em primeira instância é dos Tribunais Regionais Federais", dizem ao citar os artigos 108 e 18.

Defende-se, portanto, que a investigação iniciada pelo STJ não só fere a competência da Corte em relação à apuração da conduta de procuradores da República, mas também pela inautenticidade das provas. "Qualquer utilização das referidas provas também será ilícita por derivação", argumentam os advogados de Diogo Castor. O documento é encerrado com o pedido do imediato trancamento do inquérito.