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

Protesto no Congresso contra PEC do Teto tem carro virado e detenções

Manifestação começou pacífica, tomando grande parte da esplanada

UOL Notícias

Felipe Amorim

Do UOL, em Brasília

29/11/2016 18h11Atualizada em 29/11/2016 23h07

Cerca de 10 mil pessoas participaram no fim da tarde desta terça-feira (29), no gramado em frente ao Congresso Nacional, em Brasília, de uma manifestação contra a aprovação da PEC (Proposta de Emenda à Constituição) do Teto de Gastos que terminou em confronto, depredação e detenções.

Segundo a Polícia Militar, quatro pessoas foram detidas nesta noite. Segundo o governo do Distrito Federal, cinco ocorrências de dano ao patrimônio foram registradas na Polícia Federal.

O MEC (Ministério da Educação) foi um dos alvos de depredação --segundo a assessoria de imprensa da pasta, um grupo invadiu o prédio e quebrou portas, câmeras de segurança e caixas eletrônicos. Os manifestantes chegaram até o segundo andar, antes de serem retirados pela PM. O clima foi de "terror", segundo o ministro, Mendonça Filho.

Os manifestantes viraram dois carros que estavam estacionados em frente ao edifício. Um dos veículos é da TV Record e o outro pertence à família de um policial legislativo que trabalha na Câmara. Os carros tiveram vidros quebrados e partes externas danificadas. Há registro de, pelo menos, dois carros incendiados.

O movimento começou por volta das 16h --participavam do ato estudantes, representantes de centrais sindicais, de movimentos de trabalhadores sem-terra e de organizações ligadas às universidades federais, além de grupos indígenas. Eles protestavam em frente ao Congresso.

Por volta das 18h, a polícia começou a lançar bombas de efeito moral em direção aos manifestantes. Com isso, os participantes do ato recuaram para a parte superior do gramado, afastando-se do prédio da Câmara e do Senado em direção à saída da Esplanada. Já eram 19h20, quando a Polícia Militar voltou a lançar bombas de gás contra os manifestantes --a reportagem do UOL, que acompanhava a movimentação, não registrou nenhum incidente ou violência que motivasse o ataque da polícia uma vez que grupo estava reunido pacificamente ao lado do carro de som na Catedral.

A reportagem avistou ao menos duas pessoas caídas no gramado próximo à Catedral à espera de atendimento. Manifestantes começaram a chamar em coro por uma ambulância. Pouco depois, a polícia voltou a lançar bombas de gás.

Deputados discordam sobre atuação da polícia

Deputados do PT que acompanhavam a manifestação criticaram a atitude da PM. "Eles já estavam preparados pra fazer esse massacre. [Foi] premeditado", disse a deputada Benedita da Silva (RJ). "Nunca teve uma repressão tão grande quanto essa no Congresso", afirmou Carlos Zarattini (SP).

Dentro do plenário da Câmara, que planeja votar o pacote anticorrupção, ao menos dois deputados foram ao microfone para comentar a atuação da polícia na manifestação. O deputado Glauber Braga (PSOL-RJ) pediu que o plenário fizesse uma intervenção "pela paz e pelo diálogo" e que a polícia parasse de jogar bombas contra os manifestantes. "Eu mesmo tive minha vista embaçada por gás de pimenta", afirmou Braga, pedindo que os colegas evitassem "uma tragédia" na frente da Casa.

Em resposta, o deputado Major Olímpio Gomes (SD-SP) afirmou que foi a ação da polícia que estaria evitando uma tragédia. "Tivemos flechas, pedras, bolas de gude jogadas", afirmou Major Olímpio. "Só [por isso] tivemos o uso da mobilização do Choque."

PEC do Teto

A PEC do Teto limita os gastos públicos pelos próximos 20 anos. O projeto deve ser votado nesta terça-feira (29), em primeiro turno, no plenário do Senado.

Em 10 de outubro, a matéria foi aprovada em primeiro turno na Câmara, com 366 votos favoráveis, 111 contrários e mais duas abstenções. Quinze dias depois, a proposta ou por uma segunda votação, como determina a legislação, sendo novamente aprovada. Foram 359 votos a favor, 116 contra e duas abstenções. (Com Estadão Conteúdo)