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

Placar que derrubou denúncia contra Temer indica dificuldades na Previdência

Temer faz pronunciamento no Palácio do Planalto, em Brasília, após vitória na Câmara - Dida Sampaio/Estadão Conteúdo
Temer faz pronunciamento no Palácio do Planalto, em Brasília, após vitória na Câmara Imagem: Dida Sampaio/Estadão Conteúdo

Por Ricardo Leopoldo, correspondente; Eduardo Laguna e Marcelo Osakabe

Em São Paulo

03/08/2017 00h48

A votação da denúncia contra o presidente Michel Temer (PMDB) terminou com 44% da Câmara - 227 deputados - contrária ao arquivamento do processo. Se não foi o bastante para fazer do peemedebista réu numa ação por corrupção iva no STF (Supremo Tribunal Federal), o número é mais do que suficiente para derrubar propostas de emenda constitucional, como a da reforma da Previdência.

Embora reduza as chances de Temer perder o mandato e abra uma melhor perspectiva de retomada da agenda reformista, o placar da sessão plenária desta quarta-feira (2) reforçou a expectativa de analistas de que o Planalto terá que negociar concessões e esvaziar ainda mais a proposta de mudanças nas regras das aposentadorias - dependente do aval de dois terços do Congresso.

Após o presidente da Câmara, Rodrigo Maia (DEM), anunciar a aprovação do parecer que recomendou o arquivamento da denúncia contra Temer, o diretor-executivo para as Américas da Eurasia, Christopher Garman, comentou ao Broadcast que a probabilidade de o peemedebista concluir o mandato, estimada em 60% pela consultoria de risco político, ganhou viés de alta.

Ele avalia que o resultado desta quarta-feira indica que Temer, salvo novo escândalo, tem capital político para derrubar uma nova denúncia a ser apresentada pela PGR (Procuradoria-Geral da República).

Garman considera, porém, que a reforma da Previdência, uma medida de alto custo político para os parlamentares, só tem condições de ar pelo Congresso numa versão mais enxuta do que a defendida pelo Executivo. "Talvez o que pode ar pelo Congresso será a adoção da idade mínima e da regra de transição", comentou.

O analista político da XP Investimentos, Richard Back, tem uma visão parecida e considera que o sucesso das reformas estará condicionado à habilidade de Temer em reconstruir a coalizão partidária que vinha dando sustentação a seu governo até meados de maio, antes de estourar a delação da JBS com acusações contra Temer. "O governo tem de virar a página, reconstruir a base e voltar à condição que tinha até maio", avaliou o analista político.

Ainda que a rejeição da denúncia mostre resistência do governo, o cientista político da Fundação Getulio Vargas (FGV) Claudio Couto avaliou que o placar da votação sugere que a capacidade do Planalto em aprovar pautas mais polêmicas foi prejudicada pela crise política.

O analista nota que a contagem dos votos favoráveis ao peemedebista, de 263 parlamentares, ficou um pouco acima dos 257 votos (maioria simples) necessários para aprovar apenas leis complementares.

"Pensando na reforma da Previdência, a obtenção de 308 votos (o necessário para aprovar uma Proposta de Emenda Constitucional) seria uma demonstração importante, de que o governo não apenas se salvou, mas que ainda tem força suficiente para aprovar coisas importantes", ponderou. "A votação de hoje mostrou que não".