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

Caixa de R$ 19,2 bi na pandemia gera embate eleitoral em São Paulo

O prefeito de São Paulo e candidato à reeleição, Bruno Covas (PSDB) - PAULO GUERETA/ESTADÃO CONTEÚDO
O prefeito de São Paulo e candidato à reeleição, Bruno Covas (PSDB) Imagem: PAULO GUERETA/ESTADÃO CONTEÚDO

Adriana Ferraz, com colaboração de Tulio Kruse

São Paulo

08/11/2020 08h05

O valor depositado no caixa da Prefeitura de São Paulo nesta reta final da campanha virou alvo de críticas por parte dos concorrentes do prefeito Bruno Covas (PSDB), que falam em usar os recursos para custear suas promessas. Há R$ 19,2 bilhões de saldo, o suficiente, segundo candidatos, para viabilizar, por exemplo, programas de renda mínima e testagem em massa para o novo coronavírus. Ao final do mandato, porém, o valor deve cair para R$ 6,2 bilhões, ainda considerado alto, mas próximo aos R$ 5,5 bilhões deixados por Fernando Haddad (PT) em 2016.

De acordo com a Secretaria Municipal da Fazenda, R$ 11,2 bilhões são hoje classificados como recursos livres. O restante é verba carimbada, ou seja, deve ser empregada em áreas determinadas por lei. Por causa da pandemia, no entanto, e com a aprovação da Câmara Municipal, Covas publicou um decreto que desvinculou recursos carimbados de 11 diferentes fundos municipais, ampliando a possibilidade de utilizá-los para ações emergenciais.

A economista Mariana Almeida, superintendente da Fundação Tide Setubal e professora do Insper, afirma que, diferentemente do cidadão comum, que poupa dinheiro, o poder público não deve economizar.

"Pelo contrário, deve devolver o que foi tirado por meio de impostos do cidadão em serviços públicos. O gasto deve ser feito com equilíbrio, obviamente, mas executar o orçamento é importante. O alto volume de recursos na conta da Prefeitura, especialmente os vinculados, chamam a atenção. É um cenário, no mínimo, atípico", diz.

Guilherme Boulos (PSOL) considera a situação absurda. "Só com esses recursos seria possível custear cinco anos do Renda Solidária (programa proposto pelo candidato), que prevê benefícios de R$ 200 a R$ 400 para 1 milhão de famílias em situação de vulnerabilidade - e que será fundamental para retomar a atividade econômica."

Para Jilmar Tatto (PT), o extrato da conta municipal comprova que recursos existem, o que falta é vontade política para aplicá-los nas demandas prioritárias. "A posição do prefeito é omissa. Está provado que Covas poderia ter feito muito mais nesta pandemia. Por que não fazer testagem em massa da população para acelerar a volta às aulas, por exemplo?", questionou Tatto. O petista ainda critica a retomada tardia de algumas obras, como a das Unidades de Pronto Atendimento (UPAs), paralisadas até maio.

Márcio França (PSB) também considera alto o caixa atual, ainda mais em ano de pandemia. "Pra mim, isso revela despreparo na execução do orçamento da cidade. As contas públicas devem prezar pelo equilíbrio, nem mais nem menos", disse o candidato do PSB.

Levantamento feito pelo Estadão mostra que os investimentos municipais em obras e melhorias diversas caíram quase pela metade na gestão atual (contando o período istrado por João Doria, que ficou na Prefeitura de 2017 a 2018, quando foi eleito governador), em relação ao governo Haddad.

Sobra

Segundo o secretário municipal da Fazenda, Philippe Duchateau, o caixa é o extrato do momento. "Ele é sazonal. Não significa que esses R$ 19,2 bilhões estão sobrando. Em dezembro, por exemplo, vamos ter de pagar R$ 900 milhões de precatórios, suspensos por cinco meses naquele pacote de ajuda a Estados e municípios aprovados pelo Congresso", disse.

A secretaria estima que, ao final do ano, a disponibilidade de caixa líquido fique em R$ 6,2 bilhões - R$ 2,5 bilhões menor do que o valor de 2019 em função do déficit previsto para 2020. O valor, porém, pode variar a depender do comportamento das receitas do último bimestre.

Duchateau ressalta que é dessa mesma conta que sairão os pagamentos, tanto de salários de servidores, como de contratos de curto prazo. "Não pretendemos deixar gordura, só o necessário para os restos a pagar." A campanha de Covas não quis comentar os dados.

As informações são do jornal O Estado de S. Paulo.