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

Esse conteúdo é antigo

Bolsonaro ironiza crítica por 'orçamento secreto' e cita intervenção civil

Lucas Valença

Do UOL, em Brasília*

11/05/2021 10h48Atualizada em 11/05/2021 12h54

O presidente Jair Bolsonaro (sem partido) voltou a atacar o trabalho da imprensa e usou ironias ao comentar sobre o 'orçamento paralelo' no governo para contemplar a base parlamentar no Congresso Nacional.

Na conversa com apoiadores no Palácio do Alvorada hoje, Bolsonaro ainda falou em "intervenção civil" ao comentar que não teria motivos para uma intervenção militar no Brasil, uma vez que ele já está no poder. Ele não foi claro e nem explicou o que significaria uma "intervenção civil".

O presidente negou que exista o chamado orçamento paralelo, como mostrou o UOL em uma reportagem em abril sobre a compra de 6.240 máquinas pesadas, como retroescavadeiras, para contemplar o Centrão.

"Eu faço um churrasco aqui (no Palácio) e apanho. Agora inventaram que eu tenho um orçamento secreto agora. Eu tenho é um reservatório de leite condensado ali, três milhões de latas", ironizou.

A declaração de Bolsonaro vem na esteira da repercussão de uma reportagem do jornal O Estado de S. Paulo no último fim de semana sobre o assunto. O Ministério Público pediu ao TCU (Tribunal de Contas da União) que investigue se o orçamento paralelo pode configurar crime de responsabilidade.

Ao ironizar as críticas, ele ainda se referiu a um churrasco que promoveu no Dia das Mães e a uma antiga notícia sobre a compra de leite condensado por todos os órgãos do governo.

Segundo Bolsonaro, as críticas recebidas pelos principais veículos de comunicação do país são um sinal de que "não tem o que falarem". "Como que um orçamento foi aprovado e discutido por meses e agora apareceu R$ 3 bilhões?", questionou, chamando de "canalhas" quem publicou a reportagem.

Ele ainda fez críticas ao que considera uma repercussão tímida da imprensa em relação a manifestações a seu favor nos últimos fins de semana.

"Alguém viu uma fotografia do movimento de domingo? Agora, se três maconheiros fazem uma eata, vira capa da Globo", disse.

"Intervenção civil"

Questionado sobre uma possível intervenção militar, o presidente falou em "intervenção civil em outros lugares", sem ser específico. Ele rotineiramente tem feito referência a um possível decreto contra as medidas de isolamento social adotadas por estados e municípios para o combate à pandemia do novo coronavírus.

"Para que intervenção militar se já sou presidente? Sou capitão do exército", enfatizou.

O presidente mais uma vez conversou com apoiadores sobre a possibilidade de participar de manifestações que serão realizadas no próximo fim de semana, inclusive sugerindo que pode aparecer montado em um cavalo.

Bolsonaro também criticou a tramitação do projeto que autoriza o uso medicinal do canabidiol, componente presente na maconha.
"Hoje uma comissão na Câmara vota a liberação da maconha. Eu veto depois. Com tanto problema e os caras desperdiçando forças para votar uma porcaria de um projeto desses", afirmou.

*Colaborou Fábio Castanho

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.