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

Inflação de janeiro foi quase o dobro aos mais pobres, puxada por alimentos

Segundo o Ipea, os preços de legumes, frutas e verduras foram os grandes vilões da inflação para os mais pobres - Getty Images
Segundo o Ipea, os preços de legumes, frutas e verduras foram os grandes vilões da inflação para os mais pobres Imagem: Getty Images

Vinicius Neder

No Rio

15/02/2022 11h50Atualizada em 15/02/2022 13h38

Por causa dos preços dos alimentos, a inflação de janeiro pesou quase duas vezes mais para as famílias de baixa renda do que para as pessoas mais ricas, mostra o Indicador Ipea de Inflação por Faixa de Renda, divulgado hoje, pelo Ipea (Instituto de Pesquisa Econômica Aplicada). O indicador desagrega por faixas de rendimento o IPCA, índice oficial de inflação, calculado pelo IBGE (Instituto Brasileiro de Geografia e Estatística). Em janeiro, o IPCA avançou 0,54%, acumulando alta de 10,38% em 12 meses.

Para as famílias de renda "muito baixa" (até R$ 1.808,79 ao mês na soma de todos de um domicílio, na classificação do Ipea), os preços subiram em média 0,63%, enquanto para as pessoas de renda "alta" (acima de R$ 17.764,49 ao mês por domicílio) a alta ficou em 0,34%. No acumulado em 12 meses, o IPCA ficou em 10,5% para os de renda "muito baixa" e em 9,6% para quem tem renda "alta".

"Não obstante ao fato de que o grupo de alimentos e bebidas tenha sido o principal foco de inflação para todas as classes, o impacto da alta dos alimentos foi bem mais intenso para as famílias de renda muito baixa", diz a nota do Ipea.

Itens básicos pesam mais a quem tem menos

Isso ocorre porque a participação de itens básicos ou despesas essenciais é maior na cesta de consumo das famílias mais pobres. Enquanto isso, a cesta de consumo dos mais ricos tem participação maior de serviços e gastos não essenciais, como turismo e lazer, mesmo que, em termos absolutos, seus gastos com alimentos superem as despesas dos mais pobres.

Segundo o Ipea, os preços de legumes, frutas e verduras foram os grandes vilões da inflação para os mais pobres. Itens importantes da cesta básica ficaram mais baratos em janeiro, como o arroz (-2,7%), o feijão (-3,0%) e aves e ovos (-0,8%). Só que os reajustes dos produtos "in natura" falaram mais alto, como no caso da cenoura (27,6%), laranja (14,9%), banana (11,7%), batata (9,7%), das carnes (1,3%), do café (4,8%) e do óleo de soja (1,4%).

Alívio em preço de combustível impacta mais ricos

Por outro lado, as famílias mais ricas experimentaram um alívio nos preços de combustíveis. Já há sinais de novos reajustes dos combustíveis no atacado, mas, em janeiro, eles ainda estavam em queda no IPCA. Como as famílias mais pobres dificilmente têm carro particular e, portanto, tendem a gastar pouco com combustível, esse alívio pouco interfere na inflação média para essas faixas de renda.

"A queda dos combustíveis - gasolina (-1,1%) e etanol (-2,8%) -, das agens aéreas (-18,4%) e do transporte por aplicativo (-18%) fez com que o grupo de transportes trouxesse um forte alívio inflacionário para a faixa de renda alta", diz a nota do Ipea, citando também os planos de saúde, outro tipo de gasto que não costuma fazer parte da cesta de consumo dos mais pobres. "A deflação de 0,69% dos planos de saúde gerou uma descompressão do grupo de saúde e cuidados pessoais" no IPCA dos mais ricos, segundo o Ipea.