;(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 carne bovina do Brasil salta em janeiro com retomada efetiva da China

Exportação de carne bovina registrou alta no Brasil - Wenderson Araújo/CNA/Divulgação
Exportação de carne bovina registrou alta no Brasil Imagem: Wenderson Araújo/CNA/Divulgação

01/02/2022 17h41

SÃO PAULO (Reuters) - As exportações de carne bovina do Brasil avançaram 31% em janeiro no comparativo anual, com o país efetivamente conseguindo elevar os embarques para seu principal comprador, a China, após um embargo de mais de 90 dias encerrado em dezembro, conforme dados do governo federal divulgados nesta terça-feira.

De acordo com a Secretaria de Comércio Exterior (Secex), foram exportadas 140,5 mil toneladas da proteína in natura no mês ado.

Em dezembro, período de demanda sazonalmente mais aquecida para o setor de carnes, o volume de exportação da proteína bovina do Brasil atingiu 150,9 mil toneladas. Deste total, somente 6,79 mil toneladas foram para o mercado chinês, contra 88,635 mil um ano antes, segundo o Ministério da Agricultura.

A suspensão temporária de importações da China foi motivada por dois casos atípicos da doença "Encefalopatia Espongiforme Bovina (EEB), conhecida como "vaca louca". O retorno ocorreu meses após a confirmação científica da OIE de que os casos não traziam danos ao rebanho, por serem de geração expontânea e não contaminação.

"A China ficou sem importar do Brasil desde o dia 4 de setembro. Em dezembro, disse que ia voltar a importar e não comprou quase nada, então, o responsável por esse movimento de janeiro foi a efetiva retomada da China", disse o diretor da Scot Consultoria, Alcides Torres.

Além de um "repique" de compras, ele afirmou que os chineses também aceleraram parte dos negócios para compor estoques em função do feriado do Ano Novo Lunar, período em que os importadores ficam fora do mercado.

"Se espera que os chineses voltem às compras somente depois do dia 8 de fevereiro, com possibilidade de negócios ainda lentos depois disso devido a alguns que retornam mais tarde", acrescentou o especialista.

Torres ressaltou, no entanto, que mesmo com esse intervalo nas importações chinesas previsto para os próximos dias, os preços do chamado "boi China", com padrões de embarque para aquele mercado, seguem firmes e de 10 a 15 reais acima do valor convencional da arroba.

Ainda de acordo com a Secex, as exportações brasileiras de soja dispararam de 49,5 mil toneladas em janeiro de 2021 para 2,47 milhões no mês ado, devido à maior disponibilidade de grãos para embarque da safra 2021/22 e maiores estoques de agem.

(Por Nayara Figueiredo)