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

EUA devem liderar retração do PIB global em 2020

 Andriy Onufriyenko/Getty Images
Imagem: Andriy Onufriyenko/Getty Images

Alexandre Tanzi e Wei Lu

17/04/2020 10h41

Poucos países foram poupados das consequências econômicas devastadoras do surto de coronavírus. Mas nenhuma economia terá um impacto maior no crescimento global do que os Estados Unidos.

O país com mais casos confirmados de covid-19 deverá responder por 31% da retração deste ano no PIB global, segundo cálculos da Bloomberg com dados do Fundo Monetário Internacional. O número é mais do que o dobro da participação do país na produção global. O FMI prevê que a economia global irá encolher 3% neste ano, a maior queda em quase um século, e se expandir quase 6% em 2021.

"Embora sejam essenciais para conter o vírus, os confinamentos e restrições à mobilidade têm causado um impacto considerável na atividade econômica. Os efeitos adversos da confiança provavelmente pesarão ainda mais nas perspectivas econômicas", disse o FMI no relatório "World Economic Outlook" divulgado nesta semana.

A Alemanha e o Japão responderão pela segunda e terceira maiores proporções da queda, com mais de 7% cada. Na América Latina, Brasil e México terão um peso de 4,5% e 4,3% na retração global, respectivamente.

A economia dos EUA foi devastada pela pandemia. Mais de 667 mil casos de covid-19 foram confirmados, enquanto mais de 32,8 mil pessoas morreram. A Itália vem em segundo lugar, com cerca de 169 mil casos e 22 mil mortes.

No ano de 2020, o FMI prevê que o PIB vai encolher 5,9% nos EUA, 9,1% na Itália, 7% na Alemanha e 5,2% no Japão. Esses resultados sombrios serão compensados pelo crescimento na China e na Índia, duas das maiores economias.

Para 2021, o Fundo espera forte recuperação, com expansão de 5,8% da economia global, a mais forte já registrada pelo FMI desde 1980. A China deve liderar o ritmo, contribuindo com uma participação de 29,2%, e os EUA em segundo lugar, com 12,8%. Índia, Indonésia e Alemanha completam a lista dos cinco primeiros.

O FMI estima que a China crescerá 9,2% no próximo ano, contra 1,2% em 2020. A economia dos EUA teria expansão de 4,7%, a mais forte desde 1999.

Alguns economistas alertam que as perspectivas do Fundo são muito otimistas.

"As projeções para 2021 são otimistas demais, uma vez que piso da recessão econômica não foi atingido em muitas grandes economias", disse Ehtisham Ahmad, ex-consultor sênior do FMI.

Thomas Torgerson, corresponsável de classificação soberana da DBRS Morningstar, demonstrou preocupação semelhante: "A pandemia de coronavírus e a resposta associada geraram enorme incerteza para previsões econômicas e análises de risco de crédito."

©2020 Bloomberg L.P.