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

Operação Lava Jato

Soltura de Temer mostra que ordem de prisão foi "abusiva", diz defesa

O ex-presidente Michel Temer nas instalações da Polícia Federal no Rio de Janeiro - Ricardo Moraes/Reuters
O ex-presidente Michel Temer nas instalações da Polícia Federal no Rio de Janeiro Imagem: Ricardo Moraes/Reuters

Leonardo Martins

Do UOL, em São Paulo

25/03/2019 18h07

Após Michel Temer (MDB) ter sua prisão preventiva revogada pelo desembargador do TRF-2 (Tribunal Regional Federal da 2ª Região) Antonio Ivan Athié, a defesa do ex-presidente parabenizou a decisão de soltura e afirmou que ela mostra o "quão abusivo foi o decreto de prisão preventiva expedido".

Além de Temer, foi determinada a libertação do ex-ministro Moreira Franco e de outros seis investigados que estavam presos por decisão do juiz federal Marcelo Bretas, responsável pelas decisões de primeira instância da Operação Lava Jato no Rio de Janeiro. Outros dois presos foram liberados no fim de semana.

Para reforçar o "abuso" por parte de Marcelo Bretas, a defesa de Temer utiliza um trecho da decisão do desembargador que diz que os indícios de crimes não são suficientes para determinar uma preventiva.

Ao que se tem, até o momento, são suposições de fatos antigos, apoiadas em afirmações do órgão acusatório. Todavia, mesmo que se ita existirem indícios que podem incriminar os envolvidos, não servem para justificar prisão preventiva
desembargador Antonio Ivan Athié

O comunicado é assinado por Eduardo Pizarro Carnelós, criminalista que integra a defesa do ex-presidente desde setembro de 2017.

A defesa diz que Temer e seus advogados "nunca deixaram de confiar no Poder Judiciário brasileiro". Mas, ainda segundo a nota, esse fato "não se confunde com a ação isolada de alguns de seus membros [do Judiciário], os quais, infelizmente, usam a toga para agirem como justiceiros e, a pretexto de combaterem a corrupção, violam as mais comezinhas noções de Direito".

A resposta maiúscula dada pelo Desembargador Athié é um bálsamo para a cidadania
Eduardo Pizarro Carnelós, advogado de Temer

Desembargador elogia Bretas, mas critica prisão

Em sua decisão, Antonio Athié elogia Marcelo Bretas, porém afirma que ordens de prisão devem respeitar os direitos dos investigados garantidos pela Constituição.

"Inicialmente, tenho de reconhecer a absoluta lisura do prolator da decisão impugnada, notável juiz, seguro, competente, corretíssimo, e refutar eventuais alegações que procurem tisnar seu irrepreensível proceder", escreve Athié na decisão.

Athié também ressaltou não ser contra a Operação lava Jato. "Ao contrário, também quero ver nosso país livre da corrução que o assola. Todavia, sem observância das garantias constitucionais, asseguradas a todos, inclusive aos que renegam aos outros, com violação de regras não há legitimidade no combate a essa praga", afirma.

Desembargador manda soltar Michel Temer

Band News

Operação Lava Jato