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

SP zera imposto do leite, reduz ICMS da carne e terá R$ 100 mi ao comércio

Lucas Borges Teixeira e Rafael Bragança

Do UOL, em São Paulo

17/03/2021 12h29Atualizada em 17/03/2021 19h01

O governo de São Paulo anunciou hoje um pacote de medidas econômicas para ajudar o estado a ar pelo pior momento da pandemia de covid-19. A partir de abril, o estado irá reduzir o ICMS (Imposto sobre Circulação de Mercadorias e Serviços) da carne, zerá-lo para o leite e abrir uma linha de crédito de R$ 100 milhões para os setores econômicos mais afetados pela pandemia.

As medidas foram anunciadas em entrevista coletiva do governo paulista no início da tarde de hoje, no Palácio dos Bandeirantes, em São Paulo. As ações adicionais vêm num contexto de avanço da pandemia, com recordes seguidos de mortes diárias e de ocupação dos leitos dedicados a pacientes com a doença no estado.

Carne e leite

A medida da carne será voltada aos pequenos estabelecimentos, como açougues, enquadrados no Simples Nacional, com redução de 13,3% para 7% do ICMS na compra para revenda. A decisão marca um retorno às alíquotas cobradas até o início do ano.

No meio de janeiro, o governo estadual revogou os benefícios fiscais destes alimentos e fez o caminho contrário: aumentou de 7% para 13,3%. O ICMS do leite será zerado. As duas medidas deverão valer a partir de 1º de abril.

Crédito de R$ 100 mi a setores afetados

O governo anunciou ainda uma linha de crédito de R$ 100 milhões aos setores econômicos mais afetados. Serão R$ 50 milhões a juros baixos e com carência estendida para bares e restaurantes por meio do Desenvolve SP, instituição financeira do governo estadual.

Mais R$ 50 milhões serão destinados a outros setores afetados, como comércio, academias, salões de beleza e barbearias e festas e eventos, por meio do Banco do Povo.

Em nota, a Abrasel (Associação Brasileira de Bares e Restaurantes) elogiou a decisão. "Essas primeiras medidas são muito bem-vindas, mas precisamos de outras. Devemos buscar também soluções de médio prazo, além destas de curtíssimo prazo", disse Paulo Solmucci, presidente da entidade.

Suspensão do corte de água e gás

Como mais uma medida para ajudar os setores econômicos, o governo anunciou, ainda, a prorrogação da suspensão do corte do fornecimento de água e gás aos setores de comércio e serviços para 30 de abril. Até então, a medida deveria acabar em 30 de março.

Os estabelecimentos que não pagaram as contas não terão os nomes negativados e as dívidas poderão ser negociadas em até 12 parcelas sem multas ou juros.

UOL Economia+ fará evento para quem quer investir

Entre 23 e 25 de março, o UOL Economia+ e a casa de análises Levante Ideias de Investimento realizarão evento online gratuito. O economista Felipe Bevilacqua, analista certificado e gestor especialista da Levante, comandará três grandes aulas para explicar ao leitor do UOL como assumir as rédeas do próprio dinheiro.

O evento é gratuito para todos os leitores UOL. Garanta o seu lugar no evento aqui.

Ao clicar em “Enviar”, você concorda com a Política de Privacidade do Grupo UOL e aceita receber e-mails de produtos e serviços do Grupo UOL e demais empresas integrantes de seu grupo econômico. O Grupo UOL utiliza as informações fornecidas para entrar em contato ofertando produtos e serviços. Você pode deixar de receber essas comunicações quando quiser.