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

Desembargador manda soltar ex-governador Arruda e ex-assessor de Temer

José Roberto Arruda durante campanha de 2014, antes de ter a candidatura impugnada - Pedro Ladeira - 27.ago.2014/Folhapress
José Roberto Arruda durante campanha de 2014, antes de ter a candidatura impugnada Imagem: Pedro Ladeira - 27.ago.2014/Folhapress

Do UOL, em Brasília

31/05/2017 20h02

O desembargador Néviton Guedes, do Tribunal Regional Federal da 1ª Região, determinou na noite desta quarta (31) a soltura de José Roberto Arruda (PR), ex-governador do Distrito Federal, e Tadeu Filippelli, ex-assessor do presidente Michel Temer (PMDB). Ambos haviam sido presos na semana ada sob a acusação de terem participado de um esquema que superfaturou as obras do estádio Mané Garrincha, na capital federal.

Na mesma decisão, também foram libertados Jorge Luiz Salomão, Sérgio Lúcio Silva de Andrade e Afrânio Roberto de Souza Filho

Mais cedo, o desembargador Guedes havia decidido pela soltura do ex-governador do Distrito Federal Agnelo Queiroz (PT). Queiroz, Arruda e Filippelli foram detidos no dia 23, quando foram alvo de mandado de prisão temporária (válido por cinco dias). No dia 26, a prisão temporária foi renovada pelo juiz Vallisney de Souza Oliveira.

Segundo a investigação do esquema de corrupção, os ex-governadores e Filippelli, entre outros, teriam ligação com um esquema que superfaturou o valor das obras do estádio Mané Garrincha, usado na Copa do Mundo de 2014 e nos Jogos Olímpicos de 2016, em mais de R$ 900 milhões.

A operação usou como base delações premiadas da Andrade Gutierrez, responsável pelas obras. Segundo os delatores da empreiteira, os pagamentos foram viabilizados por meio de doações de campanha (formais e por meio de caixa 2), além da simulação de contratos de prestação de serviços.

“Pessoas ligadas aos agentes políticos eram os responsáveis por fazer as cobranças junto às empreiteiras e também por operacionalizar os rees dos valores”, segundo o MPF.

De acordo com os investigadores, os relatos apontam dezenas de pagamentos de propina que, em valores preliminares, somam mais de R$ 15 milhões.

Entenda o esquema

Segundo a procuradoria, a operação busca “provas de que foi constituído um cartel entre várias empreiteiras para burlar e fraudar o caráter competitivo da licitação” para a reforma do estádio.

O objetivo era “assegurar, de forma antecipada, que os serviços e as obras fossem realizados por consórcio constituído pelas empresas Andrade Guitierrez e Via Engenharia”. O MPF requereu o bloqueio dos bens ativos, contas e investimentos da Via Engenharia até o limite de R$ 450 milhões.

A associação, "ao que tudo indica criminosa entre Andrade Gutierrez e Via Engenharia", foi feita por "ingerência e liderança do então governador José Roberto Arruda", aponta a procuradoria. "A construção dessa obra de grande vulto se deu durante o mandato de Agnelo Queiroz, com indícios de graves irregularidades, que vão desde a ausência de estudos de viabilidade econômica, combinação entre as maiores construtoras do país no fatiamento dos estádios."