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

Caso Marielle

Esse conteúdo é antigo

Moro pede à PGR abertura de inquérito sobre depoimento que cita Bolsonaro

O ministro da Justiça, Sergio Moro - Leco Viana/Estadão Conteúdo
O ministro da Justiça, Sergio Moro Imagem: Leco Viana/Estadão Conteúdo

Do UOL, em São Paulo

30/10/2019 11h58Atualizada em 30/10/2019 13h30

Resumo da notícia

  • Moro pede à PGR que apure depoimento em que Bolsonaro é citado
  • Porteiro disse em depoimento que alguém com a voz do presidente liberou a entrada de Élcio Queiroz
  • Para ministro da Justiça, houve "falso testemunho ou denunciação caluniosa"
  • Ele diz que outra possibilidade é o porteiro ter sido "utilizado inconscientemente por terceiros"

O ministro da Justiça, Sergio Moro, pediu hoje ao procurador-geral da República, Augusto Aras, a instauração de um inquérito para apurar o depoimento que cita o presidente Jair Bolsonaro (PSL) na investigação sobre a morte da vereadora carioca Marielle Franco (PSOL) e do motorista Anderson Gomes.

O ministro sugere que Bolsonaro seria "vítima" de falso testemunho ou denunciação caluniosa e fala em inconsistência na investigação.

Uma reportagem do Jornal Nacional, da TV Globo, revelou que o porteiro do condomínio no Rio de Janeiro onde morava Bolsonaro à época do crime disse em depoimento que alguém com a voz do então deputado autorizou a entrada de um dos suspeitos da morte da vereadora no dia dos assassinatos, em março de 2018. Segundo o próprio telejornal, porém, Bolsonaro estava na Câmara dos Deputados, em Brasília, no momento em que ocorreu a visita no Rio.

No ofício, Moro aponta que a investigação teve obstrução de Justiça, com "a introdução de testemunha que fraudulentamente apontou falsos suspeitos para o crime". O ministro também afirmou que o "presidente da República, então deputado federal, estava em Brasília, tendo registrado a sua presença em duas votações no Plenário da Câmara dos Deputados, com o que não poderia ter sido visitado na mesma data no Rio de Janeiro por referida pessoa".

Para Moro, Bolsonaro pode ter sido alvo de "falso testemunho ou denunciação caluniosa" e o porteiro pode ter sido "utilizado inconscientemente por terceiros" para envolver indevidamente o presidente no caso. Ontem, em live pelo Facebook, Bolsonaro já havia dito achar que o funcionário do condomínio teria assinado o depoimento sem ler.

"A inconsistência sugere possível equívoco na investigação conduzida no Rio de Janeiro ou eventual tentativa de envolvimento indevido do nome do presidente da República no crime em questão, o que pode configurar crimes de obstrução à Justiça, falso testemunho ou denunciação caluniosa, neste último caso tendo por vítima o presidente da República, o que determina a competência da Justiça Federal e, por conseguinte, da Polícia Federal e do Ministério Público Federal. É ainda possível que o depoente em questão tenha simplesmente se equivocado ou sido utilizado inconscientemente por terceiros para essas finalidades", escreveu Moro.

Casos que envolvam o presidente da República devem ser analisados pela PGR e, eventualmente, julgados pelo STF (Supremo Tribunal Federal) devido ao foro por prerrogativa de função, comumente chamado de "foro privilegiado".

Caso Marielle