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

Exportação de petróleo do Brasil mais que dobra em julho; minério tem maior nível do ano

A Petrobras conseguiu elevar em 65,4% os embarques do combustível fóssil durante o segundo trimestre do ano -
A Petrobras conseguiu elevar em 65,4% os embarques do combustível fóssil durante o segundo trimestre do ano

Da Reuters, em São Paulo

03/08/2020 18h55

As exportações brasileiras de petróleo mais que dobraram em julho para 8,19 milhões de toneladas, ante 3,76 milhões de toneladas embarcadas um ano antes, conforme dados do governo federal divulgados nesta segunda-feira, na esteira do câmbio e demanda firme na China.

O volume foi o segundo maior de 2020, atrás apenas das 8,4 milhões de toneladas embarcadas em maio, e também se aproxima do recorde mensal registrado em dezembro de 2019, quando o país comercializou 8,5 milhões de toneladas da commodity, de acordo com a Secex (Secretaria de Comércio Exterior).

O Brasil já havia ampliado as exportações de petróleo para a Ásia no primeiro semestre, roubando uma fatia de mercado de rivais que promoveram cortes recordes nos embarques.

Neste contexto, a Petrobras conseguiu elevar em 65,4% os embarques do combustível fóssil durante o segundo trimestre do ano, em relação ao mesmo período de 2019, conforme reporte divulgado em julho.

As receitas registradas com as exportações de petróleo em julho, no entanto, subiram 14,7%, para 1,78 bilhão de dólares, em intensidade menor que o volume, limitadas pelos preços do óleo no mercado internacional.

O preço da commodity baixou 47,2% em julho, para 218 dólares por tonelada, segundo a Secex, ante 413,5 dólares por tonelada um ano antes.

Minério

Os embarques de minério de ferro ficaram praticamente estáveis em julho, somando 34 milhões de toneladas, ante 34,2 milhões de toneladas exportadas em julho do ano ado, com demanda firme e preços em alta na China.

Ainda assim, o volume exportado atingiu o maior patamar do ano, superando as 30 milhões de toneladas embarcadas em junho.

Os embarques de minério de ferro do Brasil, principalmente da Vale, segunda maior produtora global da commodity, têm sido monitorados de perto pelo mercado desde o ano ado, quando o rompimento de uma barragem da companhia em Brumadinho (MG) deixou centenas de mortos e impactou as operações da empresa em geral.

Neste ano, a oferta do Brasil continuou no radar do mercado de minério de ferro devido à preocupação com o avanço do coronavírus no país, que só perde para os Estados Unidos em casos e mortes pela doença.

Para o segundo semestre, a Vale projeta uma recuperação de sua produção.