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

#MinhaCidadePrecisa: Em São Paulo, foco é retomada da economia com covid

Arte/UOL
Imagem: Arte/UOL

Vitor Pamplona

Colaboração para o UOL, em São Paulo

12/11/2020 04h00

A recuperação da economia depois do impacto causado pela pandemia da covid-19 é o principal problema a ser enfrentado pelo próximo prefeito de São Paulo na opinião dos eleitores, segundo aponta levantamento exclusivo do UOL em parceria com o Twitter.

Diante da indefinição sobre quando as primeiras vacinas contra a doença estarão disponíveis, a retomada econômica ainda em um cenário com riscos à saúde foi o assunto mais citado na etapa paulistana do projeto #MinhaCidadePrecisa, que nos últimos meses perguntou aos usuários do Twitter quais as maiores demandas das principais capitais do país tendo em vista as Eleições 2020.

Em São Paulo, foram coletadas respostas e comentários de 458,5 mil pessoas durante todo o mês de outubro. Elas enviaram 2,3 milhões de tuítes contendo opiniões sobre quais áreas da istração municipal devem ser priorizadas.

Entre os temas mais citados pelos eleitores da capital paulista apareceram educação, corrupção, direitos humanos, mobilidade e transporte, habitação e violência. A economia e o desemprego associados às questões de saúde e ao medo contrair a covid-19, porém, foram as queixas mais constantes.

Epicentro da pandemia do novo coronavírus no Brasil, a cidade de São Paulo chegou a ter entre maio e junho mais de 120 mortos por covid na média móvel de 14 dias, mas reduziu a quantidade de óbitos diários para menos de 10 na segunda semana de novembro —até esta quarta-feira (dia 11), a covid matou 13.767 pessoas na capital, segundo a Secretaria Municipal de Saúde.

Mas a principal metrópole do país ainda convive com um surto de desemprego. Desde o início da onda de demissões causada pela pandemia, em março, São Paulo perdeu 15,4 mil postos de trabalho de acordo com o Caged (Cadastro Geral de Empregados e Desempregados), do Ministério do Trabalho. O balanço negativo não inclui os dados de outubro, que ainda não foram divulgados.

O impacto da covid na economia da cidade provavelmente foi ainda maior, já que o Caged só mede o emprego formal. Além disso, estimativas da Associação Comercial de São Paulo e da associação de empresários do ramo de bares e restaurantes (Abrasel) apontam juntas que 370 mil pessoas perderam e emprego nos dois setores —não há dados sobre quantas já teriam sido recontratadas. Foram 17 mil lojas e 12 mil bares e restaurantes fechados no pico da pandemia.

Principais propostas dos candidatos

Para enfrentar a crise na economia e a alta do desemprego, os quatro candidatos à Prefeitura de São Paulo mais bem colocados nas pesquisas apresentaram durante a campanha propostas para injetar recursos públicos nas empresas e no bolso dos trabalhadores.

O prefeito Bruno Covas (PSDB), que busca a reeleição, fala em viabilizar investimentos públicos em infraestrutura como forma de alavancar a retomada econômica.

O tucano propõe reforçar o programa de recuperação de calçadas e recapeamento de ruas, incentivar a "economia criativa" (cultura e eventos) e ampliar subsídios habitacionais e uma PPP (Parceria Público-Privada) para entrega de novas moradias, a fim de aquecer o mercado de trabalho por meio da construção civil.

Guilherme Boulos (PSOL) promete instituir o programa Renda Solidária, com auxílio "entre R$ 200 e R$ 400" para famílias que ganham menos de R$ 520 mensais. A equipe do candidato estima que a proposta custaria R$ 300 milhões por mês aos cofres da prefeitura. Boulos diz que o dinheiro viria do caixa municipal e da cobrança de dívidas.

"Só o Itaú deve uma multa de R$ 3,8 bilhões para São Paulo, o que já pagaria o primeiro ano do programa e sobra", diz. Boulos propõe ainda mutirões de moradia e frentes de trabalho de zeladoria, além de criar canais de crédito para pequenos comerciantes e cooperativas de trabalhadores informais e de aplicativos.

O ex-governador Márcio França (PSB) promete frentes de trabalho nas áreas de limpeza, manutenção, pequenos reparos e jardinagem, com salário de R$ 600 e carga horária de três dias por semana, para compensar o fim do auxílio emergencial pago pelo governo federal. Não há definição de quantas pessoas seriam contratadas.

França promete também abrir até 250 mil microempresas sem custo para os interessados e empréstimos de até R$ 3.000, sem juros, para microempreendedores. Seu plano de governo ainda prevê uma linha de crédito de R$ 50 mil para pequenas empresas.

Já o deputado federal Celso Russomanno (Republicanos) prometeu durante a campanha um adicional de 20% no programa de renda mínima que o governo Bolsonaro planeja aprovar ano que vem. Chamado inicialmente de Renda Brasil e depois de Renda Cidadã, o projeto seria uma remodelação do Bolsa Família e depende de aval do Congresso.

A proposta do adicional não está no plano de governo de Russomanno, que também não detalha outras ações de estímulo à economia no período pós-pandemia.

Eleições 2020 em SP: políticos fazem campanha na capital