;(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
Logo Pagbenk Seu dinheiro rende mais
Topo

Carla Araújo

Guedes precisa de coragem e transparência para bancar ideias impopulares

O ministro da Economia, Paulo Guedes, durante a cerimônia "Modernização de Normas Regulamentadoras do Trabalho" (22/10/2020) - Dida Sampaio/Estadão Conteúdo
O ministro da Economia, Paulo Guedes, durante a cerimônia "Modernização de Normas Regulamentadoras do Trabalho" (22/10/2020) Imagem: Dida Sampaio/Estadão Conteúdo

Do UOL, em Brasília

20/11/2020 16h23

Receba os novos posts desta coluna no seu e-mail

Email inválido

Entre recuos e confissões, o ministro da Economia, Paulo Guedes, tem ampliado a desconfiança em relação a sua credibilidade de seguir os planos da agenda liberal e, mais ainda, de apresentar soluções fiscais que garantam o mínimo de transparência aos investidores e à população.

Ainda não se sabe o que vai ser (e se vai de fato existir) o programa social do presidente Jair Bolsonaro. Nem mesmo está claro a política de continuidade de atendimento aos chamados invisíveis que foram alcançados pelo auxílio emergencial.

Fontes do mercado afirmam que a "elite econômica acordou e percebeu que o Brasil está à deriva". Dizem que o ministro, apesar de ainda ser um ponto de confiança entre os investidores, hoje "vale menos" do que há um ano. Guedes parece não ter poder de impor e tirar do papel suas ideias. Algumas delas são impopulares.

Ontem (19), em conversa promovida pelo Bradesco, Guedes afirmou que pode considerar "até vender um pouco das reservas" para perseguir o objetivo de reduzir a dívida pública.

O ministro disse ainda que depois das eleições volta a falar sobre novos impostos. Citou inclusive que há planos para tributos por meio do Pix, novo sistema de transferências e pagamentos instantâneos. Bancos e clientes estão empolgados com o Pix e mexer com ele é arriscado.

Para o especialista em Direito Tributário da consultoria LacLaw, Paulo Henrique Rodrigues Pereira, a insegurança sobre a possibilidade de o governo manter estáveis as despesas e a resistência do presidente Bolsonaro em itir falar de novos impostos criam um ambiente de tensão entre os atores do governo.

"O governo vai ter coragem de itir e lutar por um aumento de arrecadação", afirma, salientando que é preciso enfrentar a necessidade das reformas e também tirar do papel de verdade as privatizações.

Pereira defende a continuidade do auxílio emergencial, mas diz que ela tem que vir acompanhada de uma solução fiscal. "A extensão do auxílio emergencial deve resultar em alta de imposto e governo precisa explicar isso para a sociedade", diz.

Receio de populismo

Fontes do mercado também salientam que tem crescido o receio de que Bolsonaro aposte de vez em uma agenda populista, com o objetivo de fortalecer seu caminho para a reeleição.

Além disso, ressaltam que a crise econômica vai além dos efeitos das políticas adotadas por conta do coronavírus. Analistas afirmam ainda ter dúvidas sobre a capacidade do governo agir e sobre qual política econômica vai prevalecer.

Alguns lembram a situação da ex-presidente Dilma Rousseff que como resposta para a crise econômica que vivia se apressou em fazer desonerações, retirou tributos e, com a queda na arrecadação, o país acabou perdendo capacidade fiscal.

Bolsonaro tem pavor de ser comparado com os governos petistas, ainda mais com Dilma. Guedes também não parece gostar de comparações, mas ao admitir que chega ao fim deste ano frustrado, deixa cada vez mais dúvidas se é possível apenas como Posto-Ipiranga abastecer o país com políticas concretas e que tragam soluções.