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

Como tirar o Coaf de Moro se transformou em vitória para Bolsonaro

Hanrrikson de Andrade

Do UOL, em Brasília

29/05/2019 04h01

Antes defendida a plenos pulmões pelo governo, a permanência do Coaf (Conselho de Controle de Atividades Financeiras) com o ministro Sergio Moro (Justiça e Segurança Pública) quase acabou com a estrutura de governo planejada pelo presidente Jair Bolsonaro (PSL).

Correndo contra o relógio, já que a validade da organização dos ministérios expiraria na segunda-feira (3), Bolsonaro se viu obrigado a arregaçar as mangas. Com uma carta de socorro enviada ao Congresso e uma manobra do líder do governo na casa, o Senado carimbou a retirada do órgão de controle das mãos do ministro oriundo da Lava Jato.

O texto-base da medida provisória 870 foi aprovado por 70 votos a quatro, e o destaque que devolveria o Coaf a Moro foi rejeitado em votação simbólica.

A vitória, porém, teve sabor amargo.

Bolsonaro, que trava uma relação conflituosa com o Congresso desde que tomou posse, acabou acumulando mais um desgaste com parlamentares, dessa vez com uma matéria tida como simples --a organização de seu próprio governo.

Apesar de ironia de senadores, carta do governo funciona e MP 870 é aprovada

UOL Notícias

Na Câmara

O deslocamento do Coaf ao Ministério da Justiça havia sido acertada entre Moro e Bolsonaro desde que o ex-juiz da 13ª Vara Federal Criminal (Curitiba) e protagonista das ações penais da Lava Jato aceitou o cargo de ministro.

Na visão dele, o órgão de controle financeiro é uma ferramenta fundamental no combate à corrupção. O presidente acolheu o pedido e o fez constar na MP 870, editada logo depois da posse.

Durante a tramitação da matéria em comissão parlamentar mista, que reúne deputados e senadores, vários congressistas fizeram críticas à transferência do Coaf. A resistência se estendeu ao plenário da Câmara, a primeira a discutir e votar o assunto.

Na semana ada, por 228 votos a 210, a Casa aprovou o texto-base da MP com cerca de 95% daquilo que interessava ao governo, mas rejeitou manter o conselho nas mãos de Moro. Até então, Bolsonaro e aliados estavam empenhados na tentativa de convencer o Parlamento.

Para isso, incentivaram manifestações nas redes sociais e nas ruas.

No último domingo (26), diversos atos foram realizados pelo país em favor da agenda do presidente, e a manutenção do Coaf com Moro era uma das principais bandeiras. Muitos cartazes e faixas atacavam o Congresso, sobretudo o presidente da Câmara, Rodrigo Maia (DEM-RJ).

Bolsonaro foi aconselhado a recuar e buscar melhor diálogo com os presidentes das Casas Legislativas, assim como foi alertado para o risco de a MP 870 caducar e ar a valer a estrutura vigente no último dia do governo Temer (MDB): 29 ministérios, e não com os 22 atuais.

Esse prazo poderia expirar caso o Senado, a Casa revisora, decidisse alterar o texto enviado pela Câmara e devolvesse o Coaf a Moro. A mudança resultaria no retorno da MP à Câmara dos Deputados, que dificilmente teria tempo hábil para finalizar a tramitação até o fim da semana.

No Senado

Por acreditar que era melhor perder a batalha pelo Coaf do que a guerra da reforma ministerial, Bolsonaro fez um apelo aos senadores: deixem tudo como está.

No entanto, ele teve dificuldade para convencer até os seus próprios correligionários, como o líder do PSL na Casa, Major Olímpio (SP).

Com a corda no pescoço, Bolsonaro também decidiu mandar uma carta ao Senado explicitando o apelo e alertando para a possibilidade de "retrocesso" com "prejuízos a toda a nação brasileira" caso a medida provisória caducasse.

O documento foi lido por Alcolumbre na reunião de líderes, na tarde de hoje, mas não sensibilizou membros das bancadas do Podemos, do PSD, do Pros, além de parlamentares de oposição e os que são considerados independentes. O esforço, por outro lado, permitiu que a liderança do governo compusesse um acordo com colegas da oposição, inclusive o PT - inimigo de Bolsonaro

Manobra regimental

Concluída a apreciação do texto-base no Senado, os congressistas começaram o debate sobre o Coaf a partir de quatro requerimentos de destaque.

A estratégia do líder do governo, Fernando Bezerra Coelho (MDB-PE), foi pedir votação nominal já na primeira votação, a do texto-base. Segundo o regimento interno, outra votação nominal só poderia ser solicitada após uma hora. Assim, para que o destino do Coaf fosse votado com cada senador se identificando, os oponentes teriam que segurar a discussão por 60 minutos.

A tática deu certo e foi abraçada por Alcolumbre, que ignorou os protestos dos colegas e acelerou a discussão. Os votos não foram registrados no eletrônico individualmente, e sim por aclamação.

Ainda assim, parlamentares contrários ao retorno do Coaf à Economia fizeram questão de declarar seus votos, e Alcolumbre determinou que eles fossem observados na ata da sessão.

A disputa pela forma de votação acabou sendo decisiva para o resultado da MP. Os entusiastas do Coaf com Moro entendiam que, como há forte pressão das ruas, os colegas se sentiriam constrangidos a votar pela devolução do órgão ao Ministério da Economia.

Esse sentimento foi compartilhado por vários parlamentares durante o dia, que condicionaram o posicionamento pró-governo à votação simbólica.

Presidente da CCJ (Comissão de Constituição e Justiça), a senadora Simone Tebet (MDB-MS) disse, por exemplo, que "a história não perdoa" e "não conta os detalhes", argumentando que a carta de Bolsonaro não seria lembrada e a culpa cairia sobre o Parlamento.

"Como a gente justifica isso para a rua?", questionou a emedebista, citando a pressão popular.

O governo Bolsonaro teve início em 1º de janeiro de 2019, com a posse do presidente Jair Bolsonaro (então no PSL) e de seu vice-presidente, o general Hamilton Mourão (PRTB). Ao longo de seu mandato, Bolsonaro saiu do PSL e ficou sem partido até filiar ao PL para disputar a eleição de 2022, quando foi derrotado em sua tentativa de reeleição.